Skip to main content

StrongPotentialWell

Trait StrongPotentialWell 

Source
pub trait StrongPotentialWell: PotentialWell {
    type StrongWell<T>: StrongWell + Deref<Target = T> + KineticWell<Potential: PotentialWell<Well<T> = Self::StrongWell<T>>> + KineticWell<Potential = Self>;
}
Expand description

PotentialWell that always yields StrongWells.

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§

Source

type StrongWell<T>: StrongWell + Deref<Target = T> + KineticWell<Potential: PotentialWell<Well<T> = Self::StrongWell<T>>> + KineticWell<Potential = Self>

Makes a well of a particular 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 StrongPotentialWell for Box<()>

Available on crate features alloc only.
Source§

type StrongWell<T> = Box<T>

Source§

impl StrongPotentialWell for Rc<()>

Available on crate feature alloc only.
Source§

type StrongWell<T> = Rc<T>

Source§

impl StrongPotentialWell for Arc<()>

Available on crate features alloc only.
Source§

type StrongWell<T> = Arc<T>

Source§

impl<W: StrongPotentialWell> StrongPotentialWell for Pin<W>

Implementors§