public class BuildLambdaInstr extends OneOperandResultBaseInstr implements FixedArityInstr, ClosureAcceptingInstr
result
EMPTY_OPERANDS
Constructor and Description |
---|
BuildLambdaInstr(Variable result,
WrappedIRClosure lambdaBody)
The position for the block
|
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,
java.util.EnumSet<IRFlags> flags)
Does this instruction do anything the scope is interested in?
|
static BuildLambdaInstr |
decode(IRReaderDecoder d) |
void |
encode(IRWriterEncoder e) |
Operand |
getClosureArg() |
WrappedIRClosure |
getLambdaBody() |
boolean |
hasLiteralClosure() |
java.lang.Object |
interpret(ThreadContext context,
StaticScope currScope,
DynamicScope currDynScope,
IRubyObject self,
java.lang.Object[] temp) |
void |
visit(IRVisitor visitor) |
getOperand1, getOperands, setOperand, setOperand1
getResult, updateResult
canBeDeletedFromScope, canRaiseException, cloneOperands, dumpableFields, getOperation, getUsedVariables, hasSideEffects, interpretAndGetNewIPC, isDead, isDeletable, markDead, renameVars, simplifyAndGetResult, simplifyOperands, toString, toStringNonOperandArgs, transfersControl
public BuildLambdaInstr(Variable result, WrappedIRClosure lambdaBody)
public boolean computeScopeFlags(IRScope scope, java.util.EnumSet<IRFlags> flags)
Instr
computeScopeFlags
in class Instr
public Instr clone(CloneInfo ii)
Instr
public WrappedIRClosure getLambdaBody()
public Operand getClosureArg()
getClosureArg
in interface ClosureAcceptingInstr
public boolean hasLiteralClosure()
hasLiteralClosure
in interface ClosureAcceptingInstr
public void encode(IRWriterEncoder e)
encode
in class ResultBaseInstr
public static BuildLambdaInstr decode(IRReaderDecoder d)
public java.lang.Object interpret(ThreadContext context, StaticScope currScope, DynamicScope currDynScope, IRubyObject self, java.lang.Object[] temp)
Copyright © 2001-2022 JRuby. All Rights Reserved.