codekingpro/portable-devtools
114k
1"""Token constants."""2# Auto-generated by Tools/build/generate_token.py3 4__all__ = ['tok_name', 'ISTERMINAL', 'ISNONTERMINAL', 'ISEOF',5 'EXACT_TOKEN_TYPES']6 7ENDMARKER = 08NAME = 19NUMBER = 210STRING = 311NEWLINE = 412INDENT = 513DEDENT = 614LPAR = 715RPAR = 816LSQB = 917RSQB = 1018COLON = 1119COMMA = 1220SEMI = 1321PLUS = 1422MINUS = 1523STAR = 1624SLASH = 1725VBAR = 1826AMPER = 1927LESS = 2028GREATER = 2129EQUAL = 2230DOT = 2331PERCENT = 2432LBRACE = 2533RBRACE = 2634EQEQUAL = 2735NOTEQUAL = 2836LESSEQUAL = 2937GREATEREQUAL = 3038TILDE = 3139CIRCUMFLEX = 3240LEFTSHIFT = 3341RIGHTSHIFT = 3442DOUBLESTAR = 3543PLUSEQUAL = 3644MINEQUAL = 3745STAREQUAL = 3846SLASHEQUAL = 3947PERCENTEQUAL = 4048AMPEREQUAL = 4149VBAREQUAL = 4250CIRCUMFLEXEQUAL = 4351LEFTSHIFTEQUAL = 4452RIGHTSHIFTEQUAL = 4553DOUBLESTAREQUAL = 4654DOUBLESLASH = 4755DOUBLESLASHEQUAL = 4856AT = 4957ATEQUAL = 5058RARROW = 5159ELLIPSIS = 5260COLONEQUAL = 5361EXCLAMATION = 5462OP = 5563TYPE_IGNORE = 5664TYPE_COMMENT = 5765SOFT_KEYWORD = 5866FSTRING_START = 5967FSTRING_MIDDLE = 6068FSTRING_END = 6169TSTRING_START = 6270TSTRING_MIDDLE = 6371TSTRING_END = 6472COMMENT = 6573NL = 6674# These aren't used by the C tokenizer but are needed for tokenize.py75ERRORTOKEN = 6776ENCODING = 6877N_TOKENS = 6978# Special definitions for cooperation with parser79NT_OFFSET = 25680 81tok_name = {value: name82 for name, value in globals().items()83 if isinstance(value, int) and not name.startswith('_')}84__all__.extend(tok_name.values())85 86EXACT_TOKEN_TYPES = {87 '!': EXCLAMATION,88 '!=': NOTEQUAL,89 '%': PERCENT,90 '%=': PERCENTEQUAL,91 '&': AMPER,92 '&=': AMPEREQUAL,93 '(': LPAR,94 ')': RPAR,95 '*': STAR,96 '**': DOUBLESTAR,97 '**=': DOUBLESTAREQUAL,98 '*=': STAREQUAL,99 '+': PLUS,100 '+=': PLUSEQUAL,101 ',': COMMA,102 '-': MINUS,103 '-=': MINEQUAL,104 '->': RARROW,105 '.': DOT,106 '...': ELLIPSIS,107 '/': SLASH,108 '//': DOUBLESLASH,109 '//=': DOUBLESLASHEQUAL,110 '/=': SLASHEQUAL,111 ':': COLON,112 ':=': COLONEQUAL,113 ';': SEMI,114 '<': LESS,115 '<<': LEFTSHIFT,116 '<<=': LEFTSHIFTEQUAL,117 '<=': LESSEQUAL,118 '=': EQUAL,119 '==': EQEQUAL,120 '>': GREATER,121 '>=': GREATEREQUAL,122 '>>': RIGHTSHIFT,123 '>>=': RIGHTSHIFTEQUAL,124 '@': AT,125 '@=': ATEQUAL,126 '[': LSQB,127 ']': RSQB,128 '^': CIRCUMFLEX,129 '^=': CIRCUMFLEXEQUAL,130 '{': LBRACE,131 '|': VBAR,132 '|=': VBAREQUAL,133 '}': RBRACE,134 '~': TILDE,135}136 137def ISTERMINAL(x: int) -> bool:138 return x < NT_OFFSET139 140def ISNONTERMINAL(x: int) -> bool:141 return x >= NT_OFFSET142 143def ISEOF(x: int) -> bool:144 return x == ENDMARKER145 