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

Unified Diff: pkg/kernel/binary.md

Issue 2852373002: Add import/export declaration AST node boilerplate to kernel. (Closed)
Patch Set: Merge and adapt C++ code to upstream changes Created 3 years, 7 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 | « pkg/compiler/lib/src/kernel/kernel_visitor.dart ('k') | pkg/kernel/lib/ast.dart » ('j') | 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 5f3d560e2364238198ac61ac0bdee458ccfdcede..22215fbaebdbea50572a19aef606e2fac0ea59c3 100644
--- a/pkg/kernel/binary.md
+++ b/pkg/kernel/binary.md
@@ -166,19 +166,27 @@ type Library {
StringReference name;
// An absolute path URI to the .dart file from which the library was created.
UriReference fileUri;
- List<DeferredImport> deferredImports;
+ List<LibraryDependency> libraryDependencies;
List<Class> classes;
List<Field> fields;
List<Procedure> procedures;
}
-type DeferredImport {
- LibraryReference importedLibrary;
+type LibraryDependency {
+ Byte flags (isExport, isDeferred);
+ List<Expression> annotations;
+ LibraryReference targetLibrary;
StringReference name;
+ List<Combinator> combinators;
+}
+
+type Combinator {
+ Byte flags (isShow);
+ List<String> names;
}
-type DeferredImportReference {
- // Index into deferredImports in the enclosing Library.
+type LibraryDependencyReference {
+ // Index into libraryDependencies in the enclosing Library.
UInt index;
}
@@ -669,12 +677,12 @@ type Let extends Expression {
type LoadLibrary extends Expression {
Byte tag = 14;
- DeferredImportReference import;
+ LibraryDependencyReference deferredImport;
}
type CheckLibraryIsLoaded extends Expression {
Byte tag = 13;
- DeferredImportReference import;
+ LibraryDependencyReference deferredImport;
}
type VectorCreation extends Expression {
@@ -893,6 +901,10 @@ type FunctionDeclaration extends Statement {
abstract type DartType extends Node {}
+type VectorType extends DartType {
+ Byte tag = 88;
+}
+
type InvalidType extends DartType {
Byte tag = 90;
}
@@ -968,10 +980,6 @@ type TypeParameterType extends DartType {
Option<DartType> bound;
}
-type VectorType extends DartType {
- Byte tag = 88;
-}
-
type TypeParameter {
// Note: there is no tag on TypeParameter
StringReference name; // Cosmetic, may be empty, not unique.
« no previous file with comments | « pkg/compiler/lib/src/kernel/kernel_visitor.dart ('k') | pkg/kernel/lib/ast.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698