drh | fa3b19e | 2005-11-24 22:22:29 +0000 | [diff] [blame^] | 1 | #!/usr/bin/awk |
| 2 | # |
| 3 | # This script appends additional token codes to the end of the |
| 4 | # parse.h file that lemon generates. These extra token codes are |
| 5 | # not used by the parser. But they are used by the tokenizer and/or |
| 6 | # the code generator. |
| 7 | # |
| 8 | # |
| 9 | BEGIN { |
| 10 | max = 0 |
| 11 | } |
| 12 | /^#define TK_/ { |
| 13 | print $0 |
| 14 | if( max<$3 ) max = $3 |
| 15 | } |
| 16 | END { |
| 17 | printf "#define TK_%-29s %4d\n", "TO_TEXT", max+1 |
| 18 | printf "#define TK_%-29s %4d\n", "TO_BLOB", max+2 |
| 19 | printf "#define TK_%-29s %4d\n", "TO_NUMERIC", max+3 |
| 20 | printf "#define TK_%-29s %4d\n", "TO_INT", max+4 |
| 21 | printf "#define TK_%-29s %4d\n", "TO_REAL", max+5 |
| 22 | printf "#define TK_%-29s %4d\n", "END_OF_FILE", max+6 |
| 23 | printf "#define TK_%-29s %4d\n", "ILLEGAL", max+7 |
| 24 | printf "#define TK_%-29s %4d\n", "SPACE", max+8 |
| 25 | printf "#define TK_%-29s %4d\n", "UNCLOSED_STRING", max+9 |
| 26 | printf "#define TK_%-29s %4d\n", "COMMENT", max+10 |
| 27 | printf "#define TK_%-29s %4d\n", "FUNCTION", max+11 |
| 28 | printf "#define TK_%-29s %4d\n", "COLUMN", max+12 |
| 29 | printf "#define TK_%-29s %4d\n", "AGG_FUNCTION", max+13 |
| 30 | printf "#define TK_%-29s %4d\n", "AGG_COLUMN", max+14 |
| 31 | printf "#define TK_%-29s %4d\n", "CONST_FUNC", max+15 |
| 32 | } |