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;
}
}
}
}