﻿<?xml version="1.0" encoding="utf-8"?><Type Name="ParameterBuilder" FullName="System.Reflection.Emit.ParameterBuilder"><TypeSignature Maintainer="auto" Language="C#" Value="public class ParameterBuilder : System.Runtime.InteropServices._ParameterBuilder" /><TypeSignature Language="ILAsm" Value=".class public sequential ansi beforefieldinit ParameterBuilder extends System.Object implements class System.Runtime.InteropServices._ParameterBuilder" /><AssemblyInfo><AssemblyName>mscorlib</AssemblyName><AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement><Base><BaseTypeName>System.Object</BaseTypeName></Base><Interfaces><Interface><InterfaceName>System.Runtime.InteropServices._ParameterBuilder</InterfaceName></Interface></Interfaces><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)</AttributeName></Attribute><Attribute><AttributeName>System.Runtime.InteropServices.ComDefaultInterface(typeof(System.Runtime.InteropServices._ParameterBuilder))</AttributeName></Attribute><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>Parameter attributes need to consistent with the method signature. If you specify Out attributes for a parameter, you should ensure that the type of that method parameter is a ByRef type.</para><para>Some <see cref="T:System.Reflection.Emit.ParameterBuilder" /> attributes require that you call <see cref="M:System.Reflection.Emit.TypeBuilder.DefineMethod(System.String,System.Reflection.MethodAttributes,System.Type,System.Type[])" /> with viable parameters in order for the Microsoft intermediate language (MSIL) to work correctly at runtime. For example, if you define a <see cref="T:System.Reflection.Emit.ParameterBuilder" /> with ParameterAttributes.Out for parameter 1 of a MethodBuilder, then parameter 1 of <see cref="T:System.Reflection.Emit.MethodBuilder" /> must be a reference such as Type.GetType("System.String&amp;"), rather than Type.GetType("System.String").</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Creates or associates parameter information.</para></summary></Docs><Members><Member MemberName="Attributes"><MemberSignature Language="C#" Value="public virtual int Attributes { get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 Attributes" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Docs><value>To be added: an object of type 'int'</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>The values of the attribute correspond to the values of the <see cref="T:System.Reflection.ParameterAttributes" /> enumeration.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Retrieves the attributes for this parameter.</para></summary></Docs></Member><Member MemberName="GetToken"><MemberSignature Language="C#" Value="public virtual System.Reflection.Emit.ParameterToken GetToken ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance valuetype System.Reflection.Emit.ParameterToken GetToken() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Reflection.Emit.ParameterToken</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Retrieves the token for this parameter.</para></summary><returns><attribution license="cc4" from="Microsoft" modified="false" /><para>Returns the token for this parameter.</para></returns></Docs></Member><Member MemberName="IsIn"><MemberSignature Language="C#" Value="public bool IsIn { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool IsIn" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><value>To be added: an object of type 'bool'</value><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This method depends on an optional metadata flag. This flag can be inserted by compilers, but the compilers are not obligated to do so.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Retrieves whether this is an input parameter.</para></summary></Docs></Member><Member MemberName="IsOptional"><MemberSignature Language="C#" Value="public bool IsOptional { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool IsOptional" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><value>To be added: an object of type 'bool'</value><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Retrieves whether this parameter is optional.</para></summary></Docs></Member><Member MemberName="IsOut"><MemberSignature Language="C#" Value="public bool IsOut { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool IsOut" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><value>To be added: an object of type 'bool'</value><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Retrieves whether this parameter is an output parameter.</para></summary></Docs></Member><Member MemberName="Name"><MemberSignature Language="C#" Value="public virtual string Name { get; }" /><MemberSignature Language="ILAsm" Value=".property instance string Name" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.String</ReturnType></ReturnValue><Docs><value>To be added: an object of type 'string'</value><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Retrieves the name of this parameter.</para></summary></Docs></Member><Member MemberName="Position"><MemberSignature Language="C#" Value="public virtual int Position { get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 Position" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Docs><value>To be added: an object of type 'int'</value><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Retrieves the signature position for this parameter.</para></summary></Docs></Member><Member MemberName="SetConstant"><MemberSignature Language="C#" Value="public virtual void SetConstant (object defaultValue);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetConstant(object defaultValue) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="defaultValue" Type="System.Object" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para><paramref name="defaultValue" /> is restricted to the following types: Boolean, SByte, Int16, Int32, Int64, Byte, UInt16, UInt32, UInt64, Single, Double, DateTime, Char, String, and Enum. If the parameter type is a reference type, CLS compliance requires <paramref name="defaultValue" /> to be null. However, starting with the net_v40_long, <paramref name="defaultValue" /> can be non-null for a reference type as long as the value can be assigned to that reference type. For example, an Int32 value can be assigned to a parameter of type <see cref="T:System.Object" />. This is not CLS-compliant, but it can be useful in interop scenarios.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Sets the default value of the parameter.</para></summary><param name="defaultValue"><attribution license="cc4" from="Microsoft" modified="false" />The default value of this parameter. </param></Docs></Member><Member MemberName="SetCustomAttribute"><MemberSignature Language="C#" Value="public void SetCustomAttribute (System.Reflection.Emit.CustomAttributeBuilder customBuilder);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetCustomAttribute(class System.Reflection.Emit.CustomAttributeBuilder customBuilder) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="customBuilder" Type="System.Reflection.Emit.CustomAttributeBuilder" /></Parameters><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Set a custom attribute using a custom attribute builder.</para></summary><param name="customBuilder"><attribution license="cc4" from="Microsoft" modified="false" />An instance of a helper class to define the custom attribute. </param></Docs></Member><Member MemberName="SetCustomAttribute"><MemberSignature Language="C#" Value="public void SetCustomAttribute (System.Reflection.ConstructorInfo con, byte[] binaryAttribute);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetCustomAttribute(class System.Reflection.ConstructorInfo con, unsigned int8[] binaryAttribute) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="con" Type="System.Reflection.ConstructorInfo" /><Parameter Name="binaryAttribute" Type="System.Byte[]" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>See the metadata specification in the ECMA Partition II documentation for details on how to format <paramref name="binaryAttribute" />. The documentation is available online; see <see cref="http://go.microsoft.com/fwlink/?LinkID=99212">ECMA C# and Common Language Infrastructure Standards</see> on MSDN and <see cref="http://go.microsoft.com/fwlink/?LinkID=65552">Standard ECMA-335 - Common Language Infrastructure (CLI)</see> on the Ecma International Web site.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Set a custom attribute using a specified custom attribute blob.</para></summary><param name="con"><attribution license="cc4" from="Microsoft" modified="false" />The constructor for the custom attribute. </param><param name="binaryAttribute"><attribution license="cc4" from="Microsoft" modified="false" />A byte blob representing the attributes. </param></Docs></Member><Member MemberName="SetMarshal"><MemberSignature Language="C#" Value="public virtual void SetMarshal (System.Reflection.Emit.UnmanagedMarshal unmanagedMarshal);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetMarshal(class System.Reflection.Emit.UnmanagedMarshal unmanagedMarshal) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><Attributes><Attribute><AttributeName>System.Obsolete("An alternate API is available: Emit the MarshalAs custom attribute instead.")</AttributeName></Attribute></Attributes><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="unmanagedMarshal" Type="System.Reflection.Emit.UnmanagedMarshal" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This method should throw the following exception but currently does not: </para><para><see cref="T:System.InvalidOperationException" /> if the containing type has been created using TypeBuilder.CreateType().</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Specifies the marshaling for this parameter.</para></summary><param name="unmanagedMarshal"><attribution license="cc4" from="Microsoft" modified="false" />The marshaling information for this parameter. </param></Docs></Member><Member MemberName="System.Runtime.InteropServices._ParameterBuilder.GetIDsOfNames"><MemberSignature Language="C#" Value="void _ParameterBuilder.GetIDsOfNames (ref Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Runtime.InteropServices._ParameterBuilder.GetIDsOfNames(valuetype System.Guid riid, native int rgszNames, unsigned int32 cNames, unsigned int32 lcid, native int rgDispId) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="riid" Type="System.Guid&amp;" RefType="ref" /><Parameter Name="rgszNames" Type="System.IntPtr" /><Parameter Name="cNames" Type="System.UInt32" /><Parameter Name="lcid" Type="System.UInt32" /><Parameter Name="rgDispId" Type="System.IntPtr" /></Parameters><Docs><param name="riid">To be added.</param><param name="rgszNames">To be added.</param><param name="cNames">To be added.</param><param name="lcid">To be added.</param><param name="rgDispId">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Runtime.InteropServices._ParameterBuilder.GetTypeInfo"><MemberSignature Language="C#" Value="void _ParameterBuilder.GetTypeInfo (uint iTInfo, uint lcid, IntPtr ppTInfo);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfo(unsigned int32 iTInfo, unsigned int32 lcid, native int ppTInfo) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="iTInfo" Type="System.UInt32" /><Parameter Name="lcid" Type="System.UInt32" /><Parameter Name="ppTInfo" Type="System.IntPtr" /></Parameters><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para>This method is for access to managed classes from unmanaged code, and should not be called from managed code. For more information about <unmanagedCodeEntityReference>IDispatch::GetTypeInfo</unmanagedCodeEntityReference>, see the MSDN Library.</para></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Retrieves the type information for an object, which can then be used to get the type information for an interface.</para></summary><param name="iTInfo"><attribution license="cc4" from="Microsoft" modified="false" />The type information to return.</param><param name="lcid"><attribution license="cc4" from="Microsoft" modified="false" />The locale identifier for the type information.</param><param name="ppTInfo"><attribution license="cc4" from="Microsoft" modified="false" />Receives a pointer to the requested type information object.</param></Docs></Member><Member MemberName="System.Runtime.InteropServices._ParameterBuilder.GetTypeInfoCount"><MemberSignature Language="C#" Value="void _ParameterBuilder.GetTypeInfoCount (out uint pcTInfo);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Runtime.InteropServices._ParameterBuilder.GetTypeInfoCount(unsigned int32 pcTInfo) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="pcTInfo" Type="System.UInt32&amp;" RefType="out" /></Parameters><Docs><param name="pcTInfo">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="System.Runtime.InteropServices._ParameterBuilder.Invoke"><MemberSignature Language="C#" Value="void _ParameterBuilder.Invoke (uint dispIdMember, ref Guid riid, uint lcid, short wFlags, IntPtr pDispParams, IntPtr pVarResult, IntPtr pExcepInfo, IntPtr puArgErr);" /><MemberSignature Language="ILAsm" Value=".method hidebysig newslot virtual instance void System.Runtime.InteropServices._ParameterBuilder.Invoke(unsigned int32 dispIdMember, valuetype System.Guid riid, unsigned int32 lcid, int16 wFlags, native int pDispParams, native int pVarResult, native int pExcepInfo, native int puArgErr) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="dispIdMember" Type="System.UInt32" /><Parameter Name="riid" Type="System.Guid&amp;" RefType="ref" /><Parameter Name="lcid" Type="System.UInt32" /><Parameter Name="wFlags" Type="System.Int16" /><Parameter Name="pDispParams" Type="System.IntPtr" /><Parameter Name="pVarResult" Type="System.IntPtr" /><Parameter Name="pExcepInfo" Type="System.IntPtr" /><Parameter Name="puArgErr" Type="System.IntPtr" /></Parameters><Docs><param name="dispIdMember">To be added.</param><param name="riid">To be added.</param><param name="lcid">To be added.</param><param name="wFlags">To be added.</param><param name="pDispParams">To be added.</param><param name="pVarResult">To be added.</param><param name="pExcepInfo">To be added.</param><param name="puArgErr">To be added.</param><summary>To be added.</summary><remarks>To be added.</remarks></Docs></Member></Members></Type>