Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(42)

Side by Side Diff: pkg/kernel/binary.md

Issue 2999633002: [kernel] Offsets on loops (Closed)
Patch Set: Fix long line Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 772 matching lines...) Expand 10 before | Expand all | Expand 10 after
783 783
784 // Reference to the Nth LabeledStatement in scope, with 0 being the 784 // Reference to the Nth LabeledStatement in scope, with 0 being the
785 // outermost enclosing labeled statement within the same FunctionNode. 785 // outermost enclosing labeled statement within the same FunctionNode.
786 // 786 //
787 // Labels are not in scope across function boundaries. 787 // Labels are not in scope across function boundaries.
788 UInt labelIndex; 788 UInt labelIndex;
789 } 789 }
790 790
791 type WhileStatement extends Statement { 791 type WhileStatement extends Statement {
792 Byte tag = 67; 792 Byte tag = 67;
793 FileOffset fileOffset;
793 Expression condition; 794 Expression condition;
794 Statement body; 795 Statement body;
795 } 796 }
796 797
797 type DoStatement extends Statement { 798 type DoStatement extends Statement {
798 Byte tag = 68; 799 Byte tag = 68;
800 FileOffset fileOffset;
799 Statement body; 801 Statement body;
800 Expression condition; 802 Expression condition;
801 } 803 }
802 804
803 type ForStatement extends Statement { 805 type ForStatement extends Statement {
804 Byte tag = 69; 806 Byte tag = 69;
807 FileOffset fileOffset;
805 List<VariableDeclaration> variables; 808 List<VariableDeclaration> variables;
806 Option<Expression> condition; 809 Option<Expression> condition;
807 List<Expression> updates; 810 List<Expression> updates;
808 Statement body; 811 Statement body;
809 } 812 }
810 813
811 type ForInStatement extends Statement { 814 type ForInStatement extends Statement {
812 Byte tag = 70; 815 Byte tag = 70;
813 FileOffset fileOffset; // note that this is actually the body offset 816 FileOffset fileOffset;
817 FileOffset bodyOffset;
814 VariableDeclaration variable; 818 VariableDeclaration variable;
815 Expression iterable; 819 Expression iterable;
816 Statement body; 820 Statement body;
817 } 821 }
818 822
819 type AsyncForInStatement extends Statement { 823 type AsyncForInStatement extends Statement {
820 Byte tag = 80; // Note: tag is out of order. 824 Byte tag = 80; // Note: tag is out of order.
821 FileOffset fileOffset; // note that this is actually the body offset 825 FileOffset fileOffset;
826 FileOffset bodyOffset;
822 VariableDeclaration variable; 827 VariableDeclaration variable;
823 Expression iterable; 828 Expression iterable;
824 Statement body; 829 Statement body;
825 } 830 }
826 831
827 type SwitchStatement extends Statement { 832 type SwitchStatement extends Statement {
828 Byte tag = 71; 833 Byte tag = 71;
829 Expression expression; 834 Expression expression;
830 List<SwitchCase> cases; 835 List<SwitchCase> cases;
831 } 836 }
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
1015 Option<DartType> bound; 1020 Option<DartType> bound;
1016 } 1021 }
1017 1022
1018 type TypeParameter { 1023 type TypeParameter {
1019 // Note: there is no tag on TypeParameter 1024 // Note: there is no tag on TypeParameter
1020 StringReference name; // Cosmetic, may be empty, not unique. 1025 StringReference name; // Cosmetic, may be empty, not unique.
1021 DartType bound; // 'dynamic' if no explicit bound was given. 1026 DartType bound; // 'dynamic' if no explicit bound was given.
1022 } 1027 }
1023 1028
1024 ``` 1029 ```
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698