; Comments begin with ;, ! or %
; Terminal symbol type names. "Object" is reserved to mean "none of the
; others"; don't use it. The Text field cannot contain a blank.

; Name      Text              Comment
Ident       <identifier>      identifier
Def_Word    <def_word>        defined or reserved word
Inc_Str     <incomplete>      incomplete string
Number      <number>          integer or floating point number
Def_Op      <def_op>          defined operator
Def_Pun     <def_pun>         defined punctuator
String      <string>          string, without its bounding quotes or apostrophes
TreeNode    <tree_node>       Tree node, for dumps
Unk_Op      <unk_op>          unknown operator
Unk_Pun     <unk_pun>         unknown punctuator

; Terminal symbol definitions begin with >.
; The names T_Null and T_Include are reserved; don't use them.
; Each symbol's text is entered into the symbol table, along with its type.
; This can be used by the lexer, for example, to distinguish defined
; operators from sequences of operator symbols that are not defined operators.
; The Text field cannot contain a blank.

; Name           Text            Type    Pseudo  Caseless  Comment
! > T_Null       <null>          Object     f       t    Error message
> T_Comma        ,               Def_Pun    f       t  , T_Comma
> T_Dot          .               Def_Pun    f       t  . T_Dot
> T_End_of_input <eof>           Object     f       t  End of file
> T_Identifier   <identifier>    Ident      t       t  Identifier
> T_Incomplete   <inc_str>       inc_str    f       t  Incomplete string
> T_Lbrack       [               Def_Pun    f       t  [ T_Lbrack
> T_Lparen       (               Def_Pun    f       t  ( T_Lparen
> T_Minus        -               Def_Op     f       t  - T_Minus
> T_Number       <number>        Number     t       t  Integer
> T_Rbrack       ]               Def_Pun    f       t  ] T_Rbrack
> T_Rparen       )               Def_Pun    f       t  ) T_Rparen
> T_String       <string>        String     t       f  String
> T_Tree_node    <tree_node>     treeNode   f       t    For symbol table dumps
> T_Unclassified <unclass>       Object     f       t  Unclassified character
> T_Unk_op       <unk_op>        unk_op     f       t    Unknown operator
> T_Unk_pun      <unk_pun>       unk_pun    f       t    Unknown punctuator
; > T_Include    <include>       Object     f       t    Error message

; $RCSfile: symbol_types_lex.in,v $
; $Id: symbol_types_lex.in,v 1.2 2022/01/23 09:54:21 vsnyder Exp $

; $Log: symbol_types_lex.in,v $
