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 725 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
736 | 736 |
737 type SwitchStatement extends Statement { | 737 type SwitchStatement extends Statement { |
738 Byte tag = 71; | 738 Byte tag = 71; |
739 Expression expression; | 739 Expression expression; |
740 List<SwitchCase> cases; | 740 List<SwitchCase> cases; |
741 } | 741 } |
742 | 742 |
743 type SwitchCase { | 743 type SwitchCase { |
744 // Note: there is no tag on SwitchCase | 744 // Note: there is no tag on SwitchCase |
745 List<Expression> expressions; | 745 List<Expression> expressions; |
746 List<FileOffset> expressionsOffsets; // 1-to-1 with expressions. | |
Kevin Millikin (Google)
2017/03/20 12:29:47
expressionsOffsets ==> expressionOffsets
Since th
jensj
2017/03/21 10:06:19
Done.
| |
746 Byte isDefault; // 1 if default, 0 is not default. | 747 Byte isDefault; // 1 if default, 0 is not default. |
747 Statement body; | 748 Statement body; |
748 } | 749 } |
749 | 750 |
750 type ContinueSwitchStatement extends Statement { | 751 type ContinueSwitchStatement extends Statement { |
751 Byte tag = 72; | 752 Byte tag = 72; |
752 | 753 |
753 // Reference to the Nth SwitchCase in scope. | 754 // Reference to the Nth SwitchCase in scope. |
754 // | 755 // |
755 // A SwitchCase is in scope everywhere within its enclosing switch, | 756 // A SwitchCase is in scope everywhere within its enclosing switch, |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
919 | 920 |
920 /* enum BaseClassKind { None, Exact, Subclass, Subtype, } */ | 921 /* enum BaseClassKind { None, Exact, Subclass, Subtype, } */ |
921 | 922 |
922 type InferredValue { | 923 type InferredValue { |
923 ClassReference baseClass; // May be NullReference if kind = None. | 924 ClassReference baseClass; // May be NullReference if kind = None. |
924 Byte kind; // Index into BaseClassKind. | 925 Byte kind; // Index into BaseClassKind. |
925 Byte valueBits; // See lib/type_propagation/type_propagation.dart | 926 Byte valueBits; // See lib/type_propagation/type_propagation.dart |
926 } | 927 } |
927 | 928 |
928 ``` | 929 ``` |
OLD | NEW |