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