Skip to main content

TypedVec

Trait TypedVec 

Source
pub trait TypedVec: AnyVec {
    type I: VecIndex;
    type T: VecValue;
}
Expand description

A vector with statically-known index and value types.

This trait extends AnyVec by providing associated types for the index (I) and value (T) types, enabling type-safe operations at compile time.

§Type Parameters

  • I: The index type, must implement VecIndex
  • T: The value type, must implement VecValue

Required Associated Types§

Source

type I: VecIndex

The index type used to address elements in this vector.

Source

type T: VecValue

The value type stored in this vector.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<I, O, S1I, S2T, S1T, Strat> TypedVec for LazyAggVec<I, O, S1I, S2T, S1T, Strat>
where I: VecIndex, O: VecValue, S1I: VecIndex, S2T: VecValue, S1T: VecValue, Strat: 'static,

Source§

type I = I

Source§

type T = O

Source§

impl<I, S, T, Op> TypedVec for LazyDeltaVec<I, S, T, Op>
where I: VecIndex, S: VecValue, T: VecValue, Op: DeltaOp<S, T>,

Source§

type I = I

Source§

type T = T

Source§

impl<I, T, S1I, S1T> TypedVec for LazyVec<I, T, S1I, S1T>
where I: VecIndex, T: VecValue, S1I: VecIndex, S1T: VecValue,

Source§

type I = I

Source§

type T = T

Source§

impl<I, T, S> TypedVec for ReadOnlyCompressedVec<I, T, S>

Source§

type I = I

Source§

type T = T

Source§

impl<I, T, S> TypedVec for ReadOnlyRawVec<I, T, S>
where I: VecIndex, T: VecValue, S: RawStrategy<T>,

Source§

type I = I

Source§

type T = T

Source§

impl<I, T, S> TypedVec for ReadWriteRawVec<I, T, S>
where I: VecIndex, T: VecValue, S: RawStrategy<T>,

Source§

type I = I

Source§

type T = T

Source§

impl<I, T> TypedVec for BytesVec<I, T>
where I: VecIndex, T: BytesVecValue,

Source§

type I = I

Source§

type T = T

Source§

impl<I, T> TypedVec for LZ4Vec<I, T>
where I: VecIndex, T: LZ4VecValue,

Source§

type I = I

Source§

type T = T

Source§

impl<I, T> TypedVec for PcoVec<I, T>
where I: VecIndex, T: PcoVecValue,

Source§

type I = I

Source§

type T = T

Source§

impl<I, T> TypedVec for ZeroCopyVec<I, T>

Source§

type I = I

Source§

type T = T

Source§

impl<I, T> TypedVec for ZstdVec<I, T>
where I: VecIndex, T: ZstdVecValue,

Source§

type I = I

Source§

type T = T

Source§

impl<V: TypedVec> TypedVec for CachedVec<V>

Source§

type I = <V as TypedVec>::I

Source§

type T = <V as TypedVec>::T

Source§

impl<V> TypedVec for EagerVec<V>
where V: StoredVec,

Source§

type I = <V as TypedVec>::I

Source§

type T = <V as TypedVec>::T