The following tokens are literals. Literals are tokens that are lexically part of the class NAME, but have special syntactic meaning to the parser. They MAY be handled as individual token types (e.g., TT_ACTION) by the lexer, but doing so would unnecessarily complicate the lexer. It is far simpler to emit them as undifferentiated TT_NAME tokens from the lexer, and let the parser explicitly test their identity.
// WORLD content syntactic tokens
ACTION := "Action"
DESCRIPTION := "Description"
INITVAL := "InitVal"
MOBILE := "Mobile"
MOTILITY := "Motility"
MOVE := "Move"
MOVEMENTS := "Movements"
OBJECT := "Object"
OBJECTS := "Objects"
OBJREF := "ObjRef"
ROOM := "Room"
ROOMREF := "RoomRef"
SESSILE := "Sessile"
VARIABLE := "Variable"
VARS := "Vars"
VALUES := "Values"
// meta syntactic tokens for control and special actions
COND := "cond"
DEFAULT := "default"
END := "end"
ERROR := "error"
PRINT := "print"
WARN := "warn"