pub(crate) unsafe fn take_no_null_bool_opt_iter_unchecked<I: IntoIterator<Item = Option<usize>>>(
    arr: &BooleanArray,
    indices: I,
) -> Arc<BooleanArray> {
    let iter = indices
        .into_iter()
        .map(|opt_idx| opt_idx.map(|idx| arr.value_unchecked(idx)));

    Arc::new(BooleanArray::from_trusted_len_iter_unchecked(iter))
}
/// Take kernel for single chunk without null values and an iterator as index that may produce None values.
/// # Safety
/// - no bounds checks
/// - iterator must be TrustedLen
Take kernel for single chunk without null values and an iterator as index that may produce None values.
Take kernel for single chunk without null values and an iterator as index that may produce None values .
pub(crate) unsafe fn take_no_null_bool_opt_iter_unchecked<I: IntoIterator<Item = Option<usize>>>(
    arr: &BooleanArray,
    indices: I,
) -> Arc<BooleanArray> {
    let iter = indices
        .into_iter()
        .map(|opt_idx| opt_idx.map(|idx| arr.value_unchecked(idx)));
    Arc::new(BooleanArray::from_trusted_len_iter_unchecked(iter))
}
pub ( crate ) unsafe fn take_no_null_bool_opt_iter_unchecked < I : IntoIterator < Item = Option < usize > > > ( arr : & BooleanArray , indices : I , ) -> Arc < BooleanArray > { let iter = indices . into_iter ( ) . map ( | opt_idx | opt_idx . map ( | idx | arr . value_unchecked ( idx ) ) ) ; Arc :: new ( BooleanArray :: from_trusted_len_iter_unchecked ( iter ) ) }
Take kernel for single chunk without null values and an iterator as index that may produce None values.
Take kernel for single chunk without null values and an iterator as index that may produce None values .
arr
&BooleanArray
indices
I
arr
&BooleanArray
indices
I
safety
no bounds checks
iterator must be TrustedLen
no bounds checks iterator must be TrustedLen