FileDocCategorySizeDatePackage
ShadowedSymbolTable.javaAPI DocApache Xerces 3.0.14243Fri Sep 14 20:33:52 BST 2007org.apache.xerces.util

ShadowedSymbolTable

public 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.
author
Andy Clark IBM
version
$Id: ShadowedSymbolTable.java 447241 2006-09-18 05:12:57Z mrglavas $

Fields Summary
protected SymbolTable
fSymbolTable
Main symbol table.
Constructors Summary
public ShadowedSymbolTable(SymbolTable symbolTable)
Constructs a shadow of the specified symbol table.

        fSymbolTable = symbolTable;
    
Methods Summary
public java.lang.StringaddSymbol(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.

param
symbol The new symbol.


        if (fSymbolTable.containsSymbol(symbol)) {
            return fSymbolTable.addSymbol(symbol);
        }
        return super.addSymbol(symbol);

    
public java.lang.StringaddSymbol(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.

param
buffer The buffer containing the new symbol.
param
offset The offset into the buffer of the new symbol.
param
length The length of the new symbol in the buffer.


        if (fSymbolTable.containsSymbol(buffer, offset, length)) {
            return fSymbolTable.addSymbol(buffer, offset, length);
        }
        return super.addSymbol(buffer, offset, length);

    
public inthash(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.

param
symbol The symbol to hash.

        return fSymbolTable.hash(symbol);
    
public inthash(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.

param
buffer The character buffer containing the symbol.
param
offset The offset into the character buffer of the start of the symbol.
param
length The length of the symbol.

        return fSymbolTable.hash(buffer, offset, length);