Package gw.internal.gosu.ir.transform
Class FunctionBodyTransformationContext
- java.lang.Object
-
- gw.internal.gosu.ir.transform.FunctionBodyTransformationContext
-
- Direct Known Subclasses:
DFSFunctionBodyTransformationContext
public class FunctionBodyTransformationContext extends Object
-
-
Field Summary
Fields Modifier and Type Field Description protected TopLevelTransformationContext
_context
static String
TEMP_VAR_PREFIX
-
Constructor Summary
Constructors Constructor Description FunctionBodyTransformationContext(TopLevelTransformationContext context, boolean isStatic)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IRSymbol
createSymbol(String name, IRType type)
DynamicFunctionSymbol
getCurrentDFS()
Stack<IRScope>
getScopes()
IRSymbol
getSymbol(String symbolName)
IRSymbol
getTypeParamIndex(TypeVariableType type)
boolean
hasSuperBeenInvoked()
boolean
hasSymbol(String symbolName)
boolean
isBlockInvoke()
boolean
isStatic()
IRSymbol
makeAndIndexTempSymbol(IRType type)
IRSymbol
makeAndIndexTempSymbol(String strNameSuffix, IRType type)
String
makeTempSymbolName()
void
markInvokingSuper()
void
markSuperInvoked()
void
popScope()
void
pushScope(boolean bInitialInstanceMethodScope)
void
putSymbol(IRSymbol symbol)
void
putSymbols(List<IRSymbol> symbols)
void
updateSuperInvokedAfterLastExpressionCompiles()
-
-
-
Field Detail
-
TEMP_VAR_PREFIX
public static final String TEMP_VAR_PREFIX
- See Also:
- Constant Field Values
-
_context
protected TopLevelTransformationContext _context
-
-
Constructor Detail
-
FunctionBodyTransformationContext
public FunctionBodyTransformationContext(TopLevelTransformationContext context, boolean isStatic)
-
-
Method Detail
-
updateSuperInvokedAfterLastExpressionCompiles
public void updateSuperInvokedAfterLastExpressionCompiles()
-
hasSuperBeenInvoked
public boolean hasSuperBeenInvoked()
-
markInvokingSuper
public void markInvokingSuper()
-
markSuperInvoked
public void markSuperInvoked()
-
makeTempSymbolName
public String makeTempSymbolName()
-
pushScope
public void pushScope(boolean bInitialInstanceMethodScope)
-
popScope
public void popScope()
-
getTypeParamIndex
public IRSymbol getTypeParamIndex(TypeVariableType type)
-
hasSymbol
public boolean hasSymbol(String symbolName)
-
putSymbol
public void putSymbol(IRSymbol symbol)
-
isBlockInvoke
public boolean isBlockInvoke()
-
getCurrentDFS
public DynamicFunctionSymbol getCurrentDFS()
-
isStatic
public boolean isStatic()
-
-