public CLRFFIFunctionPointer(CLRDLLModule module, string name, MemberInfo info, List <ProtoCore.Type> argTypes, ProtoCore.Type returnType) { Module = module; Name = name; ReflectionInfo = FFIMemberInfo.CreateFrom(info); mArgTypes = argTypes == null?GetArgumentTypes() : argTypes.ToArray(); mReturnType = returnType; }
private ProtoCore.Type[] GetArgumentTypes(FFIMemberInfo member) { return(member.GetParameters().Select( pi => CLRModuleType.GetProtoCoreType(pi.ParameterType, Module) ).ToArray()); }
private ProtoCore.Type[] GetArgumentTypes(FFIMemberInfo member) { return member.GetParameters().Select( pi => CLRModuleType.GetProtoCoreType(pi.ParameterType, Module) ).ToArray(); }
public CLRFFIFunctionPointer(CLRDLLModule module, string name, MemberInfo info, List<ProtoCore.Type> argTypes, ProtoCore.Type returnType) { Module = module; Name = name; ReflectionInfo = FFIMemberInfo.CreateFrom(info); if (argTypes == null) mArgTypes = GetArgumentTypes(ReflectionInfo); else mArgTypes = argTypes.ToArray(); mReturnType = returnType; }