| 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'; | 7 import 'dart:core' hide Resource; |
| 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 | |
| 374 contentSource.importedUris.forEach(appendLibrarySources); | 373 contentSource.importedUris.forEach(appendLibrarySources); |
| 375 contentSource.exportedUris.forEach(appendLibrarySources); | 374 contentSource.exportedUris.forEach(appendLibrarySources); |
| 376 } | 375 } |
| 377 } | 376 } |
| 378 | 377 |
| 379 List<int> _computeSaltedMD5OfBytes(addData(ByteConversionSink byteSink)) { | 378 List<int> _computeSaltedMD5OfBytes(addData(ByteConversionSink byteSink)) { |
| 380 Digest digest; | 379 Digest digest; |
| 381 ChunkedConversionSink<Digest> digestSink = | 380 ChunkedConversionSink<Digest> digestSink = |
| 382 new ChunkedConversionSink<Digest>.withCallback((List<Digest> digests) { | 381 new ChunkedConversionSink<Digest>.withCallback((List<Digest> digests) { |
| 383 digest = digests.single; | 382 digest = digests.single; |
| (...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 647 */ | 646 */ |
| 648 final String id; | 647 final String id; |
| 649 | 648 |
| 650 /** | 649 /** |
| 651 * The payload bundle. | 650 * The payload bundle. |
| 652 */ | 651 */ |
| 653 final PackageBundle bundle; | 652 final PackageBundle bundle; |
| 654 | 653 |
| 655 LibraryBundleWithId(this.source, this.id, this.bundle); | 654 LibraryBundleWithId(this.source, this.id, this.bundle); |
| 656 } | 655 } |
| OLD | NEW |