32using System.Reflection;
33using System.Reflection.Emit;
39 partial class RuntimeByteCodeJavaType
42 private sealed partial class JavaTypeImpl
45 sealed class DelegateConstructorMethodWrapper : RuntimeJavaMethod
48 MethodBuilder constructor;
56 internal DelegateConstructorMethodWrapper(RuntimeByteCodeJavaType tw, ClassFile.Method m) :
62 internal void DoLink(TypeBuilder typeBuilder)
64 var attribs = MethodAttributes.HideBySig | MethodAttributes.Public;
65 constructor = ReflectUtil.DefineConstructor(typeBuilder, attribs,
new Type[] { DeclaringType.Context.
Types.
Object, DeclaringType.Context.Types.IntPtr });
66 constructor.SetImplementationFlags(MethodImplAttributes.Runtime);
67 var mw = GetParameters()[0].GetMethods()[0];
72 internal override void EmitNewobj(CodeEmitter ilgen)
74 ilgen.Emit(OpCodes.Dup);
75 ilgen.Emit(OpCodes.Ldvirtftn, invoke);
76 ilgen.Emit(OpCodes.Newobj, constructor);
IKVM.Reflection.Type Type
IKVM.Reflection.MethodInfo MethodInfo
global::java.lang.invoke.LambdaForm.Name Name
Types Types
Gets the Types associated with this instance of the runtime.
MemberFlags
Describes various options applied to a member.