public interface ISymbolTable extends IStackProvider
START_POS, SUPER_POS, THIS_POS| Modifier and Type | Method and Description |
|---|---|
ISymbolTable |
copy()
Perform a semi-deep copy of this symbol table.
|
void |
defineCommonSymbols()
Define symbols that are considered ubiquitous.
|
int |
getPrivateGlobalScopeCount() |
int |
getScopeCount() |
ISymbol |
getSymbol(CharSequence name) |
Map |
getSymbols() |
Map |
getSymbols(int iScopeIndex,
int iPrivateGlobalIndex) |
ISymbol |
getThisSymbolFromStackOrMap()
Get the 'this' symbol from either the stack or the table.
|
int |
getTotalSymbolCount() |
boolean |
isSymbolWithinScope(ISymbol sym,
IScope scope) |
IScope |
peekIsolatedScope() |
IScope |
peekScope() |
IScope |
peekScope(int iPos) |
void |
popGlobalScope(IScope scope)
Pops a global scope previously pushed via
pushGlobalScope( IScope )
or pushPrivateGlobalScope( IScope ). |
IScope |
popScope()
Pop a local scope context from the symbol table.
|
IScope |
popScope(IScope scope) |
IScope |
pushIsolatedScope(IActivationContext activationCtx)
Push a scope that demarcates an activation record.
|
void |
pushPrivateGlobalScope(IScope scope)
Push a global scope you specify onto the private global scope space.
|
IScope |
pushScope()
Push a local scope context onto the symbol table.
|
IScope |
pushScope(IScope scope)
Push a local scope context onto the symbol table.
|
void |
putSymbol(ISymbol symbol)
Maps a name to a symbol in the table.
|
ISymbol |
removeSymbol(CharSequence name)
Removes a previously mapped symbol.
|
getNextStackIndex, getNextStackIndexForScope, hasIsolatedScopeISymbol getSymbol(CharSequence name)
void putSymbol(ISymbol symbol)
ISymbol removeSymbol(CharSequence name)
name - The name mapped to the symbol to remove.Map getSymbols()
Map getSymbols(int iScopeIndex, int iPrivateGlobalIndex)
iScopeIndex - Scopes positioned on the stack at an index greater than
this number are not included. Very useful for examining a specific scope
e.g., for a debugger. Note an index < 0 indicates that all scopes are
included.int getScopeCount()
getSymbols(int,int)int getPrivateGlobalScopeCount()
getSymbols(int,int)IScope pushScope()
IScope pushScope(IScope scope)
scope - the scope to pushIScope popScope()
IScope peekScope()
IScope peekScope(int iPos)
IScope pushIsolatedScope(IActivationContext activationCtx)
activationCtx - The context for the activation record.void pushPrivateGlobalScope(IScope scope)
pushIsolatedScope() instead.pushScope(),
pushIsolatedScope(IActivationContext)void popGlobalScope(IScope scope)
pushGlobalScope( IScope )
or pushPrivateGlobalScope( IScope ).
You probably shouldn't call this method.pushPrivateGlobalScope(IScope),
popScope()ISymbolTable copy()
ISymbol getThisSymbolFromStackOrMap()
void defineCommonSymbols()
int getTotalSymbolCount()
boolean isSymbolWithinScope(ISymbol sym, IScope scope)
IScope peekIsolatedScope()
Copyright © 2018. All rights reserved.