fn take_no_validity<T: NativeType, I: Index>(
    values: &[T],
    indices: &[I],
) -> (Buffer<T>, Option<Bitmap>) {
    let values = indices.iter().map(|index| values[index.to_usize()]);
    let buffer = MutableBuffer::from_trusted_len_iter(values);

    (buffer.into(), None)
}
// take implementation when neither values nor indices contain nulls
take implementation when neither values nor indices contain nulls
take implementation when neither values nor indices contain nulls
fn take_no_validity<T: NativeType, I: Index>(
    values: &[T],
    indices: &[I],
) -> (Buffer<T>, Option<Bitmap>) {
    let values = indices.iter().map(|index| values[index.to_usize()]);
    let buffer = MutableBuffer::from_trusted_len_iter(values);
    (buffer.into(), None)
}
fn take_no_validity < T : NativeType , I : Index > ( values : & [ T ] , indices : & [ I ] , ) -> ( Buffer < T > , Option < Bitmap > ) { let values = indices . iter ( ) . map ( | index | values [ index . to_usize ( ) ] ) ; let buffer = MutableBuffer :: from_trusted_len_iter ( values ) ; ( buffer . into ( ) , None ) }
take implementation when neither values nor indices contain nulls
take implementation when neither values nor indices contain nulls
values
&[T]
indices
&[I]
values
&[T]
indices
&[I]