예제 #1
0
 public ILDynamicTypeImpl(string name, Type baseType, Type[] interfaces)
 {
     _name                  = name + (counter++) + ".dll";
     _assemblyBuilder       = AssemblyBuilder.DefineDynamicAssembly(new AssemblyName(name), AssemblyBuilderAccess.RunAndCollect);
     _moduleBuilder         = _assemblyBuilder.DefineDynamicModule(_name);
     _typeBuilder           = _moduleBuilder.DefineType(name, TypeAttributes.Public, baseType, interfaces);
     _forbiddenInstructions = new IilGenForbiddenInstructionsCheating(_typeBuilder);
 }
예제 #2
0
        public ILConstructorImpl(ConstructorBuilder constructor, IILGenForbiddenInstructions forbiddenInstructions,
                                 string[] parameterNames)
        {
            _constructor           = constructor;
            _forbiddenInstructions = forbiddenInstructions;
            _expectedLength        = 64;

            DefineParameterNames(parameterNames);
        }
예제 #3
0
파일: ILGenImpl.cs 프로젝트: yardee/BTDB
 public ILGenImpl(ILGenerator ilGenerator, IILGenForbiddenInstructions forbiddenInstructions)
 {
     _ilGenerator           = ilGenerator;
     _forbiddenInstructions = forbiddenInstructions;
 }
예제 #4
0
 public ILMethodImpl(MethodBuilder method, IILGenForbiddenInstructions forbiddenInstructions)
 {
     _method = method;
     _forbiddenInstructions = forbiddenInstructions;
     _expectedLength        = 64;
 }