public class SymbolTable extends Object
addSymbol will always return the same string
 reference.
 
 The symbol table performs the same task as String.intern()
 with the following differences:
 
| Modifier and Type | Class and Description | 
|---|---|
| protected static class  | SymbolTable.EntryThis class is a symbol table entry. | 
| Modifier and Type | Field and Description | 
|---|---|
| protected SymbolTable.Entry[] | fBucketsBuckets. | 
| protected int | fTableSize | 
| protected static int | TABLE_SIZEDefault table size. | 
| Constructor and Description | 
|---|
| SymbolTable()Constructs a symbol table with a default number of buckets. | 
| SymbolTable(int tableSize)Constructs a symbol table with a specified number of buckets. | 
| Modifier and Type | Method and Description | 
|---|---|
| String | addSymbol(char[] buffer,
         int offset,
         int length)Adds the specified symbol to the symbol table and returns a
 reference to the unique symbol. | 
| String | addSymbol(String symbol)Adds the specified symbol to the symbol table and returns a
 reference to the unique symbol. | 
| boolean | containsSymbol(char[] buffer,
              int offset,
              int length)Returns true if the symbol table already contains the specified
 symbol. | 
| boolean | containsSymbol(String symbol)Returns true if the symbol table already contains the specified
 symbol. | 
| int | hash(char[] buffer,
    int offset,
    int length)Returns a hashcode value for the specified symbol information. | 
| int | hash(String symbol)Returns a hashcode value for the specified symbol. | 
protected static final int TABLE_SIZE
protected SymbolTable.Entry[] fBuckets
protected int fTableSize
public SymbolTable()
public SymbolTable(int tableSize)
public String addSymbol(String symbol)
symbol - The new symbol.public String addSymbol(char[] buffer, int offset, int length)
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.public int hash(String symbol)
hash(char[],int,int) method when called
 with the character array that comprises the symbol string.symbol - The symbol to hash.public int hash(char[] buffer,
       int offset,
       int length)
hash(String) method when called
 with the string object created from the symbol information.buffer - The character buffer containing the symbol.offset - The offset into the character buffer of the start
               of the symbol.length - The length of the symbol.public boolean containsSymbol(String symbol)
symbol - The symbol to look for.public boolean containsSymbol(char[] buffer,
                     int offset,
                     int length)
buffer - The buffer containing the symbol to look for.offset - The offset into the buffer.length - The length of the symbol in the buffer.Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.