Package gw.internal.gosu.parser
Class CompiledGosuClassSymbolTable
java.lang.Object
gw.lang.parser.ThreadSafeSymbolTable
gw.internal.gosu.parser.CompiledGosuClassSymbolTable
- All Implemented Interfaces:
IStackProvider
,ISymbolTable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final boolean
private static final LockingLazyVar<CompiledGosuClassSymbolTable>
private static final ThreadLocal<Map<ICompilableType,
ISymbolTable>> private static final ThreadLocal<Stack>
private static final ThreadLocal<Stack>
Fields inherited from interface gw.lang.parser.IStackProvider
START_POS, SUPER_POS, THIS_POS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static Map<ICompilableType,
ISymbolTable> private static Stack
static Stack
static ISymbolTable
protected ISymbolTable
Get a thread-local symbol table.static CompiledGosuClassSymbolTable
instance()
void
void
popCompileTimeSymbolTable
(ICompilableType gsClass) static ISymbolTable
void
void
pushCompileTimeSymbolTable
(ISymbolTable symTable) void
void
pushCompileTimeSymbolTable
(ICompilableType gsClass, ISymbolTable symTable) static void
Methods inherited from class gw.lang.parser.ThreadSafeSymbolTable
clearDefaultSymbolTable, copy, defineCommonSymbols, getDefaultSymbolTable, getNextStackIndex, getNextStackIndexForScope, getPrivateGlobalScopeCount, getScopeCount, getSymbol, getSymbols, getSymbols, getTargetSymbolTable, getThisSymbolFromStackOrMap, getTotalSymbolCount, hasIsolatedScope, isSymbolWithinScope, peekIsolatedScope, peekScope, peekScope, popGlobalScope, popScope, popScope, pushIsolatedScope, pushPrivateGlobalScope, pushScope, pushScope, putSymbol, removeSymbol
-
Field Details
-
INSTANCE
-
SYM_TABLE_STACK
-
SYM_TABLE_TRACE_STACK
-
MAP_SYM_TABLE_BY_TYPE
-
DEBUG
private static final boolean DEBUG- See Also:
-
-
Constructor Details
-
CompiledGosuClassSymbolTable
CompiledGosuClassSymbolTable()
-
-
Method Details
-
instance
-
getSymTableCtx
-
pushSymTableCtx
-
popSymTableCtx
-
getSymbolTableForCompilingClass
-
pushCompileTimeSymbolTable
-
pushCompileTimeSymbolTable
-
pushCompileTimeSymbolTable
public void pushCompileTimeSymbolTable() -
pushCompileTimeSymbolTable
-
popCompileTimeSymbolTable
-
popCompileTimeSymbolTable
public void popCompileTimeSymbolTable() -
getThreadLocalSymbolTable
Description copied from class:ThreadSafeSymbolTable
Get a thread-local symbol table. This is typically an instance of StandardSymbol table you maintain in a simple ThreadLocal.- Specified by:
getThreadLocalSymbolTable
in classThreadSafeSymbolTable
-
getSymbolTableStack
-
getClassMap
-
getSymbolTableTraceStack
-