public class WrappedIRClosure extends Operand
EMPTY_ARRAY
Constructor and Description |
---|
WrappedIRClosure(Variable self,
IRClosure closure) |
Modifier and Type | Method and Description |
---|---|
void |
addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list -- force every operand
to implement this because a missing implementation can cause bad failures.
|
boolean |
canCopyPropagate()
Can we replace every use of a variable 'v' that contains the value of this operand
with the operand itself? This takes importance when there are at least two uses
of 'v' within this scope.
|
Operand |
cloneForInlining(CloneInfo info) |
static WrappedIRClosure |
decode(IRReaderDecoder d) |
void |
encode(IRWriterEncoder e) |
IRClosure |
getClosure() |
OperandType |
getOperandType() |
Variable |
getSelf() |
Operand |
getSimplifiedOperand(Map<Operand,Operand> valueMap,
boolean force) |
Object |
retrieve(ThreadContext context,
IRubyObject self,
StaticScope currScope,
DynamicScope currDynScope,
Object[] temp) |
String |
toString() |
void |
visit(IRVisitor visitor) |
getValue, hasKnownValue
public OperandType getOperandType()
getOperandType
in class Operand
public void addUsedVariables(List<Variable> l)
Operand
addUsedVariables
in class Operand
public Variable getSelf()
public IRClosure getClosure()
public boolean canCopyPropagate()
Operand
canCopyPropagate
in class Operand
public Operand getSimplifiedOperand(Map<Operand,Operand> valueMap, boolean force)
getSimplifiedOperand
in class Operand
public Operand cloneForInlining(CloneInfo info)
cloneForInlining
in class Operand
public Object retrieve(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope currDynScope, Object[] temp)
public void encode(IRWriterEncoder e)
public static WrappedIRClosure decode(IRReaderDecoder d)
Copyright © 2001-2015 JRuby. All Rights Reserved.