public class SymbolTable extends Object implements Serializable
Constructor and Description |
---|
SymbolTable() |
Modifier and Type | Method and Description |
---|---|
int |
addSymbol(Symbol symbol) |
SymbolTable |
getParentSymbolTable()
Accessor for the parent symbol table (if any).
|
Symbol |
getSymbol(String name)
Return the Symbol for the specified name if known.
|
Symbol |
getSymbolIgnoreCase(String name)
Return the Symbol for the specified name if known, treating the name as case-insensitive.
|
Collection<String> |
getSymbolNames()
Accessor for the names of the symbols in this table.
|
SymbolResolver |
getSymbolResolver() |
boolean |
hasSymbol(String name)
Accessor for whether this symbol table has a particular symbol name.
|
void |
removeSymbol(Symbol symbol) |
void |
setParentSymbolTable(SymbolTable tbl)
Set the symbol table for any parent query, so that if this query refers to an expression from the parent query then it is resolvable.
|
void |
setSymbolResolver(SymbolResolver resolver) |
String |
toString() |
public void setSymbolResolver(SymbolResolver resolver)
public SymbolResolver getSymbolResolver()
public void setParentSymbolTable(SymbolTable tbl)
tbl
- The parent symbol tablepublic SymbolTable getParentSymbolTable()
public Collection<String> getSymbolNames()
public Symbol getSymbol(String name)
name
- The name to look uppublic Symbol getSymbolIgnoreCase(String name)
name
- The name to look uppublic boolean hasSymbol(String name)
name
- The name of the symbol we requirepublic int addSymbol(Symbol symbol)
public void removeSymbol(Symbol symbol)
Copyright © 2019. All rights reserved.