public class BuildLambdaInstr extends ResultBaseInstr implements FixedArityInstr, ClosureAcceptingInstr
result
EMPTY_OPERANDS, operands
Constructor and Description |
---|
BuildLambdaInstr(Variable result,
Operand lambdaBody,
String file,
int line) |
Modifier and Type | Method and Description |
---|---|
Instr |
clone(CloneInfo ii)
Clone the instruction for use in an inlining context (either when a scope is inlined into
another scope, or when a block has to be cloned because its associated call belongs to
an inlined scope).
|
boolean |
computeScopeFlags(IRScope scope)
Does this instruction do anything the scope is interested in?
|
static BuildLambdaInstr |
decode(IRReaderDecoder d) |
void |
encode(IRWriterEncoder e) |
Operand |
getClosureArg() |
String |
getFile() |
Operand |
getLambdaBody() |
int |
getLine() |
Object |
interpret(ThreadContext context,
StaticScope currScope,
DynamicScope currDynScope,
IRubyObject self,
Object[] temp) |
void |
visit(IRVisitor visitor) |
getResult, updateResult
canBeDeleted, canRaiseException, cloneOperands, getIPC, getOperands, getOperation, getRPC, getUsedVariables, hasSideEffects, interpretAndGetNewIPC, isDead, markDead, renameVars, setIPC, setRPC, simplifyAndGetResult, simplifyOperands, toString, toStringNonOperandArgs, transfersControl
public String getFile()
public int getLine()
public boolean computeScopeFlags(IRScope scope)
Instr
computeScopeFlags
in class Instr
public Instr clone(CloneInfo ii)
Instr
public Operand getLambdaBody()
public Operand getClosureArg()
getClosureArg
in interface ClosureAcceptingInstr
public void encode(IRWriterEncoder e)
encode
in class ResultBaseInstr
public static BuildLambdaInstr decode(IRReaderDecoder d)
public Object interpret(ThreadContext context, StaticScope currScope, DynamicScope currDynScope, IRubyObject self, Object[] temp)
Copyright © 2001-2015 JRuby. All Rights Reserved.