Commit b997df0
authored
CST: Improve serialization of functions, handle AstTypeFunction (#275)
This PR introduces support for serializing an AstTypeFunction. The most
interesting part of this is the parameters, where the name (and hence
colon) is optional. For this, we introduce a type
`AstTypeFunctionParameter` to contain this information. We also
serialize the vararg annotation independently.
As part of this, we also extend the serialization on normal functions to
include attributes, varargs, and the return type.
For now we serialize a placeholder for the `:` token (in functions and
for AstLocal too), which will get fixed after we sync to Luau 0.673.1 parent 445ea7b commit b997df0
File tree
8 files changed
+362
-32
lines changed- batteries/syntax
- luau/src
- tests
- astSerializerTests
8 files changed
+362
-32
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
| 46 | + | |
| 47 | + | |
46 | 48 | | |
47 | 49 | | |
48 | 50 | | |
| |||
108 | 110 | | |
109 | 111 | | |
110 | 112 | | |
111 | | - | |
112 | | - | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
113 | 117 | | |
114 | | - | |
| 118 | + | |
| 119 | + | |
115 | 120 | | |
116 | 121 | | |
117 | 122 | | |
118 | 123 | | |
119 | 124 | | |
120 | 125 | | |
| 126 | + | |
121 | 127 | | |
122 | 128 | | |
123 | 129 | | |
| |||
313 | 319 | | |
314 | 320 | | |
315 | 321 | | |
| 322 | + | |
| 323 | + | |
316 | 324 | | |
317 | 325 | | |
| 326 | + | |
318 | 327 | | |
319 | 328 | | |
320 | 329 | | |
321 | 330 | | |
322 | 331 | | |
323 | 332 | | |
324 | 333 | | |
| 334 | + | |
325 | 335 | | |
326 | 336 | | |
327 | 337 | | |
| |||
477 | 487 | | |
478 | 488 | | |
479 | 489 | | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
480 | 510 | | |
481 | 511 | | |
482 | 512 | | |
| |||
488 | 518 | | |
489 | 519 | | |
490 | 520 | | |
| 521 | + | |
491 | 522 | | |
492 | 523 | | |
493 | 524 | | |
494 | | - | |
| 525 | + | |
495 | 526 | | |
496 | 527 | | |
497 | | - | |
| 528 | + | |
498 | 529 | | |
499 | 530 | | |
500 | 531 | | |
| |||
505 | 536 | | |
506 | 537 | | |
507 | 538 | | |
508 | | - | |
| 539 | + | |
| 540 | + | |
509 | 541 | | |
510 | 542 | | |
511 | 543 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| 48 | + | |
48 | 49 | | |
49 | 50 | | |
50 | 51 | | |
| |||
106 | 107 | | |
107 | 108 | | |
108 | 109 | | |
| 110 | + | |
109 | 111 | | |
110 | 112 | | |
111 | 113 | | |
| |||
140 | 142 | | |
141 | 143 | | |
142 | 144 | | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
143 | 151 | | |
144 | 152 | | |
145 | 153 | | |
| |||
390 | 398 | | |
391 | 399 | | |
392 | 400 | | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
393 | 410 | | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
394 | 417 | | |
395 | 418 | | |
396 | 419 | | |
397 | 420 | | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
398 | 425 | | |
399 | 426 | | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
400 | 430 | | |
401 | 431 | | |
402 | 432 | | |
403 | 433 | | |
404 | 434 | | |
405 | 435 | | |
406 | 436 | | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
407 | 440 | | |
408 | 441 | | |
409 | 442 | | |
| |||
412 | 445 | | |
413 | 446 | | |
414 | 447 | | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
415 | 451 | | |
416 | 452 | | |
417 | 453 | | |
| |||
641 | 677 | | |
642 | 678 | | |
643 | 679 | | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
| 711 | + | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
644 | 715 | | |
645 | 716 | | |
646 | | - | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
647 | 720 | | |
648 | 721 | | |
649 | 722 | | |
650 | 723 | | |
651 | | - | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
652 | 727 | | |
653 | 728 | | |
654 | 729 | | |
| |||
661 | 736 | | |
662 | 737 | | |
663 | 738 | | |
664 | | - | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
665 | 742 | | |
666 | 743 | | |
667 | 744 | | |
| |||
773 | 850 | | |
774 | 851 | | |
775 | 852 | | |
| 853 | + | |
| 854 | + | |
776 | 855 | | |
777 | 856 | | |
778 | 857 | | |
| |||
0 commit comments