@@ -69,16 +69,10 @@ public KVObject()
6969
7070 /// <summary>
7171 /// Initializes a new instance of the <see cref="KVObject"/> class with a string value.
72- /// If <paramref name="value"/> is <c>null</c>, creates a null-valued instance.
7372 /// </summary>
7473 public KVObject ( string value )
7574 {
76- if ( value is null )
77- {
78- ValueType = KVValueType . Null ;
79- return ;
80- }
81-
75+ ArgumentNullException . ThrowIfNull ( value ) ;
8276 ValueType = KVValueType . String ;
8377 _ref = value ;
8478 }
@@ -322,7 +316,7 @@ public bool ContainsKey(string name)
322316 public void Add ( string key , KVObject value )
323317 {
324318 ArgumentNullException . ThrowIfNull ( key ) ;
325- TryInsert ( key , value , InsertionBehavior . ThrowOnExisting ) ;
319+ TryInsert ( key , value ?? Null ( ) , InsertionBehavior . ThrowOnExisting ) ;
326320 }
327321
328322 /// <summary>
@@ -333,7 +327,7 @@ public void Add(string key, KVObject value)
333327 public bool TryAdd ( string key , KVObject value )
334328 {
335329 ArgumentNullException . ThrowIfNull ( key ) ;
336- return TryInsert ( key , value , InsertionBehavior . None ) ;
330+ return TryInsert ( key , value ?? Null ( ) , InsertionBehavior . None ) ;
337331 }
338332
339333 /// <summary>
@@ -346,7 +340,7 @@ public void Add(KVObject value)
346340 throw new InvalidOperationException ( $ "Cannot add an array element to a { ValueType } value.") ;
347341 }
348342
349- GetArrayList ( ) . Add ( value ) ;
343+ GetArrayList ( ) . Add ( value ?? Null ( ) ) ;
350344 }
351345
352346 /// <summary>
0 commit comments