private static void LoadArgsTo(this MethodDefinition that, DynamicMethodInfo info)
        {
            if (!that.IsStatic)
            {
                info.WithParameter <int>("$this");
            }

            foreach (var arg in that.Parameters)
            {
                info.WithParameter(Type.GetType(arg.ParameterType.FullName), arg.Name);
            }
        }
Exemple #2
0
 private static void MultiplyMethodDefinition(DynamicMethodInfo m)
 {
     m.WithParameter(typeof(int), "a")
     .WithParameter(typeof(int), "b")
     .Returns(typeof(int))
     .Ldarg("a")
     .Ldarg("b")
     .Mul()
     .Ret();
 }
Exemple #3
0
        public static DynamicMethodBody NewMethod
            (Type returnType, params Type[] parameterTypes)
        {
            var result = new DynamicMethodInfo();

            foreach (Type param in parameterTypes)
            {
                result.WithParameter(param);
            }

            result.Returns(returnType);

            return(result.Body);
        }
        private static void LoadArgsTo(this MethodDefinition that, DynamicMethodInfo info)
        {
            if (!that.IsStatic)
                info.WithParameter<int>("$this");

            foreach (var arg in that.Parameters)
            {
                info.WithParameter(Type.GetType(arg.ParameterType.FullName), arg.Name);
            }
        }
Exemple #5
0
 private static void MultiplyMethodDefinition(DynamicMethodInfo m)
 {
     m.WithParameter(typeof(int), "a")
      .WithParameter(typeof(int), "b")
      .Returns(typeof(int))
      .Ldarg("a")
      .Ldarg("b")
      .Mul()
      .Ret();
 }