• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 #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 BACKQUOTE	25
38 #define LBRACE		26
39 #define RBRACE		27
40 #define EQEQUAL		28
41 #define NOTEQUAL	29
42 #define LESSEQUAL	30
43 #define GREATEREQUAL	31
44 #define TILDE		32
45 #define CIRCUMFLEX	33
46 #define LEFTSHIFT	34
47 #define RIGHTSHIFT	35
48 #define DOUBLESTAR	36
49 #define PLUSEQUAL	37
50 #define MINEQUAL	38
51 #define STAREQUAL	39
52 #define SLASHEQUAL	40
53 #define PERCENTEQUAL	41
54 #define AMPEREQUAL	42
55 #define VBAREQUAL	43
56 #define CIRCUMFLEXEQUAL	44
57 #define LEFTSHIFTEQUAL	45
58 #define RIGHTSHIFTEQUAL	46
59 #define DOUBLESTAREQUAL	47
60 #define DOUBLESLASH	48
61 #define DOUBLESLASHEQUAL 49
62 #define AT              50
63 /* Don't forget to update the table _PyParser_TokenNames in tokenizer.c! */
64 #define OP		51
65 #define ERRORTOKEN	52
66 #define N_TOKENS	53
67 
68 /* Special definitions for cooperation with parser */
69 
70 #define NT_OFFSET		256
71 
72 #define ISTERMINAL(x)		((x) < NT_OFFSET)
73 #define ISNONTERMINAL(x)	((x) >= NT_OFFSET)
74 #define ISEOF(x)		((x) == ENDMARKER)
75 
76 
77 PyAPI_DATA(char *) _PyParser_TokenNames[]; /* Token names */
78 PyAPI_FUNC(int) PyToken_OneChar(int);
79 PyAPI_FUNC(int) PyToken_TwoChars(int, int);
80 PyAPI_FUNC(int) PyToken_ThreeChars(int, int, int);
81 
82 #ifdef __cplusplus
83 }
84 #endif
85 #endif /* !Py_TOKEN_H */
86