public class Hash extends Operand
| Modifier and Type | Field and Description |
|---|---|
boolean |
isKWArgsHash |
List<KeyValuePair<Operand,Operand>> |
pairs |
EMPTY_ARRAY| Constructor and Description |
|---|
Hash(List<KeyValuePair<Operand,Operand>> pairs) |
Hash(List<KeyValuePair<Operand,Operand>> pairs,
boolean isKWArgsHash) |
| Modifier and Type | Method and Description |
|---|---|
void |
addUsedVariables(List<Variable> l)
Append the list of variables used in this operand to the input list
|
Operand |
cloneForInlining(CloneInfo ii) |
Operand |
cloneForLVarDepth(int newDepth) |
static Hash |
decode(IRReaderDecoder d) |
void |
encode(IRWriterEncoder e) |
List<KeyValuePair<Operand,Operand>> |
getPairs() |
Operand |
getSimplifiedOperand(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 |
isBlank() |
Object |
retrieve(ThreadContext context,
IRubyObject self,
StaticScope currScope,
DynamicScope currDynScope,
Object[] temp) |
String |
toString() |
void |
visit(IRVisitor visitor) |
canCopyPropagate, getOperandType, getValuepublic final List<KeyValuePair<Operand,Operand>> pairs
public final boolean isKWArgsHash
public Hash(List<KeyValuePair<Operand,Operand>> pairs, boolean isKWArgsHash)
public Hash(List<KeyValuePair<Operand,Operand>> pairs)
public boolean isBlank()
public boolean hasKnownValue()
OperandhasKnownValue in class Operandpublic Operand getSimplifiedOperand(Map<Operand,Operand> valueMap, boolean force)
getSimplifiedOperand in class Operandpublic void addUsedVariables(List<Variable> l)
addUsedVariables in class Operandpublic Operand cloneForLVarDepth(int newDepth)
public Operand cloneForInlining(CloneInfo ii)
cloneForInlining in class Operandpublic Object retrieve(ThreadContext context, IRubyObject self, StaticScope currScope, DynamicScope currDynScope, Object[] temp)
public void encode(IRWriterEncoder e)
public static Hash decode(IRReaderDecoder d)
public List<KeyValuePair<Operand,Operand>> getPairs()
Copyright © 2001-2015 JRuby. All Rights Reserved.