| 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:async'; | 5 import 'dart:async'; |
| 6 import 'dart:collection'; | 6 import 'dart:collection'; |
| 7 import 'dart:typed_data'; | 7 import 'dart:typed_data'; |
| 8 | 8 |
| 9 import 'package:analyzer/context/context_root.dart'; | 9 import 'package:analyzer/context/context_root.dart'; |
| 10 import 'package:analyzer/context/declared_variables.dart'; | 10 import 'package:analyzer/context/declared_variables.dart'; |
| (...skipping 665 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 676 return completer.future; | 676 return completer.future; |
| 677 } | 677 } |
| 678 | 678 |
| 679 /** | 679 /** |
| 680 * Return a [Future] that completes with the signature for the | 680 * Return a [Future] that completes with the signature for the |
| 681 * [UnitElementResult] for the file with the given [path], or with `null` if | 681 * [UnitElementResult] for the file with the given [path], or with `null` if |
| 682 * the file cannot be analyzed. | 682 * the file cannot be analyzed. |
| 683 * | 683 * |
| 684 * The signature is based the APIs of the files of the library (including | 684 * The signature is based the APIs of the files of the library (including |
| 685 * the file itself) of the requested file and the transitive closure of files | 685 * the file itself) of the requested file and the transitive closure of files |
| 686 * imported and exported by the the library. | 686 * imported and exported by the library. |
| 687 */ | 687 */ |
| 688 Future<String> getUnitElementSignature(String path) { | 688 Future<String> getUnitElementSignature(String path) { |
| 689 if (!_fileTracker.fsState.hasUri(path)) { | 689 if (!_fileTracker.fsState.hasUri(path)) { |
| 690 return new Future.value(); | 690 return new Future.value(); |
| 691 } | 691 } |
| 692 var completer = new Completer<String>(); | 692 var completer = new Completer<String>(); |
| 693 _unitElementSignatureRequests | 693 _unitElementSignatureRequests |
| 694 .putIfAbsent(path, () => <Completer<String>>[]) | 694 .putIfAbsent(path, () => <Completer<String>>[]) |
| 695 .add(completer); | 695 .add(completer); |
| 696 _scheduler.notify(this); | 696 _scheduler.notify(this); |
| (...skipping 890 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1587 */ | 1587 */ |
| 1588 final String contentHash; | 1588 final String contentHash; |
| 1589 | 1589 |
| 1590 /** | 1590 /** |
| 1591 * Information about lines in the [content]. | 1591 * Information about lines in the [content]. |
| 1592 */ | 1592 */ |
| 1593 final LineInfo lineInfo; | 1593 final LineInfo lineInfo; |
| 1594 | 1594 |
| 1595 /** | 1595 /** |
| 1596 * The signature of the result based on the content of the file, and the | 1596 * The signature of the result based on the content of the file, and the |
| 1597 * transitive closure of files imported and exported by the the library of | 1597 * transitive closure of files imported and exported by the library of |
| 1598 * the requested file. | 1598 * the requested file. |
| 1599 */ | 1599 */ |
| 1600 final String _signature; | 1600 final String _signature; |
| 1601 | 1601 |
| 1602 /** | 1602 /** |
| 1603 * The fully resolved compilation unit for the [content]. | 1603 * The fully resolved compilation unit for the [content]. |
| 1604 */ | 1604 */ |
| 1605 final CompilationUnit unit; | 1605 final CompilationUnit unit; |
| 1606 | 1606 |
| 1607 /** | 1607 /** |
| (...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1852 final String path; | 1852 final String path; |
| 1853 | 1853 |
| 1854 /** | 1854 /** |
| 1855 * The MD5 hash of the file content. | 1855 * The MD5 hash of the file content. |
| 1856 */ | 1856 */ |
| 1857 final String contentHash; | 1857 final String contentHash; |
| 1858 | 1858 |
| 1859 /** | 1859 /** |
| 1860 * The signature of the [element] is based the APIs of the files of the | 1860 * The signature of the [element] is based the APIs of the files of the |
| 1861 * library (including the file itself) of the requested file and the | 1861 * library (including the file itself) of the requested file and the |
| 1862 * transitive closure of files imported and exported by the the library. | 1862 * transitive closure of files imported and exported by the library. |
| 1863 */ | 1863 */ |
| 1864 final String signature; | 1864 final String signature; |
| 1865 | 1865 |
| 1866 /** | 1866 /** |
| 1867 * The element of the file. | 1867 * The element of the file. |
| 1868 */ | 1868 */ |
| 1869 final CompilationUnitElement element; | 1869 final CompilationUnitElement element; |
| 1870 | 1870 |
| 1871 UnitElementResult(this.path, this.contentHash, this.signature, this.element); | 1871 UnitElementResult(this.path, this.contentHash, this.signature, this.element); |
| 1872 } | 1872 } |
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2056 libraryDeclarations.add(new TopLevelDeclarationInSource( | 2056 libraryDeclarations.add(new TopLevelDeclarationInSource( |
| 2057 file.source, declaration, isExported)); | 2057 file.source, declaration, isExported)); |
| 2058 } | 2058 } |
| 2059 } | 2059 } |
| 2060 } | 2060 } |
| 2061 | 2061 |
| 2062 // We're not done yet. | 2062 // We're not done yet. |
| 2063 return false; | 2063 return false; |
| 2064 } | 2064 } |
| 2065 } | 2065 } |
| OLD | NEW |