public class Regexp extends Operand
| Modifier and Type | Field and Description |
|---|---|
RegexpOptions |
options |
private Operand |
regexp |
private RubyRegexp |
rubyRegexp |
EMPTY_ARRAY| Constructor and Description |
|---|
Regexp(Operand regexp,
RegexpOptions options) |
| 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 |
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).
|
java.lang.Object |
retrieve(ThreadContext context,
IRubyObject self,
DynamicScope currDynScope,
java.lang.Object[] temp) |
java.lang.String |
toString() |
void |
visit(IRVisitor visitor) |
canCopyPropagate, fetchCompileTimeArrayElement, getValuepublic final RegexpOptions options
private final Operand regexp
private RubyRegexp rubyRegexp
public Regexp(Operand regexp, RegexpOptions options)
public boolean hasKnownValue()
OperandhasKnownValue in class Operandpublic java.lang.String toString()
toString in class java.lang.Objectpublic 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)