pub trait StaticArray:
Array
+ for<'a> ArrayFromIterDtype<Self::ValueT<'a>>
+ for<'a> ArrayFromIterDtype<Self::ZeroableValueT<'a>>
+ for<'a> ArrayFromIterDtype<Option<Self::ValueT<'a>>>
+ Clone {
type ValueT<'a>: Clone
where Self: 'a;
type ZeroableValueT<'a>: Zeroable + From<Self::ValueT<'a>>
where Self: 'a;
type ValueIterT<'a>: DoubleEndedIterator<Item = Self::ValueT<'a>> + TrustedLen + Send + Sync
where Self: 'a;
Show 13 methods
// Required methods
fn with_validity_typed(self, validity: Option<Bitmap>) -> Self;
fn full_null(length: usize, dtype: ArrowDataType) -> Self;
// Provided methods
fn get(&self, idx: usize) -> Option<Self::ValueT<'_>> { ... }
unsafe fn get_unchecked(&self, idx: usize) -> Option<Self::ValueT<'_>> { ... }
fn last(&self) -> Option<Self::ValueT<'_>> { ... }
fn value(&self, idx: usize) -> Self::ValueT<'_> { ... }
unsafe fn value_unchecked(&self, idx: usize) -> Self::ValueT<'_> { ... }
fn as_slice(&self) -> Option<&[Self::ValueT<'_>]> { ... }
fn iter(
&self,
) -> ZipValidity<Self::ValueT<'_>, Self::ValueIterT<'_>, BitmapIter<'_>> ⓘ { ... }
fn values_iter(&self) -> Self::ValueIterT<'_> { ... }
fn from_vec(v: Vec<Self::ValueT<'_>>, dtype: ArrowDataType) -> Self { ... }
fn from_zeroable_vec(
v: Vec<Self::ZeroableValueT<'_>>,
dtype: ArrowDataType,
) -> Self { ... }
fn full(
length: usize,
value: Self::ValueT<'_>,
dtype: ArrowDataType,
) -> Self { ... }
}
Required Associated Types§
type ValueT<'a>: Clone where Self: 'a
type ZeroableValueT<'a>: Zeroable + From<Self::ValueT<'a>> where Self: 'a
type ValueIterT<'a>: DoubleEndedIterator<Item = Self::ValueT<'a>> + TrustedLen + Send + Sync where Self: 'a
Required Methods§
fn with_validity_typed(self, validity: Option<Bitmap>) -> Self
fn full_null(length: usize, dtype: ArrowDataType) -> Self
Provided Methods§
fn get(&self, idx: usize) -> Option<Self::ValueT<'_>>
Sourceunsafe fn get_unchecked(&self, idx: usize) -> Option<Self::ValueT<'_>>
unsafe fn get_unchecked(&self, idx: usize) -> Option<Self::ValueT<'_>>
§Safety
It is the callers responsibility that the idx < self.len()
.
fn last(&self) -> Option<Self::ValueT<'_>>
fn value(&self, idx: usize) -> Self::ValueT<'_>
Sourceunsafe fn value_unchecked(&self, idx: usize) -> Self::ValueT<'_>
unsafe fn value_unchecked(&self, idx: usize) -> Self::ValueT<'_>
§Safety
It is the callers responsibility that the idx < self.len()
.
fn as_slice(&self) -> Option<&[Self::ValueT<'_>]>
fn iter( &self, ) -> ZipValidity<Self::ValueT<'_>, Self::ValueIterT<'_>, BitmapIter<'_>> ⓘ
fn values_iter(&self) -> Self::ValueIterT<'_>
fn from_vec(v: Vec<Self::ValueT<'_>>, dtype: ArrowDataType) -> Self
fn from_zeroable_vec( v: Vec<Self::ZeroableValueT<'_>>, dtype: ArrowDataType, ) -> Self
fn full(length: usize, value: Self::ValueT<'_>, dtype: ArrowDataType) -> Self
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.