public class IREvalScript extends IRClosure
closureId, endLabel, startLabelbooleanVariableIndex, fixnumVariableIndex, floatVariableIndex, interpreterContext, temporaryVariableIndex| Constructor and Description |
|---|
IREvalScript(IRManager manager,
IRScope lexicalParent,
String fileName,
int lineNumber,
StaticScope staticScope,
EvalType evalType) |
| Modifier and Type | Method and Description |
|---|---|
InterpreterContext |
allocateInterpreterContext(Instr[] instructionList)
Make version specific to scope which needs it (e.g.
|
List<IRClosure> |
getBeginBlocks() |
Operand[] |
getBlockArgs() |
LocalVariable |
getNewFlipStateVariable() |
Label |
getNewLabel() |
IRScopeType |
getScopeType() |
boolean |
isFlipScope() |
boolean |
isModuleOrInstanceEval() |
boolean |
isScriptScope()
Is this an eval script or a regular file script?
|
void |
recordBeginBlock(IRClosure beginBlockClosure)
Record a begin block.
|
addInstr, cloneForInlining, cloneForInlining, createTemporaryVariable, findExistingLocalVariable, getArgumentType, getArity, getBlockBody, getHandle, getLocalVariable, getNestingDepth, getNewLocalVariable, getNewTemporaryVariable, getNextClosureId, getParameterList, getSignature, isBeginEndBlock, isTopLocalVariableScope, setBeginEndBlock, setHandle, setName, setParameterList, toStringBodyaddChildScope, addClosure, addInstrAtBeginning, allocateNextPrefixedName, bindingHasEscaped, buildCFG, buildJVMExceptionTable, buildLinearization, canReceiveNonlocalReturns, cfg, computeScopeFlags, definesLocalVariable, depends, equals, getBooleanVariablesCount, getCFG, getClosures, getCurrentModuleVariable, getCurrentScopeVariable, getDataFlowSolution, getEndBlocks, getExecutedPasses, getFileName, getFixnumVariablesCount, getFlags, getFloatVariablesCount, getInstrs, getInterpreterContext, getLexicalParent, getLexicalScopes, getLineNumber, getLocalVariables, getLocalVariablesCount, getManager, getName, getNearestFlipVariableScope, getNearestMethod, getNearestModuleReferencingScopeDepth, getNearestTopLocalVariableScope, getNewInlineVariable, getNewLabel, getNewTemporaryVariableFor, getNewUnboxedVariable, getPrefixCountSize, getScopeId, getSelf, getStaticScope, getTemporaryVariablesCount, getThreadPollInstrsCount, getTopLevelScope, getUsedVariablesCount, getVarIndices, getYieldClosureVariable, hasExplicitCallProtocol, hashCode, hasLoops, initEvalScopeVariableAllocator, initFlipStateVariable, initNestedClosures, initScope, inlineMethod, isModuleBody, isNestedInClosure, isNonSingletonClassBody, linearization, lookupExistingLVar, prepareForCompilation, prepareForInterpretation, prepareInstructions, receivesKeywordArgs, removeClosure, resetLinearizationData, resetState, resetTemporaryVariables, resetVariableCounter, savePersistenceInfo, setCFG, setDataFlowSolution, setExplicitCallProtocolFlag, setHasLoopsFlag, setLabelIndices, setLocalVariables, setPrefixedNameIndexTo, setTemporaryVariableCount, setUpUseDefLocalVarMaps, toString, toStringInstrs, usesBackrefOrLastline, usesEval, usesLocalVariable, usesZSuperpublic IREvalScript(IRManager manager, IRScope lexicalParent, String fileName, int lineNumber, StaticScope staticScope, EvalType evalType)
public InterpreterContext allocateInterpreterContext(Instr[] instructionList)
IRScopeallocateInterpreterContext in class IRClosurepublic Label getNewLabel()
getNewLabel in class IRClosurepublic IRScopeType getScopeType()
getScopeType in class IRClosurepublic Operand[] getBlockArgs()
getBlockArgs in class IRClosurepublic boolean isModuleOrInstanceEval()
public void recordBeginBlock(IRClosure beginBlockClosure)
IRScoperecordBeginBlock in class IRScopepublic List<IRClosure> getBeginBlocks()
getBeginBlocks in class IRScopepublic LocalVariable getNewFlipStateVariable()
getNewFlipStateVariable in class IRClosurepublic boolean isScriptScope()
IRScopeisScriptScope in class IRScopepublic boolean isFlipScope()
isFlipScope in class IRClosureCopyright © 2001-2015 JRuby. All Rights Reserved.