Ejemplo n.º 1
0
        public void Execute()
        {
            var methodAttributes = MethodAttributes.Public;

            if (isOverride)
            {
                methodAttributes |= MethodAttributes.Virtual;
            }

            methodBuilder = builderBundle().TypeBuilder.DefineMethod(
                methodName()(),
                methodAttributes,
                returnType()(), parameterTypes());

            int counter = 1;

            foreach (Type type in this.parameterTypes())
            {
                methodBuilder.DefineParameter(counter, ParameterAttributes.None, type.Name + "_" + counter);
                counter++;
            }

            this.MethodBuilder = new MethodBuilderBundle(builderBundle(), methodBuilder)
            {
                TypeBuilder = builderBundle().TypeBuilder
            };
        }
Ejemplo n.º 2
0
        public void Execute()
        {
            var methodAttributes = MethodAttributes.Public;
            if (isOverride) methodAttributes |= MethodAttributes.Virtual;

            methodBuilder = builderBundle().TypeBuilder.DefineMethod(
                methodName()(),
                methodAttributes,
                returnType()(), parameterTypes());

            int counter = 1;
            foreach (Type type in this.parameterTypes())
            {
                methodBuilder.DefineParameter(counter, ParameterAttributes.None, type.Name + "_" + counter);
                counter++;
            }

            this.MethodBuilder = new MethodBuilderBundle(builderBundle(), methodBuilder)
                                     {TypeBuilder = builderBundle().TypeBuilder};
        }