| Guido van Rossum | f70e43a | 1991-02-19 12:39:46 +0000 | [diff] [blame] | 1 |  | 
| Guido van Rossum | 85a5fbb | 1990-10-14 12:07:46 +0000 | [diff] [blame] | 2 | /* Token types */ | 
 | 3 |  | 
| Fred Drake | 3cf4d2b | 2000-07-09 00:55:06 +0000 | [diff] [blame] | 4 | #ifndef Py_TOKEN_H | 
 | 5 | #define Py_TOKEN_H | 
 | 6 | #ifdef __cplusplus | 
 | 7 | extern "C" { | 
 | 8 | #endif | 
 | 9 |  | 
| R. David Murray | 0491047 | 2010-10-18 00:19:30 +0000 | [diff] [blame] | 10 | #undef TILDE   /* Prevent clash of our definition with system macro. Ex AIX, ioctl.h */ | 
 | 11 |  | 
| Guido van Rossum | 85a5fbb | 1990-10-14 12:07:46 +0000 | [diff] [blame] | 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 | 
| Guido van Rossum | 8883aaa | 1991-10-20 20:24:45 +0000 | [diff] [blame] | 40 | #define EQEQUAL		28 | 
 | 41 | #define NOTEQUAL	29 | 
 | 42 | #define LESSEQUAL	30 | 
 | 43 | #define GREATEREQUAL	31 | 
| Guido van Rossum | 7928cd7 | 1991-10-24 14:59:31 +0000 | [diff] [blame] | 44 | #define TILDE		32 | 
 | 45 | #define CIRCUMFLEX	33 | 
 | 46 | #define LEFTSHIFT	34 | 
 | 47 | #define RIGHTSHIFT	35 | 
| Guido van Rossum | 3d1f095 | 1996-01-12 00:51:44 +0000 | [diff] [blame] | 48 | #define DOUBLESTAR	36 | 
| Thomas Wouters | dd8dbdb | 2000-08-24 20:09:45 +0000 | [diff] [blame] | 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 | 
| Guido van Rossum | 4668b00 | 2001-08-08 05:00:18 +0000 | [diff] [blame] | 60 | #define DOUBLESLASH	48 | 
 | 61 | #define DOUBLESLASHEQUAL 49 | 
| Anthony Baxter | c2a5a63 | 2004-08-02 06:10:11 +0000 | [diff] [blame] | 62 | #define AT              50	 | 
| Guido van Rossum | caa6380 | 1995-01-12 11:45:45 +0000 | [diff] [blame] | 63 | /* Don't forget to update the table _PyParser_TokenNames in tokenizer.c! */ | 
| Anthony Baxter | c2a5a63 | 2004-08-02 06:10:11 +0000 | [diff] [blame] | 64 | #define OP		51 | 
 | 65 | #define ERRORTOKEN	52 | 
 | 66 | #define N_TOKENS	53 | 
| Guido van Rossum | 85a5fbb | 1990-10-14 12:07:46 +0000 | [diff] [blame] | 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 |  | 
| Mark Hammond | 91a681d | 2002-08-12 07:21:58 +0000 | [diff] [blame] | 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); | 
| Guido van Rossum | a330996 | 1993-07-28 09:05:47 +0000 | [diff] [blame] | 81 |  | 
 | 82 | #ifdef __cplusplus | 
 | 83 | } | 
 | 84 | #endif | 
 | 85 | #endif /* !Py_TOKEN_H */ |