public class IREvalScript extends IRClosure
IRScope.LocalVariableAllocatoraddedGEBForUncaughtBreaks, closureId, endLabel, startLabelcanReceiveBreaks, canReceiveNonlocalReturns, hasBreakInstrs, hasNonlocalReturns, temporaryVariableIndex| Constructor and Description |
|---|
IREvalScript(IRManager manager,
IRScope lexicalParent,
String fileName,
int lineNumber,
StaticScope staticScope) |
| Modifier and Type | Method and Description |
|---|---|
IRubyObject |
call(ThreadContext context,
IRubyObject self,
RubyModule clazz,
DynamicScope evalScope,
Block block,
String backtraceName) |
LocalVariable |
findExistingLocalVariable(String name,
int scopeDepth) |
List<IRClosure> |
getBeginBlocks() |
Operand[] |
getBlockArgs() |
List<IRClosure> |
getEndBlocks() |
LocalVariable |
getNewFlipStateVariable() |
Label |
getNewLabel() |
LocalVariable |
getNewLocalVariable(String name,
int depth) |
String |
getScopeName() |
int |
getUsedVariablesCount() |
boolean |
isFlipScope() |
boolean |
isScriptScope()
Is this an eval script or a regular file script?
|
boolean |
isTopLocalVariableScope() |
void |
recordBeginBlock(IRClosure beginBlockClosure) |
void |
recordEndBlock(IRClosure endBlockClosure) |
addGEBForUncaughtBreaks, addInstr, cloneForClonedInstr, getBlockBody, getImplicitBlockArg, getLocalVariable, getNestingDepth, getNewTemporaryVariable, getNewTemporaryVariable, getNextClosureId, getParameterList, isForLoopBody, setParameterList, toStringBodyaddChildScope, addClosure, addInstrAtBeginning, allocateNextPrefixedName, bindingHasEscaped, buildCFG, buildCFG, buildLinearization, canCaptureCallersBinding, canReceiveNonlocalReturns, cfg, checkRelinearization, computeScopeFlags, definesLocalVariable, depends, equals, getCFG, getClosures, getContainerModule, getCurrentModuleVariable, getCurrentScopeVariable, getDataFlowSolution, getEnsurerPC, getFileName, getInstrs, getInstrsForInterpretation, getLastInstr, getLexicalParent, getLexicalScopes, getLineNumber, getLocalVariablesCount, getManager, getName, getNearestFlipVariableScope, getNearestMethod, getNearestModuleReferencingScope, getNearestTopLocalVariableScope, getNewInlineVariable, getNewLabel, getPrefixCountSize, getRescuerPC, getScopeId, getSelf, getStaticScope, getTemporaryVariableSize, getThreadPollInstrsCount, getTopLevelScope, hasExplicitCallProtocol, hashCode, hasLoops, initEvalScopeVariableAllocator, initFlipStateVariable, inlineMethod, isModuleBody, isNestedInClosure, isNonSingletonClassBody, linearization, markUnusedImplicitBlockArg, modifiesCode, prepareForCompilation, prepareForInterpretation, receivesKeywordArgs, resetCFG, resetDFProblemsState, resetLinearizationData, resetState, resetTemporaryVariables, resetVariableCounter, setCFG, setCodeModificationFlag, setDataFlowSolution, setExplicitCallProtocolFlag, setHasLoopsFlag, setName, setUpUseDefLocalVarMaps, splitCalls, toPersistableString, toString, toStringInstrs, toStringVariables, usesBackrefOrLastline, usesEval, usesLocalVariable, usesZSuperpublic IREvalScript(IRManager manager, IRScope lexicalParent, String fileName, int lineNumber, StaticScope staticScope)
public Label getNewLabel()
getNewLabel in class IRClosurepublic String getScopeName()
getScopeName in class IRClosurepublic Operand[] getBlockArgs()
getBlockArgs in class IRClosurepublic void recordBeginBlock(IRClosure beginBlockClosure)
recordBeginBlock in class IRScopepublic void recordEndBlock(IRClosure endBlockClosure)
recordEndBlock in class IRScopepublic IRubyObject call(ThreadContext context, IRubyObject self, RubyModule clazz, DynamicScope evalScope, Block block, String backtraceName)
public LocalVariable findExistingLocalVariable(String name, int scopeDepth)
findExistingLocalVariable in class IRClosurepublic LocalVariable getNewLocalVariable(String name, int depth)
getNewLocalVariable in class IRClosurepublic LocalVariable getNewFlipStateVariable()
getNewFlipStateVariable in class IRClosurepublic int getUsedVariablesCount()
getUsedVariablesCount in class IRScopepublic boolean isScriptScope()
IRScopeisScriptScope in class IRScopepublic boolean isTopLocalVariableScope()
isTopLocalVariableScope in class IRClosurepublic boolean isFlipScope()
isFlipScope in class IRClosureCopyright © 2001-2013 JRuby. All Rights Reserved.