LinkDeclaration class abstract
Abstract base class for type references in reflection systems.
Represents a reference to a type declaration, including:
- Type arguments
- Pointer information
- Source location metadata
- Variance information
{@template link_declaration_features}
Key Features
- Type parameter resolution
- Source location tracking
- Variance awareness
- Canonical vs reference distinction
Typical Implementations
Used by:
- Generic type references
- Type alias resolutions
- Cross-library type references
Example Usage
final link = getTypeReference<List<String>>();
print(link.getPointerQualifiedName()); // "List"
print(link.getTypeArguments()[0].getName()); // "String"
print(link.getVariance()); // TypeVariance.invariant
{@endtemplate}
- Inheritance
-
- Object
- Declaration
- LinkDeclaration
Constructors
- LinkDeclaration()
-
const
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
getCanonicalUri(
) → Uri? - Gets the canonical definition location.
-
getIsCanonical(
) → bool - Checks if this reference points to its canonical definition.
-
getIsPublic(
) → bool -
Checks if this declaration is a public declaration.
inherited
-
getIsSynthetic(
) → bool -
Checks if a declaration is a synthetic declaration.
inherited
-
getName(
) → String -
Gets the name of the declared element.
inherited
-
getPointerQualifiedName(
) → String - Gets the fully qualified name of the pointer type.
-
getPointerType(
) → Type - Gets the base pointer type being referenced.
-
getReferenceUri(
) → Uri? - Gets where this reference was found.
-
getType(
) → Type -
Gets the runtime type of the declared element.
inherited
-
getTypeArguments(
) → List< LinkDeclaration> - Gets the type arguments for this reference.
-
getUpperBound(
) → LinkDeclaration? - Gets the upper bound for type variables.
-
getVariance(
) → TypeVariance - Gets the variance annotation for this reference.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toJson(
) → Map< String, Object> -
Returns a JSON representation of this entity.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited