add 'imports' field for OutputUnitInfo
BUG=
R=sigmund@google.com
Review URL: https://codereview.chromium.org//1420303010 .
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b2ee44d..a6dee54 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,8 @@
# Changelog
+## 0.2.4
+- Added `imports` field for `OutputUnitInfo`
+
## 0.2.3
- Moved `deferred_library_check` functionality to a library
diff --git a/lib/info.dart b/lib/info.dart
index 5e79a70..0ca08ca 100644
--- a/lib/info.dart
+++ b/lib/info.dart
@@ -202,7 +202,11 @@
/// program unless the application uses deferred imports, in which case there
/// would be an additional output unit per deferred chunk.
class OutputUnitInfo extends BasicInfo {
+ /// The deferred imports that will load this output unit.
+ List<String> imports = <String>[];
+
static int _ids = 0;
+
OutputUnitInfo(String name, int size)
: super(InfoKind.outputUnit, _ids++, name, null, size, null);
diff --git a/lib/json_info_codec.dart b/lib/json_info_codec.dart
index 6ee7634..1308d4d 100644
--- a/lib/json_info_codec.dart
+++ b/lib/json_info_codec.dart
@@ -60,6 +60,7 @@
result
..name = json['name']
..size = json['size'];
+ result.imports.addAll(json['imports'] ?? const []);
return result;
}
@@ -416,7 +417,8 @@
visitTypedef(TypedefInfo info) => _visitBasicInfo(info)..['type'] = info.type;
- visitOutput(OutputUnitInfo info) => _visitBasicInfo(info);
+ visitOutput(OutputUnitInfo info) =>
+ _visitBasicInfo(info)..['imports'] = info.imports;
}
class AllInfoJsonCodec extends Codec<AllInfo, Map> {
diff --git a/pubspec.yaml b/pubspec.yaml
index 267947c..88b1336 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
name: dart2js_info
-version: 0.2.3
+version: 0.2.4
description: >
Libraries and tools to process data produced when running dart2js with
--dump-info.