| OLD | NEW |
| 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 import 'dart:collection'; | 5 import 'dart:collection'; |
| 6 import 'dart:convert'; | 6 import 'dart:convert'; |
| 7 import 'dart:core' hide Resource; | 7 import 'dart:core'; |
| 8 | 8 |
| 9 import 'package:analyzer/dart/element/element.dart'; | 9 import 'package:analyzer/dart/element/element.dart'; |
| 10 import 'package:analyzer/file_system/file_system.dart'; | 10 import 'package:analyzer/file_system/file_system.dart'; |
| 11 import 'package:analyzer/src/generated/engine.dart'; | 11 import 'package:analyzer/src/generated/engine.dart'; |
| 12 import 'package:analyzer/src/generated/error.dart'; | 12 import 'package:analyzer/src/generated/error.dart'; |
| 13 import 'package:analyzer/src/generated/source.dart'; | 13 import 'package:analyzer/src/generated/source.dart'; |
| 14 import 'package:analyzer/src/summary/format.dart'; | 14 import 'package:analyzer/src/summary/format.dart'; |
| 15 import 'package:analyzer/src/summary/idl.dart'; | 15 import 'package:analyzer/src/summary/idl.dart'; |
| 16 import 'package:analyzer/src/summary/summarize_elements.dart'; | 16 import 'package:analyzer/src/summary/summarize_elements.dart'; |
| 17 import 'package:convert/convert.dart'; | 17 import 'package:convert/convert.dart'; |
| (...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 363 // It's not the most efficient algorithm, but in practice we might | 363 // It's not the most efficient algorithm, but in practice we might |
| 364 // visit each library multiple times only for the first top-level | 364 // visit each library multiple times only for the first top-level |
| 365 // bundle requested in `getLibraryClosureBundles`. | 365 // bundle requested in `getLibraryClosureBundles`. |
| 366 List<Source> refClosure = _libraryClosureMap[refSource]; | 366 List<Source> refClosure = _libraryClosureMap[refSource]; |
| 367 if (refClosure != null) { | 367 if (refClosure != null) { |
| 368 closure.addAll(refClosure); | 368 closure.addAll(refClosure); |
| 369 } else { | 369 } else { |
| 370 _appendLibraryClosure(closure, refSource); | 370 _appendLibraryClosure(closure, refSource); |
| 371 } | 371 } |
| 372 } | 372 } |
| 373 |
| 373 contentSource.importedUris.forEach(appendLibrarySources); | 374 contentSource.importedUris.forEach(appendLibrarySources); |
| 374 contentSource.exportedUris.forEach(appendLibrarySources); | 375 contentSource.exportedUris.forEach(appendLibrarySources); |
| 375 } | 376 } |
| 376 } | 377 } |
| 377 | 378 |
| 378 List<int> _computeSaltedMD5OfBytes(addData(ByteConversionSink byteSink)) { | 379 List<int> _computeSaltedMD5OfBytes(addData(ByteConversionSink byteSink)) { |
| 379 Digest digest; | 380 Digest digest; |
| 380 ChunkedConversionSink<Digest> digestSink = | 381 ChunkedConversionSink<Digest> digestSink = |
| 381 new ChunkedConversionSink<Digest>.withCallback((List<Digest> digests) { | 382 new ChunkedConversionSink<Digest>.withCallback((List<Digest> digests) { |
| 382 digest = digests.single; | 383 digest = digests.single; |
| (...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 646 */ | 647 */ |
| 647 final String id; | 648 final String id; |
| 648 | 649 |
| 649 /** | 650 /** |
| 650 * The payload bundle. | 651 * The payload bundle. |
| 651 */ | 652 */ |
| 652 final PackageBundle bundle; | 653 final PackageBundle bundle; |
| 653 | 654 |
| 654 LibraryBundleWithId(this.source, this.id, this.bundle); | 655 LibraryBundleWithId(this.source, this.id, this.bundle); |
| 655 } | 656 } |
| OLD | NEW |