| 1 | #ifndef ID_KIND_ASDL_H
|
| 2 | #define ID_KIND_ASDL_H
|
| 3 |
|
| 4 | #include <stdint.h> // uint16_t
|
| 5 |
|
| 6 | class BigStr;
|
| 7 |
|
| 8 | namespace id_kind_asdl {
|
| 9 |
|
| 10 | #define ASDL_NAMES struct
|
| 11 | ASDL_NAMES Id {
|
| 12 | enum no_name {
|
| 13 | Word_Compound = 1,
|
| 14 | Arith_Semi = 2,
|
| 15 | Arith_Comma = 3,
|
| 16 | Arith_Plus = 4,
|
| 17 | Arith_Minus = 5,
|
| 18 | Arith_Star = 6,
|
| 19 | Arith_Slash = 7,
|
| 20 | Arith_Percent = 8,
|
| 21 | Arith_DPlus = 9,
|
| 22 | Arith_DMinus = 10,
|
| 23 | Arith_DStar = 11,
|
| 24 | Arith_LParen = 12,
|
| 25 | Arith_RParen = 13,
|
| 26 | Arith_LBracket = 14,
|
| 27 | Arith_RBracket = 15,
|
| 28 | Arith_RBrace = 16,
|
| 29 | Arith_QMark = 17,
|
| 30 | Arith_Colon = 18,
|
| 31 | Arith_LessEqual = 19,
|
| 32 | Arith_Less = 20,
|
| 33 | Arith_GreatEqual = 21,
|
| 34 | Arith_Great = 22,
|
| 35 | Arith_DEqual = 23,
|
| 36 | Arith_NEqual = 24,
|
| 37 | Arith_DAmp = 25,
|
| 38 | Arith_DPipe = 26,
|
| 39 | Arith_Bang = 27,
|
| 40 | Arith_DGreat = 28,
|
| 41 | Arith_DLess = 29,
|
| 42 | Arith_Amp = 30,
|
| 43 | Arith_Pipe = 31,
|
| 44 | Arith_Caret = 32,
|
| 45 | Arith_Tilde = 33,
|
| 46 | Arith_Equal = 34,
|
| 47 | Arith_PlusEqual = 35,
|
| 48 | Arith_MinusEqual = 36,
|
| 49 | Arith_StarEqual = 37,
|
| 50 | Arith_SlashEqual = 38,
|
| 51 | Arith_PercentEqual = 39,
|
| 52 | Arith_DGreatEqual = 40,
|
| 53 | Arith_DLessEqual = 41,
|
| 54 | Arith_AmpEqual = 42,
|
| 55 | Arith_CaretEqual = 43,
|
| 56 | Arith_PipeEqual = 44,
|
| 57 | Eof_Real = 45,
|
| 58 | Eof_RParen = 46,
|
| 59 | Eof_Backtick = 47,
|
| 60 | Undefined_Tok = 48,
|
| 61 | Unknown_Tok = 49,
|
| 62 | Unknown_Backslash = 50,
|
| 63 | Unknown_DEqual = 51,
|
| 64 | Eol_Tok = 52,
|
| 65 | Ignored_LineCont = 53,
|
| 66 | Ignored_Space = 54,
|
| 67 | Ignored_Comment = 55,
|
| 68 | Ignored_Newline = 56,
|
| 69 | WS_Space = 57,
|
| 70 | Lit_Chars = 58,
|
| 71 | Lit_CharsWithoutPrefix = 59,
|
| 72 | Lit_VarLike = 60,
|
| 73 | Lit_ArrayLhsOpen = 61,
|
| 74 | Lit_ArrayLhsClose = 62,
|
| 75 | Lit_Splice = 63,
|
| 76 | Lit_AtLBracket = 64,
|
| 77 | Lit_AtLBraceDot = 65,
|
| 78 | Lit_Other = 66,
|
| 79 | Lit_EscapedChar = 67,
|
| 80 | Lit_LBracket = 68,
|
| 81 | Lit_RBracket = 69,
|
| 82 | Lit_Star = 70,
|
| 83 | Lit_QMark = 71,
|
| 84 | Lit_LBrace = 72,
|
| 85 | Lit_RBrace = 73,
|
| 86 | Lit_Comma = 74,
|
| 87 | Lit_Equals = 75,
|
| 88 | Lit_Dollar = 76,
|
| 89 | Lit_DRightBracket = 77,
|
| 90 | Lit_Tilde = 78,
|
| 91 | Lit_Pound = 79,
|
| 92 | Lit_TPound = 80,
|
| 93 | Lit_TDot = 81,
|
| 94 | Lit_Slash = 82,
|
| 95 | Lit_Percent = 83,
|
| 96 | Lit_Colon = 84,
|
| 97 | Lit_Digits = 85,
|
| 98 | Lit_At = 86,
|
| 99 | Lit_ArithVarLike = 87,
|
| 100 | Lit_BadBackslash = 88,
|
| 101 | Lit_CompDummy = 89,
|
| 102 | Backtick_Right = 90,
|
| 103 | Backtick_Quoted = 91,
|
| 104 | Backtick_DoubleQuote = 92,
|
| 105 | Backtick_Other = 93,
|
| 106 | History_Op = 94,
|
| 107 | History_Num = 95,
|
| 108 | History_Search = 96,
|
| 109 | History_Other = 97,
|
| 110 | Op_Newline = 98,
|
| 111 | Op_Amp = 99,
|
| 112 | Op_Pipe = 100,
|
| 113 | Op_PipeAmp = 101,
|
| 114 | Op_DAmp = 102,
|
| 115 | Op_DPipe = 103,
|
| 116 | Op_Semi = 104,
|
| 117 | Op_DSemi = 105,
|
| 118 | Op_SemiAmp = 106,
|
| 119 | Op_DSemiAmp = 107,
|
| 120 | Op_LParen = 108,
|
| 121 | Op_RParen = 109,
|
| 122 | Op_DLeftParen = 110,
|
| 123 | Op_DRightParen = 111,
|
| 124 | Op_Less = 112,
|
| 125 | Op_Great = 113,
|
| 126 | Op_Bang = 114,
|
| 127 | Op_LBracket = 115,
|
| 128 | Op_RBracket = 116,
|
| 129 | Op_LBrace = 117,
|
| 130 | Op_RBrace = 118,
|
| 131 | Expr_Reserved = 119,
|
| 132 | Expr_Symbol = 120,
|
| 133 | Expr_Name = 121,
|
| 134 | Expr_DecInt = 122,
|
| 135 | Expr_BinInt = 123,
|
| 136 | Expr_OctInt = 124,
|
| 137 | Expr_HexInt = 125,
|
| 138 | Expr_Float = 126,
|
| 139 | Expr_Bang = 127,
|
| 140 | Expr_Dot = 128,
|
| 141 | Expr_DDot = 129,
|
| 142 | Expr_Colon = 130,
|
| 143 | Expr_RArrow = 131,
|
| 144 | Expr_RDArrow = 132,
|
| 145 | Expr_DSlash = 133,
|
| 146 | Expr_TEqual = 134,
|
| 147 | Expr_NotDEqual = 135,
|
| 148 | Expr_TildeDEqual = 136,
|
| 149 | Expr_At = 137,
|
| 150 | Expr_DoubleAt = 138,
|
| 151 | Expr_Ellipsis = 139,
|
| 152 | Expr_Dollar = 140,
|
| 153 | Expr_NotTilde = 141,
|
| 154 | Expr_DTilde = 142,
|
| 155 | Expr_NotDTilde = 143,
|
| 156 | Expr_DStarEqual = 144,
|
| 157 | Expr_DSlashEqual = 145,
|
| 158 | Expr_CastedDummy = 146,
|
| 159 | Expr_Null = 147,
|
| 160 | Expr_True = 148,
|
| 161 | Expr_False = 149,
|
| 162 | Expr_And = 150,
|
| 163 | Expr_Or = 151,
|
| 164 | Expr_Not = 152,
|
| 165 | Expr_For = 153,
|
| 166 | Expr_Is = 154,
|
| 167 | Expr_In = 155,
|
| 168 | Expr_If = 156,
|
| 169 | Expr_Else = 157,
|
| 170 | Expr_Func = 158,
|
| 171 | Expr_Capture = 159,
|
| 172 | Expr_As = 160,
|
| 173 | Char_OneChar = 161,
|
| 174 | Char_Stop = 162,
|
| 175 | Char_Hex = 163,
|
| 176 | Char_YHex = 164,
|
| 177 | Char_Octal3 = 165,
|
| 178 | Char_Octal4 = 166,
|
| 179 | Char_Unicode4 = 167,
|
| 180 | Char_SurrogatePair = 168,
|
| 181 | Char_Unicode8 = 169,
|
| 182 | Char_UBraced = 170,
|
| 183 | Char_Pound = 171,
|
| 184 | Char_AsciiControl = 172,
|
| 185 | BashRegex_LParen = 173,
|
| 186 | BashRegex_AllowedInParens = 174,
|
| 187 | Eggex_Start = 175,
|
| 188 | Eggex_End = 176,
|
| 189 | Eggex_Dot = 177,
|
| 190 | Redir_Less = 178,
|
| 191 | Redir_Great = 179,
|
| 192 | Redir_DLess = 180,
|
| 193 | Redir_TLess = 181,
|
| 194 | Redir_DGreat = 182,
|
| 195 | Redir_GreatAnd = 183,
|
| 196 | Redir_LessAnd = 184,
|
| 197 | Redir_DLessDash = 185,
|
| 198 | Redir_LessGreat = 186,
|
| 199 | Redir_Clobber = 187,
|
| 200 | Redir_AndGreat = 188,
|
| 201 | Redir_AndDGreat = 189,
|
| 202 | Left_DoubleQuote = 190,
|
| 203 | Left_JDoubleQuote = 191,
|
| 204 | Left_SingleQuote = 192,
|
| 205 | Left_DollarSingleQuote = 193,
|
| 206 | Left_RSingleQuote = 194,
|
| 207 | Left_USingleQuote = 195,
|
| 208 | Left_BSingleQuote = 196,
|
| 209 | Left_TDoubleQuote = 197,
|
| 210 | Left_DollarTDoubleQuote = 198,
|
| 211 | Left_TSingleQuote = 199,
|
| 212 | Left_RTSingleQuote = 200,
|
| 213 | Left_UTSingleQuote = 201,
|
| 214 | Left_BTSingleQuote = 202,
|
| 215 | Left_Backtick = 203,
|
| 216 | Left_DollarParen = 204,
|
| 217 | Left_DollarBrace = 205,
|
| 218 | Left_DollarBraceZsh = 206,
|
| 219 | Left_DollarDParen = 207,
|
| 220 | Left_DollarBracket = 208,
|
| 221 | Left_DollarDoubleQuote = 209,
|
| 222 | Left_ProcSubIn = 210,
|
| 223 | Left_ProcSubOut = 211,
|
| 224 | Left_AtParen = 212,
|
| 225 | Left_CaretParen = 213,
|
| 226 | Left_CaretBracket = 214,
|
| 227 | Left_CaretBrace = 215,
|
| 228 | Left_CaretDoubleQuote = 216,
|
| 229 | Left_ColonPipe = 217,
|
| 230 | Left_PercentParen = 218,
|
| 231 | Right_DoubleQuote = 219,
|
| 232 | Right_SingleQuote = 220,
|
| 233 | Right_Backtick = 221,
|
| 234 | Right_DollarBrace = 222,
|
| 235 | Right_DollarDParen = 223,
|
| 236 | Right_DollarDoubleQuote = 224,
|
| 237 | Right_DollarSingleQuote = 225,
|
| 238 | Right_Subshell = 226,
|
| 239 | Right_ShFunction = 227,
|
| 240 | Right_CasePat = 228,
|
| 241 | Right_ShArrayLiteral = 229,
|
| 242 | Right_ExtGlob = 230,
|
| 243 | Right_BashRegexGroup = 231,
|
| 244 | Right_BlockLiteral = 232,
|
| 245 | ExtGlob_Comma = 233,
|
| 246 | ExtGlob_At = 234,
|
| 247 | ExtGlob_Star = 235,
|
| 248 | ExtGlob_Plus = 236,
|
| 249 | ExtGlob_QMark = 237,
|
| 250 | ExtGlob_Bang = 238,
|
| 251 | VSub_DollarName = 239,
|
| 252 | VSub_Name = 240,
|
| 253 | VSub_Number = 241,
|
| 254 | VSub_Bang = 242,
|
| 255 | VSub_At = 243,
|
| 256 | VSub_Pound = 244,
|
| 257 | VSub_Dollar = 245,
|
| 258 | VSub_Star = 246,
|
| 259 | VSub_Hyphen = 247,
|
| 260 | VSub_QMark = 248,
|
| 261 | VSub_Dot = 249,
|
| 262 | VTest_ColonHyphen = 250,
|
| 263 | VTest_Hyphen = 251,
|
| 264 | VTest_ColonEquals = 252,
|
| 265 | VTest_Equals = 253,
|
| 266 | VTest_ColonQMark = 254,
|
| 267 | VTest_QMark = 255,
|
| 268 | VTest_ColonPlus = 256,
|
| 269 | VTest_Plus = 257,
|
| 270 | VOp0_Q = 258,
|
| 271 | VOp0_E = 259,
|
| 272 | VOp0_P = 260,
|
| 273 | VOp0_A = 261,
|
| 274 | VOp0_a = 262,
|
| 275 | VOp1_Percent = 263,
|
| 276 | VOp1_DPercent = 264,
|
| 277 | VOp1_Pound = 265,
|
| 278 | VOp1_DPound = 266,
|
| 279 | VOp1_Caret = 267,
|
| 280 | VOp1_DCaret = 268,
|
| 281 | VOp1_Comma = 269,
|
| 282 | VOp1_DComma = 270,
|
| 283 | VOpYsh_Pipe = 271,
|
| 284 | VOpYsh_Space = 272,
|
| 285 | VOp2_Slash = 273,
|
| 286 | VOp2_Colon = 274,
|
| 287 | VOp2_LBracket = 275,
|
| 288 | VOp2_RBracket = 276,
|
| 289 | VOp3_At = 277,
|
| 290 | VOp3_Star = 278,
|
| 291 | Node_PostDPlus = 279,
|
| 292 | Node_PostDMinus = 280,
|
| 293 | Node_UnaryPlus = 281,
|
| 294 | Node_UnaryMinus = 282,
|
| 295 | Node_NotIn = 283,
|
| 296 | Node_IsNot = 284,
|
| 297 | KW_DLeftBracket = 285,
|
| 298 | KW_Bang = 286,
|
| 299 | KW_For = 287,
|
| 300 | KW_While = 288,
|
| 301 | KW_Until = 289,
|
| 302 | KW_Do = 290,
|
| 303 | KW_Done = 291,
|
| 304 | KW_In = 292,
|
| 305 | KW_Case = 293,
|
| 306 | KW_Esac = 294,
|
| 307 | KW_If = 295,
|
| 308 | KW_Fi = 296,
|
| 309 | KW_Then = 297,
|
| 310 | KW_Else = 298,
|
| 311 | KW_Elif = 299,
|
| 312 | KW_Function = 300,
|
| 313 | KW_Time = 301,
|
| 314 | KW_Const = 302,
|
| 315 | KW_Var = 303,
|
| 316 | KW_SetVar = 304,
|
| 317 | KW_SetGlobal = 305,
|
| 318 | KW_Call = 306,
|
| 319 | KW_Proc = 307,
|
| 320 | KW_Typed = 308,
|
| 321 | KW_Func = 309,
|
| 322 | ControlFlow_Break = 310,
|
| 323 | ControlFlow_Continue = 311,
|
| 324 | ControlFlow_Return = 312,
|
| 325 | ControlFlow_Exit = 313,
|
| 326 | LookAhead_FuncParens = 314,
|
| 327 | Glob_LBracket = 315,
|
| 328 | Glob_RBracket = 316,
|
| 329 | Glob_Star = 317,
|
| 330 | Glob_QMark = 318,
|
| 331 | Glob_Bang = 319,
|
| 332 | Glob_Caret = 320,
|
| 333 | Glob_EscapedChar = 321,
|
| 334 | Glob_BadBackslash = 322,
|
| 335 | Glob_CleanLiterals = 323,
|
| 336 | Glob_OtherLiteral = 324,
|
| 337 | Format_EscapedPercent = 325,
|
| 338 | Format_Percent = 326,
|
| 339 | Format_Flag = 327,
|
| 340 | Format_Num = 328,
|
| 341 | Format_Dot = 329,
|
| 342 | Format_Type = 330,
|
| 343 | Format_Star = 331,
|
| 344 | Format_Time = 332,
|
| 345 | Format_Zero = 333,
|
| 346 | PS_Subst = 334,
|
| 347 | PS_Octal3 = 335,
|
| 348 | PS_LBrace = 336,
|
| 349 | PS_RBrace = 337,
|
| 350 | PS_Literals = 338,
|
| 351 | PS_BadBackslash = 339,
|
| 352 | Range_Int = 340,
|
| 353 | Range_Char = 341,
|
| 354 | Range_Dots = 342,
|
| 355 | Range_Other = 343,
|
| 356 | J8_LBracket = 344,
|
| 357 | J8_RBracket = 345,
|
| 358 | J8_LBrace = 346,
|
| 359 | J8_RBrace = 347,
|
| 360 | J8_Comma = 348,
|
| 361 | J8_Colon = 349,
|
| 362 | J8_Null = 350,
|
| 363 | J8_Bool = 351,
|
| 364 | J8_Int = 352,
|
| 365 | J8_Float = 353,
|
| 366 | J8_String = 354,
|
| 367 | J8_Identifier = 355,
|
| 368 | J8_Newline = 356,
|
| 369 | J8_Tab = 357,
|
| 370 | J8_LParen = 358,
|
| 371 | J8_RParen = 359,
|
| 372 | J8_Operator = 360,
|
| 373 | BoolUnary_z = 361,
|
| 374 | BoolUnary_n = 362,
|
| 375 | BoolUnary_o = 363,
|
| 376 | BoolUnary_t = 364,
|
| 377 | BoolUnary_v = 365,
|
| 378 | BoolUnary_R = 366,
|
| 379 | BoolUnary_a = 367,
|
| 380 | BoolUnary_b = 368,
|
| 381 | BoolUnary_c = 369,
|
| 382 | BoolUnary_d = 370,
|
| 383 | BoolUnary_e = 371,
|
| 384 | BoolUnary_f = 372,
|
| 385 | BoolUnary_g = 373,
|
| 386 | BoolUnary_h = 374,
|
| 387 | BoolUnary_k = 375,
|
| 388 | BoolUnary_L = 376,
|
| 389 | BoolUnary_p = 377,
|
| 390 | BoolUnary_r = 378,
|
| 391 | BoolUnary_s = 379,
|
| 392 | BoolUnary_S = 380,
|
| 393 | BoolUnary_u = 381,
|
| 394 | BoolUnary_w = 382,
|
| 395 | BoolUnary_x = 383,
|
| 396 | BoolUnary_O = 384,
|
| 397 | BoolUnary_G = 385,
|
| 398 | BoolUnary_N = 386,
|
| 399 | BoolBinary_GlobEqual = 387,
|
| 400 | BoolBinary_GlobDEqual = 388,
|
| 401 | BoolBinary_GlobNEqual = 389,
|
| 402 | BoolBinary_EqualTilde = 390,
|
| 403 | BoolBinary_ef = 391,
|
| 404 | BoolBinary_nt = 392,
|
| 405 | BoolBinary_ot = 393,
|
| 406 | BoolBinary_eq = 394,
|
| 407 | BoolBinary_ne = 395,
|
| 408 | BoolBinary_gt = 396,
|
| 409 | BoolBinary_ge = 397,
|
| 410 | BoolBinary_lt = 398,
|
| 411 | BoolBinary_le = 399,
|
| 412 | BoolBinary_Equal = 400,
|
| 413 | BoolBinary_DEqual = 401,
|
| 414 | BoolBinary_NEqual = 402,
|
| 415 | ARRAY_SIZE = 403,
|
| 416 | };
|
| 417 | };
|
| 418 |
|
| 419 | BigStr* Id_str(int tag, bool dot = true);
|
| 420 |
|
| 421 | typedef uint16_t Id_t;
|
| 422 |
|
| 423 | enum class Kind {
|
| 424 | Word = 1,
|
| 425 | Arith = 2,
|
| 426 | Eof = 3,
|
| 427 | Undefined = 4,
|
| 428 | Unknown = 5,
|
| 429 | Eol = 6,
|
| 430 | Ignored = 7,
|
| 431 | WS = 8,
|
| 432 | Lit = 9,
|
| 433 | Backtick = 10,
|
| 434 | History = 11,
|
| 435 | Op = 12,
|
| 436 | Expr = 13,
|
| 437 | Char = 14,
|
| 438 | BashRegex = 15,
|
| 439 | Eggex = 16,
|
| 440 | Redir = 17,
|
| 441 | Left = 18,
|
| 442 | Right = 19,
|
| 443 | ExtGlob = 20,
|
| 444 | VSub = 21,
|
| 445 | VTest = 22,
|
| 446 | VOp0 = 23,
|
| 447 | VOp1 = 24,
|
| 448 | VOpYsh = 25,
|
| 449 | VOp2 = 26,
|
| 450 | VOp3 = 27,
|
| 451 | Node = 28,
|
| 452 | KW = 29,
|
| 453 | ControlFlow = 30,
|
| 454 | LookAhead = 31,
|
| 455 | Glob = 32,
|
| 456 | Format = 33,
|
| 457 | PS = 34,
|
| 458 | Range = 35,
|
| 459 | J8 = 36,
|
| 460 | BoolUnary = 37,
|
| 461 | BoolBinary = 38,
|
| 462 | };
|
| 463 | typedef Kind Kind_t;
|
| 464 |
|
| 465 | BigStr* Kind_str(Kind tag, bool dot = true);
|
| 466 |
|
| 467 |
|
| 468 | } // namespace id_kind_asdl
|
| 469 |
|
| 470 | #endif // ID_KIND_ASDL_H
|