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