public class Range extends Operand
| Modifier and Type | Field and Description |
|---|---|
private Operand |
begin |
private Operand |
end |
private boolean |
exclusive |
EMPTY_ARRAY| Constructor and Description |
|---|
Range(Operand begin,
Operand end,
boolean exclusive) |
| 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
|
Operand |
cloneForInlining(InlinerInfo ii) |
Operand |
fetchCompileTimeArrayElement(int argIndex,
boolean getSubArray) |
Operand |
getBegin() |
Operand |
getEnd() |
Operand |
getSimplifiedOperand(java.util.Map<Operand,Operand> valueMap,
boolean force) |
boolean |
hasKnownValue()
Do we know the value of this operand at compile-time?
If we do then it may be possible to constant propagate (one case:
We also know it is also an ImmutableLiteral).
|
boolean |
isExclusive() |
java.lang.Object |
retrieve(ThreadContext context,
IRubyObject self,
DynamicScope currDynScope,
java.lang.Object[] temp) |
java.lang.String |
toString() |
void |
visit(IRVisitor visitor) |
canCopyPropagate, getValueprivate final Operand begin
private final Operand end
private boolean exclusive
public Operand getBegin()
public Operand getEnd()
public boolean isExclusive()
public java.lang.String toString()
toString in class java.lang.Objectpublic boolean hasKnownValue()
OperandhasKnownValue in class Operandpublic Operand fetchCompileTimeArrayElement(int argIndex, boolean getSubArray)
fetchCompileTimeArrayElement in class Operandpublic Operand getSimplifiedOperand(java.util.Map<Operand,Operand> valueMap, boolean force)
getSimplifiedOperand in class Operandpublic void addUsedVariables(java.util.List<Variable> l)
addUsedVariables in class Operandpublic Operand cloneForInlining(InlinerInfo ii)
cloneForInlining in class Operandpublic java.lang.Object retrieve(ThreadContext context, IRubyObject self, DynamicScope currDynScope, java.lang.Object[] temp)