MCPcopy Create free account
hub / github.com/apache/arrow-rs / mutable_buffer_iter_bitset

Function mutable_buffer_iter_bitset

arrow/benches/buffer_create.rs:49–66  ·  view source on GitHub ↗
(data: &[Vec<bool>])

Source from the content-addressed store, hash-verified

47}
48
49fn mutable_buffer_iter_bitset(data: &[Vec<bool>]) -> Vec<Buffer> {
50 hint::black_box({
51 data.iter()
52 .map(|datum| {
53 let mut result =
54 MutableBuffer::new(data.len().div_ceil(8)).with_bitset(datum.len(), false);
55 for (i, value) in datum.iter().enumerate() {
56 if *value {
57 unsafe {
58 arrow::util::bit_util::set_bit_raw(result.as_mut_ptr(), i);
59 }
60 }
61 }
62 result.into()
63 })
64 .collect::<Vec<_>>()
65 })
66}
67
68fn mutable_iter_extend_from_slice(data: &[Vec<u32>], capacity: usize) -> Buffer {
69 hint::black_box({

Callers 1

benchmarkFunction · 0.85

Calls 5

set_bit_rawFunction · 0.85
with_bitsetMethod · 0.80
as_mut_ptrMethod · 0.80
iterMethod · 0.45
lenMethod · 0.45

Tested by

no test coverage detected