示例#1
0
 internal CodeBlock(CodeBlock parent, bool continuableBlock)
 {
     this.Clazz      = parent.Clazz;
     this._emitter   = parent._emitter;
     parent._emitter = InvalidState.InSubBlock;
     this._parent    = parent;
     //copy over local variables from parent
     this.LocalVariables    = copy(parent.LocalVariables);
     this._continuableBlock = continuableBlock;
 }
示例#2
0
 internal CodeBlock(ClassGenerator clazz, MethodEmitter emitter, params Parameter[] parameters)
 {
     this.Clazz             = clazz;
     this._emitter          = emitter;
     this._parent           = null;
     this._continuableBlock = false;
     LocalVariables.createNew(clazz.Handle(), "this");
     foreach (Parameter parameter in parameters)
     {
         LocalVariables.createNew(parameter.Type(), parameter.Name());
     }
 }