OILS / _devbuild / gen / id_kind_asdl.py View on Github | oilshell.org

916 lines, 905 significant
1from asdl import pybase
2
3Id_t = int # type alias for integer
4
5class Id(object):
6 Word_Compound = 1
7 Arith_Semi = 2
8 Arith_Comma = 3
9 Arith_Plus = 4
10 Arith_Minus = 5
11 Arith_Star = 6
12 Arith_Slash = 7
13 Arith_Percent = 8
14 Arith_DPlus = 9
15 Arith_DMinus = 10
16 Arith_DStar = 11
17 Arith_LParen = 12
18 Arith_RParen = 13
19 Arith_LBracket = 14
20 Arith_RBracket = 15
21 Arith_RBrace = 16
22 Arith_QMark = 17
23 Arith_Colon = 18
24 Arith_LessEqual = 19
25 Arith_Less = 20
26 Arith_GreatEqual = 21
27 Arith_Great = 22
28 Arith_DEqual = 23
29 Arith_NEqual = 24
30 Arith_DAmp = 25
31 Arith_DPipe = 26
32 Arith_Bang = 27
33 Arith_DGreat = 28
34 Arith_DLess = 29
35 Arith_Amp = 30
36 Arith_Pipe = 31
37 Arith_Caret = 32
38 Arith_Tilde = 33
39 Arith_Equal = 34
40 Arith_PlusEqual = 35
41 Arith_MinusEqual = 36
42 Arith_StarEqual = 37
43 Arith_SlashEqual = 38
44 Arith_PercentEqual = 39
45 Arith_DGreatEqual = 40
46 Arith_DLessEqual = 41
47 Arith_AmpEqual = 42
48 Arith_CaretEqual = 43
49 Arith_PipeEqual = 44
50 Eof_Real = 45
51 Eof_RParen = 46
52 Eof_Backtick = 47
53 Undefined_Tok = 48
54 Unknown_Tok = 49
55 Unknown_Backslash = 50
56 Unknown_DEqual = 51
57 Eol_Tok = 52
58 Ignored_LineCont = 53
59 Ignored_Space = 54
60 Ignored_Comment = 55
61 Ignored_Newline = 56
62 WS_Space = 57
63 Lit_Chars = 58
64 Lit_CharsWithoutPrefix = 59
65 Lit_VarLike = 60
66 Lit_ArrayLhsOpen = 61
67 Lit_ArrayLhsClose = 62
68 Lit_Splice = 63
69 Lit_AtLBracket = 64
70 Lit_AtLBraceDot = 65
71 Lit_Other = 66
72 Lit_EscapedChar = 67
73 Lit_LBracket = 68
74 Lit_RBracket = 69
75 Lit_Star = 70
76 Lit_QMark = 71
77 Lit_LBrace = 72
78 Lit_RBrace = 73
79 Lit_Comma = 74
80 Lit_Equals = 75
81 Lit_Dollar = 76
82 Lit_DRightBracket = 77
83 Lit_Tilde = 78
84 Lit_Pound = 79
85 Lit_TPound = 80
86 Lit_TDot = 81
87 Lit_Slash = 82
88 Lit_Percent = 83
89 Lit_Colon = 84
90 Lit_Digits = 85
91 Lit_At = 86
92 Lit_ArithVarLike = 87
93 Lit_BadBackslash = 88
94 Lit_CompDummy = 89
95 Backtick_Right = 90
96 Backtick_Quoted = 91
97 Backtick_DoubleQuote = 92
98 Backtick_Other = 93
99 History_Op = 94
100 History_Num = 95
101 History_Search = 96
102 History_Other = 97
103 Op_Newline = 98
104 Op_Amp = 99
105 Op_Pipe = 100
106 Op_PipeAmp = 101
107 Op_DAmp = 102
108 Op_DPipe = 103
109 Op_Semi = 104
110 Op_DSemi = 105
111 Op_SemiAmp = 106
112 Op_DSemiAmp = 107
113 Op_LParen = 108
114 Op_RParen = 109
115 Op_DLeftParen = 110
116 Op_DRightParen = 111
117 Op_Less = 112
118 Op_Great = 113
119 Op_Bang = 114
120 Op_LBracket = 115
121 Op_RBracket = 116
122 Op_LBrace = 117
123 Op_RBrace = 118
124 Expr_Reserved = 119
125 Expr_Symbol = 120
126 Expr_Name = 121
127 Expr_DecInt = 122
128 Expr_BinInt = 123
129 Expr_OctInt = 124
130 Expr_HexInt = 125
131 Expr_Float = 126
132 Expr_Bang = 127
133 Expr_Dot = 128
134 Expr_DDot = 129
135 Expr_Colon = 130
136 Expr_RArrow = 131
137 Expr_RDArrow = 132
138 Expr_DSlash = 133
139 Expr_TEqual = 134
140 Expr_NotDEqual = 135
141 Expr_TildeDEqual = 136
142 Expr_At = 137
143 Expr_DoubleAt = 138
144 Expr_Ellipsis = 139
145 Expr_Dollar = 140
146 Expr_NotTilde = 141
147 Expr_DTilde = 142
148 Expr_NotDTilde = 143
149 Expr_DStarEqual = 144
150 Expr_DSlashEqual = 145
151 Expr_CastedDummy = 146
152 Expr_Null = 147
153 Expr_True = 148
154 Expr_False = 149
155 Expr_And = 150
156 Expr_Or = 151
157 Expr_Not = 152
158 Expr_For = 153
159 Expr_Is = 154
160 Expr_In = 155
161 Expr_If = 156
162 Expr_Else = 157
163 Expr_Func = 158
164 Expr_Capture = 159
165 Expr_As = 160
166 Char_OneChar = 161
167 Char_Stop = 162
168 Char_Hex = 163
169 Char_YHex = 164
170 Char_Octal3 = 165
171 Char_Octal4 = 166
172 Char_Unicode4 = 167
173 Char_SurrogatePair = 168
174 Char_Unicode8 = 169
175 Char_UBraced = 170
176 Char_Pound = 171
177 Char_AsciiControl = 172
178 BashRegex_LParen = 173
179 BashRegex_AllowedInParens = 174
180 Eggex_Start = 175
181 Eggex_End = 176
182 Eggex_Dot = 177
183 Redir_Less = 178
184 Redir_Great = 179
185 Redir_DLess = 180
186 Redir_TLess = 181
187 Redir_DGreat = 182
188 Redir_GreatAnd = 183
189 Redir_LessAnd = 184
190 Redir_DLessDash = 185
191 Redir_LessGreat = 186
192 Redir_Clobber = 187
193 Redir_AndGreat = 188
194 Redir_AndDGreat = 189
195 Left_DoubleQuote = 190
196 Left_JDoubleQuote = 191
197 Left_SingleQuote = 192
198 Left_DollarSingleQuote = 193
199 Left_RSingleQuote = 194
200 Left_USingleQuote = 195
201 Left_BSingleQuote = 196
202 Left_TDoubleQuote = 197
203 Left_DollarTDoubleQuote = 198
204 Left_TSingleQuote = 199
205 Left_RTSingleQuote = 200
206 Left_UTSingleQuote = 201
207 Left_BTSingleQuote = 202
208 Left_Backtick = 203
209 Left_DollarParen = 204
210 Left_DollarBrace = 205
211 Left_DollarBraceZsh = 206
212 Left_DollarDParen = 207
213 Left_DollarBracket = 208
214 Left_DollarDoubleQuote = 209
215 Left_ProcSubIn = 210
216 Left_ProcSubOut = 211
217 Left_AtParen = 212
218 Left_CaretParen = 213
219 Left_CaretBracket = 214
220 Left_CaretBrace = 215
221 Left_CaretDoubleQuote = 216
222 Left_ColonPipe = 217
223 Left_PercentParen = 218
224 Right_DoubleQuote = 219
225 Right_SingleQuote = 220
226 Right_Backtick = 221
227 Right_DollarBrace = 222
228 Right_DollarDParen = 223
229 Right_DollarDoubleQuote = 224
230 Right_DollarSingleQuote = 225
231 Right_Subshell = 226
232 Right_ShFunction = 227
233 Right_CasePat = 228
234 Right_ShArrayLiteral = 229
235 Right_ExtGlob = 230
236 Right_BashRegexGroup = 231
237 Right_BlockLiteral = 232
238 ExtGlob_Comma = 233
239 ExtGlob_At = 234
240 ExtGlob_Star = 235
241 ExtGlob_Plus = 236
242 ExtGlob_QMark = 237
243 ExtGlob_Bang = 238
244 VSub_DollarName = 239
245 VSub_Name = 240
246 VSub_Number = 241
247 VSub_Bang = 242
248 VSub_At = 243
249 VSub_Pound = 244
250 VSub_Dollar = 245
251 VSub_Star = 246
252 VSub_Hyphen = 247
253 VSub_QMark = 248
254 VSub_Dot = 249
255 VTest_ColonHyphen = 250
256 VTest_Hyphen = 251
257 VTest_ColonEquals = 252
258 VTest_Equals = 253
259 VTest_ColonQMark = 254
260 VTest_QMark = 255
261 VTest_ColonPlus = 256
262 VTest_Plus = 257
263 VOp0_Q = 258
264 VOp0_E = 259
265 VOp0_P = 260
266 VOp0_A = 261
267 VOp0_a = 262
268 VOp1_Percent = 263
269 VOp1_DPercent = 264
270 VOp1_Pound = 265
271 VOp1_DPound = 266
272 VOp1_Caret = 267
273 VOp1_DCaret = 268
274 VOp1_Comma = 269
275 VOp1_DComma = 270
276 VOpYsh_Pipe = 271
277 VOpYsh_Space = 272
278 VOp2_Slash = 273
279 VOp2_Colon = 274
280 VOp2_LBracket = 275
281 VOp2_RBracket = 276
282 VOp3_At = 277
283 VOp3_Star = 278
284 Node_PostDPlus = 279
285 Node_PostDMinus = 280
286 Node_UnaryPlus = 281
287 Node_UnaryMinus = 282
288 Node_NotIn = 283
289 Node_IsNot = 284
290 KW_DLeftBracket = 285
291 KW_Bang = 286
292 KW_For = 287
293 KW_While = 288
294 KW_Until = 289
295 KW_Do = 290
296 KW_Done = 291
297 KW_In = 292
298 KW_Case = 293
299 KW_Esac = 294
300 KW_If = 295
301 KW_Fi = 296
302 KW_Then = 297
303 KW_Else = 298
304 KW_Elif = 299
305 KW_Function = 300
306 KW_Time = 301
307 KW_Const = 302
308 KW_Var = 303
309 KW_SetVar = 304
310 KW_SetGlobal = 305
311 KW_Call = 306
312 KW_Proc = 307
313 KW_Typed = 308
314 KW_Func = 309
315 ControlFlow_Break = 310
316 ControlFlow_Continue = 311
317 ControlFlow_Return = 312
318 ControlFlow_Exit = 313
319 LookAhead_FuncParens = 314
320 Glob_LBracket = 315
321 Glob_RBracket = 316
322 Glob_Star = 317
323 Glob_QMark = 318
324 Glob_Bang = 319
325 Glob_Caret = 320
326 Glob_EscapedChar = 321
327 Glob_BadBackslash = 322
328 Glob_CleanLiterals = 323
329 Glob_OtherLiteral = 324
330 Format_EscapedPercent = 325
331 Format_Percent = 326
332 Format_Flag = 327
333 Format_Num = 328
334 Format_Dot = 329
335 Format_Type = 330
336 Format_Star = 331
337 Format_Time = 332
338 Format_Zero = 333
339 PS_Subst = 334
340 PS_Octal3 = 335
341 PS_LBrace = 336
342 PS_RBrace = 337
343 PS_Literals = 338
344 PS_BadBackslash = 339
345 Range_Int = 340
346 Range_Char = 341
347 Range_Dots = 342
348 Range_Other = 343
349 J8_LBracket = 344
350 J8_RBracket = 345
351 J8_LBrace = 346
352 J8_RBrace = 347
353 J8_Comma = 348
354 J8_Colon = 349
355 J8_Null = 350
356 J8_Bool = 351
357 J8_Int = 352
358 J8_Float = 353
359 J8_String = 354
360 J8_Identifier = 355
361 J8_Newline = 356
362 J8_Tab = 357
363 J8_LParen = 358
364 J8_RParen = 359
365 J8_Operator = 360
366 ShNumber_Dec = 361
367 ShNumber_Hex = 362
368 ShNumber_Oct = 363
369 ShNumber_BaseN = 364
370 BoolUnary_z = 365
371 BoolUnary_n = 366
372 BoolUnary_o = 367
373 BoolUnary_t = 368
374 BoolUnary_v = 369
375 BoolUnary_R = 370
376 BoolUnary_a = 371
377 BoolUnary_b = 372
378 BoolUnary_c = 373
379 BoolUnary_d = 374
380 BoolUnary_e = 375
381 BoolUnary_f = 376
382 BoolUnary_g = 377
383 BoolUnary_h = 378
384 BoolUnary_k = 379
385 BoolUnary_L = 380
386 BoolUnary_p = 381
387 BoolUnary_r = 382
388 BoolUnary_s = 383
389 BoolUnary_S = 384
390 BoolUnary_u = 385
391 BoolUnary_w = 386
392 BoolUnary_x = 387
393 BoolUnary_O = 388
394 BoolUnary_G = 389
395 BoolUnary_N = 390
396 BoolBinary_GlobEqual = 391
397 BoolBinary_GlobDEqual = 392
398 BoolBinary_GlobNEqual = 393
399 BoolBinary_EqualTilde = 394
400 BoolBinary_ef = 395
401 BoolBinary_nt = 396
402 BoolBinary_ot = 397
403 BoolBinary_eq = 398
404 BoolBinary_ne = 399
405 BoolBinary_gt = 400
406 BoolBinary_ge = 401
407 BoolBinary_lt = 402
408 BoolBinary_le = 403
409 BoolBinary_Equal = 404
410 BoolBinary_DEqual = 405
411 BoolBinary_NEqual = 406
412 ARRAY_SIZE = 407
413
414_Id_str = {
415 1: 'Id.Word_Compound',
416 2: 'Id.Arith_Semi',
417 3: 'Id.Arith_Comma',
418 4: 'Id.Arith_Plus',
419 5: 'Id.Arith_Minus',
420 6: 'Id.Arith_Star',
421 7: 'Id.Arith_Slash',
422 8: 'Id.Arith_Percent',
423 9: 'Id.Arith_DPlus',
424 10: 'Id.Arith_DMinus',
425 11: 'Id.Arith_DStar',
426 12: 'Id.Arith_LParen',
427 13: 'Id.Arith_RParen',
428 14: 'Id.Arith_LBracket',
429 15: 'Id.Arith_RBracket',
430 16: 'Id.Arith_RBrace',
431 17: 'Id.Arith_QMark',
432 18: 'Id.Arith_Colon',
433 19: 'Id.Arith_LessEqual',
434 20: 'Id.Arith_Less',
435 21: 'Id.Arith_GreatEqual',
436 22: 'Id.Arith_Great',
437 23: 'Id.Arith_DEqual',
438 24: 'Id.Arith_NEqual',
439 25: 'Id.Arith_DAmp',
440 26: 'Id.Arith_DPipe',
441 27: 'Id.Arith_Bang',
442 28: 'Id.Arith_DGreat',
443 29: 'Id.Arith_DLess',
444 30: 'Id.Arith_Amp',
445 31: 'Id.Arith_Pipe',
446 32: 'Id.Arith_Caret',
447 33: 'Id.Arith_Tilde',
448 34: 'Id.Arith_Equal',
449 35: 'Id.Arith_PlusEqual',
450 36: 'Id.Arith_MinusEqual',
451 37: 'Id.Arith_StarEqual',
452 38: 'Id.Arith_SlashEqual',
453 39: 'Id.Arith_PercentEqual',
454 40: 'Id.Arith_DGreatEqual',
455 41: 'Id.Arith_DLessEqual',
456 42: 'Id.Arith_AmpEqual',
457 43: 'Id.Arith_CaretEqual',
458 44: 'Id.Arith_PipeEqual',
459 45: 'Id.Eof_Real',
460 46: 'Id.Eof_RParen',
461 47: 'Id.Eof_Backtick',
462 48: 'Id.Undefined_Tok',
463 49: 'Id.Unknown_Tok',
464 50: 'Id.Unknown_Backslash',
465 51: 'Id.Unknown_DEqual',
466 52: 'Id.Eol_Tok',
467 53: 'Id.Ignored_LineCont',
468 54: 'Id.Ignored_Space',
469 55: 'Id.Ignored_Comment',
470 56: 'Id.Ignored_Newline',
471 57: 'Id.WS_Space',
472 58: 'Id.Lit_Chars',
473 59: 'Id.Lit_CharsWithoutPrefix',
474 60: 'Id.Lit_VarLike',
475 61: 'Id.Lit_ArrayLhsOpen',
476 62: 'Id.Lit_ArrayLhsClose',
477 63: 'Id.Lit_Splice',
478 64: 'Id.Lit_AtLBracket',
479 65: 'Id.Lit_AtLBraceDot',
480 66: 'Id.Lit_Other',
481 67: 'Id.Lit_EscapedChar',
482 68: 'Id.Lit_LBracket',
483 69: 'Id.Lit_RBracket',
484 70: 'Id.Lit_Star',
485 71: 'Id.Lit_QMark',
486 72: 'Id.Lit_LBrace',
487 73: 'Id.Lit_RBrace',
488 74: 'Id.Lit_Comma',
489 75: 'Id.Lit_Equals',
490 76: 'Id.Lit_Dollar',
491 77: 'Id.Lit_DRightBracket',
492 78: 'Id.Lit_Tilde',
493 79: 'Id.Lit_Pound',
494 80: 'Id.Lit_TPound',
495 81: 'Id.Lit_TDot',
496 82: 'Id.Lit_Slash',
497 83: 'Id.Lit_Percent',
498 84: 'Id.Lit_Colon',
499 85: 'Id.Lit_Digits',
500 86: 'Id.Lit_At',
501 87: 'Id.Lit_ArithVarLike',
502 88: 'Id.Lit_BadBackslash',
503 89: 'Id.Lit_CompDummy',
504 90: 'Id.Backtick_Right',
505 91: 'Id.Backtick_Quoted',
506 92: 'Id.Backtick_DoubleQuote',
507 93: 'Id.Backtick_Other',
508 94: 'Id.History_Op',
509 95: 'Id.History_Num',
510 96: 'Id.History_Search',
511 97: 'Id.History_Other',
512 98: 'Id.Op_Newline',
513 99: 'Id.Op_Amp',
514 100: 'Id.Op_Pipe',
515 101: 'Id.Op_PipeAmp',
516 102: 'Id.Op_DAmp',
517 103: 'Id.Op_DPipe',
518 104: 'Id.Op_Semi',
519 105: 'Id.Op_DSemi',
520 106: 'Id.Op_SemiAmp',
521 107: 'Id.Op_DSemiAmp',
522 108: 'Id.Op_LParen',
523 109: 'Id.Op_RParen',
524 110: 'Id.Op_DLeftParen',
525 111: 'Id.Op_DRightParen',
526 112: 'Id.Op_Less',
527 113: 'Id.Op_Great',
528 114: 'Id.Op_Bang',
529 115: 'Id.Op_LBracket',
530 116: 'Id.Op_RBracket',
531 117: 'Id.Op_LBrace',
532 118: 'Id.Op_RBrace',
533 119: 'Id.Expr_Reserved',
534 120: 'Id.Expr_Symbol',
535 121: 'Id.Expr_Name',
536 122: 'Id.Expr_DecInt',
537 123: 'Id.Expr_BinInt',
538 124: 'Id.Expr_OctInt',
539 125: 'Id.Expr_HexInt',
540 126: 'Id.Expr_Float',
541 127: 'Id.Expr_Bang',
542 128: 'Id.Expr_Dot',
543 129: 'Id.Expr_DDot',
544 130: 'Id.Expr_Colon',
545 131: 'Id.Expr_RArrow',
546 132: 'Id.Expr_RDArrow',
547 133: 'Id.Expr_DSlash',
548 134: 'Id.Expr_TEqual',
549 135: 'Id.Expr_NotDEqual',
550 136: 'Id.Expr_TildeDEqual',
551 137: 'Id.Expr_At',
552 138: 'Id.Expr_DoubleAt',
553 139: 'Id.Expr_Ellipsis',
554 140: 'Id.Expr_Dollar',
555 141: 'Id.Expr_NotTilde',
556 142: 'Id.Expr_DTilde',
557 143: 'Id.Expr_NotDTilde',
558 144: 'Id.Expr_DStarEqual',
559 145: 'Id.Expr_DSlashEqual',
560 146: 'Id.Expr_CastedDummy',
561 147: 'Id.Expr_Null',
562 148: 'Id.Expr_True',
563 149: 'Id.Expr_False',
564 150: 'Id.Expr_And',
565 151: 'Id.Expr_Or',
566 152: 'Id.Expr_Not',
567 153: 'Id.Expr_For',
568 154: 'Id.Expr_Is',
569 155: 'Id.Expr_In',
570 156: 'Id.Expr_If',
571 157: 'Id.Expr_Else',
572 158: 'Id.Expr_Func',
573 159: 'Id.Expr_Capture',
574 160: 'Id.Expr_As',
575 161: 'Id.Char_OneChar',
576 162: 'Id.Char_Stop',
577 163: 'Id.Char_Hex',
578 164: 'Id.Char_YHex',
579 165: 'Id.Char_Octal3',
580 166: 'Id.Char_Octal4',
581 167: 'Id.Char_Unicode4',
582 168: 'Id.Char_SurrogatePair',
583 169: 'Id.Char_Unicode8',
584 170: 'Id.Char_UBraced',
585 171: 'Id.Char_Pound',
586 172: 'Id.Char_AsciiControl',
587 173: 'Id.BashRegex_LParen',
588 174: 'Id.BashRegex_AllowedInParens',
589 175: 'Id.Eggex_Start',
590 176: 'Id.Eggex_End',
591 177: 'Id.Eggex_Dot',
592 178: 'Id.Redir_Less',
593 179: 'Id.Redir_Great',
594 180: 'Id.Redir_DLess',
595 181: 'Id.Redir_TLess',
596 182: 'Id.Redir_DGreat',
597 183: 'Id.Redir_GreatAnd',
598 184: 'Id.Redir_LessAnd',
599 185: 'Id.Redir_DLessDash',
600 186: 'Id.Redir_LessGreat',
601 187: 'Id.Redir_Clobber',
602 188: 'Id.Redir_AndGreat',
603 189: 'Id.Redir_AndDGreat',
604 190: 'Id.Left_DoubleQuote',
605 191: 'Id.Left_JDoubleQuote',
606 192: 'Id.Left_SingleQuote',
607 193: 'Id.Left_DollarSingleQuote',
608 194: 'Id.Left_RSingleQuote',
609 195: 'Id.Left_USingleQuote',
610 196: 'Id.Left_BSingleQuote',
611 197: 'Id.Left_TDoubleQuote',
612 198: 'Id.Left_DollarTDoubleQuote',
613 199: 'Id.Left_TSingleQuote',
614 200: 'Id.Left_RTSingleQuote',
615 201: 'Id.Left_UTSingleQuote',
616 202: 'Id.Left_BTSingleQuote',
617 203: 'Id.Left_Backtick',
618 204: 'Id.Left_DollarParen',
619 205: 'Id.Left_DollarBrace',
620 206: 'Id.Left_DollarBraceZsh',
621 207: 'Id.Left_DollarDParen',
622 208: 'Id.Left_DollarBracket',
623 209: 'Id.Left_DollarDoubleQuote',
624 210: 'Id.Left_ProcSubIn',
625 211: 'Id.Left_ProcSubOut',
626 212: 'Id.Left_AtParen',
627 213: 'Id.Left_CaretParen',
628 214: 'Id.Left_CaretBracket',
629 215: 'Id.Left_CaretBrace',
630 216: 'Id.Left_CaretDoubleQuote',
631 217: 'Id.Left_ColonPipe',
632 218: 'Id.Left_PercentParen',
633 219: 'Id.Right_DoubleQuote',
634 220: 'Id.Right_SingleQuote',
635 221: 'Id.Right_Backtick',
636 222: 'Id.Right_DollarBrace',
637 223: 'Id.Right_DollarDParen',
638 224: 'Id.Right_DollarDoubleQuote',
639 225: 'Id.Right_DollarSingleQuote',
640 226: 'Id.Right_Subshell',
641 227: 'Id.Right_ShFunction',
642 228: 'Id.Right_CasePat',
643 229: 'Id.Right_ShArrayLiteral',
644 230: 'Id.Right_ExtGlob',
645 231: 'Id.Right_BashRegexGroup',
646 232: 'Id.Right_BlockLiteral',
647 233: 'Id.ExtGlob_Comma',
648 234: 'Id.ExtGlob_At',
649 235: 'Id.ExtGlob_Star',
650 236: 'Id.ExtGlob_Plus',
651 237: 'Id.ExtGlob_QMark',
652 238: 'Id.ExtGlob_Bang',
653 239: 'Id.VSub_DollarName',
654 240: 'Id.VSub_Name',
655 241: 'Id.VSub_Number',
656 242: 'Id.VSub_Bang',
657 243: 'Id.VSub_At',
658 244: 'Id.VSub_Pound',
659 245: 'Id.VSub_Dollar',
660 246: 'Id.VSub_Star',
661 247: 'Id.VSub_Hyphen',
662 248: 'Id.VSub_QMark',
663 249: 'Id.VSub_Dot',
664 250: 'Id.VTest_ColonHyphen',
665 251: 'Id.VTest_Hyphen',
666 252: 'Id.VTest_ColonEquals',
667 253: 'Id.VTest_Equals',
668 254: 'Id.VTest_ColonQMark',
669 255: 'Id.VTest_QMark',
670 256: 'Id.VTest_ColonPlus',
671 257: 'Id.VTest_Plus',
672 258: 'Id.VOp0_Q',
673 259: 'Id.VOp0_E',
674 260: 'Id.VOp0_P',
675 261: 'Id.VOp0_A',
676 262: 'Id.VOp0_a',
677 263: 'Id.VOp1_Percent',
678 264: 'Id.VOp1_DPercent',
679 265: 'Id.VOp1_Pound',
680 266: 'Id.VOp1_DPound',
681 267: 'Id.VOp1_Caret',
682 268: 'Id.VOp1_DCaret',
683 269: 'Id.VOp1_Comma',
684 270: 'Id.VOp1_DComma',
685 271: 'Id.VOpYsh_Pipe',
686 272: 'Id.VOpYsh_Space',
687 273: 'Id.VOp2_Slash',
688 274: 'Id.VOp2_Colon',
689 275: 'Id.VOp2_LBracket',
690 276: 'Id.VOp2_RBracket',
691 277: 'Id.VOp3_At',
692 278: 'Id.VOp3_Star',
693 279: 'Id.Node_PostDPlus',
694 280: 'Id.Node_PostDMinus',
695 281: 'Id.Node_UnaryPlus',
696 282: 'Id.Node_UnaryMinus',
697 283: 'Id.Node_NotIn',
698 284: 'Id.Node_IsNot',
699 285: 'Id.KW_DLeftBracket',
700 286: 'Id.KW_Bang',
701 287: 'Id.KW_For',
702 288: 'Id.KW_While',
703 289: 'Id.KW_Until',
704 290: 'Id.KW_Do',
705 291: 'Id.KW_Done',
706 292: 'Id.KW_In',
707 293: 'Id.KW_Case',
708 294: 'Id.KW_Esac',
709 295: 'Id.KW_If',
710 296: 'Id.KW_Fi',
711 297: 'Id.KW_Then',
712 298: 'Id.KW_Else',
713 299: 'Id.KW_Elif',
714 300: 'Id.KW_Function',
715 301: 'Id.KW_Time',
716 302: 'Id.KW_Const',
717 303: 'Id.KW_Var',
718 304: 'Id.KW_SetVar',
719 305: 'Id.KW_SetGlobal',
720 306: 'Id.KW_Call',
721 307: 'Id.KW_Proc',
722 308: 'Id.KW_Typed',
723 309: 'Id.KW_Func',
724 310: 'Id.ControlFlow_Break',
725 311: 'Id.ControlFlow_Continue',
726 312: 'Id.ControlFlow_Return',
727 313: 'Id.ControlFlow_Exit',
728 314: 'Id.LookAhead_FuncParens',
729 315: 'Id.Glob_LBracket',
730 316: 'Id.Glob_RBracket',
731 317: 'Id.Glob_Star',
732 318: 'Id.Glob_QMark',
733 319: 'Id.Glob_Bang',
734 320: 'Id.Glob_Caret',
735 321: 'Id.Glob_EscapedChar',
736 322: 'Id.Glob_BadBackslash',
737 323: 'Id.Glob_CleanLiterals',
738 324: 'Id.Glob_OtherLiteral',
739 325: 'Id.Format_EscapedPercent',
740 326: 'Id.Format_Percent',
741 327: 'Id.Format_Flag',
742 328: 'Id.Format_Num',
743 329: 'Id.Format_Dot',
744 330: 'Id.Format_Type',
745 331: 'Id.Format_Star',
746 332: 'Id.Format_Time',
747 333: 'Id.Format_Zero',
748 334: 'Id.PS_Subst',
749 335: 'Id.PS_Octal3',
750 336: 'Id.PS_LBrace',
751 337: 'Id.PS_RBrace',
752 338: 'Id.PS_Literals',
753 339: 'Id.PS_BadBackslash',
754 340: 'Id.Range_Int',
755 341: 'Id.Range_Char',
756 342: 'Id.Range_Dots',
757 343: 'Id.Range_Other',
758 344: 'Id.J8_LBracket',
759 345: 'Id.J8_RBracket',
760 346: 'Id.J8_LBrace',
761 347: 'Id.J8_RBrace',
762 348: 'Id.J8_Comma',
763 349: 'Id.J8_Colon',
764 350: 'Id.J8_Null',
765 351: 'Id.J8_Bool',
766 352: 'Id.J8_Int',
767 353: 'Id.J8_Float',
768 354: 'Id.J8_String',
769 355: 'Id.J8_Identifier',
770 356: 'Id.J8_Newline',
771 357: 'Id.J8_Tab',
772 358: 'Id.J8_LParen',
773 359: 'Id.J8_RParen',
774 360: 'Id.J8_Operator',
775 361: 'Id.ShNumber_Dec',
776 362: 'Id.ShNumber_Hex',
777 363: 'Id.ShNumber_Oct',
778 364: 'Id.ShNumber_BaseN',
779 365: 'Id.BoolUnary_z',
780 366: 'Id.BoolUnary_n',
781 367: 'Id.BoolUnary_o',
782 368: 'Id.BoolUnary_t',
783 369: 'Id.BoolUnary_v',
784 370: 'Id.BoolUnary_R',
785 371: 'Id.BoolUnary_a',
786 372: 'Id.BoolUnary_b',
787 373: 'Id.BoolUnary_c',
788 374: 'Id.BoolUnary_d',
789 375: 'Id.BoolUnary_e',
790 376: 'Id.BoolUnary_f',
791 377: 'Id.BoolUnary_g',
792 378: 'Id.BoolUnary_h',
793 379: 'Id.BoolUnary_k',
794 380: 'Id.BoolUnary_L',
795 381: 'Id.BoolUnary_p',
796 382: 'Id.BoolUnary_r',
797 383: 'Id.BoolUnary_s',
798 384: 'Id.BoolUnary_S',
799 385: 'Id.BoolUnary_u',
800 386: 'Id.BoolUnary_w',
801 387: 'Id.BoolUnary_x',
802 388: 'Id.BoolUnary_O',
803 389: 'Id.BoolUnary_G',
804 390: 'Id.BoolUnary_N',
805 391: 'Id.BoolBinary_GlobEqual',
806 392: 'Id.BoolBinary_GlobDEqual',
807 393: 'Id.BoolBinary_GlobNEqual',
808 394: 'Id.BoolBinary_EqualTilde',
809 395: 'Id.BoolBinary_ef',
810 396: 'Id.BoolBinary_nt',
811 397: 'Id.BoolBinary_ot',
812 398: 'Id.BoolBinary_eq',
813 399: 'Id.BoolBinary_ne',
814 400: 'Id.BoolBinary_gt',
815 401: 'Id.BoolBinary_ge',
816 402: 'Id.BoolBinary_lt',
817 403: 'Id.BoolBinary_le',
818 404: 'Id.BoolBinary_Equal',
819 405: 'Id.BoolBinary_DEqual',
820 406: 'Id.BoolBinary_NEqual',
821}
822
823def Id_str(val):
824 # type: (Id_t) -> str
825 return _Id_str[val]
826
827class Kind_t(pybase.SimpleObj):
828 pass
829
830class Kind(object):
831 Word = Kind_t(1)
832 Arith = Kind_t(2)
833 Eof = Kind_t(3)
834 Undefined = Kind_t(4)
835 Unknown = Kind_t(5)
836 Eol = Kind_t(6)
837 Ignored = Kind_t(7)
838 WS = Kind_t(8)
839 Lit = Kind_t(9)
840 Backtick = Kind_t(10)
841 History = Kind_t(11)
842 Op = Kind_t(12)
843 Expr = Kind_t(13)
844 Char = Kind_t(14)
845 BashRegex = Kind_t(15)
846 Eggex = Kind_t(16)
847 Redir = Kind_t(17)
848 Left = Kind_t(18)
849 Right = Kind_t(19)
850 ExtGlob = Kind_t(20)
851 VSub = Kind_t(21)
852 VTest = Kind_t(22)
853 VOp0 = Kind_t(23)
854 VOp1 = Kind_t(24)
855 VOpYsh = Kind_t(25)
856 VOp2 = Kind_t(26)
857 VOp3 = Kind_t(27)
858 Node = Kind_t(28)
859 KW = Kind_t(29)
860 ControlFlow = Kind_t(30)
861 LookAhead = Kind_t(31)
862 Glob = Kind_t(32)
863 Format = Kind_t(33)
864 PS = Kind_t(34)
865 Range = Kind_t(35)
866 J8 = Kind_t(36)
867 ShNumber = Kind_t(37)
868 BoolUnary = Kind_t(38)
869 BoolBinary = Kind_t(39)
870
871_Kind_str = {
872 1: 'Kind.Word',
873 2: 'Kind.Arith',
874 3: 'Kind.Eof',
875 4: 'Kind.Undefined',
876 5: 'Kind.Unknown',
877 6: 'Kind.Eol',
878 7: 'Kind.Ignored',
879 8: 'Kind.WS',
880 9: 'Kind.Lit',
881 10: 'Kind.Backtick',
882 11: 'Kind.History',
883 12: 'Kind.Op',
884 13: 'Kind.Expr',
885 14: 'Kind.Char',
886 15: 'Kind.BashRegex',
887 16: 'Kind.Eggex',
888 17: 'Kind.Redir',
889 18: 'Kind.Left',
890 19: 'Kind.Right',
891 20: 'Kind.ExtGlob',
892 21: 'Kind.VSub',
893 22: 'Kind.VTest',
894 23: 'Kind.VOp0',
895 24: 'Kind.VOp1',
896 25: 'Kind.VOpYsh',
897 26: 'Kind.VOp2',
898 27: 'Kind.VOp3',
899 28: 'Kind.Node',
900 29: 'Kind.KW',
901 30: 'Kind.ControlFlow',
902 31: 'Kind.LookAhead',
903 32: 'Kind.Glob',
904 33: 'Kind.Format',
905 34: 'Kind.PS',
906 35: 'Kind.Range',
907 36: 'Kind.J8',
908 37: 'Kind.ShNumber',
909 38: 'Kind.BoolUnary',
910 39: 'Kind.BoolBinary',
911}
912
913def Kind_str(val):
914 # type: (Kind_t) -> str
915 return _Kind_str[val]
916