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

Unified Diff: pkg/analyzer/lib/src/generated/element.dart

Issue 1159563004: Rename Element.node (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 7 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
Index: pkg/analyzer/lib/src/generated/element.dart
diff --git a/pkg/analyzer/lib/src/generated/element.dart b/pkg/analyzer/lib/src/generated/element.dart
index 5ad1e919db13b96228cc77a59b5303e4d10111fb..76846487fcb8765e9188de1befc562f3997edf39 100644
--- a/pkg/analyzer/lib/src/generated/element.dart
+++ b/pkg/analyzer/lib/src/generated/element.dart
@@ -232,16 +232,6 @@ abstract class ClassElement implements Element {
List<InterfaceType> get mixins;
/**
- * Return the resolved [ClassDeclaration] or [EnumDeclaration] node that
- * declares this [ClassElement].
- *
- * This method is expensive, because resolved AST might be evicted from cache,
- * so parsing and resolving will be performed.
- */
- @override
- NamedCompilationUnitMember get node;
-
- /**
* Return the superclass of this class, or `null` if the class represents the
* class 'Object'. All other classes will have a non-`null` superclass. If the
* superclass was not explicitly declared then the implicit superclass
@@ -276,6 +266,16 @@ abstract class ClassElement implements Element {
ConstructorElement get unnamedConstructor;
/**
+ * Return the resolved [ClassDeclaration] or [EnumDeclaration] node that
+ * declares this [ClassElement].
+ *
+ * This method is expensive, because resolved AST might be evicted from cache,
+ * so parsing and resolving will be performed.
+ */
+ @override
+ NamedCompilationUnitMember computeNode();
+
+ /**
* Return the field (synthetic or explicit) defined in this class that has the
* given [name], or `null` if this class does not define a field with the
* given name.
@@ -723,16 +723,6 @@ class ClassElementImpl extends ElementImpl implements ClassElement {
setModifier(Modifier.MIXIN_ERRORS_REPORTED, value);
}
- @override
- NamedCompilationUnitMember get node {
- if (isEnum) {
- return getNodeMatching((node) => node is EnumDeclaration);
- } else {
- return getNodeMatching(
- (node) => node is ClassDeclaration || node is ClassTypeAlias);
- }
- }
-
/**
* Set whether this class is defined by a typedef construct.
*/
@@ -797,6 +787,16 @@ class ClassElementImpl extends ElementImpl implements ClassElement {
}
@override
+ NamedCompilationUnitMember computeNode() {
+ if (isEnum) {
+ return getNodeMatching((node) => node is EnumDeclaration);
+ } else {
+ return getNodeMatching(
+ (node) => node is ClassDeclaration || node is ClassTypeAlias);
+ }
+ }
+
+ @override
ElementImpl getChild(String identifier) {
//
// The casts in this method are safe because the set methods would have
@@ -1220,15 +1220,6 @@ abstract class CompilationUnitElement implements Element, UriReferencedElement {
bool get hasLoadLibraryFunction;
/**
- * Return the resolved [CompilationUnit] node that declares this element.
- *
- * This method is expensive, because resolved AST might be evicted from cache,
- * so parsing and resolving will be performed.
- */
- @override
- CompilationUnit get node;
-
- /**
* Return a list containing all of the top-level variables contained in this
* compilation unit.
*/
@@ -1241,6 +1232,15 @@ abstract class CompilationUnitElement implements Element, UriReferencedElement {
List<ClassElement> get types;
/**
+ * Return the resolved [CompilationUnit] node that declares this element.
+ *
+ * This method is expensive, because resolved AST might be evicted from cache,
+ * so parsing and resolving will be performed.
+ */
+ @override
+ CompilationUnit computeNode();
+
+ /**
* Return the element at the given [offset], maybe `null` if no such element.
*/
Element getElementAt(int offset);
@@ -1399,9 +1399,6 @@ class CompilationUnitElementImpl extends UriReferencedElementImpl
ElementKind get kind => ElementKind.COMPILATION_UNIT;
@override
- CompilationUnit get node => unit;
-
- @override
List<TopLevelVariableElement> get topLevelVariables => _variables;
/**
@@ -1463,6 +1460,9 @@ class CompilationUnitElementImpl extends UriReferencedElementImpl
}
@override
+ CompilationUnit computeNode() => unit;
+
+ @override
ElementImpl getChild(String identifier) {
//
// The casts in this method are safe because the set methods would have
@@ -1667,16 +1667,6 @@ abstract class ConstructorElement
int get nameEnd;
/**
- * Return the resolved [ConstructorDeclaration] node that declares this
- * [ConstructorElement] .
- *
- * This method is expensive, because resolved AST might be evicted from cache,
- * so parsing and resolving will be performed.
- */
- @override
- ConstructorDeclaration get node;
-
- /**
* Return the offset of the `.` before this constructor name, or `null` if
* not named.
*/
@@ -1688,6 +1678,16 @@ abstract class ConstructorElement
* library containing this constructor has not yet been resolved.
*/
ConstructorElement get redirectedConstructor;
+
+ /**
+ * Return the resolved [ConstructorDeclaration] node that declares this
+ * [ConstructorElement] .
+ *
+ * This method is expensive, because resolved AST might be evicted from cache,
+ * so parsing and resolving will be performed.
+ */
+ @override
+ ConstructorDeclaration computeNode();
}
/**
@@ -1788,10 +1788,6 @@ class ConstructorElementImpl extends ExecutableElementImpl
ElementKind get kind => ElementKind.CONSTRUCTOR;
@override
- ConstructorDeclaration get node =>
- getNodeMatching((node) => node is ConstructorDeclaration);
-
- @override
accept(ElementVisitor visitor) => visitor.visitConstructorElement(this);
@override
@@ -1817,6 +1813,10 @@ class ConstructorElementImpl extends ExecutableElementImpl
}
super.appendTo(buffer);
}
+
+ @override
+ ConstructorDeclaration computeNode() =>
+ getNodeMatching((node) => node is ConstructorDeclaration);
}
/**
@@ -1853,9 +1853,6 @@ class ConstructorMember extends ExecutableMember implements ConstructorElement {
int get nameEnd => baseElement.nameEnd;
@override
- ConstructorDeclaration get node => baseElement.node;
-
- @override
int get periodOffset => baseElement.periodOffset;
@override
@@ -1866,6 +1863,9 @@ class ConstructorMember extends ExecutableMember implements ConstructorElement {
accept(ElementVisitor visitor) => visitor.visitConstructorElement(this);
@override
+ ConstructorDeclaration computeNode() => baseElement.computeNode();
+
+ @override
String toString() {
ConstructorElement baseElement = this.baseElement;
List<ParameterElement> parameters = this.parameters;
@@ -2133,7 +2133,7 @@ class DefaultParameterElementImpl extends ParameterElementImpl
}
@override
- DefaultFormalParameter get node =>
+ DefaultFormalParameter computeNode() =>
getNodeMatching((node) => node is DefaultFormalParameter);
}
@@ -2382,6 +2382,7 @@ abstract class Element implements AnalysisTarget {
*
* <b>Note:</b> This method cannot be used in an async environment.
*/
+ @deprecated
AstNode get node;
/**
@@ -2418,6 +2419,18 @@ abstract class Element implements AnalysisTarget {
String computeDocumentationComment();
/**
+ * Return the resolved [AstNode] node that declares this element, or `null` if
+ * this element is synthetic or isn't contained in a compilation unit, such as
+ * a [LibraryElement].
+ *
+ * This method is expensive, because resolved AST might be evicted from cache,
+ * so parsing and resolving will be performed.
+ *
+ * <b>Note:</b> This method cannot be used in an async environment.
+ */
+ AstNode computeNode();
+
+ /**
* Return the most immediate ancestor of this element for which the
* [predicate] returns `true`, or `null` if there is no such ancestor. Note
* that this element will never be returned.
@@ -2767,8 +2780,9 @@ abstract class ElementImpl implements Element {
_cachedLocation = null;
}
+ @deprecated
@override
- AstNode get node => getNodeMatching((node) => node is AstNode);
+ AstNode get node => computeNode();
@override
Source get source {
@@ -2822,6 +2836,9 @@ abstract class ElementImpl implements Element {
return context.computeDocumentationComment(this);
}
+ @override
+ AstNode computeNode() => getNodeMatching((node) => node is AstNode);
+
/**
* Set this element as the enclosing element for given [element].
*/
@@ -3885,7 +3902,7 @@ abstract class FieldElement
* so parsing and resolving will be performed.
*/
@override
- AstNode get node;
+ AstNode computeNode();
}
/**
@@ -3923,15 +3940,6 @@ class FieldElementImpl extends PropertyInducingElementImpl
@override
ElementKind get kind => ElementKind.FIELD;
- @override
- AstNode get node {
- if (isEnumConstant) {
- return getNodeMatching((node) => node is EnumConstantDeclaration);
- } else {
- return getNodeMatching((node) => node is VariableDeclaration);
- }
- }
-
/**
* Set whether this field is static.
*/
@@ -3941,6 +3949,15 @@ class FieldElementImpl extends PropertyInducingElementImpl
@override
accept(ElementVisitor visitor) => visitor.visitFieldElement(this);
+
+ @override
+ AstNode computeNode() {
+ if (isEnumConstant) {
+ return getNodeMatching((node) => node is EnumConstantDeclaration);
+ } else {
+ return getNodeMatching((node) => node is VariableDeclaration);
+ }
+ }
}
/**
@@ -4038,9 +4055,6 @@ class FieldMember extends VariableMember implements FieldElement {
bool get isStatic => baseElement.isStatic;
@override
- VariableDeclaration get node => baseElement.node;
-
- @override
DartType get propagatedType => substituteFor(baseElement.propagatedType);
@override
@@ -4051,6 +4065,9 @@ class FieldMember extends VariableMember implements FieldElement {
accept(ElementVisitor visitor) => visitor.visitFieldElement(this);
@override
+ VariableDeclaration computeNode() => baseElement.computeNode();
+
+ @override
String toString() => '$type $displayName';
/**
@@ -4149,7 +4166,7 @@ abstract class FunctionElement implements ExecutableElement, LocalElement {
* so parsing and resolving will be performed.
*/
@override
- FunctionDeclaration get node;
+ FunctionDeclaration computeNode();
}
/**
@@ -4212,10 +4229,6 @@ class FunctionElementImpl extends ExecutableElementImpl
ElementKind get kind => ElementKind.FUNCTION;
@override
- FunctionDeclaration get node =>
- getNodeMatching((node) => node is FunctionDeclaration);
-
- @override
SourceRange get visibleRange {
if (_visibleRangeLength < 0) {
return null;
@@ -4235,6 +4248,10 @@ class FunctionElementImpl extends ExecutableElementImpl
super.appendTo(buffer);
}
+ @override
+ FunctionDeclaration computeNode() =>
+ getNodeMatching((node) => node is FunctionDeclaration);
+
/**
* Set the visible range for this element to the range starting at the given
* [offset] with the given [length].
@@ -4387,15 +4404,6 @@ abstract class FunctionTypeAliasElement implements Element {
CompilationUnitElement get enclosingElement;
/**
- * Return the resolved function type alias node that declares this element.
- *
- * This method is expensive, because resolved AST might be evicted from cache,
- * so parsing and resolving will be performed.
- */
- @override
- FunctionTypeAlias get node;
-
- /**
* Return a list containing all of the parameters defined by this type alias.
*/
List<ParameterElement> get parameters;
@@ -4414,6 +4422,15 @@ abstract class FunctionTypeAliasElement implements Element {
* Return a list containing all of the type parameters defined for this type.
*/
List<TypeParameterElement> get typeParameters;
+
+ /**
+ * Return the resolved function type alias node that declares this element.
+ *
+ * This method is expensive, because resolved AST might be evicted from cache,
+ * so parsing and resolving will be performed.
+ */
+ @override
+ FunctionTypeAlias computeNode();
}
/**
@@ -4471,10 +4488,6 @@ class FunctionTypeAliasElementImpl extends ElementImpl
ElementKind get kind => ElementKind.FUNCTION_TYPE_ALIAS;
@override
- FunctionTypeAlias get node =>
- getNodeMatching((node) => node is FunctionTypeAlias);
-
- @override
List<ParameterElement> get parameters => _parameters;
/**
@@ -4540,6 +4553,10 @@ class FunctionTypeAliasElementImpl extends ElementImpl
}
@override
+ FunctionTypeAlias computeNode() =>
+ getNodeMatching((node) => node is FunctionTypeAlias);
+
+ @override
ElementImpl getChild(String identifier) {
for (VariableElement parameter in _parameters) {
if ((parameter as VariableElementImpl).identifier == identifier) {
@@ -7505,7 +7522,7 @@ abstract class LocalVariableElement implements LocalElement, VariableElement {
* so parsing and resolving will be performed.
*/
@override
- VariableDeclaration get node;
+ VariableDeclaration computeNode();
}
/**
@@ -7562,10 +7579,6 @@ class LocalVariableElementImpl extends VariableElementImpl
ElementKind get kind => ElementKind.LOCAL_VARIABLE;
@override
- VariableDeclaration get node =>
- getNodeMatching((node) => node is VariableDeclaration);
-
- @override
SourceRange get visibleRange {
if (_visibleRangeLength < 0) {
return null;
@@ -7583,6 +7596,10 @@ class LocalVariableElementImpl extends VariableElementImpl
buffer.write(displayName);
}
+ @override
+ VariableDeclaration computeNode() =>
+ getNodeMatching((node) => node is VariableDeclaration);
+
/**
* Specifies that this variable is potentially mutated somewhere in closure.
*/
@@ -7679,8 +7696,9 @@ abstract class Member implements Element {
@override
int get nameOffset => _baseElement.nameOffset;
+ @deprecated
@override
- AstNode get node => _baseElement.node;
+ AstNode get node => computeNode();
@override
Source get source => _baseElement.source;
@@ -7693,6 +7711,9 @@ abstract class Member implements Element {
_baseElement.computeDocumentationComment();
@override
+ AstNode computeNode() => _baseElement.computeNode();
+
+ @override
Element getAncestor(Predicate<Element> predicate) =>
baseElement.getAncestor(predicate);
@@ -7776,7 +7797,7 @@ abstract class MethodElement implements ClassMemberElement, ExecutableElement {
* so parsing and resolving will be performed.
*/
@override
- MethodDeclaration get node;
+ MethodDeclaration computeNode();
}
/**
@@ -7849,10 +7870,6 @@ class MethodElementImpl extends ExecutableElementImpl implements MethodElement {
return super.name;
}
- @override
- MethodDeclaration get node =>
- getNodeMatching((node) => node is MethodDeclaration);
-
/**
* Set whether this method is static.
*/
@@ -7868,6 +7885,10 @@ class MethodElementImpl extends ExecutableElementImpl implements MethodElement {
buffer.write(displayName);
super.appendTo(buffer);
}
+
+ @override
+ MethodDeclaration computeNode() =>
+ getNodeMatching((node) => node is MethodDeclaration);
}
/**
@@ -7889,10 +7910,10 @@ class MethodMember extends ExecutableMember implements MethodElement {
ClassElement get enclosingElement => baseElement.enclosingElement;
@override
- MethodDeclaration get node => baseElement.node;
+ accept(ElementVisitor visitor) => visitor.visitMethodElement(this);
@override
- accept(ElementVisitor visitor) => visitor.visitMethodElement(this);
+ MethodDeclaration computeNode() => baseElement.computeNode();
@override
String toString() {
@@ -8189,6 +8210,7 @@ class MultiplyDefinedElementImpl implements MultiplyDefinedElement {
@override
int get nameOffset => -1;
+ @deprecated
@override
AstNode get node => null;
@@ -8208,6 +8230,9 @@ class MultiplyDefinedElementImpl implements MultiplyDefinedElement {
String computeDocumentationComment() => null;
@override
+ AstNode computeNode() => null;
+
+ @override
Element getAncestor(Predicate<Element> predicate) => null;
@override
@@ -8396,9 +8421,6 @@ abstract class ParameterElement
*/
bool get isInitializingFormal;
- @override
- FormalParameter get node;
-
/**
* Return the kind of this parameter.
*/
@@ -8410,6 +8432,9 @@ abstract class ParameterElement
* parameter.
*/
List<ParameterElement> get parameters;
+
+ @override
+ FormalParameter computeNode();
}
/**
@@ -8487,10 +8512,6 @@ class ParameterElementImpl extends VariableElementImpl
ElementKind get kind => ElementKind.PARAMETER;
@override
- FormalParameter get node =>
- getNodeMatching((node) => node is FormalParameter);
-
- @override
List<ParameterElement> get parameters => _parameters;
/**
@@ -8553,6 +8574,10 @@ class ParameterElementImpl extends VariableElementImpl
}
@override
+ FormalParameter computeNode() =>
+ getNodeMatching((node) => node is FormalParameter);
+
+ @override
ElementImpl getChild(String identifier) {
for (ParameterElement parameter in _parameters) {
if ((parameter as ParameterElementImpl).identifier == identifier) {
@@ -8637,9 +8662,6 @@ class ParameterMember extends VariableMember implements ParameterElement {
bool get isInitializingFormal => baseElement.isInitializingFormal;
@override
- FormalParameter get node => baseElement.node;
-
- @override
ParameterKind get parameterKind => baseElement.parameterKind;
@override
@@ -8665,6 +8687,9 @@ class ParameterMember extends VariableMember implements ParameterElement {
accept(ElementVisitor visitor) => visitor.visitParameterElement(this);
@override
+ FormalParameter computeNode() => baseElement.computeNode();
+
+ @override
Element getAncestor(Predicate<Element> predicate) {
Element element = baseElement.getAncestor(predicate);
ParameterizedType definingType = this.definingType;
@@ -8999,20 +9024,6 @@ class PropertyAccessorElementImpl extends ExecutableElementImpl
return super.name;
}
- @override
- AstNode get node {
- if (isSynthetic) {
- return null;
- }
- if (enclosingElement is ClassElement) {
- return getNodeMatching((node) => node is MethodDeclaration);
- }
- if (enclosingElement is CompilationUnitElement) {
- return getNodeMatching((node) => node is FunctionDeclaration);
- }
- return null;
- }
-
/**
* Set whether this accessor is a setter.
*/
@@ -9040,6 +9051,20 @@ class PropertyAccessorElementImpl extends ExecutableElementImpl
buffer.write(variable.displayName);
super.appendTo(buffer);
}
+
+ @override
+ AstNode computeNode() {
+ if (isSynthetic) {
+ return null;
+ }
+ if (enclosingElement is ClassElement) {
+ return getNodeMatching((node) => node is MethodDeclaration);
+ }
+ if (enclosingElement is CompilationUnitElement) {
+ return getNodeMatching((node) => node is FunctionDeclaration);
+ }
+ return null;
+ }
}
/**
@@ -9568,7 +9593,7 @@ abstract class TopLevelVariableElement implements PropertyInducingElement {
const <TopLevelVariableElement>[];
@override
- VariableDeclaration get node;
+ VariableDeclaration computeNode();
}
/**
@@ -9602,11 +9627,11 @@ class TopLevelVariableElementImpl extends PropertyInducingElementImpl
ElementKind get kind => ElementKind.TOP_LEVEL_VARIABLE;
@override
- VariableDeclaration get node =>
- getNodeMatching((node) => node is VariableDeclaration);
+ accept(ElementVisitor visitor) => visitor.visitTopLevelVariableElement(this);
@override
- accept(ElementVisitor visitor) => visitor.visitTopLevelVariableElement(this);
+ VariableDeclaration computeNode() =>
+ getNodeMatching((node) => node is VariableDeclaration);
}
/**
« no previous file with comments | « pkg/analysis_server/test/services/search/search_engine_test.dart ('k') | pkg/analyzer/lib/src/generated/element_handle.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698