ClassElement class abstract
An element that represents a class or a mixin. The class can be defined by either a class declaration (with a class body), a mixin application (without a class body), a mixin declaration, or an enum declaration.
Clients may not extend, implement or mix-in this class.
- Implemented types
Constructors
Properties
-
accessors
→ List<
PropertyAccessorElement> -
Return a list containing all of the accessors (getters and setters)
declared in this class.
no setterinherited
-
allSupertypes
→ List<
InterfaceType> -
Return a list containing all the supertypes defined for this element and
its supertypes. This includes superclasses, mixins, interfaces, and
superclass constraints.
no setterinherited
- augmentation → ClassAugmentationElement?
-
The immediate augmentation of this element, or
null
if there are no augmentations. ClassAugmentationElement.augmentationTarget is the back pointer that will point at this element.no setterinherited - augmented → AugmentedClassElement
-
Returns the result of applying augmentations to this class.
no setter
-
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
-
constructors
→ List<
ConstructorElement> -
Return a list containing all of the constructors declared in this class.
The list will be empty if there are no constructors defined for this
class, as is the case when this element represents an enum or a mixin.
no setterinherited
- context → AnalysisContext
-
Return the analysis context in which this element is defined.
no setterinherited
- declaration → Element
-
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 setterinherited
- 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 → CompilationUnitElement
-
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 → CompilationUnitElement
-
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 -
fields
→ List<
FieldElement> -
Return a list containing all of the fields declared in this class.
no setterinherited
- 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
- 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 - hasNonFinalField → bool
-
Return
true
if this class or its superclass declares a non-final instance field.no setter - 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
-
interfaces
→ List<
InterfaceType> -
Return a list containing all of the interfaces that are implemented by
this class.
no setterinherited
- isAbstract → bool
-
Return
true
if this class is abstract. A class is abstract if it has an explicitabstract
modifier. Note, that this definition of abstract is different from has unimplemented members.no setter - isBase → bool
-
Return
true
if this class is a base class.no setter - isConstructable → bool
-
Return
true
if this class can be instantiated.no setter - isDartCoreEnum → bool
-
Return
true
if this class represents the class 'Enum' defined in the dart:core library.no setter - isDartCoreObject → bool
-
Return
true
if this class represents the class 'Object' defined in the dart:core library.no setter - isExhaustive → bool
-
Return
true
if this element has the property where, in a switch, if you cover all of the subtypes of this element, then the compiler knows that you have covered all possible instances of the type.no setter - isFinal → bool
-
Return
true
if this class is a final class.no setter - isInterface → bool
-
Return
true
if this class is an interface class.no setter - isMixinApplication → bool
-
Return
true
if this class is a mixin application. A class is a mixin application if it was declared using the syntax "class A = B with C;".no setter - isMixinClass → bool
-
Return
true
if this class is a mixin class. A class is a mixin class if it has an explicitmixin
modifier.no setter - 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 - isSealed → bool
-
Return
true
if this class is a sealed class. A class is a sealed class if it has an explicitsealed
modifier.no setter - isSimplyBounded → bool
-
If the element defines a type, indicates whether the type may safely
appear without explicit type parameters as the bounds of a type parameter
declaration.
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 - isValidMixin → bool
-
Return
true
if this class can validly be used as a mixin when defining another class. For classes defined by a class declaration or a mixin application, the behavior of this method is defined by the Dart Language Specification in section 9:no setter - 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 setterinherited - 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
-
methods
→ List<
MethodElement> -
Return a list containing all of the methods declared in this class.
no setterinherited
-
mixins
→ List<
InterfaceType> -
Return a list containing all of the mixins that are applied to the class
being extended in order to derive the superclass of this class.
no setterinherited
- name → String
-
Return the name of this element, or
null
if this element does not have a name.no setterinherited - 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
- 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 -
superclassConstraints
→ List<
InterfaceType> -
Return a list containing all of the superclass constraints defined for
this class. The list will be empty if this class does not represent a
mixin declaration. If this class does represent a mixin declaration but
the declaration does not have an
on
clause, then the list will contain the type for the classObject
.no setter - supertype → InterfaceType?
-
Return the superclass of this element.
no setterinherited
- thisType → InterfaceType
-
Return the type of
this
expression for this element.no setterinherited -
typeParameters
→ List<
TypeParameterElement> -
Return a list containing all of the type parameters declared by this
element directly. This does not include type parameters that are declared
by any enclosing elements.
no setterinherited
- unnamedConstructor → ConstructorElement?
-
Returns the unnamed constructor declared directly in this class. If the
class does not declare any constructors, a synthetic default constructor
will be returned.
TODO(scheglov) Deprecate and remove it.
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 -
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
isnull
then displayName will be used as the name of this element. Otherwise the provided name will be used.inherited -
getField(
String name) → FieldElement? -
Returns the field (synthetic or explicit) defined directly in this
class or augmentation that has the given
name
. TODO(scheglov) Deprecate and remove it.inherited -
getGetter(
String name) → PropertyAccessorElement? -
Returns the getter (synthetic or explicit) defined directly in this
class or augmentation that has the given
name
. TODO(scheglov) Deprecate and remove it.inherited -
getMethod(
String name) → MethodElement? -
Returns the method defined directly in this class or augmentation that
has the given
name
. TODO(scheglov) Deprecate and remove it.inherited -
getNamedConstructor(
String name) → ConstructorElement? -
Returns the constructor defined directly in this class or augmentation
that has the given
name
. TODO(scheglov) Deprecate and remove it.inherited -
getSetter(
String name) → PropertyAccessorElement? -
Returns the setter (synthetic or explicit) defined directly in this
class or augmentation that has the given
name
. TODO(scheglov) Deprecate and remove it.inherited -
instantiate(
{required List< DartType> typeArguments, required NullabilitySuffix nullabilitySuffix}) → InterfaceType -
Create the InterfaceType for this element with the given
typeArguments
andnullabilitySuffix
.inherited -
isAccessibleIn(
LibraryElement library) → bool -
Return
true
if this element, assuming that it is within scope, is accessible to code in the givenlibrary
. 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 givenlibrary
. This is defined by the Dart Language Specification in section 6.2:inherited -
isExtendableIn(
LibraryElement library) → bool -
Return
true
if this element, assuming that it is within scope, is extendable to classes in the givenlibrary
. -
isImplementableIn(
LibraryElement library) → bool -
Return
true
if this element, assuming that it is within scope, is implementable to classes, mixins, and enums in the givenlibrary
. -
isMixableIn(
LibraryElement library) → bool -
Return
true
if this element, assuming that it is within scope, is able to be mixed-in by classes and enums in the givenlibrary
. -
lookUpConcreteMethod(
String methodName, LibraryElement library) → MethodElement? -
Return the element representing the method that results from looking up
the given
methodName
in this class with respect to the givenlibrary
, ignoring abstract methods, ornull
if the look up fails. The behavior of this method is defined by the Dart Language Specification in section 16.15.1:inherited -
lookUpGetter(
String getterName, LibraryElement library) → PropertyAccessorElement? -
Return the element representing the getter that results from looking up
the given
getterName
in this class with respect to the givenlibrary
, ornull
if the look up fails. The behavior of this method is defined by the Dart Language Specification in section 16.15.2:inherited -
lookUpInheritedConcreteGetter(
String getterName, LibraryElement library) → PropertyAccessorElement? -
Return the element representing the getter that results from looking up
the given
getterName
in the superclass of this class with respect to the givenlibrary
, ignoring abstract getters, ornull
if the look up fails. The behavior of this method is defined by the Dart Language Specification in section 16.15.2:inherited -
lookUpInheritedConcreteMethod(
String methodName, LibraryElement library) → MethodElement? -
Return the element representing the method that results from looking up
the given
methodName
in the superclass of this class with respect to the givenlibrary
, ignoring abstract methods, ornull
if the look up fails. The behavior of this method is defined by the Dart Language Specification in section 16.15.1:inherited -
lookUpInheritedConcreteSetter(
String setterName, LibraryElement library) → PropertyAccessorElement? -
Return the element representing the setter that results from looking up
the given
setterName
in the superclass of this class with respect to the givenlibrary
, ignoring abstract setters, ornull
if the look up fails. The behavior of this method is defined by the Dart Language Specification in section 16.15.2:inherited -
lookUpInheritedMethod(
String methodName, LibraryElement library) → MethodElement? -
Return the element representing the method that results from looking up
the given
methodName
in the superclass of this class with respect to the givenlibrary
, ornull
if the look up fails. The behavior of this method is defined by the Dart Language Specification in section 16.15.1:inherited -
lookUpMethod(
String methodName, LibraryElement library) → MethodElement? -
Return the element representing the method that results from looking up
the given
methodName
in this class with respect to the givenlibrary
, ornull
if the look up fails. The behavior of this method is defined by the Dart Language Specification in section 16.15.1:inherited -
lookUpSetter(
String setterName, LibraryElement library) → PropertyAccessorElement? -
Return the element representing the setter that results from looking up
the given
setterName
in this class with respect to the givenlibrary
, ornull
if the look up fails. The behavior of this method is defined by the Dart Language Specification in section 16.15.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
returnstrue
, ornull
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