17db96d56Sopenharmony_ci/* Auto-generated by Tools/scripts/generate_token.py */ 27db96d56Sopenharmony_ci 37db96d56Sopenharmony_ci#include "Python.h" 47db96d56Sopenharmony_ci#include "token.h" 57db96d56Sopenharmony_ci 67db96d56Sopenharmony_ci/* Token names */ 77db96d56Sopenharmony_ci 87db96d56Sopenharmony_ciconst char * const _PyParser_TokenNames[] = { 97db96d56Sopenharmony_ci "ENDMARKER", 107db96d56Sopenharmony_ci "NAME", 117db96d56Sopenharmony_ci "NUMBER", 127db96d56Sopenharmony_ci "STRING", 137db96d56Sopenharmony_ci "NEWLINE", 147db96d56Sopenharmony_ci "INDENT", 157db96d56Sopenharmony_ci "DEDENT", 167db96d56Sopenharmony_ci "LPAR", 177db96d56Sopenharmony_ci "RPAR", 187db96d56Sopenharmony_ci "LSQB", 197db96d56Sopenharmony_ci "RSQB", 207db96d56Sopenharmony_ci "COLON", 217db96d56Sopenharmony_ci "COMMA", 227db96d56Sopenharmony_ci "SEMI", 237db96d56Sopenharmony_ci "PLUS", 247db96d56Sopenharmony_ci "MINUS", 257db96d56Sopenharmony_ci "STAR", 267db96d56Sopenharmony_ci "SLASH", 277db96d56Sopenharmony_ci "VBAR", 287db96d56Sopenharmony_ci "AMPER", 297db96d56Sopenharmony_ci "LESS", 307db96d56Sopenharmony_ci "GREATER", 317db96d56Sopenharmony_ci "EQUAL", 327db96d56Sopenharmony_ci "DOT", 337db96d56Sopenharmony_ci "PERCENT", 347db96d56Sopenharmony_ci "LBRACE", 357db96d56Sopenharmony_ci "RBRACE", 367db96d56Sopenharmony_ci "EQEQUAL", 377db96d56Sopenharmony_ci "NOTEQUAL", 387db96d56Sopenharmony_ci "LESSEQUAL", 397db96d56Sopenharmony_ci "GREATEREQUAL", 407db96d56Sopenharmony_ci "TILDE", 417db96d56Sopenharmony_ci "CIRCUMFLEX", 427db96d56Sopenharmony_ci "LEFTSHIFT", 437db96d56Sopenharmony_ci "RIGHTSHIFT", 447db96d56Sopenharmony_ci "DOUBLESTAR", 457db96d56Sopenharmony_ci "PLUSEQUAL", 467db96d56Sopenharmony_ci "MINEQUAL", 477db96d56Sopenharmony_ci "STAREQUAL", 487db96d56Sopenharmony_ci "SLASHEQUAL", 497db96d56Sopenharmony_ci "PERCENTEQUAL", 507db96d56Sopenharmony_ci "AMPEREQUAL", 517db96d56Sopenharmony_ci "VBAREQUAL", 527db96d56Sopenharmony_ci "CIRCUMFLEXEQUAL", 537db96d56Sopenharmony_ci "LEFTSHIFTEQUAL", 547db96d56Sopenharmony_ci "RIGHTSHIFTEQUAL", 557db96d56Sopenharmony_ci "DOUBLESTAREQUAL", 567db96d56Sopenharmony_ci "DOUBLESLASH", 577db96d56Sopenharmony_ci "DOUBLESLASHEQUAL", 587db96d56Sopenharmony_ci "AT", 597db96d56Sopenharmony_ci "ATEQUAL", 607db96d56Sopenharmony_ci "RARROW", 617db96d56Sopenharmony_ci "ELLIPSIS", 627db96d56Sopenharmony_ci "COLONEQUAL", 637db96d56Sopenharmony_ci "OP", 647db96d56Sopenharmony_ci "AWAIT", 657db96d56Sopenharmony_ci "ASYNC", 667db96d56Sopenharmony_ci "TYPE_IGNORE", 677db96d56Sopenharmony_ci "TYPE_COMMENT", 687db96d56Sopenharmony_ci "SOFT_KEYWORD", 697db96d56Sopenharmony_ci "<ERRORTOKEN>", 707db96d56Sopenharmony_ci "<COMMENT>", 717db96d56Sopenharmony_ci "<NL>", 727db96d56Sopenharmony_ci "<ENCODING>", 737db96d56Sopenharmony_ci "<N_TOKENS>", 747db96d56Sopenharmony_ci}; 757db96d56Sopenharmony_ci 767db96d56Sopenharmony_ci/* Return the token corresponding to a single character */ 777db96d56Sopenharmony_ci 787db96d56Sopenharmony_ciint 797db96d56Sopenharmony_ciPyToken_OneChar(int c1) 807db96d56Sopenharmony_ci{ 817db96d56Sopenharmony_ci switch (c1) { 827db96d56Sopenharmony_ci case '%': return PERCENT; 837db96d56Sopenharmony_ci case '&': return AMPER; 847db96d56Sopenharmony_ci case '(': return LPAR; 857db96d56Sopenharmony_ci case ')': return RPAR; 867db96d56Sopenharmony_ci case '*': return STAR; 877db96d56Sopenharmony_ci case '+': return PLUS; 887db96d56Sopenharmony_ci case ',': return COMMA; 897db96d56Sopenharmony_ci case '-': return MINUS; 907db96d56Sopenharmony_ci case '.': return DOT; 917db96d56Sopenharmony_ci case '/': return SLASH; 927db96d56Sopenharmony_ci case ':': return COLON; 937db96d56Sopenharmony_ci case ';': return SEMI; 947db96d56Sopenharmony_ci case '<': return LESS; 957db96d56Sopenharmony_ci case '=': return EQUAL; 967db96d56Sopenharmony_ci case '>': return GREATER; 977db96d56Sopenharmony_ci case '@': return AT; 987db96d56Sopenharmony_ci case '[': return LSQB; 997db96d56Sopenharmony_ci case ']': return RSQB; 1007db96d56Sopenharmony_ci case '^': return CIRCUMFLEX; 1017db96d56Sopenharmony_ci case '{': return LBRACE; 1027db96d56Sopenharmony_ci case '|': return VBAR; 1037db96d56Sopenharmony_ci case '}': return RBRACE; 1047db96d56Sopenharmony_ci case '~': return TILDE; 1057db96d56Sopenharmony_ci } 1067db96d56Sopenharmony_ci return OP; 1077db96d56Sopenharmony_ci} 1087db96d56Sopenharmony_ci 1097db96d56Sopenharmony_ciint 1107db96d56Sopenharmony_ciPyToken_TwoChars(int c1, int c2) 1117db96d56Sopenharmony_ci{ 1127db96d56Sopenharmony_ci switch (c1) { 1137db96d56Sopenharmony_ci case '!': 1147db96d56Sopenharmony_ci switch (c2) { 1157db96d56Sopenharmony_ci case '=': return NOTEQUAL; 1167db96d56Sopenharmony_ci } 1177db96d56Sopenharmony_ci break; 1187db96d56Sopenharmony_ci case '%': 1197db96d56Sopenharmony_ci switch (c2) { 1207db96d56Sopenharmony_ci case '=': return PERCENTEQUAL; 1217db96d56Sopenharmony_ci } 1227db96d56Sopenharmony_ci break; 1237db96d56Sopenharmony_ci case '&': 1247db96d56Sopenharmony_ci switch (c2) { 1257db96d56Sopenharmony_ci case '=': return AMPEREQUAL; 1267db96d56Sopenharmony_ci } 1277db96d56Sopenharmony_ci break; 1287db96d56Sopenharmony_ci case '*': 1297db96d56Sopenharmony_ci switch (c2) { 1307db96d56Sopenharmony_ci case '*': return DOUBLESTAR; 1317db96d56Sopenharmony_ci case '=': return STAREQUAL; 1327db96d56Sopenharmony_ci } 1337db96d56Sopenharmony_ci break; 1347db96d56Sopenharmony_ci case '+': 1357db96d56Sopenharmony_ci switch (c2) { 1367db96d56Sopenharmony_ci case '=': return PLUSEQUAL; 1377db96d56Sopenharmony_ci } 1387db96d56Sopenharmony_ci break; 1397db96d56Sopenharmony_ci case '-': 1407db96d56Sopenharmony_ci switch (c2) { 1417db96d56Sopenharmony_ci case '=': return MINEQUAL; 1427db96d56Sopenharmony_ci case '>': return RARROW; 1437db96d56Sopenharmony_ci } 1447db96d56Sopenharmony_ci break; 1457db96d56Sopenharmony_ci case '/': 1467db96d56Sopenharmony_ci switch (c2) { 1477db96d56Sopenharmony_ci case '/': return DOUBLESLASH; 1487db96d56Sopenharmony_ci case '=': return SLASHEQUAL; 1497db96d56Sopenharmony_ci } 1507db96d56Sopenharmony_ci break; 1517db96d56Sopenharmony_ci case ':': 1527db96d56Sopenharmony_ci switch (c2) { 1537db96d56Sopenharmony_ci case '=': return COLONEQUAL; 1547db96d56Sopenharmony_ci } 1557db96d56Sopenharmony_ci break; 1567db96d56Sopenharmony_ci case '<': 1577db96d56Sopenharmony_ci switch (c2) { 1587db96d56Sopenharmony_ci case '<': return LEFTSHIFT; 1597db96d56Sopenharmony_ci case '=': return LESSEQUAL; 1607db96d56Sopenharmony_ci case '>': return NOTEQUAL; 1617db96d56Sopenharmony_ci } 1627db96d56Sopenharmony_ci break; 1637db96d56Sopenharmony_ci case '=': 1647db96d56Sopenharmony_ci switch (c2) { 1657db96d56Sopenharmony_ci case '=': return EQEQUAL; 1667db96d56Sopenharmony_ci } 1677db96d56Sopenharmony_ci break; 1687db96d56Sopenharmony_ci case '>': 1697db96d56Sopenharmony_ci switch (c2) { 1707db96d56Sopenharmony_ci case '=': return GREATEREQUAL; 1717db96d56Sopenharmony_ci case '>': return RIGHTSHIFT; 1727db96d56Sopenharmony_ci } 1737db96d56Sopenharmony_ci break; 1747db96d56Sopenharmony_ci case '@': 1757db96d56Sopenharmony_ci switch (c2) { 1767db96d56Sopenharmony_ci case '=': return ATEQUAL; 1777db96d56Sopenharmony_ci } 1787db96d56Sopenharmony_ci break; 1797db96d56Sopenharmony_ci case '^': 1807db96d56Sopenharmony_ci switch (c2) { 1817db96d56Sopenharmony_ci case '=': return CIRCUMFLEXEQUAL; 1827db96d56Sopenharmony_ci } 1837db96d56Sopenharmony_ci break; 1847db96d56Sopenharmony_ci case '|': 1857db96d56Sopenharmony_ci switch (c2) { 1867db96d56Sopenharmony_ci case '=': return VBAREQUAL; 1877db96d56Sopenharmony_ci } 1887db96d56Sopenharmony_ci break; 1897db96d56Sopenharmony_ci } 1907db96d56Sopenharmony_ci return OP; 1917db96d56Sopenharmony_ci} 1927db96d56Sopenharmony_ci 1937db96d56Sopenharmony_ciint 1947db96d56Sopenharmony_ciPyToken_ThreeChars(int c1, int c2, int c3) 1957db96d56Sopenharmony_ci{ 1967db96d56Sopenharmony_ci switch (c1) { 1977db96d56Sopenharmony_ci case '*': 1987db96d56Sopenharmony_ci switch (c2) { 1997db96d56Sopenharmony_ci case '*': 2007db96d56Sopenharmony_ci switch (c3) { 2017db96d56Sopenharmony_ci case '=': return DOUBLESTAREQUAL; 2027db96d56Sopenharmony_ci } 2037db96d56Sopenharmony_ci break; 2047db96d56Sopenharmony_ci } 2057db96d56Sopenharmony_ci break; 2067db96d56Sopenharmony_ci case '.': 2077db96d56Sopenharmony_ci switch (c2) { 2087db96d56Sopenharmony_ci case '.': 2097db96d56Sopenharmony_ci switch (c3) { 2107db96d56Sopenharmony_ci case '.': return ELLIPSIS; 2117db96d56Sopenharmony_ci } 2127db96d56Sopenharmony_ci break; 2137db96d56Sopenharmony_ci } 2147db96d56Sopenharmony_ci break; 2157db96d56Sopenharmony_ci case '/': 2167db96d56Sopenharmony_ci switch (c2) { 2177db96d56Sopenharmony_ci case '/': 2187db96d56Sopenharmony_ci switch (c3) { 2197db96d56Sopenharmony_ci case '=': return DOUBLESLASHEQUAL; 2207db96d56Sopenharmony_ci } 2217db96d56Sopenharmony_ci break; 2227db96d56Sopenharmony_ci } 2237db96d56Sopenharmony_ci break; 2247db96d56Sopenharmony_ci case '<': 2257db96d56Sopenharmony_ci switch (c2) { 2267db96d56Sopenharmony_ci case '<': 2277db96d56Sopenharmony_ci switch (c3) { 2287db96d56Sopenharmony_ci case '=': return LEFTSHIFTEQUAL; 2297db96d56Sopenharmony_ci } 2307db96d56Sopenharmony_ci break; 2317db96d56Sopenharmony_ci } 2327db96d56Sopenharmony_ci break; 2337db96d56Sopenharmony_ci case '>': 2347db96d56Sopenharmony_ci switch (c2) { 2357db96d56Sopenharmony_ci case '>': 2367db96d56Sopenharmony_ci switch (c3) { 2377db96d56Sopenharmony_ci case '=': return RIGHTSHIFTEQUAL; 2387db96d56Sopenharmony_ci } 2397db96d56Sopenharmony_ci break; 2407db96d56Sopenharmony_ci } 2417db96d56Sopenharmony_ci break; 2427db96d56Sopenharmony_ci } 2437db96d56Sopenharmony_ci return OP; 2447db96d56Sopenharmony_ci} 245