PropertyInducingElement class abstract

A variable that has an associated getter and possibly a setter. Note that explicitly defined variables implicitly define a synthetic getter and that non-final explicitly defined variables implicitly define a synthetic setter. Symmetrically, synthetic fields are implicitly created for explicitly defined getters and setters. The following rules apply:

  • Every explicit variable is represented by a non-synthetic PropertyInducingElement.
  • Every explicit variable induces a getter and possibly a setter, both of which are represented by synthetic PropertyAccessorElements.
  • Every explicit getter or setter is represented by a non-synthetic PropertyAccessorElement.
  • Every explicit getter or setter (or pair thereof if they have the same name) induces a variable that is represented by a synthetic PropertyInducingElement.

Clients may not extend, implement or mix-in this class.

Implemented types
Implementers

Constructors

PropertyInducingElement()

Properties

children List<Element>
A list of this element's children. There is no guarantee of the order in which the children will be included.
no setterinherited
context → AnalysisContext
Return the analysis context in which this element is defined.
no setterinherited
declaration VariableElement
Return the declaration of this element. If the element is a view on an element, e.g. a method from an interface type, with substituted type parameters, return the corresponding element from the class, without any substitutions. If this element is already a declaration (or a synthetic element, e.g. a synthetic property accessor), return itself.
no setterinherited
displayName String
Return the display name of this element, possibly the empty string if this element does not have a name.
no setteroverride
documentationComment String?
Return the content of the documentation comment (including delimiters) for this element, or null if this element does not or cannot have documentation.
no setterinherited
enclosingElement Element?
Return the element that either physically or logically encloses this element. This will be null if this element is a library because libraries are the top-level elements in the model.
no setterinherited
enclosingElement3 Element?
Return the element that either physically or logically encloses this element. This will be null if this element is a library because libraries are the top-level elements in the model.
no setterinherited
getter PropertyAccessorElement?
Return the getter associated with this variable. If this variable was explicitly defined (is not synthetic) then the getter associated with it will be synthetic.
no setter
hasAlwaysThrows bool
Return true if this element has an annotation of the form @alwaysThrows.
no setterinherited
hasDeprecated bool
Return true if this element has an annotation of the form @deprecated or @Deprecated('..').
no setterinherited
hasDoNotStore bool
Return true if this element has an annotation of the form @doNotStore.
no setterinherited
hasFactory bool
Return true if this element has an annotation of the form @factory.
no setterinherited
hashCode int
The hash code for this object.
no setterinherited
hasImplicitType bool
Return true if this variable element did not have an explicit type specified for it.
no setterinherited
hasInitializer bool
Return true if this variable has an initializer at declaration.
no setter
hasInternal bool
Return true if this element has an annotation of the form @internal.
no setterinherited
hasIsTest bool
Return true if this element has an annotation of the form @isTest.
no setterinherited
hasIsTestGroup bool
Return true if this element has an annotation of the form @isTestGroup.
no setterinherited
hasJS bool
Return true if this element has an annotation of the form @JS(..).
no setterinherited
hasLiteral bool
Return true if this element has an annotation of the form @literal.
no setterinherited
hasMustBeOverridden bool
Return true if this element has an annotation of the form @mustBeOverridden.
no setterinherited
hasMustCallSuper bool
Return true if this element has an annotation of the form @mustCallSuper.
no setterinherited
hasNonVirtual bool
Return true if this element has an annotation of the form @nonVirtual.
no setterinherited
hasOptionalTypeArgs bool
Return true if this element has an annotation of the form @optionalTypeArgs.
no setterinherited
hasOverride bool
Return true if this element has an annotation of the form @override.
no setterinherited
hasProtected bool
Return true if this element has an annotation of the form @protected.
no setterinherited
hasReopen bool
Return true if this element has an annotation of the form @reopen.
no setterinherited
hasRequired bool
Return true if this element has an annotation of the form @required.
no setterinherited
hasSealed bool
Return true if this element has an annotation of the form @sealed.
no setterinherited
hasUseResult bool
Return true if this element has an annotation of the form @useResult or @UseResult('..').
no setterinherited
hasVisibleForOverriding bool
Return true if this element has an annotation of the form @visibleForOverriding.
no setterinherited
hasVisibleForTemplate bool
Return true if this element has an annotation of the form @visibleForTemplate.
no setterinherited
hasVisibleForTesting bool
Return true if this element has an annotation of the form @visibleForTesting.
no setterinherited
id int
The unique integer identifier of this element.
no setterinherited
isConst bool
Return true if this variable was declared with the 'const' modifier.
no setterinherited
isConstantEvaluated bool
Return whether this constant is evaluated.
no setterinherited
isFinal bool
Return true if this variable was declared with the 'final' modifier. Variables that are declared with the 'const' modifier will return false even though they are implicitly final.
no setterinherited
isLate bool
Return true if this variable uses late evaluation semantics.
no setterinherited
isPrivate bool
Return true if this element is private. Private elements are visible only within the library in which they are declared.
no setterinherited
isPublic bool
Return true if this element is public. Public elements are visible within any library that imports the library in which they are declared.
no setterinherited
isStatic bool
Return true if this element is a static variable, as per section 8 of the Dart Language Specification:
no setterinherited
isSynthetic bool
Return true if this element is synthetic. A synthetic element is an element that is not represented in the source code explicitly, but is implied by the source code, such as the default constructor for a class that does not explicitly define any constructors.
no setterinherited
kind ElementKind
Return the kind of element that this is.
no setterinherited
library LibraryElement
Return the library that contains this element. This will be the element itself if it is a library element. This will be null if this element is MultiplyDefinedElement that is not contained in a library.
no setteroverride
librarySource → Source?
If this target is associated with a library, return the source of the library's defining compilation unit; otherwise return null.
no setterinherited
location ElementLocation?
Return an object representing the location of this element in the element model. The object can be used to locate this element at a later time.
no setterinherited
metadata List<ElementAnnotation>
Return a list containing all of the metadata associated with this element. The array will be empty if the element does not have any metadata or if the library containing this element has not yet been resolved.
no setterinherited
name String
Return the name of this element, or null if this element does not have a name.
no setteroverride
nameLength int
Return the length of the name of this element in the file that contains the declaration of this element, or 0 if this element does not have a name.
no setterinherited
nameOffset int
Return the offset of the name of this element in the file that contains the declaration of this element, or -1 if this element is synthetic, does not have a name, or otherwise does not have an offset.
no setterinherited
nonSynthetic Element
Return the non-synthetic element that caused this element to be created.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
session AnalysisSession?
Return the analysis session in which this element is defined.
no setterinherited
setter PropertyAccessorElement?
Return the setter associated with this variable, or null if the variable is effectively final and therefore does not have a setter associated with it. (This can happen either because the variable is explicitly defined as being final or because the variable is induced by an explicit getter that does not have a corresponding setter.) If this variable was explicitly defined (is not synthetic) then the setter associated with it will be synthetic.
no setter
sinceSdkVersion → Version?
The version where this SDK API was added.
no setterinherited
source → Source?
Return the source associated with this target, or null if this target is not associated with a source.
no setterinherited
type DartType
Return the declared type of this variable.
no setterinherited

Methods

accept<T>(ElementVisitor<T> visitor) → T?
Use the given visitor to visit this element. Return the value returned by the visitor as a result of visiting this element.
inherited
computeConstantValue() DartObject?
Return a representation of the value of this variable, forcing the value to be computed if it had not previously been computed, or null if either this variable was not declared with the 'const' modifier or if the value of this variable could not be computed because of errors.
inherited
getDisplayString({required bool withNullability, bool multiline = false}) String
Return the presentation of this element as it should appear when presented to users.
inherited
getExtendedDisplayName(String? shortName) String
Return a display name for the given element that includes the path to the compilation unit in which the type is defined. If shortName is null then displayName will be used as the name of this element. Otherwise the provided name will be used.
inherited
isAccessibleIn(LibraryElement library) bool
Return true if this element, assuming that it is within scope, is accessible to code in the given library. This is defined by the Dart Language Specification in section 6.2:
inherited
isAccessibleIn2(LibraryElement library) bool
Return true if this element, assuming that it is within scope, is accessible to code in the given library. This is defined by the Dart Language Specification in section 6.2:
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
thisOrAncestorMatching<E extends Element>(bool predicate(Element)) → E?
Return either this element or the most immediate ancestor of this element for which the predicate returns true, or null if there is no such element.
inherited
thisOrAncestorOfType<E extends Element>() → E?
Return either this element or the most immediate ancestor of this element that has the given type, or null if there is no such element.
inherited
toString() String
A string representation of this object.
inherited
visitChildren(ElementVisitor visitor) → void
Use the given visitor to visit all of the children of this element. There is no guarantee of the order in which the children will be visited.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited