Chromium Code Reviews| 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 299 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 310 */ | 310 */ |
| 311 | 311 |
| 312 type FunctionNode { | 312 type FunctionNode { |
| 313 Byte tag = 3; | 313 Byte tag = 3; |
| 314 FileOffset fileOffset; | 314 FileOffset fileOffset; |
| 315 FileOffset fileEndOffset; | 315 FileOffset fileEndOffset; |
| 316 Byte asyncMarker; // Index into AsyncMarker above. | 316 Byte asyncMarker; // Index into AsyncMarker above. |
| 317 Byte dartAsyncMarker; // Index into AsyncMarker above. | 317 Byte dartAsyncMarker; // Index into AsyncMarker above. |
| 318 List<TypeParameter> typeParameters; | 318 List<TypeParameter> typeParameters; |
| 319 UInt requiredParameterCount; | 319 UInt requiredParameterCount; |
| 320 UInt totalParameterCount; // positionalParameters.length + namedParameters.len gth. | |
|
Kevin Millikin (Google)
2017/06/12 12:01:51
For some reason it seems more obvious to have the
jensj
2017/06/13 13:42:14
Done.
| |
| 320 List<VariableDeclaration> positionalParameters; | 321 List<VariableDeclaration> positionalParameters; |
| 321 List<VariableDeclaration> namedParameters; | 322 List<VariableDeclaration> namedParameters; |
| 322 DartType returnType; | 323 DartType returnType; |
| 323 Option<Statement> body; | 324 Option<Statement> body; |
| 324 } | 325 } |
| 325 | 326 |
| 326 type VariableReference { | 327 type VariableReference { |
| 327 // Reference to the Nth variable in scope, with 0 being the | 328 // Reference to the Nth variable in scope, with 0 being the |
| 328 // first variable declared in the outermost scope, and larger | 329 // first variable declared in the outermost scope, and larger |
| 329 // numbers being the variables declared later in a given scope, | 330 // numbers being the variables declared later in a given scope, |
| (...skipping 645 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 975 Byte tag = 88; | 976 Byte tag = 88; |
| 976 } | 977 } |
| 977 | 978 |
| 978 type TypeParameter { | 979 type TypeParameter { |
| 979 // Note: there is no tag on TypeParameter | 980 // Note: there is no tag on TypeParameter |
| 980 StringReference name; // Cosmetic, may be empty, not unique. | 981 StringReference name; // Cosmetic, may be empty, not unique. |
| 981 DartType bound; // 'dynamic' if no explicit bound was given. | 982 DartType bound; // 'dynamic' if no explicit bound was given. |
| 982 } | 983 } |
| 983 | 984 |
| 984 ``` | 985 ``` |
| OLD | NEW |