diff --git a/xml/System/Span`1+Enumerator.xml b/xml/System/Span`1+Enumerator.xml
index 84404280450..ba90a4468c1 100644
--- a/xml/System/Span`1+Enumerator.xml
+++ b/xml/System/Span`1+Enumerator.xml
@@ -21,8 +21,30 @@
- To be added.
- To be added.
+ Provides an enumerator for the elements of a .
+
+ , but they cannot be used to modify it.
+
+Initially, the enumerator is positioned before the first element in the . At this position, is undefined, so you must call to advance the enumerator to the first item in the before reading the value of .
+
+ returns the same object until is called. sets to the next item in the .
+
+If passes the end of the , the enumerator is positioned after the last item in the , and returns `false`. When the enumerator is at this position, subsequent calls to also return `false`. If the call to returns `false`, is undefined. You cannot set to the first item in the again; you must create a new enumerator instance instead.
+
+The enumerator does not have exclusive access to the ; therefore, enumerating through a span is intrinsically not a thread-safe procedure. To guarantee thread safety during enumeration, you can lock the span during the entire enumeration. To allow the span to be accessed by multiple threads for reading and writing, you must implement your own synchronization.
+
+Unlike some other enumerator structures in .NET, :
+
+- Does not implement the or interface.
+
+- Does not include a `Reset` method, which sets the enumerator to its initial position before the first element in the span.
+
+ ]]>
+
@@ -40,9 +62,23 @@
T@
- To be added.
- To be added.
- To be added.
+ Gets the item at the current position of the enumerator.
+ The element in the at the current position of the enumerator.
+
+ under either of the following conditions:
+
+- Immediately after the enumertor is created, the enumerator is positioned before the first element in the span. must be called to advance the enumerator to the first element of the span before reading the value of `Current`.
+
+- The last call to returned `false`, which indicates the end of the span.
+
+`Current` returns the same object until is called. sets `Current` to the next item in the span.
+
+ ]]>
+
+
+ The enumerator is positioned either before the first item or after the last item in the .
@@ -61,9 +97,17 @@
- To be added.
- To be added.
- To be added.
+ Advances the enumerator to the next item of the .
+ `true` if the enumerator successfully advanced to the next item; `false` if the enumerator has passed the end of the span.
+
+
+
diff --git a/xml/System/Span`1.xml b/xml/System/Span`1.xml
index a3c0bb4d691..2a290792f56 100644
--- a/xml/System/Span`1.xml
+++ b/xml/System/Span`1.xml
@@ -28,9 +28,14 @@
- To be added.
- To be added.
- To be added.
+ The type of items in the .
+ Represents a contiguous region of arbitrary memory that is type- and memory-safe.
+
+ ` instance is often used to hold the elements of an array or a portion of an array. Unlike an array, however, a `Span` instance can point to managed memory, native memory, or memory managed on the stack.
+
+ ]]>
+
@@ -52,9 +57,17 @@
- To be added.
- To be added.
- To be added.
+ The array from which to create the object.
+ Creates a new object over the entirety of a specified array.
+
+ `.
+
+ ]]>
+
+
+ is a reference type, and is not an array of type .
@@ -81,10 +94,20 @@
- To be added.
- To be added.
- To be added.
- To be added.
+ A pointer to the starting address of a specified number of bytes in memory.
+ The number of bytes to be included in the .
+ Creates a new object from a specified number of bytes starting at a specified memory address.
+
+ object, all subsequent uses are correct.
+
+ ]]>
+
+
+ is a reference type or contains pointers and therefore cannot be stored in unmanaged memory.
+
+ is negative.
@@ -103,9 +126,9 @@
- To be added.
- To be added.
- To be added.
+ The source array.
+ The index of the first element in the array to include in the object.
+ Creates a new object from a specified array starting at a specifed index position and continuing to the end of the array.
To be added.
@@ -130,11 +153,20 @@
- To be added.
- To be added.
- To be added.
- To be added.
+ The source array.
+ The index of the first element to include in the new .
+ The number of elements to include in the new .
+ Creates a new object that includes a specified number of elements of an array starting at a specified index.
To be added.
+
+ is , but or is non-zero.
+ --or--
+ is outside the bounds of the array.
+ --or--
+ and exceeds the number of elements in the array.
+
+
+ is a reference type, and is not an array of type .
@@ -157,8 +189,14 @@
- To be added.
- To be added.
+ Clears the contents of this object.
+
+ object to their default values. It does not remove items from the .
+
+ ]]>
+
@@ -184,8 +222,16 @@
To be added.
- To be added.
- To be added.
+ Copies the contents of this into a destination .
+
+
+
+
+ is shorter than the source .
@@ -260,8 +306,8 @@
System.Span<T>
- To be added.
- To be added.
+ Returns an empty object.
+ An empty object.
To be added.
@@ -295,10 +341,15 @@
- To be added.
- To be added.
- To be added.
- To be added.
+ Not supported.
+ Calls to this method are not supported.
+ Calls to this method are not supported.
+
+ method are not supported. The method call either generates a compiler error at compile time or throws a at run time. To compare two objects for equality, use the comparison operator.
+
+ ]]>
+
@@ -323,8 +374,8 @@
- To be added.
- To be added.
+ The value to assign to each element of the span.
+ Fills the elements of this span with a specified value.
To be added.
@@ -344,9 +395,14 @@
- To be added.
- To be added.
- To be added.
+ Returns an enumerator for this .
+ An enumerator for this span.
+
+ method directly, you can use the C# `foreach` statement` and the Visual Basic `For Each`...`Next` construct to enumerate a .
+
+ ]]>
+
@@ -377,9 +433,11 @@
- To be added.
- To be added.
+ Throws a .
+ Calls to this method always throw a .
To be added.
+
+ Calls to this method are not supported.
@@ -403,9 +461,14 @@
- To be added.
- To be added.
- To be added.
+ Returns a reference to the element of the at index zero.
+ A reference to the element of the at index zero, or if is .
+
+ in memory. It is required to support the use of a within a [fixed](~/docs/csharp/language-reference/keywords/fixed-statement.md) statement.
+
+ ]]>
+
@@ -427,8 +490,8 @@
System.Boolean
- To be added.
- To be added.
+ Returns a value that indicates whether the current is empty.
+ if the current span is empty; otherwise, .
To be added.
@@ -455,9 +518,11 @@
To be added.
- To be added.
- To be added.
+ Gets or sets the element at the specified zero-based index.
+ The element at the specified index.
To be added.
+
+ is less then zero or greater than or equal to .
@@ -479,8 +544,8 @@
System.Int32
- To be added.
- To be added.
+ Returns the length of the current span.
+ The length of the current span.
To be added.
@@ -507,11 +572,17 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The first span to compare.
+ The second span to compare.
+ Returns a value that indicates whether two objects are equal.
+ if the two objects are equal; otherwise, .
+
+ objects are equal if they have the same length and the corresponding elements of `left` and `right` point to the same memory. Note that the test for equality does *not* attempt to determine whether the contents are equal.
+
+ ]]>
+
@@ -536,9 +607,9 @@
- To be added.
- To be added.
- To be added.
+ The object to convert to a .
+ Defines an implicit conversion of a to a .
+ A read-only span that corresponds to the current instance.
To be added.
@@ -564,9 +635,9 @@
- To be added.
- To be added.
- To be added.
+ The array to convert to a .
+ Defines an implicit conversion of an array to a .
+ The span that corresponds to .
To be added.
@@ -597,10 +668,10 @@
- To be added.
- To be added.
- To be added.
- To be added.
+ The array segment to be converted to a .
+ The array segment to be converted to a .
+ Defines an implicit conversion of an to a .
+ A span that corresponds to the array segment.
To be added.
@@ -627,11 +698,17 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The first span to compare.
+ The second span to compare.
+ Returns a value that indicates whether two objects are not equal.
+ if the two objects are not equal; otherwise, .
+
+ objects are equal if they have different lengths or if the corresponding elements of `left` and `right` do not point to the same memory.
+
+ ]]>
+
@@ -656,10 +733,12 @@
- To be added.
- To be added.
- To be added.
+ The index at which to begin the slice.
+ Forms a slice out of the current span that begins at a specified index.
+ A span that consists of all elements of the current span from to the end of the span.
To be added.
+
+ is less than zero or greater than or equal to .
@@ -685,11 +764,13 @@
- To be added.
- To be added.
- To be added.
- To be added.
+ The index at which to begin this slice.
+ The desired length for the slice.
+ Forms a slice out of the current span starting at a specified index for a specified length.
+ >A span that consists of elements from the current span starting at .
To be added.
+
+ or + is less than zero or greater than .
@@ -712,9 +793,15 @@
- To be added.
- To be added.
- To be added.
+ Copies the contents of this span into a new array.
+ An array containing the data in the current span.
+
+ objects are not available but APIs that work with arrays are.
+
+ ]]>
+
@@ -733,9 +820,14 @@
- To be added.
- To be added.
- To be added.
+ Returns the string representation of this object.
+ The string representation of this object.
+
+ `, the `ToString` method returns a that contains the characters pointed to by the . Otherwise, it returns a with the name of the type and the number of elements that the contains.
+
+ ]]>
+
@@ -760,10 +852,18 @@
- To be added.
- To be added.
- To be added.
- To be added.
+ The target of the copy operation.
+ Attempts to copy the current to a destination and returns a value that indicates whether the copy operation succeeded.
+ if the copy operation succeeded; otherwise, .
+
+ , this method returns `false`, and no data is written to `destination`.
+
+ ]]>
+