using System; namespace Newtonsoft.Json.Linq { /// /// Specifies the settings used when merging JSON. /// internal class JsonMergeSettings { private MergeArrayHandling _mergeArrayHandling; private MergeNullValueHandling _mergeNullValueHandling; /// /// Gets or sets the method used when merging JSON arrays. /// /// The method used when merging JSON arrays. public MergeArrayHandling MergeArrayHandling { get => _mergeArrayHandling; set { if (value < MergeArrayHandling.Concat || value > MergeArrayHandling.Merge) { throw new ArgumentOutOfRangeException(nameof(value)); } _mergeArrayHandling = value; } } /// /// Gets or sets how null value properties are merged. /// /// How null value properties are merged. public MergeNullValueHandling MergeNullValueHandling { get => _mergeNullValueHandling; set { if (value < MergeNullValueHandling.Ignore || value > MergeNullValueHandling.Merge) { throw new ArgumentOutOfRangeException(nameof(value)); } _mergeNullValueHandling = value; } } } }