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 305 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 316 type LocalInitializer extends Initializer { | 316 type LocalInitializer extends Initializer { |
| 317 Byte tag = 11; | 317 Byte tag = 11; |
| 318 VariableDeclaration variable; | 318 VariableDeclaration variable; |
| 319 } | 319 } |
| 320 | 320 |
| 321 /* | 321 /* |
| 322 enum AsyncMarker { | 322 enum AsyncMarker { |
| 323 Sync, | 323 Sync, |
| 324 SyncStar, | 324 SyncStar, |
| 325 Async, | 325 Async, |
| 326 AsyncStar | 326 AsyncStar |
|
Kevin Millikin (Google)
2017/02/22 07:59:59
Hmm, SyncYielding is missing.
jensj
2017/02/22 10:36:45
Added.
| |
| 327 } | 327 } |
| 328 */ | 328 */ |
| 329 | 329 |
| 330 type FunctionNode { | 330 type FunctionNode { |
| 331 // Note: there is no tag on FunctionNode. | 331 // Note: there is no tag on FunctionNode. |
| 332 FileOffset fileOffset; | 332 FileOffset fileOffset; |
| 333 FileOffset fileEndOffset; | 333 FileOffset fileEndOffset; |
| 334 Byte asyncMarker; // Index into AsyncMarker above. | 334 Byte asyncMarker; // Index into AsyncMarker above. |
| 335 Byte debuggable; // 1 for yes, 0 for no | 335 Byte originalAsyncMarker; // Index into AsyncMarker above. |
| 336 List<TypeParameter> typeParameters; | 336 List<TypeParameter> typeParameters; |
| 337 UInt requiredParameterCount; | 337 UInt requiredParameterCount; |
| 338 List<VariableDeclaration> positionalParameters; | 338 List<VariableDeclaration> positionalParameters; |
| 339 List<VariableDeclaration> namedParameters; | 339 List<VariableDeclaration> namedParameters; |
| 340 DartType returnType; | 340 DartType returnType; |
| 341 Option<InferredValue> inferredReturnValue; | 341 Option<InferredValue> inferredReturnValue; |
| 342 Option<Statement> body; | 342 Option<Statement> body; |
| 343 } | 343 } |
| 344 | 344 |
| 345 type VariableReference { | 345 type VariableReference { |
| (...skipping 594 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 940 | 940 |
| 941 /* enum BaseClassKind { None, Exact, Subclass, Subtype, } */ | 941 /* enum BaseClassKind { None, Exact, Subclass, Subtype, } */ |
| 942 | 942 |
| 943 type InferredValue { | 943 type InferredValue { |
| 944 ClassReference baseClass; // May be NullReference if kind = None. | 944 ClassReference baseClass; // May be NullReference if kind = None. |
| 945 Byte kind; // Index into BaseClassKind. | 945 Byte kind; // Index into BaseClassKind. |
| 946 Byte valueBits; // See lib/type_propagation/type_propagation.dart | 946 Byte valueBits; // See lib/type_propagation/type_propagation.dart |
| 947 } | 947 } |
| 948 | 948 |
| 949 ``` | 949 ``` |
| OLD | NEW |