/Lib/lib2to3/pgen2/token.py

http://unladen-swallow.googlecode.com/ · Python · 82 lines · 69 code · 8 blank · 5 comment · 2 complexity · 8fd1f5c3fc2ad1b2afa7e17064b0ba04 MD5 · raw file

  1. #! /usr/bin/env python
  2. """Token constants (from "token.h")."""
  3. # Taken from Python (r53757) and modified to include some tokens
  4. # originally monkeypatched in by pgen2.tokenize
  5. #--start constants--
  6. ENDMARKER = 0
  7. NAME = 1
  8. NUMBER = 2
  9. STRING = 3
  10. NEWLINE = 4
  11. INDENT = 5
  12. DEDENT = 6
  13. LPAR = 7
  14. RPAR = 8
  15. LSQB = 9
  16. RSQB = 10
  17. COLON = 11
  18. COMMA = 12
  19. SEMI = 13
  20. PLUS = 14
  21. MINUS = 15
  22. STAR = 16
  23. SLASH = 17
  24. VBAR = 18
  25. AMPER = 19
  26. LESS = 20
  27. GREATER = 21
  28. EQUAL = 22
  29. DOT = 23
  30. PERCENT = 24
  31. BACKQUOTE = 25
  32. LBRACE = 26
  33. RBRACE = 27
  34. EQEQUAL = 28
  35. NOTEQUAL = 29
  36. LESSEQUAL = 30
  37. GREATEREQUAL = 31
  38. TILDE = 32
  39. CIRCUMFLEX = 33
  40. LEFTSHIFT = 34
  41. RIGHTSHIFT = 35
  42. DOUBLESTAR = 36
  43. PLUSEQUAL = 37
  44. MINEQUAL = 38
  45. STAREQUAL = 39
  46. SLASHEQUAL = 40
  47. PERCENTEQUAL = 41
  48. AMPEREQUAL = 42
  49. VBAREQUAL = 43
  50. CIRCUMFLEXEQUAL = 44
  51. LEFTSHIFTEQUAL = 45
  52. RIGHTSHIFTEQUAL = 46
  53. DOUBLESTAREQUAL = 47
  54. DOUBLESLASH = 48
  55. DOUBLESLASHEQUAL = 49
  56. AT = 50
  57. OP = 51
  58. COMMENT = 52
  59. NL = 53
  60. RARROW = 54
  61. ERRORTOKEN = 55
  62. N_TOKENS = 56
  63. NT_OFFSET = 256
  64. #--end constants--
  65. tok_name = {}
  66. for _name, _value in globals().items():
  67. if type(_value) is type(0):
  68. tok_name[_value] = _name
  69. def ISTERMINAL(x):
  70. return x < NT_OFFSET
  71. def ISNONTERMINAL(x):
  72. return x >= NT_OFFSET
  73. def ISEOF(x):
  74. return x == ENDMARKER