Package org.jruby.ir.interpreter
Class InterpreterContext
java.lang.Object
org.jruby.ir.interpreter.InterpreterContext
- Direct Known Subclasses:
ClosureInterpreterContext
,ExitableInterpreterContext
,FullInterpreterContext
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected boolean
protected boolean
protected Instr[]
protected int[]
protected int
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean[]
long[]
double[]
Object[]
void
getCFG()
getFlags()
Instr[]
int
getLine()
getName()
int
int[]
getScope()
int
boolean
protected void
boolean
boolean
isEND()
boolean
newDynamicScope
(ThreadContext context) Get a new dynamic scope.boolean
boolean
boolean
boolean
void
setDynamicScopeEliminated
(boolean dynamicScopeEliminated) void
setExplicitCallProtocol
(boolean callProtocol) void
setReuseParentDynScope
(boolean reuseParentDynScope) toString()
-
Field Details
-
temporaryVariableCount
protected int temporaryVariableCount -
instructions
-
rescueIPCs
protected volatile int[] rescueIPCs -
hasExplicitCallProtocol
protected boolean hasExplicitCallProtocol -
dynamicScopeEliminated
protected boolean dynamicScopeEliminated -
instructionsCallback
-
-
Constructor Details
-
InterpreterContext
-
InterpreterContext
-
-
Method Details
-
initialize
protected void initialize() -
getEngine
-
getInstructions
-
getRescueIPCs
public int[] getRescueIPCs() -
getRequiredArgsCount
public int getRequiredArgsCount() -
getScope
-
getCFG
-
getTemporaryVariableCount
public int getTemporaryVariableCount() -
allocateTemporaryVariables
-
allocateTemporaryBooleanVariables
public boolean[] allocateTemporaryBooleanVariables() -
allocateTemporaryFixnumVariables
public long[] allocateTemporaryFixnumVariables() -
allocateTemporaryFloatVariables
public double[] allocateTemporaryFloatVariables() -
getStaticScope
-
getFileName
-
getLine
public int getLine() -
getName
-
computeScopeFlagsFromInstructions
public void computeScopeFlagsFromInstructions() -
newDynamicScope
Get a new dynamic scope. Note: This only works for method scopes (ClosureIC will throw). -
hasExplicitCallProtocol
public boolean hasExplicitCallProtocol() -
setExplicitCallProtocol
public void setExplicitCallProtocol(boolean callProtocol) -
isDynamicScopeEliminated
public boolean isDynamicScopeEliminated() -
setDynamicScopeEliminated
public void setDynamicScopeEliminated(boolean dynamicScopeEliminated) -
isEND
public boolean isEND() -
pushNewDynScope
public boolean pushNewDynScope() -
reuseParentDynScope
public boolean reuseParentDynScope() -
setReuseParentDynScope
public void setReuseParentDynScope(boolean reuseParentDynScope) -
popDynScope
public boolean popDynScope() -
receivesKeywordArguments
public boolean receivesKeywordArguments() -
isRuby2Keywords
public boolean isRuby2Keywords() -
toString
-
toStringInstrs
-
getFlags
-