home *** CD-ROM | disk | FTP | other *** search
/ PC World 2001 April / PCWorld_2001-04_cd.bin / Software / TemaCD / webclean / !!!python!!! / BeOpen-Python-2.0.exe / TOKEN.H < prev    next >
Encoding:
C/C++ Source or Header  |  2000-09-01  |  1.7 KB  |  81 lines

  1.  
  2. /* Token types */
  3.  
  4. #ifndef Py_TOKEN_H
  5. #define Py_TOKEN_H
  6. #ifdef __cplusplus
  7. extern "C" {
  8. #endif
  9.  
  10. #define ENDMARKER    0
  11. #define NAME        1
  12. #define NUMBER        2
  13. #define STRING        3
  14. #define NEWLINE        4
  15. #define INDENT        5
  16. #define DEDENT        6
  17. #define LPAR        7
  18. #define RPAR        8
  19. #define LSQB        9
  20. #define RSQB        10
  21. #define COLON        11
  22. #define COMMA        12
  23. #define SEMI        13
  24. #define PLUS        14
  25. #define MINUS        15
  26. #define STAR        16
  27. #define SLASH        17
  28. #define VBAR        18
  29. #define AMPER        19
  30. #define LESS        20
  31. #define GREATER        21
  32. #define EQUAL        22
  33. #define DOT        23
  34. #define PERCENT        24
  35. #define BACKQUOTE    25
  36. #define LBRACE        26
  37. #define RBRACE        27
  38. #define EQEQUAL        28
  39. #define NOTEQUAL    29
  40. #define LESSEQUAL    30
  41. #define GREATEREQUAL    31
  42. #define TILDE        32
  43. #define CIRCUMFLEX    33
  44. #define LEFTSHIFT    34
  45. #define RIGHTSHIFT    35
  46. #define DOUBLESTAR    36
  47. #define PLUSEQUAL    37
  48. #define MINEQUAL    38
  49. #define STAREQUAL    39
  50. #define SLASHEQUAL    40
  51. #define PERCENTEQUAL    41
  52. #define AMPEREQUAL    42
  53. #define VBAREQUAL    43
  54. #define CIRCUMFLEXEQUAL    44
  55. #define LEFTSHIFTEQUAL    45
  56. #define RIGHTSHIFTEQUAL    46
  57. #define DOUBLESTAREQUAL    47
  58. /* Don't forget to update the table _PyParser_TokenNames in tokenizer.c! */
  59. #define OP        48
  60. #define ERRORTOKEN    49
  61. #define N_TOKENS    50
  62.  
  63. /* Special definitions for cooperation with parser */
  64.  
  65. #define NT_OFFSET        256
  66.  
  67. #define ISTERMINAL(x)        ((x) < NT_OFFSET)
  68. #define ISNONTERMINAL(x)    ((x) >= NT_OFFSET)
  69. #define ISEOF(x)        ((x) == ENDMARKER)
  70.  
  71.  
  72. extern DL_IMPORT(char *) _PyParser_TokenNames[]; /* Token names */
  73. extern DL_IMPORT(int) PyToken_OneChar(int);
  74. extern DL_IMPORT(int) PyToken_TwoChars(int, int);
  75. extern DL_IMPORT(int) PyToken_ThreeChars(int, int, int);
  76.  
  77. #ifdef __cplusplus
  78. }
  79. #endif
  80. #endif /* !Py_TOKEN_H */
  81.