Index: pkg/analysis_server/lib/src/services/completion/suggestion_builder.dart |
diff --git a/pkg/analysis_server/lib/src/services/completion/suggestion_builder.dart b/pkg/analysis_server/lib/src/services/completion/suggestion_builder.dart |
index 07ee0742f50419a6274c451dd74e48371f73a704..157a9e0808063496454268dbdc9303710d13e7bb 100644 |
--- a/pkg/analysis_server/lib/src/services/completion/suggestion_builder.dart |
+++ b/pkg/analysis_server/lib/src/services/completion/suggestion_builder.dart |
@@ -227,7 +227,8 @@ abstract class ElementSuggestionBuilder { |
} |
} |
if (element.isSynthetic) { |
- if (element is PropertyAccessorElement || element is FieldElement) { |
+ if ((element is PropertyAccessorElement) || |
+ element is FieldElement && !_isSpecialEnumField(element)) { |
return; |
} |
} |
@@ -241,6 +242,20 @@ abstract class ElementSuggestionBuilder { |
request.addSuggestion(suggestion); |
} |
} |
+ |
+ /** |
+ * Determine if the given element is one of the synthetic enum accessors |
+ * for which we should generate a suggestion. |
+ */ |
+ bool _isSpecialEnumField(FieldElement element) { |
+ Element parent = element.enclosingElement; |
+ if (parent is ClassElement && parent.isEnum) { |
+ if (element.name == 'values') { |
+ return true; |
+ } |
+ } |
+ return false; |
+ } |
} |
/** |