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

Unified Diff: pkg/kernel/binary.md

Issue 2993393003: [kernel] Update binary.md (Closed)
Patch Set: 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/kernel/binary.md
diff --git a/pkg/kernel/binary.md b/pkg/kernel/binary.md
index a048a8f49b044f219008be0882d000a90668df58..ebb5e08cc0d56ceaf75986cafcf32ba274a42187 100644
--- a/pkg/kernel/binary.md
+++ b/pkg/kernel/binary.md
@@ -77,7 +77,7 @@ type Source {
List<Byte> utf8Bytes;
// Line starts are delta-encoded (they are encoded as line lengths). The list
// [0, 10, 25, 32, 42] is encoded as [0, 10, 15, 7, 10].
- List<Uint> lineStarts;
+ List<UInt> lineStarts;
}
type UriSource {
@@ -182,6 +182,8 @@ type Library {
UriReference fileUri;
List<Expression> annotations;
List<LibraryDependency> libraryDependencies;
+ List<LibraryPart> libraryParts;
+ List<Typedef> typedefs;
List<Class> classes;
List<Field> fields;
List<Procedure> procedures;
@@ -195,9 +197,23 @@ type LibraryDependency {
List<Combinator> combinators;
}
+type LibraryPart {
+ List<Expression> annotations;
+ UriReference fileUri;
+}
+
+type Typedef {
+ CanonicalNameReference canonicalName;
+ FileOffset fileOffset;
+ StringReference name;
+ UriReference fileUri;
+ List<TypeParameter> typeParameters;
+ DartType type;
+}
+
type Combinator {
Byte flags (isShow);
- List<String> names;
+ List<StringReference> names;
}
type LibraryDependencyReference {
@@ -219,7 +235,7 @@ enum ClassLevel { Type = 0, Hierarchy = 1, Mixin = 2, Body = 3, }
//
// See ClassLevel in ast.dart for the details of each loading level.
-abstract type Class extends Node {
+type Class extends Node {
Byte tag = 2;
CanonicalNameReference canonicalName;
FileOffset fileOffset;
@@ -228,11 +244,12 @@ abstract type Class extends Node {
StringReference name;
// An absolute path URI to the .dart file from which the class was created.
UriReference fileUri;
+ StringReference documentationComment;
List<Expression> annotations;
List<TypeParameter> typeParameters;
- Option<InterfaceType> superClass;
- Option<InterfaceType> mixedInType;
- List<InterfaceType> implementedClasses;
+ Option<DartType> superClass;
+ Option<DartType> mixedInType;
+ List<DartType> implementedClasses;
List<Field> fields;
List<Constructor> constructors;
List<Procedure> procedures;
@@ -249,6 +266,7 @@ type Field extends Member {
Name name;
// An absolute path URI to the .dart file from which the field was created.
UriReference fileUri;
+ StringReference documentationComment;
List<Expression> annotations;
DartType type;
Option<Expression> initializer;
@@ -261,6 +279,7 @@ type Constructor extends Member {
FileOffset fileEndOffset;
Byte flags (isConst, isExternal);
Name name;
+ StringReference documentationComment;
List<Expression> annotations;
FunctionNode function;
List<Initializer> initializers;
@@ -286,6 +305,7 @@ type Procedure extends Member {
Name name;
// An absolute path URI to the .dart file from which the class was created.
UriReference fileUri;
+ StringReference documentationComment;
List<Expression> annotations;
// Can only be absent if abstract, but tag is there anyway.
Option<FunctionNode> function;
@@ -295,28 +315,33 @@ abstract type Initializer extends Node {}
type InvalidInitializer extends Initializer {
Byte tag = 7;
+ Byte isSynthetic;
}
type FieldInitializer extends Initializer {
Byte tag = 8;
+ Byte isSynthetic;
FieldReference field;
Expression value;
}
type SuperInitializer extends Initializer {
Byte tag = 9;
+ Byte isSynthetic;
ConstructorReference target;
Arguments arguments;
}
type RedirectingInitializer extends Initializer {
Byte tag = 10;
+ Byte isSynthetic;
ConstructorReference target;
Arguments arguments;
}
type LocalInitializer extends Initializer {
Byte tag = 11;
+ Byte isSynthetic;
VariableDeclaration variable;
}
@@ -380,6 +405,7 @@ type VariableGet extends Expression {
// Byte offset in the binary for the variable declaration (without tag).
UInt variableDeclarationPosition;
VariableReference variable;
+ Option<DartType> promotedType;
}
type SpecializedVariableGet extends Expression {
@@ -547,7 +573,6 @@ type LogicalExpression extends Expression {
Expression left;
Byte operator; // Index into LogicalOperator enum above
Expression right;
- Option<DartType> staticType;
}
type ConditionalExpression extends Expression {
@@ -669,6 +694,7 @@ type MapLiteral extends Expression {
type ConstMapLiteral extends Expression {
Byte tag = 59; // Note: tag is out of order.
+ FileOffset fileOffset;
DartType keyType;
DartType valueType;
List<MapEntry> entries;
@@ -967,12 +993,15 @@ type FunctionType extends DartType {
UInt totalParameterCount;
List<DartType> positionalParameters;
List<NamedDartType> namedParameters;
+ List<StringReference> positionalParameterNames;
+ CanonicalNameReference typedefReference;
DartType returnType;
}
type SimpleFunctionType extends DartType {
Byte tag = 97; // Note: tag is out of order.
List<DartType> positionalParameters;
+ List<StringReference> positionalParameterNames;
DartType returnType;
// Equivalent to a FunctionType with no type parameters or named parameters,
// and where all positional parameters are required.
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698