ShadowedSymbolTablepublic final class ShadowedSymbolTable extends SymbolTable Shadowed symbol table.
The table has a reference to the main symbol table and is
not allowed to add new symbols to the main symbol table.
New symbols are added to the shadow symbol table and are local
to the component using this table. |
Fields Summary |
---|
protected SymbolTable | fSymbolTableMain symbol table. |
Constructors Summary |
---|
public ShadowedSymbolTable(SymbolTable symbolTable)Constructs a shadow of the specified symbol table.
fSymbolTable = symbolTable;
|
Methods Summary |
---|
public java.lang.String | addSymbol(java.lang.String symbol)Adds the specified symbol to the symbol table and returns a
reference to the unique symbol. If the symbol already exists,
the previous symbol reference is returned instead, in order
guarantee that symbol references remain unique.
if (fSymbolTable.containsSymbol(symbol)) {
return fSymbolTable.addSymbol(symbol);
}
return super.addSymbol(symbol);
| public java.lang.String | addSymbol(char[] buffer, int offset, int length)Adds the specified symbol to the symbol table and returns a
reference to the unique symbol. If the symbol already exists,
the previous symbol reference is returned instead, in order
guarantee that symbol references remain unique.
if (fSymbolTable.containsSymbol(buffer, offset, length)) {
return fSymbolTable.addSymbol(buffer, offset, length);
}
return super.addSymbol(buffer, offset, length);
| public int | hash(java.lang.String symbol)Returns a hashcode value for the specified symbol. The value
returned by this method must be identical to the value returned
by the hash(char[],int,int) method when called
with the character array that comprises the symbol string.
return fSymbolTable.hash(symbol);
| public int | hash(char[] buffer, int offset, int length)Returns a hashcode value for the specified symbol information.
The value returned by this method must be identical to the value
returned by the hash(String) method when called
with the string object created from the symbol information.
return fSymbolTable.hash(buffer, offset, length);
|
|