Class SynchronizedSymbolTable


  • public final class SynchronizedSymbolTable
    extends SymbolTable
    Synchronized symbol table. This class moved into the util package since it's needed by multiple other classes (CachingParserPool, XMLGrammarCachingConfiguration).
    Version:
    $Id$
    Author:
    Andy Clark, IBM
    • Field Detail

      • fSymbolTable

        protected SymbolTable fSymbolTable
        Main symbol table.
    • Constructor Detail

      • SynchronizedSymbolTable

        public SynchronizedSymbolTable​(SymbolTable symbolTable)
        Constructs a synchronized symbol table.
      • SynchronizedSymbolTable

        public SynchronizedSymbolTable()
      • SynchronizedSymbolTable

        public SynchronizedSymbolTable​(int size)
    • Method Detail

      • addSymbol

        public String addSymbol​(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.
        Overrides:
        addSymbol in class SymbolTable
        Parameters:
        symbol - The new symbol.
      • addSymbol

        public 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.
        Overrides:
        addSymbol in class SymbolTable
        Parameters:
        buffer - The buffer containing the new symbol.
        offset - The offset into the buffer of the new symbol.
        length - The length of the new symbol in the buffer.
      • containsSymbol

        public boolean containsSymbol​(String symbol)
        Returns true if the symbol table already contains the specified symbol.
        Overrides:
        containsSymbol in class SymbolTable
        Parameters:
        symbol - The symbol to look for.
      • containsSymbol

        public boolean containsSymbol​(char[] buffer,
                                      int offset,
                                      int length)
        Returns true if the symbol table already contains the specified symbol.
        Overrides:
        containsSymbol in class SymbolTable
        Parameters:
        buffer - The buffer containing the symbol to look for.
        offset - The offset into the buffer.
        length - The length of the symbol in the buffer.