1
0

addopcodes.awk 1.3 KB

12345678910111213141516171819202122232425262728293031323334
  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
  18. printf "#define TK_%-29s %4d\n", "TO_BLOB", ++max
  19. printf "#define TK_%-29s %4d\n", "TO_NUMERIC", ++max
  20. printf "#define TK_%-29s %4d\n", "TO_INT", ++max
  21. printf "#define TK_%-29s %4d\n", "TO_REAL", ++max
  22. printf "#define TK_%-29s %4d\n", "ISNOT", ++max
  23. printf "#define TK_%-29s %4d\n", "END_OF_FILE", ++max
  24. printf "#define TK_%-29s %4d\n", "ILLEGAL", ++max
  25. printf "#define TK_%-29s %4d\n", "SPACE", ++max
  26. printf "#define TK_%-29s %4d\n", "UNCLOSED_STRING", ++max
  27. printf "#define TK_%-29s %4d\n", "FUNCTION", ++max
  28. printf "#define TK_%-29s %4d\n", "COLUMN", ++max
  29. printf "#define TK_%-29s %4d\n", "AGG_FUNCTION", ++max
  30. printf "#define TK_%-29s %4d\n", "AGG_COLUMN", ++max
  31. printf "#define TK_%-29s %4d\n", "CONST_FUNC", ++max
  32. printf "#define TK_%-29s %4d\n", "UMINUS", ++max
  33. printf "#define TK_%-29s %4d\n", "UPLUS", ++max
  34. }