pub trait WeakPotentialWell: PotentialWell {
type Strong: StrongPotentialWell;
type WeakWell<T>: WeakWell<Target = T, Strong: KineticWell<Potential = Self::Strong>> + KineticWell<Potential: PotentialWell<Well<T> = Self::WeakWell<T>>>;
}Expand description
PotentialWell that always yields WeakWells.
Unfortunately, without higher-kinded trait bounds (HKTBs) for generic associated types (GATs), we can’t make this into a proper trait alias, and it must be implemented manually.
Required Associated Types§
Sourcetype Strong: StrongPotentialWell
type Strong: StrongPotentialWell
Potential well that corresponds to the Strong wells for each weak well.
Sourcetype WeakWell<T>: WeakWell<Target = T, Strong: KineticWell<Potential = Self::Strong>> + KineticWell<Potential: PotentialWell<Well<T> = Self::WeakWell<T>>>
type WeakWell<T>: WeakWell<Target = T, Strong: KineticWell<Potential = Self::Strong>> + KineticWell<Potential: PotentialWell<Well<T> = Self::WeakWell<T>>>
Makes a well of a partiuclar type.
This only acts to verify the trait, and is never used directly.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl WeakPotentialWell for Weak<()>
Available on crate feature alloc only.
impl WeakPotentialWell for Weak<()>
Available on crate feature
alloc only.Source§impl WeakPotentialWell for Weak<()>
Available on crate features alloc only.
impl WeakPotentialWell for Weak<()>
Available on crate features
alloc only.