diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Array.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Array.cs
index 10aeeae995af..13c0cde1ef9e 100644
--- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Array.cs
+++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Array.cs
@@ -36,6 +36,9 @@ public Array()
///
/// Constructs a new from the given collection's elements.
///
+ ///
+ /// The is .
+ ///
/// The collection of elements to construct from.
/// A new Godot Array.
public Array(IEnumerable collection) : this()
@@ -50,6 +53,9 @@ public Array(IEnumerable collection) : this()
///
/// Constructs a new from the given objects.
///
+ ///
+ /// The is .
+ ///
/// The objects to put in the new array.
/// A new Godot Array.
public Array(Variant[] array)
@@ -68,6 +74,13 @@ public Array(Variant[] array)
this[i] = array[i];
}
+ ///
+ /// Constructs a new from the given span's elements.
+ ///
+ ///
+ /// The is .
+ ///
+ /// A new Godot Array.
public Array(Span array)
{
if (array == null)
@@ -84,6 +97,13 @@ public Array(Span array)
this[i] = array[i];
}
+ ///
+ /// Constructs a new from the given span's elements.
+ ///
+ ///
+ /// The is .
+ ///
+ /// A new Godot Array.
public Array(Span array)
{
if (array == null)
@@ -100,6 +120,13 @@ public Array(Span array)
this[i] = array[i];
}
+ ///
+ /// Constructs a new from the given span's elements.
+ ///
+ ///
+ /// The is .
+ ///
+ /// A new Godot Array.
public Array(Span array)
{
if (array == null)
@@ -121,6 +148,13 @@ public Array(Span array)
// fine as long as the array is not mutated. However, Span does this type checking at
// instantiation, so it's not possible to use it even when not mutating anything.
// ReSharper disable once RedundantNameQualifier
+ ///
+ /// Constructs a new from the given ReadOnlySpan's elements.
+ ///
+ ///
+ /// The is .
+ ///
+ /// A new Godot Array.
public Array(ReadOnlySpan array)
{
if (array == null)
@@ -861,9 +895,15 @@ public void MakeReadOnly()
/// Copies the elements of this to the given
/// C# array, starting at the given index.
///
+ ///
+ /// The is .
+ ///
///
/// is less than 0 or greater than the array's size.
///
+ ///
+ /// The destination array was not long enough.
+ ///
/// The array to copy to.
/// The index to start at.
public void CopyTo(Variant[] array, int arrayIndex)
@@ -1031,6 +1071,7 @@ internal ref godot_array.movable NativeValue
///
/// Constructs a new empty .
///
+ /// A new Godot Array.
public Array()
{
_underlyingArray = new Array();
@@ -1039,6 +1080,9 @@ public Array()
///
/// Constructs a new from the given collection's elements.
///
+ ///
+ /// The is .
+ ///
/// The collection of elements to construct from.
/// A new Godot Array.
public Array(IEnumerable collection)
@@ -1055,6 +1099,9 @@ public Array(IEnumerable collection)
///
/// Constructs a new from the given items.
///
+ ///
+ /// The is .
+ ///
/// The items to put in the new array.
/// A new Godot Array.
public Array(T[] array)
@@ -1071,9 +1118,16 @@ public Array(T[] array)
///
/// Constructs a typed from an untyped .
///
+ ///
+ /// The is .
+ ///
/// The untyped array to construct from.
+ /// A new Godot Array.
public Array(Array array)
{
+ if (array == null)
+ throw new ArgumentNullException(nameof(array));
+
_underlyingArray = array;
}
@@ -1085,6 +1139,7 @@ internal static Array CreateTakingOwnershipOfDisposableValue(godot_array nati
/// Converts this typed to an untyped .
///
/// The typed array to convert.
+ /// A new Godot Array, or if was null.
public static explicit operator Array(Array from)
{
return from?._underlyingArray;
@@ -1695,9 +1750,15 @@ public void Clear()
/// Copies the elements of this to the given
/// C# array, starting at the given index.
///
+ ///
+ /// The is .
+ ///
///
/// is less than 0 or greater than the array's size.
///
+ ///
+ /// The destination array was not long enough.
+ ///
/// The C# array to copy to.
/// The index to start at.
public void CopyTo(T[] array, int arrayIndex)
diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Dictionary.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Dictionary.cs
index 923b2adafd99..2a72ebc32bde 100644
--- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Dictionary.cs
+++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Dictionary.cs
@@ -385,6 +385,15 @@ public bool TryGetValue(Variant key, out Variant value)
/// Copies the elements of this to the given untyped
/// array, starting at the given index.
///
+ ///
+ /// The is .
+ ///
+ ///
+ /// is less than 0 or greater than the array's size.
+ ///
+ ///
+ /// The destination array was not long enough.
+ ///
/// The array to copy to.
/// The index to start at.
void ICollection>.CopyTo(KeyValuePair[] array, int arrayIndex)
@@ -499,6 +508,7 @@ internal ref godot_dictionary.movable NativeValue
///
/// Constructs a new empty .
///
+ /// A new Godot Dictionary.
public Dictionary()
{
_underlyingDict = new Dictionary();
@@ -507,6 +517,9 @@ public Dictionary()
///
/// Constructs a new from the given dictionary's elements.
///
+ ///
+ /// The is .
+ ///
/// The dictionary to construct from.
/// A new Godot Dictionary.
public Dictionary(IDictionary dictionary)
@@ -523,10 +536,16 @@ public Dictionary(IDictionary dictionary)
///
/// Constructs a new from the given dictionary's elements.
///
+ ///
+ /// The is .
+ ///
/// The dictionary to construct from.
/// A new Godot Dictionary.
public Dictionary(Dictionary dictionary)
{
+ if (dictionary == null)
+ throw new ArgumentNullException(nameof(dictionary));
+
_underlyingDict = dictionary;
}
@@ -539,6 +558,7 @@ internal static Dictionary CreateTakingOwnershipOfDisposableValue(
/// Converts this typed to an untyped .
///
/// The typed dictionary to convert.
+ /// A new Godot Dictionary, or if was null.
public static explicit operator Dictionary(Dictionary from)
{
return from?._underlyingDict;
@@ -555,6 +575,8 @@ public static explicit operator Dictionary(Dictionary from)
/// elements will be shallow copied regardless of the
/// setting.
///
+ /// If , performs a deep copy.
+ /// A new Godot Dictionary.
public Dictionary Duplicate(bool deep = false)
{
return new Dictionary(_underlyingDict.Duplicate(deep));
@@ -688,6 +710,9 @@ private KeyValuePair GetKeyValuePair(int index)
///
/// The dictionary is read-only.
///
+ ///
+ /// An element with the same already exists.
+ ///
/// The key at which to add the object.
/// The object to add.
public void Add(TKey key, TValue value)
@@ -810,6 +835,15 @@ bool ICollection>.Contains(KeyValuePair
/// Copies the elements of this to the given
/// untyped C# array, starting at the given index.
///
+ ///
+ /// The is .
+ ///
+ ///
+ /// is less than 0 or greater than the array's size.
+ ///
+ ///
+ /// The destination array was not long enough.
+ ///
/// The array to copy to.
/// The index to start at.
void ICollection>.CopyTo(KeyValuePair[] array, int arrayIndex)