]> git.saurik.com Git - bison.git/blobdiff - src/lex.h
* doc/bison.texinfo: ANSIfy the examples.
[bison.git] / src / lex.h
index 3e4560f50c568bf25f00c1861228220e66705a2e..f1425bd20eda6e128e464e2b60483725735233ca 100644 (file)
--- a/src/lex.h
+++ b/src/lex.h
 # define LEX_H_
 
 /* Token-type codes. */
-# define ENDFILE       0
-# define IDENTIFIER    1
-# define COMMA         2
-# define COLON         3
-# define SEMICOLON     4
-# define BAR                   5
-# define LEFT_CURLY     6
-# define TWO_PERCENTS  7
-# define PERCENT_LEFT_CURLY    8
-# define TOKEN         9
-# define NTERM         10
-# define GUARD         11
-# define TYPE                  12
-# define UNION         13
-# define START         14
-# define LEFT                  15
-# define RIGHT         16
-# define NONASSOC      17
-# define PREC                  18
-# define TYPENAME      21
-# define NUMBER                22
-# define EXPECT                23
-# define THONG         24
-# define NOOP          25
-# define SETOPT                26
-# define ILLEGAL       27
+typedef enum token_e
+  {
+    tok_eof,
+    tok_identifier,
+    tok_comma,
+    tok_colon,
+    tok_semicolon,
+    tok_bar,
+    tok_left_curly,
+    tok_two_percents,
+    tok_percent_left_curly,
+    tok_token,
+    tok_nterm,
+    tok_guard,
+    tok_type,
+    tok_union,
+    tok_start,
+    tok_left,
+    tok_right,
+    tok_nonassoc,
+    tok_prec,
+    tok_typename,
+    tok_number,
+    tok_expect,
+    tok_thong,
+    tok_noop,
+    tok_setopt,
+    tok_illegal
+  } token_t;
 
-# define MAXTOKEN      1024
-
-
-/* Allocated size of token_buffer, not including space for terminator.  */
-extern int maxtoken;
 extern char *token_buffer;
-char *grow_token_buffer PARAMS ((char *));
+extern bucket *symval;
+extern int numval;
 
 void init_lex PARAMS ((void));
 int skip_white_space PARAMS ((void));
@@ -67,11 +66,8 @@ void read_type_name PARAMS ((FILE *fin));
    symbol table using symtab.c; symval is set to a pointer to the
    entry found.  */
 
-int lex PARAMS ((void));
+token_t lex PARAMS ((void));
 
 int parse_percent_token PARAMS ((void));
 
-extern bucket *symval;
-extern int numval;
-
 #endif /* !LEX_H_ */