Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(869)

Unified Diff: pkg/analysis_server/lib/src/services/completion/dart/override_contributor.dart

Issue 1898193004: TBR Revert "Remove MemberMap in favor of HashMap" (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/generated/error_verifier.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analysis_server/lib/src/services/completion/dart/override_contributor.dart
diff --git a/pkg/analysis_server/lib/src/services/completion/dart/override_contributor.dart b/pkg/analysis_server/lib/src/services/completion/dart/override_contributor.dart
index c9f652bcf58e18349f64ea18d461380a1bc37163..eb0bf4464c11b1e89352a2d7591f7f7be0524b19 100644
--- a/pkg/analysis_server/lib/src/services/completion/dart/override_contributor.dart
+++ b/pkg/analysis_server/lib/src/services/completion/dart/override_contributor.dart
@@ -39,14 +39,13 @@ class OverrideContributor implements DartCompletionContributor {
// Generate a collection of inherited members
ClassElement classElem = classDecl.element;
InheritanceManager manager = new InheritanceManager(classElem.library);
- Map<String, ExecutableElement> map =
- manager.getMapOfMembersInheritedFromInterfaces(classElem);
+ MemberMap map = manager.getMapOfMembersInheritedFromInterfaces(classElem);
List<String> memberNames = _computeMemberNames(map, classElem);
// Build suggestions
List<CompletionSuggestion> suggestions = <CompletionSuggestion>[];
for (String memberName in memberNames) {
- ExecutableElement element = map[memberName];
+ ExecutableElement element = map.get(memberName);
// Gracefully degrade if the overridden element has not been resolved.
if (element.returnType != null) {
CompletionSuggestion suggestion =
@@ -107,10 +106,11 @@ class OverrideContributor implements DartCompletionContributor {
* implemented members of the class represented by the given [element].
* The [map] is used to find all of the members that are inherited.
*/
- List<String> _computeMemberNames(
- Map<String, ExecutableElement> map, ClassElement element) {
+ List<String> _computeMemberNames(MemberMap map, ClassElement element) {
List<String> memberNames = <String>[];
- for (String memberName in map.keys) {
+ int count = map.size;
+ for (int i = 0; i < count; i++) {
+ String memberName = map.getKey(i);
if (!_hasMember(element, memberName)) {
memberNames.add(memberName);
}
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/generated/error_verifier.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698