public static int RegisterCallConversionInfo(ThunkKind thunkKind, IntPtr targetPointer, RuntimeSignature methodSignature, IntPtr instantiatingArg, RuntimeTypeHandle[] typeArgs, RuntimeTypeHandle[] methodArgs) { CallConversionInfo newConversionInfo = new CallConversionInfo(); newConversionInfo._registrationKind = CallConversionInfoRegistrationKind.UsesMethodSignatureAndGenericArgs; newConversionInfo._thunkKind = thunkKind; newConversionInfo._targetFunctionPointer = targetPointer; newConversionInfo._methodSignature = methodSignature; newConversionInfo._instantiatingArg = instantiatingArg; newConversionInfo._typeArgs = typeArgs; newConversionInfo._methodArgs = methodArgs; newConversionInfo._signatureParsed = false; return(AddConverter(newConversionInfo)); }
public static int RegisterCallConversionInfo(ThunkKind thunkKind, IntPtr targetPointer, IntPtr instantiatingArg, ArgIteratorData argIteratorData, bool[] paramsByRefForced) { Debug.Assert(argIteratorData != null); CallConversionInfo newConversionInfo = new CallConversionInfo(); newConversionInfo._registrationKind = CallConversionInfoRegistrationKind.UsesArgIteratorData; newConversionInfo._thunkKind = thunkKind; newConversionInfo._targetFunctionPointer = targetPointer; newConversionInfo._instantiatingArg = instantiatingArg; newConversionInfo._argIteratorData = argIteratorData; newConversionInfo._paramsByRefForced = paramsByRefForced; newConversionInfo._signatureParsed = true; return(AddConverter(newConversionInfo)); }
public static int RegisterCallConversionInfo(ThunkKind thunkKind, IntPtr targetPointer, IntPtr instantiatingArg, bool hasThis, TypeHandle returnType, TypeHandle[] parameterTypes, bool[] paramsByRefForced) { CallConversionInfo newConversionInfo = new CallConversionInfo(); newConversionInfo._registrationKind = CallConversionInfoRegistrationKind.UsesArgIteratorData; newConversionInfo._thunkKind = thunkKind; newConversionInfo._targetFunctionPointer = targetPointer; newConversionInfo._instantiatingArg = instantiatingArg; newConversionInfo._argIteratorData = new ArgIteratorData(hasThis, false, parameterTypes, returnType); newConversionInfo._paramsByRefForced = paramsByRefForced; newConversionInfo._signatureParsed = true; return(AddConverter(newConversionInfo)); }