|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.struts2.jasper.xmlparser.SymbolTable
public class SymbolTable
This class is a symbol table implementation that guarantees that
strings used as identifiers are unique references. Multiple calls
to addSymbol will always return the same string
reference.
String.intern()
with the following differences:
| Nested Class Summary | |
|---|---|
protected static class |
SymbolTable.Entry
This class is a symbol table entry. |
| Field Summary | |
|---|---|
protected SymbolTable.Entry[] |
fBuckets
Buckets. |
protected int |
fTableSize
|
protected static int |
TABLE_SIZE
Default table size. |
| Constructor Summary | |
|---|---|
SymbolTable()
Constructs a symbol table with a default number of buckets. |
|
SymbolTable(int tableSize)
Constructs a symbol table with a specified number of buckets. |
|
| Method Summary | |
|---|---|
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. |
java.lang.String |
addSymbol(java.lang.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(java.lang.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(java.lang.String symbol)
Returns a hashcode value for the specified symbol. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected static final int TABLE_SIZE
protected SymbolTable.Entry[] fBuckets
protected int fTableSize
| Constructor Detail |
|---|
public SymbolTable()
public SymbolTable(int tableSize)
| Method Detail |
|---|
public java.lang.String addSymbol(java.lang.String symbol)
symbol - The new symbol.
public java.lang.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(java.lang.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(java.lang.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.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||