Permalink
Fetching contributors…
Cannot retrieve contributors at this time
413 lines (396 sloc) 22.8 KB
<Type Name="ArgIterator" FullName="System.ArgIterator">
<TypeSignature Language="C#" Value="public struct ArgIterator" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit ArgIterator extends System.ValueType" />
<TypeSignature Language="DocId" Value="T:System.ArgIterator" />
<TypeSignature Language="VB.NET" Value="Public Structure ArgIterator" />
<TypeSignature Language="C++ CLI" Value="public value class ArgIterator" />
<TypeSignature Language="F#" Value="type ArgIterator = struct" />
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.ValueType</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Represents a variable-length argument list; that is, the parameters of a function that takes a variable number of arguments.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Developers who write compilers use the <xref:System.ArgIterator> structure to enumerate the mandatory and optional arguments in an argument list. The <xref:System.ArgIterator> structure is not generally useful for applications other than compilers.
The functionality in the <xref:System.ArgIterator> structure is typically hidden in the syntax of a specific programming language. For example, in the C++ programming language you declare a variable-length argument list by specifying an ellipsis ("...") at the end of the argument list. The <xref:System.ArgIterator> structure is useful primarily when a development language does not provide direct support for accessing variable-length parameters.
]]></format>
</remarks>
</Docs>
<Members>
<MemberGroup MemberName=".ctor">
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Docs>
<summary>Initializes a new instance of the <see cref="T:System.ArgIterator" /> structure.</summary>
</Docs>
</MemberGroup>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public ArgIterator (RuntimeArgumentHandle arglist);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(valuetype System.RuntimeArgumentHandle arglist) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ArgIterator.#ctor(System.RuntimeArgumentHandle)" />
<MemberSignature Language="VB.NET" Value="Public Sub New (arglist As RuntimeArgumentHandle)" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; ArgIterator(RuntimeArgumentHandle arglist);" />
<MemberSignature Language="F#" Value="new ArgIterator : RuntimeArgumentHandle -&gt; ArgIterator" Usage="new System.ArgIterator arglist" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8">
<AttributeName>System.Security.SecuritySafeCritical</AttributeName>
</Attribute>
</Attributes>
<Parameters>
<Parameter Name="arglist" Type="System.RuntimeArgumentHandle" />
</Parameters>
<Docs>
<param name="arglist">An argument list consisting of mandatory and optional arguments.</param>
<summary>Initializes a new instance of the <see cref="T:System.ArgIterator" /> structure using the specified argument list.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The new <xref:System.ArgIterator> object enumerates the argument list starting from the first optional argument.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public ArgIterator (RuntimeArgumentHandle arglist, void* ptr);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(valuetype System.RuntimeArgumentHandle arglist, void* ptr) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ArgIterator.#ctor(System.RuntimeArgumentHandle,System.Void*)" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; ArgIterator(RuntimeArgumentHandle arglist, void* ptr);" />
<MemberSignature Language="F#" Value="new ArgIterator : RuntimeArgumentHandle * nativeptr&lt;unit&gt; -&gt; ArgIterator" Usage="new System.ArgIterator (arglist, ptr)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-1.1;netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0;netframework-4.8">
<AttributeName>System.CLSCompliant(false)</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8">
<AttributeName>System.Security.SecurityCritical</AttributeName>
</Attribute>
</Attributes>
<Parameters>
<Parameter Name="arglist" Type="System.RuntimeArgumentHandle" />
<Parameter Name="ptr" Type="System.Void*" />
</Parameters>
<Docs>
<param name="arglist">An argument list consisting of mandatory and optional arguments.</param>
<param name="ptr">A pointer to the argument in <c>arglist</c> to access first, or the first mandatory argument in <c>arglist</c> if <c>ptr</c> is <see langword="null" />.</param>
<summary>Initializes a new instance of the <see cref="T:System.ArgIterator" /> structure using the specified argument list and a pointer to an item in the list.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The new <xref:System.ArgIterator> object enumerates the argument list starting from the argument specified by `ptr`, or the first mandatory argument if `ptr` is `null`.
]]></format>
</remarks>
<permission cref="T:System.Security.SecurityCriticalAttribute">requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.</permission>
</Docs>
</Member>
<Member MemberName="End">
<MemberSignature Language="C#" Value="public void End ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance void End() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ArgIterator.End" />
<MemberSignature Language="VB.NET" Value="Public Sub End ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; void End();" />
<MemberSignature Language="F#" Value="member this.End : unit -&gt; unit" Usage="argIterator.End " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Concludes processing of the variable-length argument list represented by this instance.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Conceptually, <xref:System.ArgIterator.End%2A> concludes the processing of a variable-length argument list. However, this method has no actual implementation; the <xref:System.ArgIterator.End%2A> method body is empty. You can use this method in your code as a marker to indicate where variable-length argument list processing logically ends.
The <xref:System.ArgIterator.End%2A> method corresponds to the `va_end` method in the C standard library.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Equals">
<MemberSignature Language="C#" Value="public override bool Equals (object o);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance bool Equals(object o) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ArgIterator.Equals(System.Object)" />
<MemberSignature Language="VB.NET" Value="Public Overrides Function Equals (o As Object) As Boolean" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; override bool Equals(System::Object ^ o);" />
<MemberSignature Language="F#" Value="override this.Equals : obj -&gt; bool" Usage="argIterator.Equals o" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="o" Type="System.Object" />
</Parameters>
<Docs>
<param name="o">An object to be compared to this instance.</param>
<summary>This method is not supported, and always throws <see cref="T:System.NotSupportedException" />.</summary>
<returns>This comparison is not supported. No value is returned.</returns>
<remarks>To be added.</remarks>
<exception cref="T:System.NotSupportedException">This method is not supported.</exception>
</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" />
<MemberSignature Language="DocId" Value="M:System.ArgIterator.GetHashCode" />
<MemberSignature Language="VB.NET" Value="Public Overrides Function GetHashCode () As Integer" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; override int GetHashCode();" />
<MemberSignature Language="F#" Value="override this.GetHashCode : unit -&gt; int" Usage="argIterator.GetHashCode " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns the hash code of this object.</summary>
<returns>A 32-bit signed integer hash code.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<MemberGroup MemberName="GetNextArg">
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Docs>
<summary>Returns the next argument in a variable-length argument list.</summary>
</Docs>
</MemberGroup>
<Member MemberName="GetNextArg">
<MemberSignature Language="C#" Value="public TypedReference GetNextArg ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype System.TypedReference GetNextArg() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ArgIterator.GetNextArg" />
<MemberSignature Language="VB.NET" Value="Public Function GetNextArg () As TypedReference" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; TypedReference GetNextArg();" />
<MemberSignature Language="F#" Value="member this.GetNextArg : unit -&gt; TypedReference" Usage="argIterator.GetNextArg " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-1.1;netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0;netframework-4.8">
<AttributeName>System.CLSCompliant(false)</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8">
<AttributeName>System.Security.SecuritySafeCritical</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.TypedReference</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns the next argument in a variable-length argument list.</summary>
<returns>The next argument as a <see cref="T:System.TypedReference" /> object.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The iterator is automatically advanced to the next argument.
]]></format>
</remarks>
<exception cref="T:System.InvalidOperationException">An attempt was made to read beyond the end of the list.</exception>
</Docs>
</Member>
<Member MemberName="GetNextArg">
<MemberSignature Language="C#" Value="public TypedReference GetNextArg (RuntimeTypeHandle rth);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype System.TypedReference GetNextArg(valuetype System.RuntimeTypeHandle rth) cil managed" />
<MemberSignature Language="DocId" Value="M:System.ArgIterator.GetNextArg(System.RuntimeTypeHandle)" />
<MemberSignature Language="VB.NET" Value="Public Function GetNextArg (rth As RuntimeTypeHandle) As TypedReference" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; TypedReference GetNextArg(RuntimeTypeHandle rth);" />
<MemberSignature Language="F#" Value="member this.GetNextArg : RuntimeTypeHandle -&gt; TypedReference" Usage="argIterator.GetNextArg rth" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-1.1;netframework-2.0;netframework-3.0;netframework-3.5;netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;xamarinandroid-7.1;xamarinios-10.8;xamarinmac-3.0;netframework-4.8">
<AttributeName>System.CLSCompliant(false)</AttributeName>
</Attribute>
<Attribute FrameworkAlternate="netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8">
<AttributeName>System.Security.SecuritySafeCritical</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.TypedReference</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="rth" Type="System.RuntimeTypeHandle" />
</Parameters>
<Docs>
<param name="rth">A runtime type handle that identifies the type of the argument to retrieve.</param>
<summary>Returns the next argument in a variable-length argument list that has a specified type.</summary>
<returns>The next argument as a <see cref="T:System.TypedReference" /> object.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The iterator is automatically advanced to the next argument.
]]></format>
</remarks>
<exception cref="T:System.InvalidOperationException">An attempt was made to read beyond the end of the list.</exception>
<exception cref="T:System.ArgumentNullException">The pointer to the remaining arguments is zero.</exception>
</Docs>
</Member>
<Member MemberName="GetNextArgType">
<MemberSignature Language="C#" Value="public RuntimeTypeHandle GetNextArgType ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype System.RuntimeTypeHandle GetNextArgType() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ArgIterator.GetNextArgType" />
<MemberSignature Language="VB.NET" Value="Public Function GetNextArgType () As RuntimeTypeHandle" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; RuntimeTypeHandle GetNextArgType();" />
<MemberSignature Language="F#" Value="member this.GetNextArgType : unit -&gt; RuntimeTypeHandle" Usage="argIterator.GetNextArgType " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8">
<AttributeName>System.Security.SecuritySafeCritical</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.RuntimeTypeHandle</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns the type of the next argument.</summary>
<returns>The type of the next argument.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
This method does not advance the iterator to the next argument.
<xref:System.ArgIterator.GetNextArgType%2A> returns the type of the argument as specified in the calling function. For example, if an argument is type <xref:System.String>, but the calling function specifies the argument as type <xref:System.Object>, <xref:System.ArgIterator.GetNextArgType%2A> reports the argument as type <xref:System.Object>.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="GetRemainingCount">
<MemberSignature Language="C#" Value="public int GetRemainingCount ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance int32 GetRemainingCount() cil managed" />
<MemberSignature Language="DocId" Value="M:System.ArgIterator.GetRemainingCount" />
<MemberSignature Language="VB.NET" Value="Public Function GetRemainingCount () As Integer" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; int GetRemainingCount();" />
<MemberSignature Language="F#" Value="member this.GetRemainingCount : unit -&gt; int" Usage="argIterator.GetRemainingCount " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>mscorlib</AssemblyName>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.5.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>netstandard</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8">
<AttributeName>System.Security.SecuritySafeCritical</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Returns the number of arguments remaining in the argument list.</summary>
<returns>The number of remaining arguments.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>