Skip to content

Commit 192a9d1

Browse files
refactor: optimize BitBuffer::from(Vec<bool>) using 64-bit packing (#5325)
Signed-off-by: Joe Isaacs <[email protected]>
1 parent f401792 commit 192a9d1

File tree

1 file changed

+1
-8
lines changed

1 file changed

+1
-8
lines changed

vortex-buffer/src/bit/buf_mut.rs

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -541,14 +541,7 @@ impl Not for BitBufferMut {
541541

542542
impl From<&[bool]> for BitBufferMut {
543543
fn from(value: &[bool]) -> Self {
544-
let mut buf = BitBufferMut::new_unset(value.len());
545-
for (i, &v) in value.iter().enumerate() {
546-
if v {
547-
// SAFETY: i is in bounds
548-
unsafe { buf.set_unchecked(i) }
549-
}
550-
}
551-
buf
544+
BitBuffer::collect_bool(value.len(), |i| value[i]).into_mut()
552545
}
553546
}
554547

0 commit comments

Comments
 (0)