kmy.jint.parser
Class NameTable
java.lang.Object
|
+--kmy.jint.parser.NameTable
- public class NameTable
- extends java.lang.Object
This class keeps record of all identifiers and keywords.
It maintains a single unique, copy of every identifier, and
assigns every identifier a unique integer id.
One can look up an identifier by its string representation.
Constructor Summary |
NameTable()
Create a NameTable. |
Methods inherited from class java.lang.Object |
,
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
registerNatives,
toString,
wait,
wait,
wait |
reserved
static final java.lang.String[] reserved
privateReserved
static final java.lang.String[] privateReserved
nameTable
private java.util.Hashtable nameTable
ADD
public final Identifier ADD
ARGV
public final Identifier ARGV
ARGLIST
public final Identifier ARGLIST
BLOCK
public final Identifier BLOCK
EVAL
public final Identifier EVAL
SELF
public final Identifier SELF
INIT
public final Identifier INIT
CLINIT
public final Identifier CLINIT
LANG
public final Identifier LANG
JAVA
public final Identifier JAVA
JINT
public final Identifier JINT
ANY
public final Identifier ANY
KMY
public final Identifier KMY
LENGTH
public final Identifier LENGTH
RUN
public final Identifier RUN
RUNNABLE
public final Identifier RUNNABLE
VAR
public final Identifier VAR
THIS
public final Identifier THIS
SUPER
public final Identifier SUPER
TRUE
public final Identifier TRUE
FALSE
public final Identifier FALSE
NULL
public final Identifier NULL
CLASS
public final Identifier CLASS
VOID
public final Identifier VOID
NameTable
public NameTable()
- Create a NameTable. Normally only one NameTable is needed.
lookup
public Identifier lookup(java.lang.String name)
- Returns Identifier by its String representation. If no such identifier is
yet defined, null is returned.
lookupAndInsert
public Identifier lookupAndInsert(java.lang.String name)
- Returns Identifier by its String representation. If no such identifier is
defined it gets inserted, so this method always returns an Identifier.