Index: pkg/kernel/lib/binary/ast_from_binary.dart |
diff --git a/pkg/kernel/lib/binary/ast_from_binary.dart b/pkg/kernel/lib/binary/ast_from_binary.dart |
index eb261df58cfaec4f7ecc59f65425ad390cbb87db..1c5814732cf40491323070944450d99d2482e72a 100644 |
--- a/pkg/kernel/lib/binary/ast_from_binary.dart |
+++ b/pkg/kernel/lib/binary/ast_from_binary.dart |
@@ -387,6 +387,7 @@ class BinaryBuilder { |
_skipNodeList(readExpression); |
} |
_readLibraryDependencies(library); |
+ _readLibraryParts(library); |
_mergeNamedNodeList(library.typedefs, readTypedef, library); |
_mergeNamedNodeList(library.classes, readClass, library); |
_mergeNamedNodeList(library.fields, readField, library); |
@@ -426,6 +427,17 @@ class BinaryBuilder { |
return new List<Combinator>.generate(readUInt(), (i) => readCombinator()); |
} |
+ void _readLibraryParts(Library library) { |
+ int length = readUInt(); |
+ library.parts.length = length; |
+ for (int i = 0; i < length; ++i) { |
+ var annotations = readExpressionList(); |
+ var fileUri = readStringOrNullIfEmpty(); |
+ library.parts[i] = new LibraryPart(annotations, fileUri) |
+ ..parent = library; |
+ } |
+ } |
+ |
Typedef readTypedef() { |
var canonicalName = readCanonicalNameReference(); |
var reference = canonicalName.getReference(); |