OLD | NEW |
1 This file describes the binary format of Dart Kernel. | 1 This file describes the binary format of Dart Kernel. |
2 | 2 |
3 Notation | 3 Notation |
4 -------- | 4 -------- |
5 Bitmasks are described with the syntax: | 5 Bitmasks are described with the syntax: |
6 ```scala | 6 ```scala |
7 Byte flags (flag1, flag2, ..., flagN) | 7 Byte flags (flag1, flag2, ..., flagN) |
8 ``` | 8 ``` |
9 where 'flag<N>' is the N-th least significant bit, | 9 where 'flag<N>' is the N-th least significant bit, |
10 (so flag1 is the least significant bit). | 10 (so flag1 is the least significant bit). |
(...skipping 733 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
744 List<Expression> expressions; | 744 List<Expression> expressions; |
745 } | 745 } |
746 | 746 |
747 type EmptyStatement extends Statement { | 747 type EmptyStatement extends Statement { |
748 Byte tag = 63; | 748 Byte tag = 63; |
749 } | 749 } |
750 | 750 |
751 type AssertStatement extends Statement { | 751 type AssertStatement extends Statement { |
752 Byte tag = 64; | 752 Byte tag = 64; |
753 Expression condition; | 753 Expression condition; |
| 754 FileOffset conditionStartOffset; |
| 755 FileOffset conditionEndOffset; |
754 Option<Expression> message; | 756 Option<Expression> message; |
755 } | 757 } |
756 | 758 |
757 type LabeledStatement extends Statement { | 759 type LabeledStatement extends Statement { |
758 Byte tag = 65; | 760 Byte tag = 65; |
759 Statement body; | 761 Statement body; |
760 } | 762 } |
761 | 763 |
762 type BreakStatement extends Statement { | 764 type BreakStatement extends Statement { |
763 Byte tag = 66; | 765 Byte tag = 66; |
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
996 Option<DartType> bound; | 998 Option<DartType> bound; |
997 } | 999 } |
998 | 1000 |
999 type TypeParameter { | 1001 type TypeParameter { |
1000 // Note: there is no tag on TypeParameter | 1002 // Note: there is no tag on TypeParameter |
1001 StringReference name; // Cosmetic, may be empty, not unique. | 1003 StringReference name; // Cosmetic, may be empty, not unique. |
1002 DartType bound; // 'dynamic' if no explicit bound was given. | 1004 DartType bound; // 'dynamic' if no explicit bound was given. |
1003 } | 1005 } |
1004 | 1006 |
1005 ``` | 1007 ``` |
OLD | NEW |