Beispiel #1
0
 static public T CreateDynamicConstructorCallerDelegate <T>(this ConstructorInfo item)
 {
     return(item.CreateDynamicMethodDelegate <T>("Caller", delegate(MethodBase method) {
         return new ILReturn(
             new ILNew(
                 item,
                 item.GetAllTechnicalILParameters()
                 .Convert <ILParameter, ILValue>()
                 )
             );
     }));
 }
Beispiel #2
0
        static public T CreateDynamicConstructorInvokerDelegate <T>(this ConstructorInfo item)
        {
            return(item.CreateDynamicMethodDelegate <T>("Invoker", delegate(MethodBase method) {
                ILParameter arguments = method.GetTechnicalILParameter(0);

                return new ILReturn(
                    new ILNew(
                        item,
                        arguments.GetILExpandedParams(item)
                        )
                    );
            }));
        }