InheritedModelSeed<T extends Object, A extends Object> class
Provides an ambient value of type T whose dependents may subscribe to a
single ASPECT of it — the InheritedModel analogue.
A dependent subscribes with
context.dependOnInheritedSeedOfExactType<T>(aspect: someAspect)
and is invalidated only when updateShouldNotifyDependent reports the
change as affecting one of the aspects it asked for. A dependent that
omits the aspect depends on the whole value, exactly as under
InheritedSeed.
Lookup is unchanged — the parent walk still matches the nearest provider
of exact value-type T — so a plain
dependOnInheritedSeedOfExactType<T>() finds an
InheritedModelSeed<T, A> too and gets a whole-value dependency.
The house shape for a consumer is its own static of:
static Environment? of(TreeContext context, {Lane? aspect}) =>
context.dependOnInheritedSeedOfExactType<Environment>(aspect: aspect);
- Inheritance
-
- Object
- Seed
- InheritedSeed<
T> - InheritedModelSeed
Constructors
- InheritedModelSeed({required T value, required Seed child, Key? key})
-
Creates an aspect-scoped provider of
valueoverchild.const
Properties
- child → Seed
-
The subtree within which value is visible.
finalinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Identity Key used by keyed reconciliation (Branch.updateChildren).
Null means positional (unkeyed) identity.
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- value → T
-
The provided value.
finalinherited
Methods
-
createBranch(
) → InheritedModelBranch< T, A> -
Creates the mounted Branch for this configuration.
override
-
debugFillProperties(
DiagnosticsBuilder properties) → void -
Adds this object's diagnostic properties to
properties.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
-
toStringDeep(
) → String -
Returns a deterministic multiline description of this object.
inherited
-
updateShouldNotify(
InheritedSeed< T> oldSeed) → bool -
Returns true when
oldSeed's value differs from the new value. Subclasses may override for custom equality.inherited -
updateShouldNotifyDependent(
covariant InheritedModelSeed< T, A> oldSeed, Set<A> dependencies) → bool -
Whether a dependent that subscribed to
dependenciesmust rebuild now that this seed has replacedoldSeed.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited