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 |