Skip to main content

MaybeHasNiche

Trait MaybeHasNiche 

Source
pub trait MaybeHasNiche {
    type MnArray;
}
Expand description

This might contain a valid Niche.

Required Associated Types§

Source

type MnArray

Should implement [MnArray]. Not constraint explicitly, because that breaks things.

Implementations on Foreign Types§

Source§

impl MaybeHasNiche for Infallible

Source§

impl MaybeHasNiche for bool

Source§

impl MaybeHasNiche for i8

Source§

impl MaybeHasNiche for str

Source§

impl MaybeHasNiche for u8

Source§

impl MaybeHasNiche for ()

Source§

impl MaybeHasNiche for CString

Source§

impl MaybeHasNiche for String

Source§

impl MaybeHasNiche for NonZero<i8>

Source§

impl MaybeHasNiche for NonZero<u8>

Source§

impl MaybeHasNiche for Ulid

Available on crate feature ulid only.
Source§

impl<'a, B: 'a + ToOwned + MaybeHasNiche + ?Sized> MaybeHasNiche for Cow<'a, B>

Source§

impl<A, O: BitOrder> MaybeHasNiche for BitArray<A, O>
where PhantomData<O>: MaybeHasNiche<MnArray: MnArray<MaybeNiche: MaybeNiche>>, A: MaybeHasNiche<MnArray: MnArray<MaybeNiche: MaybeNiche>> + BitViewSized,

Available on crate feature bitvec only.
Source§

type MnArray = TArr<<<PhantomData<O> as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche, TArr<<<A as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche, ATerm>>

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche> MaybeHasNiche for (A, B)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche> MaybeHasNiche for (A, B, C)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche, D: MaybeHasNiche> MaybeHasNiche for (A, B, C, D)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche, D: MaybeHasNiche, E: MaybeHasNiche> MaybeHasNiche for (A, B, C, D, E)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche, D: MaybeHasNiche, E: MaybeHasNiche, F: MaybeHasNiche> MaybeHasNiche for (A, B, C, D, E, F)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche, D: MaybeHasNiche, E: MaybeHasNiche, F: MaybeHasNiche, G: MaybeHasNiche> MaybeHasNiche for (A, B, C, D, E, F, G)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche, D: MaybeHasNiche, E: MaybeHasNiche, F: MaybeHasNiche, G: MaybeHasNiche, H: MaybeHasNiche> MaybeHasNiche for (A, B, C, D, E, F, G, H)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche, D: MaybeHasNiche, E: MaybeHasNiche, F: MaybeHasNiche, G: MaybeHasNiche, H: MaybeHasNiche, I: MaybeHasNiche> MaybeHasNiche for (A, B, C, D, E, F, G, H, I)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche, D: MaybeHasNiche, E: MaybeHasNiche, F: MaybeHasNiche, G: MaybeHasNiche, H: MaybeHasNiche, I: MaybeHasNiche, J: MaybeHasNiche> MaybeHasNiche for (A, B, C, D, E, F, G, H, I, J)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche, D: MaybeHasNiche, E: MaybeHasNiche, F: MaybeHasNiche, G: MaybeHasNiche, H: MaybeHasNiche, I: MaybeHasNiche, J: MaybeHasNiche, K: MaybeHasNiche> MaybeHasNiche for (A, B, C, D, E, F, G, H, I, J, K)

Source§

impl<A: MaybeHasNiche, B: MaybeHasNiche, C: MaybeHasNiche, D: MaybeHasNiche, E: MaybeHasNiche, F: MaybeHasNiche, G: MaybeHasNiche, H: MaybeHasNiche, I: MaybeHasNiche, J: MaybeHasNiche, K: MaybeHasNiche, L: MaybeHasNiche> MaybeHasNiche for (A, B, C, D, E, F, G, H, I, J, K, L)

Source§

impl<T> MaybeHasNiche for dyn Send + Sync + ExtraFor<T>

Source§

impl<T: MaybeHasNiche> MaybeHasNiche for (T,)

Source§

impl<T: MaybeHasNiche<MnArray: MnArray<MaybeNiche = Mn>>, Mn: Niche<NeedsTag = B, N: Add<B, Output: ArrayLength>>, B: OptionNicheWrapper> MaybeHasNiche for Option<T>

Source§

type MnArray = <B as OptionNicheWrapper>::Wrap<Mn>

Source§

impl<T: ?Sized + MaybeHasNiche> MaybeHasNiche for Box<T>

Source§

impl<T: ?Sized + MaybeHasNiche> MaybeHasNiche for Arc<T>

Source§

impl<T: ?Sized> MaybeHasNiche for PhantomData<T>

Source§

impl<const N: usize> MaybeHasNiche for [u8; N]
where Const<N>: ToUInt<Output: ArrayLength>,

Implementors§

Source§

impl MaybeHasNiche for Hash

Source§

type MnArray = SomeNiche<HashNiche<UTerm>>

Source§

impl MaybeHasNiche for OptionalHash

Source§

type MnArray = SomeNiche<HashNiche<UInt<UTerm, B1>>>

Source§

impl<K> MaybeHasNiche for PartialByteTag<K>

Source§

impl<T, M> MaybeHasNiche for MappedExtra<T, M>
where M: MaybeHasNiche<MnArray: MnArray<MaybeNiche: MaybeNiche>>, T: MaybeHasNiche<MnArray: MnArray<MaybeNiche: MaybeNiche>>,

Source§

type MnArray = TArr<<<M as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche, TArr<<<T as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche, ATerm>>

Source§

impl<T, const MAX: usize> MaybeHasNiche for EnumTag<T, MAX>
where T: MaybeHasNiche<MnArray: MnArray<MaybeNiche: MaybeNiche>>,

Source§

type MnArray = TArr<<<T as MaybeHasNiche>::MnArray as MnArray>::MaybeNiche, ATerm>

Source§

impl<T: Size> MaybeHasNiche for Lp<T>
where U8: Add<T::Size, Output: ArrayLength>,