public abstract class IRExecutionScope extends IRScopeImpl
| Modifier and Type | Field and Description |
|---|---|
protected int |
optionalArgs |
protected int |
requiredArgs |
protected int |
restArg |
| Constructor and Description |
|---|
IRExecutionScope(IRScope lexicalParent,
Operand container,
java.lang.String name,
StaticScope staticScope) |
getContainer, getContainerModule, getLexicalParent, getName, getNearestModule, getNewInlineVariable, getNewLabel, getNewLabel, getNewTemporaryClosureVariable, getNewTemporaryVariable, getNextClosureId, getPrefixCountSize, getRenamedVariableSize, getScopeName, getStaticScope, getTemporaryVariableSize, prepareForInterpretation, recordMethodAlias, runCompilerPass, setContainer, setName, toString, unaliasMethodNameprotected int requiredArgs
protected int optionalArgs
protected int restArg
public IRExecutionScope(IRScope lexicalParent, Operand container, java.lang.String name, StaticScope staticScope)
public void addClosure(IRClosure c)
public void addInstr(Instr i)
IRScopeaddInstr in interface IRScopeaddInstr in class IRScopeImplpublic void startLoop(IRLoop l)
public void endLoop(IRLoop l)
public IRLoop getCurrentLoop()
public java.util.List<IRClosure> getClosures()
public java.util.List<Instr> getInstrs()
getInstrs in class IRScopeImplpublic IRMethod getClosestMethodAncestor()
public void setCodeModificationFlag(boolean f)
public boolean modifiesCode()
public boolean requiresBinding()
public boolean canCaptureCallersBinding()
public CFG buildCFG()
public CFG getCFG()
public void runCompilerPassOnNestedScopes(CompilerPass p)
runCompilerPassOnNestedScopes in class IRScopeImplpublic void computeExecutionScopeFlags()
public java.lang.String toStringInstrs()
toStringInstrs in class IRScopeImplpublic java.lang.String toStringVariables()
toStringVariables in class IRScopeImplpublic java.util.Iterator<LocalVariable> getLiveLocalVariables()
public StaticScope allocateStaticScope(StaticScope parent)
parent - scope should be non-null for all closures and null for methodspublic void calculateParameterCounts()
protected abstract StaticScope constructStaticScope(StaticScope parent)
parent - scope should be non-null for all closures and null for methodspublic Variable getSelf()
public LocalVariable getLocalVariable(java.lang.String name)
IRScopepublic int getLocalVariablesCount()
Copyright © 2002-2009 JRuby Team. All Rights Reserved.