PushFrameInstr.java
- package org.jruby.ir.instructions;
- import org.jruby.ir.IRVisitor;
- import org.jruby.ir.Operation;
- import org.jruby.ir.operands.Operand;
- import org.jruby.ir.transformations.inlining.CloneInfo;
- import org.jruby.ir.transformations.inlining.SimpleCloneInfo;
- public class PushFrameInstr extends Instr implements FixedArityInstr {
- private final String frameName;
- public PushFrameInstr(String frameName) {
- super(Operation.PUSH_FRAME);
- this.frameName = frameName;
- }
- @Override
- public Operand[] getOperands() {
- return EMPTY_OPERANDS;
- }
- public String getFrameName() {
- return frameName;
- }
- @Override
- public Instr clone(CloneInfo ii) {
- return ii instanceof SimpleCloneInfo ? this : NopInstr.NOP; // FIXME: Is this correct?
- }
- @Override
- public void visit(IRVisitor visitor) {
- visitor.PushFrameInstr(this);
- }
- }