|
464 | 464 | ('const c',
|
465 | 465 | ['CONST const', 'ID c']),
|
466 | 466 | ), (
|
467 |
| - 'arrow_punctuator', |
468 |
| - ('=>', |
469 |
| - ['ARROW =>']), |
| 467 | + 'punctuators', |
| 468 | + ('=> ...', |
| 469 | + ['ARROW =>', 'SPREAD ...']), |
470 | 470 | ), (
|
471 | 471 | 'arrow_functions',
|
472 | 472 | ('const c = (name) => { return name; }',
|
473 | 473 | ['CONST const', 'ID c', 'EQ =', 'LPAREN (', 'ID name', 'RPAREN )',
|
474 | 474 | 'ARROW =>', 'LBRACE {', 'RETURN return', 'ID name', 'SEMI ;',
|
475 | 475 | 'RBRACE }']),
|
| 476 | + ), ( |
| 477 | + 'spread', |
| 478 | + ('[...spring, ...summer]', |
| 479 | + ['LBRACKET [', 'SPREAD ...', 'ID spring', 'COMMA ,', 'SPREAD ...', |
| 480 | + 'ID summer', 'RBRACKET ]']), |
476 | 481 | ), (
|
477 | 482 | 'template_literal',
|
478 | 483 | ('`foo`',
|
479 |
| - ['TEMPLATE `foo`']), |
| 484 | + ['TEMPLATE_NOSUB `foo`']), |
480 | 485 | ), (
|
481 | 486 | 'template_multiline',
|
482 | 487 | ('`foo\nbar\r\nfoo`',
|
483 |
| - ['TEMPLATE `foo\nbar\r\nfoo`']), |
| 488 | + ['TEMPLATE_NOSUB `foo\nbar\r\nfoo`']), |
484 | 489 | ), (
|
485 | 490 | 'template_other_newlines',
|
486 | 491 | ('`foo\u2028\u2029foo`',
|
487 |
| - ['TEMPLATE `foo\u2028\u2029foo`']), |
| 492 | + ['TEMPLATE_NOSUB `foo\u2028\u2029foo`']), |
488 | 493 | ), (
|
489 | 494 | 'template_literal_with_dollar',
|
490 | 495 | ('`foo$`',
|
491 |
| - ['TEMPLATE `foo$`']), |
| 496 | + ['TEMPLATE_NOSUB `foo$`']), |
492 | 497 | ), (
|
493 | 498 | 'template_head_tail',
|
494 | 499 | (r'`hello ${name} while this`',
|
495 |
| - ['TEMPLATE `hello ${', 'ID name', 'TEMPLATE } while this`']), |
| 500 | + ['TEMPLATE_HEAD `hello ${', 'ID name', 'TEMPLATE_TAIL } while this`']), |
496 | 501 | ), (
|
497 | 502 | 'template_empty_head_tail',
|
498 | 503 | (r'`${name}`',
|
499 |
| - ['TEMPLATE `${', 'ID name', 'TEMPLATE }`']), |
| 504 | + ['TEMPLATE_HEAD `${', 'ID name', 'TEMPLATE_TAIL }`']), |
500 | 505 | ), (
|
501 | 506 | 'template_nested',
|
502 | 507 | (r'`${`${a * 2}`} ${b}`',
|
503 |
| - ['TEMPLATE `${', 'TEMPLATE `${', 'ID a', 'MULT *', 'NUMBER 2', |
504 |
| - 'TEMPLATE }`', 'TEMPLATE } ${', 'ID b', 'TEMPLATE }`']), |
| 508 | + ['TEMPLATE_HEAD `${', 'TEMPLATE_HEAD `${', 'ID a', 'MULT *', |
| 509 | + 'NUMBER 2', 'TEMPLATE_TAIL }`', 'TEMPLATE_MIDDLE } ${', 'ID b', |
| 510 | + 'TEMPLATE_TAIL }`']), |
505 | 511 | ), (
|
506 | 512 | 'template_some_keywords',
|
507 | 513 | (r'`this -> ${this}.`',
|
508 |
| - ['TEMPLATE `this -> ${', 'THIS this', 'TEMPLATE }.`']), |
| 514 | + ['TEMPLATE_HEAD `this -> ${', 'THIS this', 'TEMPLATE_TAIL }.`']), |
509 | 515 | ), (
|
510 | 516 | 'template_literal_escape',
|
511 | 517 | (r'`f\`o`',
|
512 |
| - [r'TEMPLATE `f\`o`']), |
| 518 | + [r'TEMPLATE_NOSUB `f\`o`']), |
513 | 519 | ), (
|
514 | 520 | 'template_literal_assignment',
|
515 | 521 | ('s = `hello world`',
|
516 |
| - ['ID s', 'EQ =', 'TEMPLATE `hello world`']), |
| 522 | + ['ID s', 'EQ =', 'TEMPLATE_NOSUB `hello world`']), |
517 | 523 | )
|
518 | 524 | ]
|
519 | 525 |
|
|
0 commit comments