1 <?xml version="1.0" encoding="utf-8"?><doc>
3 <name>System.Reflection.Emit.ILGeneration</name>
6 <member name="T:System.Reflection.Emit.SignatureHelper">
7 <summary>Provides methods for building signatures.</summary>
9 <member name="M:System.Reflection.Emit.SignatureHelper.AddArgument(System.Type)">
10 <summary>Adds an argument to the signature.</summary>
11 <param name="clsArgument">The type of the argument.</param>
12 <exception cref="T:System.ArgumentException">The signature has already been finished.</exception>
13 <exception cref="T:System.ArgumentNullException"><paramref name="clsArgument">clsArgument</paramref> is <see langword="null"></see>.</exception>
15 <member name="M:System.Reflection.Emit.SignatureHelper.AddArgument(System.Type,System.Boolean)">
16 <summary>Adds an argument of the specified type to the signature, specifying whether the argument is pinned.</summary>
17 <param name="argument">The argument type.</param>
18 <param name="pinned"><see langword="true"></see> if the argument is pinned; otherwise, <see langword="false"></see>.</param>
19 <exception cref="T:System.ArgumentNullException"><paramref name="argument">argument</paramref> is <see langword="null"></see>.</exception>
21 <member name="M:System.Reflection.Emit.SignatureHelper.AddArgument(System.Type,System.Type[],System.Type[])">
22 <summary>Adds an argument to the signature, with the specified custom modifiers.</summary>
23 <param name="argument">The argument type.</param>
24 <param name="requiredCustomModifiers">An array of types representing the required custom modifiers for the argument, such as <see cref="T:System.Runtime.CompilerServices.IsConst"></see> or <see cref="T:System.Runtime.CompilerServices.IsBoxed"></see>. If the argument has no required custom modifiers, specify <see langword="null"></see>.</param>
25 <param name="optionalCustomModifiers">An array of types representing the optional custom modifiers for the argument, such as <see cref="T:System.Runtime.CompilerServices.IsConst"></see> or <see cref="T:System.Runtime.CompilerServices.IsBoxed"></see>. If the argument has no optional custom modifiers, specify <see langword="null"></see>.</param>
26 <exception cref="T:System.ArgumentNullException"><paramref name="argument">argument</paramref> is <see langword="null"></see>.
28 An element of <paramref name="requiredCustomModifiers">requiredCustomModifiers</paramref> or <paramref name="optionalCustomModifiers">optionalCustomModifiers</paramref> is <see langword="null"></see>.</exception>
29 <exception cref="T:System.ArgumentException">The signature has already been finished.
31 One of the specified custom modifiers is an array type.
33 One of the specified custom modifiers is an open generic type. That is, the <see cref="System.Type.ContainsGenericParameters"></see> property is <see langword="true"></see> for the custom modifier.</exception>
35 <member name="M:System.Reflection.Emit.SignatureHelper.AddArguments(System.Type[],System.Type[][],System.Type[][])">
36 <summary>Adds a set of arguments to the signature, with the specified custom modifiers.</summary>
37 <param name="arguments">The types of the arguments to be added.</param>
38 <param name="requiredCustomModifiers">An array of arrays of types. Each array of types represents the required custom modifiers for the corresponding argument, such as <see cref="T:System.Runtime.CompilerServices.IsConst"></see> or <see cref="T:System.Runtime.CompilerServices.IsBoxed"></see>. If a particular argument has no required custom modifiers, specify <see langword="null"></see> instead of an array of types. If none of the arguments have required custom modifiers, specify <see langword="null"></see> instead of an array of arrays.</param>
39 <param name="optionalCustomModifiers">An array of arrays of types. Each array of types represents the optional custom modifiers for the corresponding argument, such as <see cref="T:System.Runtime.CompilerServices.IsConst"></see> or <see cref="T:System.Runtime.CompilerServices.IsBoxed"></see>. If a particular argument has no optional custom modifiers, specify <see langword="null"></see> instead of an array of types. If none of the arguments have optional custom modifiers, specify <see langword="null"></see> instead of an array of arrays.</param>
40 <exception cref="T:System.ArgumentNullException">An element of <paramref name="arguments">arguments</paramref> is <see langword="null"></see>.
42 One of the specified custom modifiers is <see langword="null"></see>. (However, <see langword="null"></see> can be specified for the array of custom modifiers for any argument.)</exception>
43 <exception cref="T:System.ArgumentException">The signature has already been finished.
45 One of the specified custom modifiers is an array type.
47 One of the specified custom modifiers is an open generic type. That is, the <see cref="System.Type.ContainsGenericParameters"></see> property is <see langword="true"></see> for the custom modifier.
49 The size of <paramref name="requiredCustomModifiers">requiredCustomModifiers</paramref> or <paramref name="optionalCustomModifiers">optionalCustomModifiers</paramref> does not equal the size of <paramref name="arguments">arguments</paramref>.</exception>
51 <member name="M:System.Reflection.Emit.SignatureHelper.AddSentinel">
52 <summary>Marks the end of a vararg fixed part. This is only used if the caller is creating a vararg signature call site.</summary>
54 <member name="M:System.Reflection.Emit.SignatureHelper.Equals(System.Object)">
55 <summary>Checks if this instance is equal to the given object.</summary>
56 <param name="obj">The object with which this instance should be compared.</param>
57 <returns><see langword="true"></see> if the given object is a <see langword="SignatureHelper"></see> and represents the same signature; otherwise, <see langword="false"></see>.</returns>
59 <member name="M:System.Reflection.Emit.SignatureHelper.GetFieldSigHelper(System.Reflection.Module)">
60 <summary>Returns a signature helper for a field.</summary>
61 <param name="mod">The dynamic module that contains the field for which the <see langword="SignatureHelper"></see> is requested.</param>
62 <returns>The <see langword="SignatureHelper"></see> object for a field.</returns>
64 <member name="M:System.Reflection.Emit.SignatureHelper.GetHashCode">
65 <summary>Creates and returns a hash code for this instance.</summary>
66 <returns>Returns the hash code based on the name.</returns>
68 <member name="M:System.Reflection.Emit.SignatureHelper.GetLocalVarSigHelper">
69 <summary>Returns a signature helper for a local variable.</summary>
70 <returns>A <see cref="T:System.Reflection.Emit.SignatureHelper"></see> for a local variable.</returns>
72 <member name="M:System.Reflection.Emit.SignatureHelper.GetLocalVarSigHelper(System.Reflection.Module)">
73 <summary>Returns a signature helper for a local variable.</summary>
74 <param name="mod">The dynamic module that contains the local variable for which the <see langword="SignatureHelper"></see> is requested.</param>
75 <returns>The <see langword="SignatureHelper"></see> object for a local variable.</returns>
77 <member name="M:System.Reflection.Emit.SignatureHelper.GetMethodSigHelper(System.Reflection.Module,System.Type,System.Type[])">
78 <summary>Returns a signature helper for a method with a standard calling convention, given the method&#39;s module, return type, and argument types.</summary>
79 <param name="mod">The <see cref="T:System.Reflection.Emit.ModuleBuilder"></see> that contains the method for which the <see langword="SignatureHelper"></see> is requested.</param>
80 <param name="returnType">The return type of the method, or <see langword="null"></see> for a void return type (<see langword="Sub"></see> procedure in Visual Basic).</param>
81 <param name="parameterTypes">The types of the arguments of the method, or <see langword="null"></see> if the method has no arguments.</param>
82 <returns>The <see langword="SignatureHelper"></see> object for a method.</returns>
83 <exception cref="T:System.ArgumentNullException"><paramref name="mod">mod</paramref> is <see langword="null"></see>.
85 An element of <paramref name="parameterTypes">parameterTypes</paramref> is <see langword="null"></see>.</exception>
86 <exception cref="T:System.ArgumentException"><paramref name="mod">mod</paramref> is not a <see cref="System.Reflection.Emit.ModuleBuilder"></see>.</exception>
88 <member name="M:System.Reflection.Emit.SignatureHelper.GetMethodSigHelper(System.Reflection.CallingConventions,System.Type)">
89 <summary>Returns a signature helper for a method given the method&#39;s calling convention and return type.</summary>
90 <param name="callingConvention">The calling convention of the method.</param>
91 <param name="returnType">The return type of the method, or <see langword="null"></see> for a void return type (<see langword="Sub"></see> procedure in Visual Basic).</param>
92 <returns>The <see langword="SignatureHelper"></see> object for a method.</returns>
94 <member name="M:System.Reflection.Emit.SignatureHelper.GetMethodSigHelper(System.Reflection.Module,System.Reflection.CallingConventions,System.Type)">
95 <summary>Returns a signature helper for a method given the method&#39;s module, calling convention, and return type.</summary>
96 <param name="mod">The <see cref="T:System.Reflection.Emit.ModuleBuilder"></see> that contains the method for which the <see langword="SignatureHelper"></see> is requested.</param>
97 <param name="callingConvention">The calling convention of the method.</param>
98 <param name="returnType">The return type of the method, or <see langword="null"></see> for a void return type (<see langword="Sub"></see> procedure in Visual Basic).</param>
99 <returns>The <see langword="SignatureHelper"></see> object for a method.</returns>
100 <exception cref="T:System.ArgumentNullException"><paramref name="mod">mod</paramref> is <see langword="null"></see>.</exception>
101 <exception cref="T:System.ArgumentException"><paramref name="mod">mod</paramref> is not a <see cref="System.Reflection.Emit.ModuleBuilder"></see>.</exception>
103 <member name="M:System.Reflection.Emit.SignatureHelper.GetPropertySigHelper(System.Reflection.Module,System.Type,System.Type[])">
104 <summary>Returns a signature helper for a property, given the dynamic module that contains the property, the property type, and the property arguments.</summary>
105 <param name="mod">The <see cref="T:System.Reflection.Emit.ModuleBuilder"></see> that contains the property for which the <see cref="T:System.Reflection.Emit.SignatureHelper"></see> is requested.</param>
106 <param name="returnType">The property type.</param>
107 <param name="parameterTypes">The argument types, or <see langword="null"></see> if the property has no arguments.</param>
108 <returns>A <see cref="T:System.Reflection.Emit.SignatureHelper"></see> object for a property.</returns>
109 <exception cref="T:System.ArgumentNullException"><paramref name="mod">mod</paramref> is <see langword="null"></see>.
111 An element of <paramref name="parameterTypes">parameterTypes</paramref> is <see langword="null"></see>.</exception>
112 <exception cref="T:System.ArgumentException"><paramref name="mod">mod</paramref> is not a <see cref="System.Reflection.Emit.ModuleBuilder"></see>.</exception>
114 <member name="M:System.Reflection.Emit.SignatureHelper.GetPropertySigHelper(System.Reflection.Module,System.Type,System.Type[],System.Type[],System.Type[],System.Type[][],System.Type[][])">
115 <summary>Returns a signature helper for a property, given the dynamic module that contains the property, the property type, the property arguments, and custom modifiers for the return type and arguments.</summary>
116 <param name="mod">The <see cref="T:System.Reflection.Emit.ModuleBuilder"></see> that contains the property for which the <see cref="T:System.Reflection.Emit.SignatureHelper"></see> is requested.</param>
117 <param name="returnType">The property type.</param>
118 <param name="requiredReturnTypeCustomModifiers">An array of types representing the required custom modifiers for the return type, such as <see cref="T:System.Runtime.CompilerServices.IsConst"></see> or <see cref="T:System.Runtime.CompilerServices.IsBoxed"></see>. If the return type has no required custom modifiers, specify <see langword="null"></see>.</param>
119 <param name="optionalReturnTypeCustomModifiers">An array of types representing the optional custom modifiers for the return type, such as <see cref="T:System.Runtime.CompilerServices.IsConst"></see> or <see cref="T:System.Runtime.CompilerServices.IsBoxed"></see>. If the return type has no optional custom modifiers, specify <see langword="null"></see>.</param>
120 <param name="parameterTypes">The types of the property&#39;s arguments, or <see langword="null"></see> if the property has no arguments.</param>
121 <param name="requiredParameterTypeCustomModifiers">An array of arrays of types. Each array of types represents the required custom modifiers for the corresponding argument of the property. If a particular argument has no required custom modifiers, specify <see langword="null"></see> instead of an array of types. If the property has no arguments, or if none of the arguments have required custom modifiers, specify <see langword="null"></see> instead of an array of arrays.</param>
122 <param name="optionalParameterTypeCustomModifiers">An array of arrays of types. Each array of types represents the optional custom modifiers for the corresponding argument of the property. If a particular argument has no optional custom modifiers, specify <see langword="null"></see> instead of an array of types. If the property has no arguments, or if none of the arguments have optional custom modifiers, specify <see langword="null"></see> instead of an array of arrays.</param>
123 <returns>A <see cref="T:System.Reflection.Emit.SignatureHelper"></see> object for a property.</returns>
124 <exception cref="T:System.ArgumentNullException"><paramref name="mod">mod</paramref> is <see langword="null"></see>.
126 An element of <paramref name="parameterTypes">parameterTypes</paramref> is <see langword="null"></see>.
128 One of the specified custom modifiers is <see langword="null"></see>. (However, <see langword="null"></see> can be specified for the array of custom modifiers for any argument.)</exception>
129 <exception cref="T:System.ArgumentException">The signature has already been finished.
131 <paramref name="mod">mod</paramref> is not a <see cref="System.Reflection.Emit.ModuleBuilder"></see>.
133 One of the specified custom modifiers is an array type.
135 One of the specified custom modifiers is an open generic type. That is, the <see cref="System.Type.ContainsGenericParameters"></see> property is <see langword="true"></see> for the custom modifier.
137 The size of <paramref name="requiredParameterTypeCustomModifiers">requiredParameterTypeCustomModifiers</paramref> or <paramref name="optionalParameterTypeCustomModifiers">optionalParameterTypeCustomModifiers</paramref> does not equal the size of <paramref name="parameterTypes">parameterTypes</paramref>.</exception>
139 <member name="M:System.Reflection.Emit.SignatureHelper.GetPropertySigHelper(System.Reflection.Module,System.Reflection.CallingConventions,System.Type,System.Type[],System.Type[],System.Type[],System.Type[][],System.Type[][])">
140 <summary>Returns a signature helper for a property, given the dynamic module that contains the property, the calling convention, the property type, the property arguments, and custom modifiers for the return type and arguments.</summary>
141 <param name="mod">The <see cref="T:System.Reflection.Emit.ModuleBuilder"></see> that contains the property for which the <see cref="T:System.Reflection.Emit.SignatureHelper"></see> is requested.</param>
142 <param name="callingConvention">The calling convention of the property accessors.</param>
143 <param name="returnType">The property type.</param>
144 <param name="requiredReturnTypeCustomModifiers">An array of types representing the required custom modifiers for the return type, such as <see cref="T:System.Runtime.CompilerServices.IsConst"></see> or <see cref="T:System.Runtime.CompilerServices.IsBoxed"></see>. If the return type has no required custom modifiers, specify <see langword="null"></see>.</param>
145 <param name="optionalReturnTypeCustomModifiers">An array of types representing the optional custom modifiers for the return type, such as <see cref="T:System.Runtime.CompilerServices.IsConst"></see> or <see cref="T:System.Runtime.CompilerServices.IsBoxed"></see>. If the return type has no optional custom modifiers, specify <see langword="null"></see>.</param>
146 <param name="parameterTypes">The types of the property&#39;s arguments, or <see langword="null"></see> if the property has no arguments.</param>
147 <param name="requiredParameterTypeCustomModifiers">An array of arrays of types. Each array of types represents the required custom modifiers for the corresponding argument of the property. If a particular argument has no required custom modifiers, specify <see langword="null"></see> instead of an array of types. If the property has no arguments, or if none of the arguments have required custom modifiers, specify <see langword="null"></see> instead of an array of arrays.</param>
148 <param name="optionalParameterTypeCustomModifiers">An array of arrays of types. Each array of types represents the optional custom modifiers for the corresponding argument of the property. If a particular argument has no optional custom modifiers, specify <see langword="null"></see> instead of an array of types. If the property has no arguments, or if none of the arguments have optional custom modifiers, specify <see langword="null"></see> instead of an array of arrays.</param>
149 <returns>A <see cref="T:System.Reflection.Emit.SignatureHelper"></see> object for a property.</returns>
150 <exception cref="T:System.ArgumentNullException"><paramref name="mod">mod</paramref> is <see langword="null"></see>.
152 An element of <paramref name="parameterTypes">parameterTypes</paramref> is <see langword="null"></see>.
154 One of the specified custom modifiers is <see langword="null"></see>. (However, <see langword="null"></see> can be specified for the array of custom modifiers for any argument.)</exception>
155 <exception cref="T:System.ArgumentException">The signature has already been finished.
157 <paramref name="mod">mod</paramref> is not a <see cref="System.Reflection.Emit.ModuleBuilder"></see>.
159 One of the specified custom modifiers is an array type.
161 One of the specified custom modifiers is an open generic type. That is, the <see cref="System.Type.ContainsGenericParameters"></see> property is <see langword="true"></see> for the custom modifier.
163 The size of <paramref name="requiredParameterTypeCustomModifiers">requiredParameterTypeCustomModifiers</paramref> or <paramref name="optionalParameterTypeCustomModifiers">optionalParameterTypeCustomModifiers</paramref> does not equal the size of <paramref name="parameterTypes">parameterTypes</paramref>.</exception>
165 <member name="M:System.Reflection.Emit.SignatureHelper.GetSignature">
166 <summary>Adds the end token to the signature and marks the signature as finished, so no further tokens can be added.</summary>
167 <returns>Returns a byte array made up of the full signature.</returns>
169 <member name="M:System.Reflection.Emit.SignatureHelper.ToString">
170 <summary>Returns a string representing the signature arguments.</summary>
171 <returns>Returns a string representing the arguments of this signature.</returns>
173 <member name="T:System.Reflection.Emit.ParameterBuilder">
174 <summary>Creates or associates parameter information.</summary>
176 <member name="P:System.Reflection.Emit.ParameterBuilder.Attributes">
177 <summary>Retrieves the attributes for this parameter.</summary>
178 <returns>Read-only. Retrieves the attributes for this parameter.</returns>
180 <member name="P:System.Reflection.Emit.ParameterBuilder.IsIn">
181 <summary>Retrieves whether this is an input parameter.</summary>
182 <returns>Read-only. Retrieves whether this is an input parameter.</returns>
184 <member name="P:System.Reflection.Emit.ParameterBuilder.IsOptional">
185 <summary>Retrieves whether this parameter is optional.</summary>
186 <returns>Read-only. Specifies whether this parameter is optional.</returns>
188 <member name="P:System.Reflection.Emit.ParameterBuilder.IsOut">
189 <summary>Retrieves whether this parameter is an output parameter.</summary>
190 <returns>Read-only. Retrieves whether this parameter is an output parameter.</returns>
192 <member name="P:System.Reflection.Emit.ParameterBuilder.Name">
193 <summary>Retrieves the name of this parameter.</summary>
194 <returns>Read-only. Retrieves the name of this parameter.</returns>
196 <member name="P:System.Reflection.Emit.ParameterBuilder.Position">
197 <summary>Retrieves the signature position for this parameter.</summary>
198 <returns>Read-only. Retrieves the signature position for this parameter.</returns>
200 <member name="M:System.Reflection.Emit.ParameterBuilder.SetConstant(System.Object)">
201 <summary>Sets the default value of the parameter.</summary>
202 <param name="defaultValue">The default value of this parameter.</param>
203 <exception cref="T:System.ArgumentException">The parameter is not one of the supported types.
205 The type of <paramref name="defaultValue">defaultValue</paramref> does not match the type of the parameter.
207 The parameter is of type <see cref="System.Object"></see> or other reference type, <paramref name="defaultValue">defaultValue</paramref> is not <see langword="null"></see>, and the value cannot be assigned to the reference type.</exception>
209 <member name="M:System.Reflection.Emit.ParameterBuilder.SetCustomAttribute(System.Reflection.Emit.CustomAttributeBuilder)">
210 <summary>Set a custom attribute using a custom attribute builder.</summary>
211 <param name="customBuilder">An instance of a helper class to define the custom attribute.</param>
212 <exception cref="T:System.ArgumentNullException"><paramref name="con">con</paramref> is <see langword="null"></see>.</exception>
214 <member name="M:System.Reflection.Emit.ParameterBuilder.SetCustomAttribute(System.Reflection.ConstructorInfo,System.Byte[])">
215 <summary>Set a custom attribute using a specified custom attribute blob.</summary>
216 <param name="con">The constructor for the custom attribute.</param>
217 <param name="binaryAttribute">A byte blob representing the attributes.</param>
218 <exception cref="T:System.ArgumentNullException"><paramref name="con">con</paramref> or <paramref name="binaryAttribute">binaryAttribute</paramref> is <see langword="null"></see>.</exception>
220 <member name="T:System.Reflection.Emit.LocalBuilder">
221 <summary>Represents a local variable within a method or constructor.</summary>
223 <member name="P:System.Reflection.Emit.LocalBuilder.IsPinned">
224 <summary>Gets a value indicating whether the object referred to by the local variable is pinned in memory.</summary>
225 <returns><see langword="true"></see> if the object referred to by the local variable is pinned in memory; otherwise, <see langword="false"></see>.</returns>
227 <member name="P:System.Reflection.Emit.LocalBuilder.LocalIndex">
228 <summary>Gets the zero-based index of the local variable within the method body.</summary>
229 <returns>An integer value that represents the order of declaration of the local variable within the method body.</returns>
231 <member name="P:System.Reflection.Emit.LocalBuilder.LocalType">
232 <summary>Gets the type of the local variable.</summary>
233 <returns>The <see cref="T:System.Type"></see> of the local variable.</returns>
235 <member name="T:System.Reflection.Emit.Label">
236 <summary>Represents a label in the instruction stream. <see langword="Label"></see> is used in conjunction with the <see cref="T:System.Reflection.Emit.ILGenerator"></see> class.</summary>
238 <member name="M:System.Reflection.Emit.Label.Equals(System.Object)">
239 <summary>Checks if the given object is an instance of <see langword="Label"></see> and is equal to this instance.</summary>
240 <param name="obj">The object to compare with this <see langword="Label"></see> instance.</param>
241 <returns>Returns <see langword="true"></see> if <paramref name="obj">obj</paramref> is an instance of <see langword="Label"></see> and is equal to this object; otherwise, <see langword="false"></see>.</returns>
243 <member name="M:System.Reflection.Emit.Label.Equals(System.Reflection.Emit.Label)">
244 <summary>Indicates whether the current instance is equal to the specified <see cref="T:System.Reflection.Emit.Label"></see>.</summary>
245 <param name="obj">The <see cref="T:System.Reflection.Emit.Label"></see> to compare to the current instance.</param>
246 <returns><see langword="true"></see> if the value of <paramref name="obj">obj</paramref> is equal to the value of the current instance; otherwise, <see langword="false"></see>.</returns>
248 <member name="M:System.Reflection.Emit.Label.GetHashCode">
249 <summary>Generates a hash code for this instance.</summary>
250 <returns>Returns a hash code for this instance.</returns>
252 <member name="M:System.Reflection.Emit.Label.op_Equality(System.Reflection.Emit.Label,System.Reflection.Emit.Label)">
253 <summary>Indicates whether two <see cref="T:System.Reflection.Emit.Label"></see> structures are equal.</summary>
254 <param name="a">The <see cref="T:System.Reflection.Emit.Label"></see> to compare to b.</param>
255 <param name="b">The <see cref="T:System.Reflection.Emit.Label"></see> to compare to a.</param>
256 <returns><see langword="true"></see> if <paramref name="a">a</paramref> is equal to <paramref name="b">b</paramref>; otherwise, <see langword="false"></see>.</returns>
258 <member name="M:System.Reflection.Emit.Label.op_Inequality(System.Reflection.Emit.Label,System.Reflection.Emit.Label)">
259 <summary>Indicates whether two <see cref="T:System.Reflection.Emit.Label"></see> structures are not equal.</summary>
260 <param name="a">The <see cref="T:System.Reflection.Emit.Label"></see> to compare to b.</param>
261 <param name="b">The <see cref="T:System.Reflection.Emit.Label"></see> to compare to a.</param>
262 <returns><see langword="true"></see> if <paramref name="a">a</paramref> is not equal to <paramref name="b">b</paramref>; otherwise, <see langword="false"></see>.</returns>
264 <member name="T:System.Reflection.Emit.ILGenerator">
265 <summary>Generates Microsoft intermediate language (MSIL) instructions.</summary>
267 <member name="M:System.Reflection.Emit.ILGenerator.BeginCatchBlock(System.Type)">
268 <summary>Begins a catch block.</summary>
269 <param name="exceptionType">The <see cref="T:System.Type"></see> object that represents the exception.</param>
270 <exception cref="T:System.ArgumentException">The catch block is within a filtered exception.</exception>
271 <exception cref="T:System.ArgumentNullException"><paramref name="exceptionType">exceptionType</paramref> is <see langword="null"></see>, and the exception filter block has not returned a value that indicates that finally blocks should be run until this catch block is located.</exception>
272 <exception cref="T:System.NotSupportedException">The Microsoft intermediate language (MSIL) being generated is not currently in an exception block.</exception>
274 <member name="M:System.Reflection.Emit.ILGenerator.BeginExceptFilterBlock">
275 <summary>Begins an exception block for a filtered exception.</summary>
276 <exception cref="T:System.NotSupportedException">The Microsoft intermediate language (MSIL) being generated is not currently in an exception block.
278 This <see cref="System.Reflection.Emit.ILGenerator"></see> belongs to a <see cref="System.Reflection.Emit.DynamicMethod"></see>.</exception>
280 <member name="M:System.Reflection.Emit.ILGenerator.BeginExceptionBlock">
281 <summary>Begins an exception block for a non-filtered exception.</summary>
282 <returns>The label for the end of the block. This will leave you in the correct place to execute finally blocks or to finish the try.</returns>
284 <member name="M:System.Reflection.Emit.ILGenerator.BeginFaultBlock">
285 <summary>Begins an exception fault block in the Microsoft intermediate language (MSIL) stream.</summary>
286 <exception cref="T:System.NotSupportedException">The MSIL being generated is not currently in an exception block.
288 This <see cref="System.Reflection.Emit.ILGenerator"></see> belongs to a <see cref="System.Reflection.Emit.DynamicMethod"></see>.</exception>
290 <member name="M:System.Reflection.Emit.ILGenerator.BeginFinallyBlock">
291 <summary>Begins a finally block in the Microsoft intermediate language (MSIL) instruction stream.</summary>
292 <exception cref="T:System.NotSupportedException">The MSIL being generated is not currently in an exception block.</exception>
294 <member name="M:System.Reflection.Emit.ILGenerator.BeginScope">
295 <summary>Begins a lexical scope.</summary>
296 <exception cref="T:System.NotSupportedException">This <see cref="System.Reflection.Emit.ILGenerator"></see> belongs to a <see cref="System.Reflection.Emit.DynamicMethod"></see>.</exception>
298 <member name="M:System.Reflection.Emit.ILGenerator.DeclareLocal(System.Type)">
299 <summary>Declares a local variable of the specified type.</summary>
300 <param name="localType">A <see cref="T:System.Type"></see> object that represents the type of the local variable.</param>
301 <returns>The declared local variable.</returns>
302 <exception cref="T:System.ArgumentNullException"><paramref name="localType">localType</paramref> is <see langword="null"></see>.</exception>
303 <exception cref="T:System.InvalidOperationException">The containing type has been created by the <see cref="System.Reflection.Emit.TypeBuilder.CreateType"></see> method.</exception>
305 <member name="M:System.Reflection.Emit.ILGenerator.DeclareLocal(System.Type,System.Boolean)">
306 <summary>Declares a local variable of the specified type, optionally pinning the object referred to by the variable.</summary>
307 <param name="localType">A <see cref="T:System.Type"></see> object that represents the type of the local variable.</param>
308 <param name="pinned"><see langword="true"></see> to pin the object in memory; otherwise, <see langword="false"></see>.</param>
309 <returns>A <see cref="T:System.Reflection.Emit.LocalBuilder"></see> object that represents the local variable.</returns>
310 <exception cref="T:System.ArgumentNullException"><paramref name="localType">localType</paramref> is <see langword="null"></see>.</exception>
311 <exception cref="T:System.InvalidOperationException">The containing type has been created by the <see cref="System.Reflection.Emit.TypeBuilder.CreateType"></see> method.
313 The method body of the enclosing method has been created by the <see cref="System.Reflection.Emit.MethodBuilder.CreateMethodBody(System.Byte[],System.Int32)"></see> method.</exception>
314 <exception cref="T:System.NotSupportedException">The method with which this <see cref="System.Reflection.Emit.ILGenerator"></see> is associated is not represented by a <see cref="System.Reflection.Emit.MethodBuilder"></see>.</exception>
316 <member name="M:System.Reflection.Emit.ILGenerator.DefineLabel">
317 <summary>Declares a new label.</summary>
318 <returns>Returns a new label that can be used as a token for branching.</returns>
320 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Type)">
321 <summary>Puts the specified instruction onto the Microsoft intermediate language (MSIL) stream followed by the metadata token for the given type.</summary>
322 <param name="opcode">The MSIL instruction to be put onto the stream.</param>
323 <param name="cls">A <see langword="Type"></see>.</param>
324 <exception cref="T:System.ArgumentNullException"><paramref name="cls">cls</paramref> is <see langword="null"></see>.</exception>
326 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.String)">
327 <summary>Puts the specified instruction onto the Microsoft intermediate language (MSIL) stream followed by the metadata token for the given string.</summary>
328 <param name="opcode">The MSIL instruction to be emitted onto the stream.</param>
329 <param name="str">The <see langword="String"></see> to be emitted.</param>
331 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Single)">
332 <summary>Puts the specified instruction and numerical argument onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
333 <param name="opcode">The MSIL instruction to be put onto the stream.</param>
334 <param name="arg">The <see langword="Single"></see> argument pushed onto the stream immediately after the instruction.</param>
336 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.SByte)">
337 <summary>Puts the specified instruction and character argument onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
338 <param name="opcode">The MSIL instruction to be put onto the stream.</param>
339 <param name="arg">The character argument pushed onto the stream immediately after the instruction.</param>
341 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Reflection.FieldInfo)">
342 <summary>Puts the specified instruction and metadata token for the specified field onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
343 <param name="opcode">The MSIL instruction to be emitted onto the stream.</param>
344 <param name="field">A <see langword="FieldInfo"></see> representing a field.</param>
346 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.SignatureHelper)">
347 <summary>Puts the specified instruction and a signature token onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
348 <param name="opcode">The MSIL instruction to be emitted onto the stream.</param>
349 <param name="signature">A helper for constructing a signature token.</param>
350 <exception cref="T:System.ArgumentNullException"><paramref name="signature">signature</paramref> is <see langword="null"></see>.</exception>
352 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.LocalBuilder)">
353 <summary>Puts the specified instruction onto the Microsoft intermediate language (MSIL) stream followed by the index of the given local variable.</summary>
354 <param name="opcode">The MSIL instruction to be emitted onto the stream.</param>
355 <param name="local">A local variable.</param>
356 <exception cref="T:System.ArgumentException">The parent method of the <paramref name="local">local</paramref> parameter does not match the method associated with this <see cref="System.Reflection.Emit.ILGenerator"></see>.</exception>
357 <exception cref="T:System.ArgumentNullException"><paramref name="local">local</paramref> is <see langword="null"></see>.</exception>
358 <exception cref="T:System.InvalidOperationException"><paramref name="opcode">opcode</paramref> is a single-byte instruction, and <paramref name="local">local</paramref> represents a local variable with an index greater than <see langword="Byte.MaxValue"></see>.</exception>
360 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.Label[])">
361 <summary>Puts the specified instruction onto the Microsoft intermediate language (MSIL) stream and leaves space to include a label when fixes are done.</summary>
362 <param name="opcode">The MSIL instruction to be emitted onto the stream.</param>
363 <param name="labels">The array of label objects to which to branch from this location. All of the labels will be used.</param>
364 <exception cref="T:System.ArgumentNullException"><paramref name="con">con</paramref> is <see langword="null"></see>. This exception is new in the .NET Framework 4.</exception>
366 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Reflection.MethodInfo)">
367 <summary>Puts the specified instruction onto the Microsoft intermediate language (MSIL) stream followed by the metadata token for the given method.</summary>
368 <param name="opcode">The MSIL instruction to be emitted onto the stream.</param>
369 <param name="meth">A <see langword="MethodInfo"></see> representing a method.</param>
370 <exception cref="T:System.ArgumentNullException"><paramref name="meth">meth</paramref> is <see langword="null"></see>.</exception>
371 <exception cref="T:System.NotSupportedException"><paramref name="meth">meth</paramref> is a generic method for which the <see cref="System.Reflection.MethodBase.IsGenericMethodDefinition"></see> property is <see langword="false"></see>.</exception>
373 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Reflection.ConstructorInfo)">
374 <summary>Puts the specified instruction and metadata token for the specified constructor onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
375 <param name="opcode">The MSIL instruction to be emitted onto the stream.</param>
376 <param name="con">A <see langword="ConstructorInfo"></see> representing a constructor.</param>
377 <exception cref="T:System.ArgumentNullException"><paramref name="con">con</paramref> is <see langword="null"></see>. This exception is new in the .NET Framework 4.</exception>
379 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Int64)">
380 <summary>Puts the specified instruction and numerical argument onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
381 <param name="opcode">The MSIL instruction to be put onto the stream.</param>
382 <param name="arg">The numerical argument pushed onto the stream immediately after the instruction.</param>
384 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Int32)">
385 <summary>Puts the specified instruction and numerical argument onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
386 <param name="opcode">The MSIL instruction to be put onto the stream.</param>
387 <param name="arg">The numerical argument pushed onto the stream immediately after the instruction.</param>
389 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Int16)">
390 <summary>Puts the specified instruction and numerical argument onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
391 <param name="opcode">The MSIL instruction to be emitted onto the stream.</param>
392 <param name="arg">The <see langword="Int"></see> argument pushed onto the stream immediately after the instruction.</param>
394 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Double)">
395 <summary>Puts the specified instruction and numerical argument onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
396 <param name="opcode">The MSIL instruction to be put onto the stream. Defined in the <see langword="OpCodes"></see> enumeration.</param>
397 <param name="arg">The numerical argument pushed onto the stream immediately after the instruction.</param>
399 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Byte)">
400 <summary>Puts the specified instruction and character argument onto the Microsoft intermediate language (MSIL) stream of instructions.</summary>
401 <param name="opcode">The MSIL instruction to be put onto the stream.</param>
402 <param name="arg">The character argument pushed onto the stream immediately after the instruction.</param>
404 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode)">
405 <summary>Puts the specified instruction onto the stream of instructions.</summary>
406 <param name="opcode">The Microsoft Intermediate Language (MSIL) instruction to be put onto the stream.</param>
408 <member name="M:System.Reflection.Emit.ILGenerator.Emit(System.Reflection.Emit.OpCode,System.Reflection.Emit.Label)">
409 <summary>Puts the specified instruction onto the Microsoft intermediate language (MSIL) stream and leaves space to include a label when fixes are done.</summary>
410 <param name="opcode">The MSIL instruction to be emitted onto the stream.</param>
411 <param name="label">The label to which to branch from this location.</param>
413 <member name="M:System.Reflection.Emit.ILGenerator.EmitCall(System.Reflection.Emit.OpCode,System.Reflection.MethodInfo,System.Type[])">
414 <summary>Puts a <see langword="call"></see> or <see langword="callvirt"></see> instruction onto the Microsoft intermediate language (MSIL) stream to call a <see langword="varargs"></see> method.</summary>
415 <param name="opcode">The MSIL instruction to be emitted onto the stream. Must be <see cref="F:System.Reflection.Emit.OpCodes.Call"></see>, <see cref="F:System.Reflection.Emit.OpCodes.Callvirt"></see>, or <see cref="F:System.Reflection.Emit.OpCodes.Newobj"></see>.</param>
416 <param name="methodInfo">The <see langword="varargs"></see> method to be called.</param>
417 <param name="optionalParameterTypes">The types of the optional arguments if the method is a <see langword="varargs"></see> method; otherwise, <see langword="null"></see>.</param>
418 <exception cref="T:System.ArgumentException"><paramref name="opcode">opcode</paramref> does not specify a method call.</exception>
419 <exception cref="T:System.ArgumentNullException"><paramref name="methodInfo">methodInfo</paramref> is <see langword="null"></see>.</exception>
420 <exception cref="T:System.InvalidOperationException">The calling convention for the method is not <see langword="varargs"></see>, but optional parameter types are supplied. This exception is thrown in the .NET Framework versions 1.0 and 1.1, In subsequent versions, no exception is thrown.</exception>
422 <member name="M:System.Reflection.Emit.ILGenerator.EmitCalli(System.Reflection.Emit.OpCode,System.Runtime.InteropServices.CallingConvention,System.Type,System.Type[])">
423 <summary>Puts a <see cref="F:System.Reflection.Emit.OpCodes.Calli"></see> instruction onto the Microsoft intermediate language (MSIL) stream, specifying an unmanaged calling convention for the indirect call.</summary>
424 <param name="opcode">The MSIL instruction to be emitted onto the stream. Must be <see cref="F:System.Reflection.Emit.OpCodes.Calli"></see>.</param>
425 <param name="unmanagedCallConv">The unmanaged calling convention to be used.</param>
426 <param name="returnType">The <see cref="T:System.Type"></see> of the result.</param>
427 <param name="parameterTypes">The types of the required arguments to the instruction.</param>
429 <member name="M:System.Reflection.Emit.ILGenerator.EmitCalli(System.Reflection.Emit.OpCode,System.Reflection.CallingConventions,System.Type,System.Type[],System.Type[])">
430 <summary>Puts a <see cref="F:System.Reflection.Emit.OpCodes.Calli"></see> instruction onto the Microsoft intermediate language (MSIL) stream, specifying a managed calling convention for the indirect call.</summary>
431 <param name="opcode">The MSIL instruction to be emitted onto the stream. Must be <see cref="F:System.Reflection.Emit.OpCodes.Calli"></see>.</param>
432 <param name="callingConvention">The managed calling convention to be used.</param>
433 <param name="returnType">The <see cref="T:System.Type"></see> of the result.</param>
434 <param name="parameterTypes">The types of the required arguments to the instruction.</param>
435 <param name="optionalParameterTypes">The types of the optional arguments for <see langword="varargs"></see> calls.</param>
436 <exception cref="T:System.InvalidOperationException"><paramref name="optionalParameterTypes">optionalParameterTypes</paramref> is not <see langword="null"></see>, but <paramref name="callingConvention">callingConvention</paramref> does not include the <see cref="System.Reflection.CallingConventions.VarArgs"></see> flag.</exception>
438 <member name="M:System.Reflection.Emit.ILGenerator.EmitWriteLine(System.String)">
439 <summary>Emits the Microsoft intermediate language (MSIL) to call <see cref="Overload:System.Console.WriteLine"></see> with a string.</summary>
440 <param name="value">The string to be printed.</param>
442 <member name="M:System.Reflection.Emit.ILGenerator.EmitWriteLine(System.Reflection.FieldInfo)">
443 <summary>Emits the Microsoft intermediate language (MSIL) necessary to call <see cref="Overload:System.Console.WriteLine"></see> with the given field.</summary>
444 <param name="fld">The field whose value is to be written to the console.</param>
445 <exception cref="T:System.ArgumentException">There is no overload of the <see cref="System.Console.WriteLine*"></see> method that accepts the type of the specified field.</exception>
446 <exception cref="T:System.ArgumentNullException"><paramref name="fld">fld</paramref> is <see langword="null"></see>.</exception>
447 <exception cref="T:System.NotSupportedException">The type of the field is <see cref="System.Reflection.Emit.TypeBuilder"></see> or <see cref="System.Reflection.Emit.EnumBuilder"></see>, which are not supported.</exception>
449 <member name="M:System.Reflection.Emit.ILGenerator.EmitWriteLine(System.Reflection.Emit.LocalBuilder)">
450 <summary>Emits the Microsoft intermediate language (MSIL) necessary to call <see cref="Overload:System.Console.WriteLine"></see> with the given local variable.</summary>
451 <param name="localBuilder">The local variable whose value is to be written to the console.</param>
452 <exception cref="T:System.ArgumentException">The type of <paramref name="localBuilder">localBuilder</paramref> is <see cref="System.Reflection.Emit.TypeBuilder"></see> or <see cref="System.Reflection.Emit.EnumBuilder"></see>, which are not supported.
454 There is no overload of <see cref="System.Console.WriteLine*"></see> that accepts the type of <paramref name="localBuilder">localBuilder</paramref>.</exception>
455 <exception cref="T:System.ArgumentNullException"><paramref name="localBuilder">localBuilder</paramref> is <see langword="null"></see>.</exception>
457 <member name="M:System.Reflection.Emit.ILGenerator.EndExceptionBlock">
458 <summary>Ends an exception block.</summary>
459 <exception cref="T:System.InvalidOperationException">The end exception block occurs in an unexpected place in the code stream.</exception>
460 <exception cref="T:System.NotSupportedException">The Microsoft intermediate language (MSIL) being generated is not currently in an exception block.</exception>
462 <member name="M:System.Reflection.Emit.ILGenerator.EndScope">
463 <summary>Ends a lexical scope.</summary>
464 <exception cref="T:System.NotSupportedException">This <see cref="System.Reflection.Emit.ILGenerator"></see> belongs to a <see cref="System.Reflection.Emit.DynamicMethod"></see>.</exception>
466 <member name="P:System.Reflection.Emit.ILGenerator.ILOffset">
467 <summary>Gets the current offset, in bytes, in the Microsoft intermediate language (MSIL) stream that is being emitted by the <see cref="T:System.Reflection.Emit.ILGenerator"></see>.</summary>
468 <returns>The offset in the MSIL stream at which the next instruction will be emitted.</returns>
470 <member name="M:System.Reflection.Emit.ILGenerator.MarkLabel(System.Reflection.Emit.Label)">
471 <summary>Marks the Microsoft intermediate language (MSIL) stream&#39;s current position with the given label.</summary>
472 <param name="loc">The label for which to set an index.</param>
473 <exception cref="T:System.ArgumentException"><paramref name="loc">loc</paramref> represents an invalid index into the label array.
475 An index for <paramref name="loc">loc</paramref> has already been defined.</exception>
477 <member name="M:System.Reflection.Emit.ILGenerator.ThrowException(System.Type)">
478 <summary>Emits an instruction to throw an exception.</summary>
479 <param name="excType">The class of the type of exception to throw.</param>
480 <exception cref="T:System.ArgumentException"><paramref name="excType">excType</paramref> is not the <see cref="System.Exception"></see> class or a derived class of <see cref="System.Exception"></see>.
482 The type does not have a default constructor.</exception>
483 <exception cref="T:System.ArgumentNullException"><paramref name="excType">excType</paramref> is <see langword="null"></see>.</exception>
485 <member name="M:System.Reflection.Emit.ILGenerator.UsingNamespace(System.String)">
486 <summary>Specifies the namespace to be used in evaluating locals and watches for the current active lexical scope.</summary>
487 <param name="usingNamespace">The namespace to be used in evaluating locals and watches for the current active lexical scope</param>
488 <exception cref="T:System.ArgumentException">Length of <paramref name="usingNamespace">usingNamespace</paramref> is zero.</exception>
489 <exception cref="T:System.ArgumentNullException"><paramref name="usingNamespace">usingNamespace</paramref> is <see langword="null"></see>.</exception>
490 <exception cref="T:System.NotSupportedException">This <see cref="System.Reflection.Emit.ILGenerator"></see> belongs to a <see cref="System.Reflection.Emit.DynamicMethod"></see>.</exception>
492 <member name="T:System.Reflection.Emit.CustomAttributeBuilder">
493 <summary>Helps build custom attributes.</summary>
495 <member name="M:System.Reflection.Emit.CustomAttributeBuilder.#ctor(System.Reflection.ConstructorInfo,System.Object[])">
496 <summary>Initializes an instance of the <see langword="CustomAttributeBuilder"></see> class given the constructor for the custom attribute and the arguments to the constructor.</summary>
497 <param name="con">The constructor for the custom attribute.</param>
498 <param name="constructorArgs">The arguments to the constructor of the custom attribute.</param>
499 <exception cref="T:System.ArgumentException"><paramref name="con">con</paramref> is static or private.
501 The number of supplied arguments does not match the number of parameters of the constructor as required by the calling convention of the constructor.
503 The type of supplied argument does not match the type of the parameter declared in the constructor.
505 A supplied argument is a reference type other than <see cref="System.String"></see> or <see cref="System.Type"></see>.</exception>
506 <exception cref="T:System.ArgumentNullException"><paramref name="con">con</paramref> or <paramref name="constructorArgs">constructorArgs</paramref> is <see langword="null"></see>.</exception>
508 <member name="M:System.Reflection.Emit.CustomAttributeBuilder.#ctor(System.Reflection.ConstructorInfo,System.Object[],System.Reflection.FieldInfo[],System.Object[])">
509 <summary>Initializes an instance of the <see langword="CustomAttributeBuilder"></see> class given the constructor for the custom attribute, the arguments to the constructor, and a set of named field/value pairs.</summary>
510 <param name="con">The constructor for the custom attribute.</param>
511 <param name="constructorArgs">The arguments to the constructor of the custom attribute.</param>
512 <param name="namedFields">Named fields of the custom attribute.</param>
513 <param name="fieldValues">Values for the named fields of the custom attribute.</param>
514 <exception cref="T:System.ArgumentException">The lengths of the <paramref name="namedFields">namedFields</paramref> and <paramref name="fieldValues">fieldValues</paramref> arrays are different.
516 <paramref name="con">con</paramref> is static or private.
518 The number of supplied arguments does not match the number of parameters of the constructor as required by the calling convention of the constructor.
520 The type of supplied argument does not match the type of the parameter declared in the constructor.
522 The types of the field values do not match the types of the named fields.
524 The field does not belong to the same class or base class as the constructor.
526 A supplied argument or named field is a reference type other than <see cref="System.String"></see> or <see cref="System.Type"></see>.</exception>
527 <exception cref="T:System.ArgumentNullException">One of the parameters is <see langword="null"></see>.</exception>
529 <member name="M:System.Reflection.Emit.CustomAttributeBuilder.#ctor(System.Reflection.ConstructorInfo,System.Object[],System.Reflection.PropertyInfo[],System.Object[])">
530 <summary>Initializes an instance of the <see langword="CustomAttributeBuilder"></see> class given the constructor for the custom attribute, the arguments to the constructor, and a set of named property or value pairs.</summary>
531 <param name="con">The constructor for the custom attribute.</param>
532 <param name="constructorArgs">The arguments to the constructor of the custom attribute.</param>
533 <param name="namedProperties">Named properties of the custom attribute.</param>
534 <param name="propertyValues">Values for the named properties of the custom attribute.</param>
535 <exception cref="T:System.ArgumentException">The lengths of the <paramref name="namedProperties">namedProperties</paramref> and <paramref name="propertyValues">propertyValues</paramref> arrays are different.
537 <paramref name="con">con</paramref> is static or private.
539 The number of supplied arguments does not match the number of parameters of the constructor as required by the calling convention of the constructor.
541 The type of supplied argument does not match the type of the parameter declared in the constructor.
543 The types of the property values do not match the types of the named properties.
545 A property has no setter method.
547 The property does not belong to the same class or base class as the constructor.
549 A supplied argument or named property is a reference type other than <see cref="System.String"></see> or <see cref="System.Type"></see>.</exception>
550 <exception cref="T:System.ArgumentNullException">One of the parameters is <see langword="null"></see>.</exception>
552 <member name="M:System.Reflection.Emit.CustomAttributeBuilder.#ctor(System.Reflection.ConstructorInfo,System.Object[],System.Reflection.PropertyInfo[],System.Object[],System.Reflection.FieldInfo[],System.Object[])">
553 <summary>Initializes an instance of the <see langword="CustomAttributeBuilder"></see> class given the constructor for the custom attribute, the arguments to the constructor, a set of named property or value pairs, and a set of named field or value pairs.</summary>
554 <param name="con">The constructor for the custom attribute.</param>
555 <param name="constructorArgs">The arguments to the constructor of the custom attribute.</param>
556 <param name="namedProperties">Named properties of the custom attribute.</param>
557 <param name="propertyValues">Values for the named properties of the custom attribute.</param>
558 <param name="namedFields">Named fields of the custom attribute.</param>
559 <param name="fieldValues">Values for the named fields of the custom attribute.</param>
560 <exception cref="T:System.ArgumentException">The lengths of the <paramref name="namedProperties">namedProperties</paramref> and <paramref name="propertyValues">propertyValues</paramref> arrays are different.
562 The lengths of the <paramref name="namedFields">namedFields</paramref> and <paramref name="fieldValues">fieldValues</paramref> arrays are different.
564 <paramref name="con">con</paramref> is static or private.
566 The number of supplied arguments does not match the number of parameters of the constructor as required by the calling convention of the constructor.
568 The type of supplied argument does not match the type of the parameter declared in the constructor.
570 The types of the property values do not match the types of the named properties.
572 The types of the field values do not match the types of the corresponding field types.
574 A property has no setter.
576 The property or field does not belong to the same class or base class as the constructor.
578 A supplied argument, named property, or named field is a reference type other than <see cref="System.String"></see> or <see cref="System.Type"></see>.</exception>
579 <exception cref="T:System.ArgumentNullException">One of the parameters is <see langword="null"></see>.</exception>