﻿<?xml version="1.0" encoding="utf-8"?><Type Name="ArraySegment&lt;T&gt;" FullName="System.ArraySegment&lt;T&gt;"><TypeSignature Language="C#" Value="public struct ArraySegment&lt;T&gt; : System.Collections.Generic.ICollection&lt;T&gt;, System.Collections.Generic.IEnumerable&lt;T&gt;, System.Collections.Generic.IList&lt;T&gt;, System.Collections.Generic.IReadOnlyCollection&lt;T&gt;, System.Collections.Generic.IReadOnlyList&lt;T&gt;" /><TypeSignature Language="ILAsm" Value=".class public sequential ansi serializable sealed beforefieldinit ArraySegment`1&lt;T&gt; extends System.ValueType implements class System.Collections.Generic.ICollection`1&lt;!T&gt;, class System.Collections.Generic.IEnumerable`1&lt;!T&gt;, class System.Collections.Generic.IList`1&lt;!T&gt;, class System.Collections.Generic.IReadOnlyCollection`1&lt;!T&gt;, class System.Collections.Generic.IReadOnlyList`1&lt;!T&gt;, class System.Collections.IEnumerable" /><AssemblyInfo><AssemblyName>mscorlib</AssemblyName><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><TypeParameters><TypeParameter Name="T" /></TypeParameters><Base><BaseTypeName>System.ValueType</BaseTypeName></Base><Interfaces><Interface><InterfaceName>System.Collections.Generic.ICollection&lt;T&gt;</InterfaceName></Interface><Interface><InterfaceName>System.Collections.Generic.IEnumerable&lt;T&gt;</InterfaceName></Interface><Interface><InterfaceName>System.Collections.Generic.IList&lt;T&gt;</InterfaceName></Interface><Interface><InterfaceName>System.Collections.Generic.IReadOnlyCollection&lt;T&gt;</InterfaceName></Interface><Interface><InterfaceName>System.Collections.Generic.IReadOnlyList&lt;T&gt;</InterfaceName></Interface></Interfaces><Docs><typeparam name="T">To be added.</typeparam><since version=".NET 2.0" /><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para><see cref="T:System.ArraySegment`1" /> is a wrapper around an array that delimits a range of elements in that array. Multiple <see cref="T:System.ArraySegment`1" /> instances can refer to the same original array and can overlap. The original array must be one-dimensional and must have zero-based indexing. </para><para>The <see cref="P:System.ArraySegment`1.Array" /> property returns the entire original array, not a copy of the array; therefore, changes made to the array returned by the <see cref="P:System.ArraySegment`1.Array" /> property are made to the original array.</para><para>The <see cref="M:System.ArraySegment`1.Equals(System.ArraySegment{`0})" /> method and the equality and inequality operators test for reference equality when they compare two <see cref="T:System.ArraySegment`1" /> objects. For two <see cref="T:System.ArraySegment`1" /> objects to be considered equal, they must meet all of the following conditions: </para><list type="bullet"><item><para>Reference the same array. </para></item><item><para>Begin at the same index in the array. </para></item><item><para>Have the same number of elements. </para></item></list><para>If you want to retrieve an element by its index in the <see cref="T:System.ArraySegment`1" /> object, you must cast it to an <see cref="T:System.Collections.Generic.IList`1" /> object and retrieve it or modify it by using the <see cref="P:System.Collections.Generic.IList`1.Item(System.Int32)" /> property. The following example retrieves the element in an <see cref="T:System.ArraySegment`1" /> object that delimits a section of a string array. </para><para>code reference: System.ArraySegment.Class#1</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Delimits a section of a one-dimensional array.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ArraySegment (T[] array);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(!T[] array) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Parameters><Parameter Name="array" Type="T[]" /></Parameters><Docs><param name="array">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks><since version=".NET 2.0" /></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public ArraySegment (T[] array, int offset, int count);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(!T[] array, int32 offset, int32 count) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Parameters><Parameter Name="array" Type="T[]" /><Parameter Name="offset" Type="System.Int32" /><Parameter Name="count" Type="System.Int32" /></Parameters><Docs><param name="array">To be added.</param><param name="offset">To be added.</param><param name="count">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks><since version=".NET 2.0" /></Docs></Member><Member MemberName="Array"><MemberSignature Language="C#" Value="public T[] Array { get; }" /><MemberSignature Language="ILAsm" Value=".property instance !T[] Array" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>T[]</ReturnType></ReturnValue><Docs><value>To be added.</value><since version=".NET 2.0" /><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The <see cref="P:System.ArraySegment`1.Array" /> property returns the original array, not a copy of the array; therefore, changes made through the property are made directly to the original array. </para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the original array containing the range of elements that the array segment delimits.</para></summary></Docs></Member><Member MemberName="Count"><MemberSignature Language="C#" Value="public int Count { get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 Count" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks>To be added.</remarks><since version=".NET 2.0" /><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the number of elements in the range delimited by the array segment.</para></summary></Docs></Member><Member MemberName="Equals"><MemberSignature Language="C#" Value="public bool Equals (ArraySegment&lt;T&gt; obj);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Equals(valuetype System.ArraySegment`1&lt;!T&gt; obj) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="obj" Type="System.ArraySegment&lt;T&gt;" /></Parameters><Docs><param name="obj">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks><since version=".NET 2.0" /></Docs></Member><Member MemberName="Equals"><MemberSignature Language="C#" Value="public override bool Equals (object obj);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance bool Equals(object obj) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="obj" Type="System.Object" /></Parameters><Docs><since version=".NET 2.0" /><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Two <see cref="T:System.ArraySegment`1" /> objects are considered to be equal if all the following conditions are met: </para><list type="bullet"><item><para>They reference the same array. </para></item><item><para>They begin at the same index in the array. </para></item><item><para>They have the same number of elements. </para></item></list></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Determines whether the specified object is equal to the current instance.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>true if the specified object is a <see cref="T:System.ArraySegment`1" /> structure and is equal to the current instance; otherwise, false.</para></returns><param name="obj"><attribution license="cc4" from="Microsoft" modified="false" />The object to be compared with the current instance.</param></Docs></Member><Member MemberName="GetHashCode"><MemberSignature Language="C#" Value="public override int GetHashCode ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance int32 GetHashCode() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added.</remarks><since version=".NET 2.0" /><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Returns the hash code for the current instance.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>A 32-bit signed integer hash code.</para></returns></Docs></Member><Member MemberName="Offset"><MemberSignature Language="C#" Value="public int Offset { get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 Offset" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Docs><value>To be added.</value><remarks>To be added.</remarks><since version=".NET 2.0" /><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the position of the first element in the range delimited by the array segment, relative to the start of the original array.</para></summary></Docs></Member><Member MemberName="op_Equality"><MemberSignature Language="C#" Value="public static bool op_Equality (ArraySegment&lt;T&gt; a, ArraySegment&lt;T&gt; b);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname bool op_Equality(valuetype System.ArraySegment`1&lt;!T&gt; a, valuetype System.ArraySegment`1&lt;!T&gt; b) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="a" Type="System.ArraySegment&lt;T&gt;" /><Parameter Name="b" Type="System.ArraySegment&lt;T&gt;" /></Parameters><Docs><param name="a">To be added.</param><param name="b">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks><since version=".NET 2.0" /></Docs></Member><Member MemberName="op_Inequality"><MemberSignature Language="C#" Value="public static bool op_Inequality (ArraySegment&lt;T&gt; a, ArraySegment&lt;T&gt; b);" /><MemberSignature Language="ILAsm" Value=".method public static hidebysig specialname bool op_Inequality(valuetype System.ArraySegment`1&lt;!T&gt; a, valuetype System.ArraySegment`1&lt;!T&gt; b) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="a" Type="System.ArraySegment&lt;T&gt;" /><Parameter Name="b" Type="System.ArraySegment&lt;T&gt;" /></Parameters><Docs><param name="a">To be added.</param><param name="b">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks><since version=".NET 2.0" /></Docs></Member><Member MemberName="System.Collections.Generic.ICollection&lt;T&gt;.Add"><MemberSignature Language="C#" Value="void ICollection&lt;T&gt;.Add (T item);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Collections.Generic.ICollection&lt;T&gt;.Add(!T item) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="item" Type="T" /></Parameters><Docs><param name="item">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.ICollection&lt;T&gt;.Clear"><MemberSignature Language="C#" Value="void ICollection&lt;T&gt;.Clear ();" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Collections.Generic.ICollection&lt;T&gt;.Clear() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.ICollection&lt;T&gt;.Contains"><MemberSignature Language="C#" Value="bool ICollection&lt;T&gt;.Contains (T item);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance bool System.Collections.Generic.ICollection&lt;T&gt;.Contains(!T item) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="item" Type="T" /></Parameters><Docs><param name="item">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.ICollection&lt;T&gt;.CopyTo"><MemberSignature Language="C#" Value="void ICollection&lt;T&gt;.CopyTo (T[] array, int arrayIndex);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Collections.Generic.ICollection&lt;T&gt;.CopyTo(!T[] array, int32 arrayIndex) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="array" Type="T[]" /><Parameter Name="arrayIndex" Type="System.Int32" /></Parameters><Docs><param name="array">To be added.</param><param name="arrayIndex">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.ICollection&lt;T&gt;.IsReadOnly"><MemberSignature Language="C#" Value="bool System.Collections.Generic.ICollection&lt;T&gt;.IsReadOnly { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool System.Collections.Generic.ICollection&lt;T&gt;.IsReadOnly" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><summary>To be added.</summary><value>To be added.</value><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.ICollection&lt;T&gt;.Remove"><MemberSignature Language="C#" Value="bool ICollection&lt;T&gt;.Remove (T item);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance bool System.Collections.Generic.ICollection&lt;T&gt;.Remove(!T item) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Parameters><Parameter Name="item" Type="T" /></Parameters><Docs><param name="item">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator"><MemberSignature Language="C#" Value="System.Collections.Generic.IEnumerator&lt;T&gt; IEnumerable&lt;T&gt;.GetEnumerator ();" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance class System.Collections.Generic.IEnumerator`1&lt;!T&gt; System.Collections.Generic.IEnumerable&lt;T&gt;.GetEnumerator() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Collections.Generic.IEnumerator&lt;T&gt;</ReturnType></ReturnValue><Parameters /><Docs><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.IList&lt;T&gt;.IndexOf"><MemberSignature Language="C#" Value="int IList&lt;T&gt;.IndexOf (T item);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance int32 System.Collections.Generic.IList&lt;T&gt;.IndexOf(!T item) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Parameters><Parameter Name="item" Type="T" /></Parameters><Docs><param name="item">To be added.</param><summary>To be added.</summary><returns>To be added.</returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.IList&lt;T&gt;.Insert"><MemberSignature Language="C#" Value="void IList&lt;T&gt;.Insert (int index, T item);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Collections.Generic.IList&lt;T&gt;.Insert(int32 index, !T item) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="index" Type="System.Int32" /><Parameter Name="item" Type="T" /></Parameters><Docs><param name="index">To be added.</param><param name="item">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.IList&lt;T&gt;.Item"><MemberSignature Language="C#" Value="T System.Collections.Generic.IList&lt;T&gt;.Item[int index] { get; set; }" /><MemberSignature Language="ILAsm" Value=".property instance !T System.Collections.Generic.IList&lt;T&gt;.Item(int32)" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>T</ReturnType></ReturnValue><Parameters><Parameter Name="index" Type="System.Int32" /></Parameters><Docs><param name="index">To be added.</param><summary>To be added.</summary><value>To be added.</value><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.IList&lt;T&gt;.RemoveAt"><MemberSignature Language="C#" Value="void IList&lt;T&gt;.RemoveAt (int index);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Collections.Generic.IList&lt;T&gt;.RemoveAt(int32 index) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="index" Type="System.Int32" /></Parameters><Docs><param name="index">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.Generic.IReadOnlyList&lt;T&gt;.Item"><MemberSignature Language="C#" Value="T System.Collections.Generic.IReadOnlyList&lt;T&gt;.Item[int index] { get; }" /><MemberSignature Language="ILAsm" Value=".property instance !T System.Collections.Generic.IReadOnlyList&lt;T&gt;.Item(int32)" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>T</ReturnType></ReturnValue><Parameters><Parameter Name="index" Type="System.Int32" /></Parameters><Docs><param name="index">To be added.</param><summary>To be added.</summary><value>To be added.</value><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Collections.IEnumerable.GetEnumerator"><MemberSignature Language="C#" Value="System.Collections.IEnumerator IEnumerable.GetEnumerator ();" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance class System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Collections.IEnumerator</ReturnType></ReturnValue><Parameters /><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This member is an explicit interface member implementation. It can be used only when the <see cref="T:System.ArraySegment`1" /> instance is cast to an <see cref="T:System.Collections.IEnumerable" /> interface.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Returns an enumerator that iterates through an array segment.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>An enumerator that can be used to iterate through the array segment.</para></returns></Docs></Member></Members></Type>