pub struct GenericByteArray<T>where
T: ByteArrayType,{ /* private fields */ }
Expand description
An array of variable length byte arrays
See StringArray
and LargeStringArray
for storing utf8 encoded string data
See BinaryArray
and LargeBinaryArray
for storing arbitrary bytes
§Example: From a Vec
let arr: GenericByteArray<Utf8Type> = vec!["hello", "world", ""].into();
assert_eq!(arr.value_data(), b"helloworld");
assert_eq!(arr.value_offsets(), &[0, 5, 10, 10]);
let values: Vec<_> = arr.iter().collect();
assert_eq!(values, &[Some("hello"), Some("world"), Some("")]);
§Example: From an optional Vec
let arr: GenericByteArray<Utf8Type> = vec![Some("hello"), Some("world"), Some(""), None].into();
assert_eq!(arr.value_data(), b"helloworld");
assert_eq!(arr.value_offsets(), &[0, 5, 10, 10, 10]);
let values: Vec<_> = arr.iter().collect();
assert_eq!(values, &[Some("hello"), Some("world"), Some(""), None]);
§Example: From an iterator of option
let arr: GenericByteArray<Utf8Type> = (0..5).map(|x| (x % 2 == 0).then(|| x.to_string())).collect();
let values: Vec<_> = arr.iter().collect();
assert_eq!(values, &[Some("0"), None, Some("2"), None, Some("4")]);
§Example: Using Builder
let mut builder = GenericByteBuilder::<Utf8Type>::new();
builder.append_value("hello");
builder.append_null();
builder.append_value("world");
let array = builder.finish();
let values: Vec<_> = array.iter().collect();
assert_eq!(values, &[Some("hello"), None, Some("world")]);
Implementations§
Source§impl<OffsetSize> GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Sourcepub fn from_vec(
v: Vec<&[u8]>,
) -> GenericByteArray<GenericBinaryType<OffsetSize>>
pub fn from_vec( v: Vec<&[u8]>, ) -> GenericByteArray<GenericBinaryType<OffsetSize>>
Creates a GenericBinaryArray from a vector of byte slices
See also Self::from_iter_values
Sourcepub fn from_opt_vec(
v: Vec<Option<&[u8]>>,
) -> GenericByteArray<GenericBinaryType<OffsetSize>>
pub fn from_opt_vec( v: Vec<Option<&[u8]>>, ) -> GenericByteArray<GenericBinaryType<OffsetSize>>
Creates a GenericBinaryArray from a vector of Optional (null) byte slices
Sourcepub fn take_iter<'a>(
&'a self,
indexes: impl Iterator<Item = Option<usize>> + 'a,
) -> impl Iterator<Item = Option<&'a [u8]>>
pub fn take_iter<'a>( &'a self, indexes: impl Iterator<Item = Option<usize>> + 'a, ) -> impl Iterator<Item = Option<&'a [u8]>>
Returns an iterator that returns the values of array.value(i)
for an iterator with each element i
Sourcepub unsafe fn take_iter_unchecked<'a>(
&'a self,
indexes: impl Iterator<Item = Option<usize>> + 'a,
) -> impl Iterator<Item = Option<&'a [u8]>>
pub unsafe fn take_iter_unchecked<'a>( &'a self, indexes: impl Iterator<Item = Option<usize>> + 'a, ) -> impl Iterator<Item = Option<&'a [u8]>>
Returns an iterator that returns the values of array.value(i)
for an iterator with each element i
§Safety
caller must ensure that the indexes in the iterator are less than the array.len()
Source§impl<T> GenericByteArray<T>where
T: ByteArrayType,
impl<T> GenericByteArray<T>where
T: ByteArrayType,
Sourcepub fn new(
offsets: OffsetBuffer<<T as ByteArrayType>::Offset>,
values: Buffer,
nulls: Option<NullBuffer>,
) -> GenericByteArray<T>
pub fn new( offsets: OffsetBuffer<<T as ByteArrayType>::Offset>, values: Buffer, nulls: Option<NullBuffer>, ) -> GenericByteArray<T>
Create a new GenericByteArray
from the provided parts, panicking on failure
§Panics
Panics if GenericByteArray::try_new
returns an error
Sourcepub fn try_new(
offsets: OffsetBuffer<<T as ByteArrayType>::Offset>,
values: Buffer,
nulls: Option<NullBuffer>,
) -> Result<GenericByteArray<T>, ArrowError>
pub fn try_new( offsets: OffsetBuffer<<T as ByteArrayType>::Offset>, values: Buffer, nulls: Option<NullBuffer>, ) -> Result<GenericByteArray<T>, ArrowError>
Create a new GenericByteArray
from the provided parts, returning an error on failure
§Errors
offsets.len() - 1 != nulls.len()
- Any consecutive pair of
offsets
does not denote a valid slice ofvalues
Sourcepub unsafe fn new_unchecked(
offsets: OffsetBuffer<<T as ByteArrayType>::Offset>,
values: Buffer,
nulls: Option<NullBuffer>,
) -> GenericByteArray<T>
pub unsafe fn new_unchecked( offsets: OffsetBuffer<<T as ByteArrayType>::Offset>, values: Buffer, nulls: Option<NullBuffer>, ) -> GenericByteArray<T>
Create a new GenericByteArray
from the provided parts, without validation
§Safety
Safe if Self::try_new
would not error
Sourcepub fn new_null(len: usize) -> GenericByteArray<T>
pub fn new_null(len: usize) -> GenericByteArray<T>
Create a new GenericByteArray
of length len
where all values are null
Sourcepub fn new_scalar(
value: impl AsRef<<T as ByteArrayType>::Native>,
) -> Scalar<GenericByteArray<T>>
pub fn new_scalar( value: impl AsRef<<T as ByteArrayType>::Native>, ) -> Scalar<GenericByteArray<T>>
Create a new Scalar
from v
Sourcepub fn from_iter_values<Ptr, I>(iter: I) -> GenericByteArray<T>
pub fn from_iter_values<Ptr, I>(iter: I) -> GenericByteArray<T>
Creates a GenericByteArray
based on an iterator of values without nulls
Sourcepub fn into_parts(
self,
) -> (OffsetBuffer<<T as ByteArrayType>::Offset>, Buffer, Option<NullBuffer>)
pub fn into_parts( self, ) -> (OffsetBuffer<<T as ByteArrayType>::Offset>, Buffer, Option<NullBuffer>)
Deconstruct this array into its constituent parts
Sourcepub fn value_length(&self, i: usize) -> <T as ByteArrayType>::Offset
pub fn value_length(&self, i: usize) -> <T as ByteArrayType>::Offset
Sourcepub fn offsets(&self) -> &OffsetBuffer<<T as ByteArrayType>::Offset>
pub fn offsets(&self) -> &OffsetBuffer<<T as ByteArrayType>::Offset>
Returns a reference to the offsets of this array
Unlike Self::value_offsets
this returns the OffsetBuffer
allowing for zero-copy cloning
Sourcepub fn values(&self) -> &Buffer
pub fn values(&self) -> &Buffer
Returns the values of this array
Unlike Self::value_data
this returns the Buffer
allowing for zero-copy cloning
Sourcepub fn value_data(&self) -> &[u8] ⓘ
pub fn value_data(&self) -> &[u8] ⓘ
Returns the raw value data
Sourcepub fn value_offsets(&self) -> &[<T as ByteArrayType>::Offset]
pub fn value_offsets(&self) -> &[<T as ByteArrayType>::Offset]
Returns the offset values in the offsets buffer
Sourcepub unsafe fn value_unchecked(&self, i: usize) -> &<T as ByteArrayType>::Native
pub unsafe fn value_unchecked(&self, i: usize) -> &<T as ByteArrayType>::Native
Returns the element at index i
§Safety
Caller is responsible for ensuring that the index is within the bounds of the array
Sourcepub fn value(&self, i: usize) -> &<T as ByteArrayType>::Native
pub fn value(&self, i: usize) -> &<T as ByteArrayType>::Native
Sourcepub fn iter(&self) -> ArrayIter<&GenericByteArray<T>> ⓘ
pub fn iter(&self) -> ArrayIter<&GenericByteArray<T>> ⓘ
constructs a new iterator
Sourcepub fn slice(&self, offset: usize, length: usize) -> GenericByteArray<T>
pub fn slice(&self, offset: usize, length: usize) -> GenericByteArray<T>
Returns a zero-copy slice of this array with the indicated offset and length.
Sourcepub fn into_builder(self) -> Result<GenericByteBuilder<T>, GenericByteArray<T>>
pub fn into_builder(self) -> Result<GenericByteBuilder<T>, GenericByteArray<T>>
Returns GenericByteBuilder
of this byte array for mutating its values if the underlying
offset and data buffers are not shared by others.
Source§impl<OffsetSize> GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Sourcepub fn num_chars(&self, i: usize) -> usize
pub fn num_chars(&self, i: usize) -> usize
Returns the number of Unicode Scalar Value
in the string at index i
.
§Performance
This function has O(n)
time complexity where n
is the string length.
If you can make sure that all chars in the string are in the range U+0x0000
~ U+0x007F
,
please use the function value_length
which has O(1) time complexity.
Sourcepub fn take_iter<'a>(
&'a self,
indexes: impl Iterator<Item = Option<usize>> + 'a,
) -> impl Iterator<Item = Option<&'a str>>
pub fn take_iter<'a>( &'a self, indexes: impl Iterator<Item = Option<usize>> + 'a, ) -> impl Iterator<Item = Option<&'a str>>
Returns an iterator that returns the values of array.value(i)
for an iterator with each element i
Sourcepub unsafe fn take_iter_unchecked<'a>(
&'a self,
indexes: impl Iterator<Item = Option<usize>> + 'a,
) -> impl Iterator<Item = Option<&'a str>>
pub unsafe fn take_iter_unchecked<'a>( &'a self, indexes: impl Iterator<Item = Option<usize>> + 'a, ) -> impl Iterator<Item = Option<&'a str>>
Returns an iterator that returns the values of array.value(i)
for an iterator with each element i
§Safety
caller must ensure that the indexes in the iterator are less than the array.len()
Sourcepub fn try_from_binary(
v: GenericByteArray<GenericBinaryType<OffsetSize>>,
) -> Result<GenericByteArray<GenericStringType<OffsetSize>>, ArrowError>
pub fn try_from_binary( v: GenericByteArray<GenericBinaryType<OffsetSize>>, ) -> Result<GenericByteArray<GenericStringType<OffsetSize>>, ArrowError>
Fallibly creates a GenericStringArray
from a GenericBinaryArray
returning
an error if GenericBinaryArray
contains invalid UTF-8 data
Trait Implementations§
Source§impl<T> Array for GenericByteArray<T>where
T: ByteArrayType,
impl<T> Array for GenericByteArray<T>where
T: ByteArrayType,
Source§fn slice(&self, offset: usize, length: usize) -> Arc<dyn Array>
fn slice(&self, offset: usize, length: usize) -> Arc<dyn Array>
Source§fn shrink_to_fit(&mut self)
fn shrink_to_fit(&mut self)
Source§fn offset(&self) -> usize
fn offset(&self) -> usize
0
. Read moreSource§fn nulls(&self) -> Option<&NullBuffer>
fn nulls(&self) -> Option<&NullBuffer>
Source§fn logical_null_count(&self) -> usize
fn logical_null_count(&self) -> usize
Source§fn get_buffer_memory_size(&self) -> usize
fn get_buffer_memory_size(&self) -> usize
Source§fn get_array_memory_size(&self) -> usize
fn get_array_memory_size(&self) -> usize
get_buffer_memory_size()
and
includes the overhead of the data structures that contain the pointers to the various buffers.Source§fn logical_nulls(&self) -> Option<NullBuffer>
fn logical_nulls(&self) -> Option<NullBuffer>
NullBuffer
that represents the logical
null values of this array, if any. Read moreSource§fn null_count(&self) -> usize
fn null_count(&self) -> usize
Source§fn is_nullable(&self) -> bool
fn is_nullable(&self) -> bool
false
if the array is guaranteed to not contain any logical nulls Read moreSource§impl<'a, T> ArrayAccessor for &'a GenericByteArray<T>where
T: ByteArrayType,
impl<'a, T> ArrayAccessor for &'a GenericByteArray<T>where
T: ByteArrayType,
Source§type Item = &'a <T as ByteArrayType>::Native
type Item = &'a <T as ByteArrayType>::Native
Source§fn value(
&self,
index: usize,
) -> <&'a GenericByteArray<T> as ArrayAccessor>::Item
fn value( &self, index: usize, ) -> <&'a GenericByteArray<T> as ArrayAccessor>::Item
i
Read moreSource§unsafe fn value_unchecked(
&self,
index: usize,
) -> <&'a GenericByteArray<T> as ArrayAccessor>::Item
unsafe fn value_unchecked( &self, index: usize, ) -> <&'a GenericByteArray<T> as ArrayAccessor>::Item
i
Read moreSource§impl<'a, O> BinaryArrayType<'a> for &'a GenericByteArray<GenericBinaryType<O>>where
O: OffsetSizeTrait,
impl<'a, O> BinaryArrayType<'a> for &'a GenericByteArray<GenericBinaryType<O>>where
O: OffsetSizeTrait,
Source§fn iter(&self) -> ArrayIter<&'a GenericByteArray<GenericBinaryType<O>>> ⓘ
fn iter(&self) -> ArrayIter<&'a GenericByteArray<GenericBinaryType<O>>> ⓘ
Source§impl<T> Clone for GenericByteArray<T>where
T: ByteArrayType,
impl<T> Clone for GenericByteArray<T>where
T: ByteArrayType,
Source§fn clone(&self) -> GenericByteArray<T>
fn clone(&self) -> GenericByteArray<T>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl<T> Debug for GenericByteArray<T>where
T: ByteArrayType,
impl<T> Debug for GenericByteArray<T>where
T: ByteArrayType,
Source§impl<FROM, V> From<&GenericByteArray<FROM>> for GenericByteViewArray<V>where
FROM: ByteArrayType,
<FROM as ByteArrayType>::Offset: OffsetSizeTrait + ToPrimitive,
V: ByteViewType<Native = <FROM as ByteArrayType>::Native>,
Efficiently convert a GenericByteArray
to a GenericByteViewArray
impl<FROM, V> From<&GenericByteArray<FROM>> for GenericByteViewArray<V>where
FROM: ByteArrayType,
<FROM as ByteArrayType>::Offset: OffsetSizeTrait + ToPrimitive,
V: ByteViewType<Native = <FROM as ByteArrayType>::Native>,
Efficiently convert a GenericByteArray
to a GenericByteViewArray
For example this method can convert a StringArray
to a
StringViewArray
.
If the offsets are all less than u32::MAX, the new GenericByteViewArray
is built without copying the underlying string data (views are created
directly into the existing buffer)
Source§fn from(byte_array: &GenericByteArray<FROM>) -> GenericByteViewArray<V>
fn from(byte_array: &GenericByteArray<FROM>) -> GenericByteViewArray<V>
Source§impl<T> From<ArrayData> for GenericByteArray<T>where
T: ByteArrayType,
impl<T> From<ArrayData> for GenericByteArray<T>where
T: ByteArrayType,
Source§fn from(data: ArrayData) -> GenericByteArray<T>
fn from(data: ArrayData) -> GenericByteArray<T>
Source§impl<OffsetSize> From<GenericByteArray<GenericBinaryType<OffsetSize>>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<GenericByteArray<GenericBinaryType<OffsetSize>>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn from(
v: GenericByteArray<GenericBinaryType<OffsetSize>>,
) -> GenericByteArray<GenericStringType<OffsetSize>>
fn from( v: GenericByteArray<GenericBinaryType<OffsetSize>>, ) -> GenericByteArray<GenericStringType<OffsetSize>>
Source§impl<OffsetSize> From<GenericByteArray<GenericStringType<OffsetSize>>> for GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<GenericByteArray<GenericStringType<OffsetSize>>> for GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn from(
value: GenericByteArray<GenericStringType<OffsetSize>>,
) -> GenericByteArray<GenericBinaryType<OffsetSize>>
fn from( value: GenericByteArray<GenericStringType<OffsetSize>>, ) -> GenericByteArray<GenericBinaryType<OffsetSize>>
Source§impl<T> From<GenericByteArray<T>> for ArrayDatawhere
T: ByteArrayType,
impl<T> From<GenericByteArray<T>> for ArrayDatawhere
T: ByteArrayType,
Source§fn from(array: GenericByteArray<T>) -> ArrayData
fn from(array: GenericByteArray<T>) -> ArrayData
Source§impl<OffsetSize> From<GenericListArray<OffsetSize>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<GenericListArray<OffsetSize>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn from(
v: GenericListArray<OffsetSize>,
) -> GenericByteArray<GenericStringType<OffsetSize>>
fn from( v: GenericListArray<OffsetSize>, ) -> GenericByteArray<GenericStringType<OffsetSize>>
Source§impl<T> From<GenericListArray<T>> for GenericByteArray<GenericBinaryType<T>>where
T: OffsetSizeTrait,
impl<T> From<GenericListArray<T>> for GenericByteArray<GenericBinaryType<T>>where
T: OffsetSizeTrait,
Source§fn from(v: GenericListArray<T>) -> GenericByteArray<GenericBinaryType<T>>
fn from(v: GenericListArray<T>) -> GenericByteArray<GenericBinaryType<T>>
Source§impl<OffsetSize> From<Vec<&[u8]>> for GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<Vec<&[u8]>> for GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn from(v: Vec<&[u8]>) -> GenericByteArray<GenericBinaryType<OffsetSize>>
fn from(v: Vec<&[u8]>) -> GenericByteArray<GenericBinaryType<OffsetSize>>
Source§impl<OffsetSize> From<Vec<&str>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<Vec<&str>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn from(v: Vec<&str>) -> GenericByteArray<GenericStringType<OffsetSize>>
fn from(v: Vec<&str>) -> GenericByteArray<GenericStringType<OffsetSize>>
Source§impl<OffsetSize> From<Vec<Option<&[u8]>>> for GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<Vec<Option<&[u8]>>> for GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn from(
v: Vec<Option<&[u8]>>,
) -> GenericByteArray<GenericBinaryType<OffsetSize>>
fn from( v: Vec<Option<&[u8]>>, ) -> GenericByteArray<GenericBinaryType<OffsetSize>>
Source§impl<OffsetSize> From<Vec<Option<&str>>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<Vec<Option<&str>>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn from(v: Vec<Option<&str>>) -> GenericByteArray<GenericStringType<OffsetSize>>
fn from(v: Vec<Option<&str>>) -> GenericByteArray<GenericStringType<OffsetSize>>
Source§impl<OffsetSize> From<Vec<Option<String>>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<Vec<Option<String>>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn from(
v: Vec<Option<String>>,
) -> GenericByteArray<GenericStringType<OffsetSize>>
fn from( v: Vec<Option<String>>, ) -> GenericByteArray<GenericStringType<OffsetSize>>
Source§impl<OffsetSize> From<Vec<String>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> From<Vec<String>> for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn from(v: Vec<String>) -> GenericByteArray<GenericStringType<OffsetSize>>
fn from(v: Vec<String>) -> GenericByteArray<GenericStringType<OffsetSize>>
Source§impl<'a, Ptr, T> FromIterator<&'a Option<Ptr>> for GenericByteArray<T>
impl<'a, Ptr, T> FromIterator<&'a Option<Ptr>> for GenericByteArray<T>
Source§fn from_iter<I>(iter: I) -> GenericByteArray<T>where
I: IntoIterator<Item = &'a Option<Ptr>>,
fn from_iter<I>(iter: I) -> GenericByteArray<T>where
I: IntoIterator<Item = &'a Option<Ptr>>,
Source§impl<Ptr, T> FromIterator<Option<Ptr>> for GenericByteArray<T>
impl<Ptr, T> FromIterator<Option<Ptr>> for GenericByteArray<T>
Source§fn from_iter<I>(iter: I) -> GenericByteArray<T>where
I: IntoIterator<Item = Option<Ptr>>,
fn from_iter<I>(iter: I) -> GenericByteArray<T>where
I: IntoIterator<Item = Option<Ptr>>,
Source§impl<'a, T> IntoIterator for &'a GenericByteArray<T>where
T: ByteArrayType,
impl<'a, T> IntoIterator for &'a GenericByteArray<T>where
T: ByteArrayType,
Source§type Item = Option<&'a <T as ByteArrayType>::Native>
type Item = Option<&'a <T as ByteArrayType>::Native>
Source§type IntoIter = ArrayIter<&'a GenericByteArray<T>>
type IntoIter = ArrayIter<&'a GenericByteArray<T>>
Source§fn into_iter(self) -> <&'a GenericByteArray<T> as IntoIterator>::IntoIter
fn into_iter(self) -> <&'a GenericByteArray<T> as IntoIterator>::IntoIter
Source§impl<OffsetSize> PartialEq for GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> PartialEq for GenericByteArray<GenericBinaryType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn eq(&self, other: &GenericByteArray<GenericBinaryType<OffsetSize>>) -> bool
fn eq(&self, other: &GenericByteArray<GenericBinaryType<OffsetSize>>) -> bool
self
and other
values to be equal, and is used by ==
.Source§impl<OffsetSize> PartialEq for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
impl<OffsetSize> PartialEq for GenericByteArray<GenericStringType<OffsetSize>>where
OffsetSize: OffsetSizeTrait,
Source§fn eq(&self, other: &GenericByteArray<GenericStringType<OffsetSize>>) -> bool
fn eq(&self, other: &GenericByteArray<GenericStringType<OffsetSize>>) -> bool
self
and other
values to be equal, and is used by ==
.Source§impl<'a, O> StringArrayType<'a> for &'a GenericByteArray<GenericStringType<O>>where
O: OffsetSizeTrait,
impl<'a, O> StringArrayType<'a> for &'a GenericByteArray<GenericStringType<O>>where
O: OffsetSizeTrait,
Source§impl<'a, T> StringArrayType<'a> for &'a GenericByteArray<GenericStringType<T>>where
T: OffsetSizeTrait,
impl<'a, T> StringArrayType<'a> for &'a GenericByteArray<GenericStringType<T>>where
T: OffsetSizeTrait,
Source§fn iter(&self) -> ArrayIter<&'a GenericByteArray<GenericStringType<T>>> ⓘ
fn iter(&self) -> ArrayIter<&'a GenericByteArray<GenericStringType<T>>> ⓘ
Auto Trait Implementations§
impl<T> Freeze for GenericByteArray<T>
impl<T> RefUnwindSafe for GenericByteArray<T>
impl<T> Send for GenericByteArray<T>
impl<T> Sync for GenericByteArray<T>
impl<T> Unpin for GenericByteArray<T>
impl<T> UnwindSafe for GenericByteArray<T>
Blanket Implementations§
Source§impl<T> AlignerFor<1> for T
impl<T> AlignerFor<1> for T
Source§impl<T> AlignerFor<1024> for T
impl<T> AlignerFor<1024> for T
Source§type Aligner = AlignTo1024<T>
type Aligner = AlignTo1024<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.Source§impl<T> AlignerFor<128> for T
impl<T> AlignerFor<128> for T
Source§type Aligner = AlignTo128<T>
type Aligner = AlignTo128<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.Source§impl<T> AlignerFor<16> for T
impl<T> AlignerFor<16> for T
Source§impl<T> AlignerFor<16384> for T
impl<T> AlignerFor<16384> for T
Source§type Aligner = AlignTo16384<T>
type Aligner = AlignTo16384<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.Source§impl<T> AlignerFor<2> for T
impl<T> AlignerFor<2> for T
Source§impl<T> AlignerFor<2048> for T
impl<T> AlignerFor<2048> for T
Source§type Aligner = AlignTo2048<T>
type Aligner = AlignTo2048<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.Source§impl<T> AlignerFor<256> for T
impl<T> AlignerFor<256> for T
Source§type Aligner = AlignTo256<T>
type Aligner = AlignTo256<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.Source§impl<T> AlignerFor<32> for T
impl<T> AlignerFor<32> for T
Source§impl<T> AlignerFor<32768> for T
impl<T> AlignerFor<32768> for T
Source§type Aligner = AlignTo32768<T>
type Aligner = AlignTo32768<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.Source§impl<T> AlignerFor<4> for T
impl<T> AlignerFor<4> for T
Source§impl<T> AlignerFor<4096> for T
impl<T> AlignerFor<4096> for T
Source§type Aligner = AlignTo4096<T>
type Aligner = AlignTo4096<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.Source§impl<T> AlignerFor<512> for T
impl<T> AlignerFor<512> for T
Source§type Aligner = AlignTo512<T>
type Aligner = AlignTo512<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.Source§impl<T> AlignerFor<64> for T
impl<T> AlignerFor<64> for T
Source§impl<T> AlignerFor<8> for T
impl<T> AlignerFor<8> for T
Source§impl<T> AlignerFor<8192> for T
impl<T> AlignerFor<8192> for T
Source§type Aligner = AlignTo8192<T>
type Aligner = AlignTo8192<T>
AlignTo*
type which aligns Self
to ALIGNMENT
.Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<'a, T> RCowCompatibleRef<'a> for Twhere
T: Clone + 'a,
impl<'a, T> RCowCompatibleRef<'a> for Twhere
T: Clone + 'a,
Source§fn as_c_ref(from: &'a T) -> <T as RCowCompatibleRef<'a>>::RefC
fn as_c_ref(from: &'a T) -> <T as RCowCompatibleRef<'a>>::RefC
Source§fn as_rust_ref(from: <T as RCowCompatibleRef<'a>>::RefC) -> &'a T
fn as_rust_ref(from: <T as RCowCompatibleRef<'a>>::RefC) -> &'a T
Source§impl<S> ROExtAcc for S
impl<S> ROExtAcc for S
Source§fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
fn f_get<F>(&self, offset: FieldOffset<S, F, Aligned>) -> &F
offset
. Read moreSource§fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
fn f_get_mut<F>(&mut self, offset: FieldOffset<S, F, Aligned>) -> &mut F
offset
. Read moreSource§fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
fn f_get_ptr<F, A>(&self, offset: FieldOffset<S, F, A>) -> *const F
offset
. Read moreSource§fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
fn f_get_mut_ptr<F, A>(&mut self, offset: FieldOffset<S, F, A>) -> *mut F
offset
. Read moreSource§impl<S> ROExtOps<Aligned> for S
impl<S> ROExtOps<Aligned> for S
Source§fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Aligned>, value: F) -> F
offset
) with value
,
returning the previous value of the field. Read moreSource§fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> Fwhere
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Aligned>) -> Fwhere
F: Copy,
Source§impl<S> ROExtOps<Unaligned> for S
impl<S> ROExtOps<Unaligned> for S
Source§fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
fn f_replace<F>(&mut self, offset: FieldOffset<S, F, Unaligned>, value: F) -> F
offset
) with value
,
returning the previous value of the field. Read moreSource§fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> Fwhere
F: Copy,
fn f_get_copy<F>(&self, offset: FieldOffset<S, F, Unaligned>) -> Fwhere
F: Copy,
Source§impl<T> SelfOps for Twhere
T: ?Sized,
impl<T> SelfOps for Twhere
T: ?Sized,
Source§fn piped<F, U>(self, f: F) -> U
fn piped<F, U>(self, f: F) -> U
Source§fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
fn piped_ref<'a, F, U>(&'a self, f: F) -> Uwhere
F: FnOnce(&'a Self) -> U,
piped
except that the function takes &Self
Useful for functions that take &Self
instead of Self
. Read moreSource§fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
fn piped_mut<'a, F, U>(&'a mut self, f: F) -> Uwhere
F: FnOnce(&'a mut Self) -> U,
piped
, except that the function takes &mut Self
.
Useful for functions that take &mut Self
instead of Self
.Source§fn mutated<F>(self, f: F) -> Self
fn mutated<F>(self, f: F) -> Self
Source§fn observe<F>(self, f: F) -> Self
fn observe<F>(self, f: F) -> Self
Source§fn as_ref_<T>(&self) -> &T
fn as_ref_<T>(&self) -> &T
AsRef
,
using the turbofish .as_ref_::<_>()
syntax. Read more