Ejemplo n.º 1
0
 public Frame getNextFrame() {
   int index = frameIndex;
   Frame[] stack = frameStack;
   if (index + 1 == stack.length) {
     expandFramesIfNecessary();
   }
   return stack[index + 1];
 }
Ejemplo n.º 2
0
 private void pushFrame() {
   int index = ++this.frameIndex;
   Frame[] stack = frameStack;
   stack[index].updateFrame(file, line);
   if (index + 1 == stack.length) {
     expandFramesIfNecessary();
   }
 }
Ejemplo n.º 3
0
 private void pushEvalFrame(IRubyObject self) {
   int index = ++this.frameIndex;
   Frame[] stack = frameStack;
   stack[index].updateFrameForEval(self, file, line);
   if (index + 1 == stack.length) {
     expandFramesIfNecessary();
   }
 }
Ejemplo n.º 4
0
 private void pushCallFrame(RubyModule clazz, String name, IRubyObject self, Block block) {
   int index = ++this.frameIndex;
   Frame[] stack = frameStack;
   stack[index].updateFrame(clazz, self, name, block, file, line);
   if (index + 1 == stack.length) {
     expandFramesIfNecessary();
   }
 }
Ejemplo n.º 5
0
 private Frame pushFrame(Frame frame) {
   int index = ++this.frameIndex;
   Frame[] stack = frameStack;
   stack[index] = frame;
   if (index + 1 == stack.length) {
     expandFramesIfNecessary();
   }
   return frame;
 }
Ejemplo n.º 6
0
 //////////////////// FRAME MANAGEMENT ////////////////////////
 private void pushFrameCopy() {
   int index = ++this.frameIndex;
   Frame[] stack = frameStack;
   Frame currentFrame = stack[index - 1];
   stack[index].updateFrame(currentFrame);
   if (index + 1 == stack.length) {
     expandFramesIfNecessary();
   }
 }