Commit 88b4575
committed
Fix Generation of Sub-Keys in Dictionaries
The tool was previously non-deterministic in code generation for
different orders of property lists passed as parameters. This
generated some side effects where blocks of code wouldn’t be generated
at all depending on the order of property lists that were passed to
the tool **and** the difference in keys between these property lists.
This commit introduces a smarter behavior for property lists that
contain dictionaries, and these dictionaries contain different keys,
also called sub-keys in this context. Before code generation already
known keys that aren’t present in the currently processed property
list are merged with its contents, so that further code generation
methods can determine the optionality of these keys. These keys were
previously not part of the generated code.1 parent a527e77 commit 88b4575
1 file changed
Lines changed: 22 additions & 13 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
620 | 620 | | |
621 | 621 | | |
622 | 622 | | |
623 | | - | |
624 | | - | |
625 | | - | |
626 | | - | |
627 | | - | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
628 | 626 | | |
629 | | - | |
630 | | - | |
631 | | - | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
632 | 642 | | |
633 | | - | |
634 | | - | |
635 | | - | |
636 | | - | |
637 | | - | |
638 | 643 | | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
639 | 648 | | |
640 | 649 | | |
641 | 650 | | |
| |||
0 commit comments