예제 #1
0
        /// <summary>
        /// Build method generator from given method info.
        /// </summary>
        /// <param name="definition">Type where method is defined.</param>
        /// <param name="method">Method info defining method.</param>
        /// <param name="methodName">Name of defined method.</param>
        /// <param name="forceStatic">if set to <c>true</c> [force static].</param>
        /// <returns>Builder where method is built.</returns>
        private RuntimeMethodGenerator buildMethod(RuntimeTypeDefinition definition, MethodInfo method, string methodName, bool forceStatic = false)
        {
            var builder = new MethodBuilder(definition, methodName, forceStatic);

            builder.ThisObjectExpression = builder.DeclaringDefinitionConstant;
            builder.AdapterFor(method);
            return(builder.Build());
        }