public class CurrentScope extends Operand
| Modifier and Type | Field and Description |
|---|---|
private IRScope |
scope |
EMPTY_ARRAY| Constructor and Description |
|---|
CurrentScope(IRScope scope) |
| Modifier and Type | Method and Description |
|---|---|
void |
addUsedVariables(java.util.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(InlinerInfo ii) |
IRScope |
getScope() |
java.lang.Object |
retrieve(ThreadContext context,
IRubyObject self,
DynamicScope currDynScope,
java.lang.Object[] temp) |
java.lang.String |
toString() |
void |
visit(IRVisitor visitor) |
fetchCompileTimeArrayElement, getSimplifiedOperand, getValue, hasKnownValueprivate final IRScope scope
public CurrentScope(IRScope scope)
public void addUsedVariables(java.util.List<Variable> l)
OperandaddUsedVariables in class Operandpublic Operand cloneForInlining(InlinerInfo ii)
cloneForInlining in class Operandpublic IRScope getScope()
public boolean canCopyPropagate()
OperandcanCopyPropagate in class Operandpublic java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.Object retrieve(ThreadContext context, IRubyObject self, DynamicScope currDynScope, java.lang.Object[] temp)