Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ AddOneArgTypeHelper() [3/3]

void System.Reflection.Emit.SignatureHelper.AddOneArgTypeHelper ( Type clsArgument,
Type[] requiredCustomModifiers,
Type[] optionalCustomModifiers )
inlineprivate

Definition at line 239 of file SignatureHelper.cs.

240 {
241 if (optionalCustomModifiers != null)
242 {
243 foreach (Type type in optionalCustomModifiers)
244 {
245 if (type == null)
246 {
247 throw new ArgumentNullException("optionalCustomModifiers");
248 }
249 if (type.HasElementType)
250 {
251 throw new ArgumentException(SR.Argument_ArraysInvalid, "optionalCustomModifiers");
252 }
253 if (type.ContainsGenericParameters)
254 {
255 throw new ArgumentException(SR.Argument_GenericsInvalid, "optionalCustomModifiers");
256 }
257 AddElementType(CorElementType.ELEMENT_TYPE_CMOD_OPT);
258 int typeToken = m_module.GetTypeToken(type);
259 AddToken(typeToken);
260 }
261 }
262 if (requiredCustomModifiers != null)
263 {
264 foreach (Type type2 in requiredCustomModifiers)
265 {
266 if (type2 == null)
267 {
268 throw new ArgumentNullException("requiredCustomModifiers");
269 }
270 if (type2.HasElementType)
271 {
272 throw new ArgumentException(SR.Argument_ArraysInvalid, "requiredCustomModifiers");
273 }
274 if (type2.ContainsGenericParameters)
275 {
276 throw new ArgumentException(SR.Argument_GenericsInvalid, "requiredCustomModifiers");
277 }
278 AddElementType(CorElementType.ELEMENT_TYPE_CMOD_REQD);
279 int typeToken2 = m_module.GetTypeToken(type2);
280 AddToken(typeToken2);
281 }
282 }
283 AddOneArgTypeHelper(clsArgument);
284 }
void AddOneArgTypeHelper(Type argument, bool pinned)
void AddElementType(CorElementType cvt)

References System.Reflection.Emit.SignatureHelper.AddElementType(), System.Reflection.Emit.SignatureHelper.AddOneArgTypeHelper(), System.Reflection.Emit.SignatureHelper.AddToken(), System.SR.Argument_ArraysInvalid, System.SR.Argument_GenericsInvalid, System.Type.ContainsGenericParameters, System.Reflection.Emit.ModuleBuilder.GetTypeToken(), System.Type.HasElementType, System.Reflection.Emit.SignatureHelper.m_module, and System.type.