PR #2620 #63
codeql
on: dynamic
Matrix: analyze
Annotations
62 warnings
this `map_or` can be simplified:
src/store/reader.rs#L323
warning: this `map_or` can be simplified
--> src/store/reader.rs:323:29
|
323 | let alive = alive_bitset.map_or(true, |bitset| bitset.is_alive(doc_id));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_map_or
= note: `#[warn(clippy::unnecessary_map_or)]` on by default
help: use is_none_or instead
|
323 - let alive = alive_bitset.map_or(true, |bitset| bitset.is_alive(doc_id));
323 + let alive = alive_bitset.is_none_or(|bitset| bitset.is_alive(doc_id));
|
|
this `repeat().take()` can be written more concisely:
src/query/term_query/term_scorer.rs#L307
warning: this `repeat().take()` can be written more concisely
--> src/query/term_query/term_scorer.rs:307:36
|
307 | let words: Vec<&str> = std::iter::repeat("bbbb").take(term_freq).collect();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("bbbb", term_freq)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/query/term_query/term_scorer.rs#L241
warning: this `repeat().take()` can be written more concisely
--> src/query/term_query/term_scorer.rs:241:36
|
241 | let fieldnorms: Vec<u32> = std::iter::repeat(20u32).take(300).collect();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(20u32, 300)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/query/term_query/term_scorer.rs#L175
warning: this `repeat().take()` can be written more concisely
--> src/query/term_query/term_scorer.rs:175:36
|
175 | let fieldnorms: Vec<u32> = std::iter::repeat(10u32).take(3_000).collect();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(10u32, 3_000)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/query/boolean_query/block_wand.rs#L439
warning: this `repeat().take()` can be written more concisely
--> src/query/boolean_query/block_wand.rs:439:35
|
439 | .flat_map(|fieldnorm| iter::repeat(fieldnorm).take(REPEAT))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(fieldnorm, REPEAT)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/positions/mod.rs#L209
warning: this `repeat().take()` can be written more concisely
--> src/positions/mod.rs:209:41
|
209 | let positions_delta: Vec<u32> = iter::repeat(CONST_VAL).take(2_000_000).collect();
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(CONST_VAL, 2_000_000)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/collector/facet_collector.rs#L790
warning: this `repeat().take()` can be written more concisely
--> src/collector/facet_collector.rs:790:17
|
790 | iter::repeat(doc).take(count)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(doc, count)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/collector/facet_collector.rs#L742
warning: this `repeat().take()` can be written more concisely
--> src/collector/facet_collector.rs:742:21
|
742 | iter::repeat(doc).take(count)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(doc, count)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
using `map` over `inspect`:
src/tokenizer/ngram_tokenizer.rs#L290
warning: using `map` over `inspect`
--> src/tokenizer/ngram_tokenizer.rs:290:22
|
290 | self.next_el.map(|offset| {
| ^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_inspect
= note: `#[warn(clippy::manual_inspect)]` on by default
help: try
|
290 ~ self.next_el.inspect(|&offset| {
291 | if self.s.is_empty() {
...
296 | self.next_el = Some(offset + first_codepoint_width);
297 ~ }
|
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1636
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1636:20
|
1636 | vec.extend(iter::repeat("fl").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("fl", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1635
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1635:20
|
1635 | vec.extend(iter::repeat("fi").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("fi", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1634
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1634:20
|
1634 | vec.extend(iter::repeat("y").take(2));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("y", 2)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1633
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1633:20
|
1633 | vec.extend(iter::repeat("u").take(4));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("u", 4)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1632
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1632:20
|
1632 | vec.extend(iter::repeat("th").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("th", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1631
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1631:20
|
1631 | vec.extend(iter::repeat("ss").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("ss", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1630
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1630:20
|
1630 | vec.extend(iter::repeat("oe").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("oe", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1629
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1629:20
|
1629 | vec.extend(iter::repeat("o").take(6));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("o", 6)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1628
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1628:20
|
1628 | vec.extend(iter::repeat("n").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("n", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1627
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1627:20
|
1627 | vec.extend(iter::repeat("d").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("d", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1626
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1626:20
|
1626 | vec.extend(iter::repeat("ij").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("ij", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1625
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1625:20
|
1625 | vec.extend(iter::repeat("i").take(4));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("i", 4)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1624
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1624:20
|
1624 | vec.extend(iter::repeat("e").take(4));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("e", 4)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1623
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1623:20
|
1623 | vec.extend(iter::repeat("c").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("c", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1622
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1622:20
|
1622 | vec.extend(iter::repeat("ae").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("ae", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1621
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1621:20
|
1621 | vec.extend(iter::repeat("a").take(6));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("a", 6)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1620
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1620:20
|
1620 | vec.extend(iter::repeat("Y").take(2));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("Y", 2)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1619
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1619:20
|
1619 | vec.extend(iter::repeat("U").take(4));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("U", 4)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1618
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1618:20
|
1618 | vec.extend(iter::repeat("TH").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("TH", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1617
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1617:20
|
1617 | vec.extend(iter::repeat("OE").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("OE", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1616
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1616:20
|
1616 | vec.extend(iter::repeat("O").take(6));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("O", 6)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1615
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1615:20
|
1615 | vec.extend(iter::repeat("N").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("N", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1614
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1614:20
|
1614 | vec.extend(iter::repeat("D").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("D", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1613
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1613:20
|
1613 | vec.extend(iter::repeat("IJ").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("IJ", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1612
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1612:20
|
1612 | vec.extend(iter::repeat("I").take(4));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("I", 4)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1611
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1611:20
|
1611 | vec.extend(iter::repeat("E").take(4));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("E", 4)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1610
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1610:20
|
1610 | vec.extend(iter::repeat("C").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("C", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1609
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1609:20
|
1609 | vec.extend(iter::repeat("AE").take(1));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("AE", 1)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
src/tokenizer/ascii_folding_filter.rs#L1608
warning: this `repeat().take()` can be written more concisely
--> src/tokenizer/ascii_folding_filter.rs:1608:20
|
1608 | vec.extend(iter::repeat("A").take(6));
| ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n("A", 6)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
= note: `#[warn(clippy::manual_repeat_n)]` on by default
|
manually reimplementing `div_ceil`:
columnar/src/columnar/writer/column_operation.rs#L247
warning: manually reimplementing `div_ceil`
--> columnar/src/columnar/writer/column_operation.rs:247:5
|
247 | (msb + 7) / 8
| ^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `msb.div_ceil(8)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil
|
manually reimplementing `div_ceil`:
columnar/src/column_values/u64_based/linear.rs#L120
warning: manually reimplementing `div_ceil`
--> columnar/src/column_values/u64_based/linear.rs:120:19
|
120 | + (num_bits as u64 * stats.num_rows as u64 + 7) / 8,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `(num_bits as u64 * stats.num_rows as u64).div_ceil(8)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil
|
manually reimplementing `div_ceil`:
columnar/src/column_values/u64_based/bitpacked.rs#L108
warning: manually reimplementing `div_ceil`
--> columnar/src/column_values/u64_based/bitpacked.rs:108:34
|
108 | Some(stats.num_bytes() + (stats.num_rows as u64 * (num_bits_per_value as u64) + 7) / 8)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `(stats.num_rows as u64 * (num_bits_per_value as u64)).div_ceil(8)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil
= note: `#[warn(clippy::manual_div_ceil)]` on by default
|
this `repeat().take()` can be written more concisely:
columnar/src/column_index/merge/stacked.rs#L110
warning: this `repeat().take()` can be written more concisely
--> columnar/src/column_index/merge/stacked.rs:110:22
|
110 | Box::new(std::iter::repeat(1u32).take(optional_index.num_non_nulls() as usize))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(1u32, optional_index.num_non_nulls() as usize)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
|
this `repeat().take()` can be written more concisely:
columnar/src/column_index/merge/stacked.rs#L108
warning: this `repeat().take()` can be written more concisely
--> columnar/src/column_index/merge/stacked.rs:108:39
|
108 | ColumnIndex::Full => Box::new(std::iter::repeat(1u32).take(num_docs as usize)),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `repeat_n()` instead: `std::iter::repeat_n(1u32, num_docs as usize)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_repeat_n
= note: `#[warn(clippy::manual_repeat_n)]` on by default
|
manually reimplementing `div_ceil`:
sstable/src/sstable_index_v3.rs#L441
warning: manually reimplementing `div_ceil`
--> sstable/src/sstable_index_v3.rs:441:12
|
441 | if (range_end_addr + self.range_start_nbits as usize + 7) / 8 > data.len() {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `(range_end_addr + self.range_start_nbits as usize).div_ceil(8)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil
= note: `#[warn(clippy::manual_div_ceil)]` on by default
|
manually reimplementing `div_ceil`:
bitpacker/src/bitpacker.rs#L141
warning: manually reimplementing `div_ceil`
--> bitpacker/src/bitpacker.rs:141:29
|
141 | let end_byte_read = (end_bit_read + 7) / 8;
| ^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.div_ceil()`: `end_bit_read.div_ceil(8)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_div_ceil
|
call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L95
warning[E0133]: call to unsafe function `std::intrinsics::transmute` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:95:49
|
95 | 255 - std::arch::x86_64::_mm256_movemask_ps(std::mem::transmute::<DataType, __m256>(inside))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::arch::x86_64::_mm256_movemask_ps` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L95
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_movemask_ps` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:95:11
|
95 | 255 - std::arch::x86_64::_mm256_movemask_ps(std::mem::transmute::<DataType, __m256>(inside))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::arch::x86_64::_mm256_or_si256` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L94
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_or_si256` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:94:18
|
94 | let inside = op_or(too_low, too_high);
| ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::arch::x86_64::_mm256_cmpgt_epi32` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L93
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_cmpgt_epi32` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:93:20
|
93 | let too_high = op_greater(val, *range.end());
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::arch::x86_64::_mm256_cmpgt_epi32` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L92
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_cmpgt_epi32` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:92:19
|
92 | let too_low = op_greater(*range.start(), val);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
note: an unsafe function restricts its caller, but its body is safe by default
--> bitpacker/src/filter_vec/avx2.rs:91:1
|
91 | unsafe fn compute_filter_bitset(val: __m256i, range: std::ops::RangeInclusive<__m256i>) -> u8 {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
call to unsafe function `std::arch::x86_64::_mm256_permutevar8x32_epi32` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L86
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_permutevar8x32_epi32` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:86:5
|
86 | _mm256_permutevar8x32_epi32(data, vperm_mask)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
note: an unsafe function restricts its caller, but its body is safe by default
--> bitpacker/src/filter_vec/avx2.rs:84:1
|
84 | unsafe fn compact(data: DataType, mask: u8) -> DataType {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::offset_from` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L79
warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::offset_from` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:79:5
|
79 | output_tail.offset_from(output) as usize
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::ptr::const_ptr::<impl *const T>::offset` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L77
warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::offset` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:77:17
|
77 | input = input.offset(1);
| ^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::arch::x86_64::_mm256_add_epi32` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L76
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_add_epi32` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:76:15
|
76 | ids = op_add(ids, SHIFT);
| ^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::offset` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L75
warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::offset` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:75:23
|
75 | output_tail = output_tail.offset(added_len as isize);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::arch::x86_64::_mm256_storeu_si256` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L74
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_si256` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:74:9
|
74 | store_unaligned(output_tail as *mut __m256i, filtered_doc_ids);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `filter_vec::avx2::compact` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L73
warning[E0133]: call to unsafe function `filter_vec::avx2::compact` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:73:32
|
73 | let filtered_doc_ids = compact(ids, keeper_bitset);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `filter_vec::avx2::compute_filter_bitset` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L71
warning[E0133]: call to unsafe function `filter_vec::avx2::compute_filter_bitset` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:71:29
|
71 | let keeper_bitset = compute_filter_bitset(word, range_simd.clone());
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `filter_vec::avx2::u32_to_i32_avx2` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L70
warning[E0133]: call to unsafe function `filter_vec::avx2::u32_to_i32_avx2` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:70:20
|
70 | let word = u32_to_i32_avx2(word);
| ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::arch::x86_64::_mm256_lddqu_si256` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L69
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_lddqu_si256` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:69:20
|
69 | let word = load_unaligned(input);
| ^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::arch::x86_64::_mm256_set1_epi32` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L56
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_set1_epi32` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:56:45
|
56 | let range_simd = set1(*range.start())..=set1(*range.end());
| ^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
|
call to unsafe function `std::arch::x86_64::_mm256_set1_epi32` is unsafe and requires unsafe block:
bitpacker/src/filter_vec/avx2.rs#L56
warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_set1_epi32` is unsafe and requires unsafe block
--> bitpacker/src/filter_vec/avx2.rs:56:22
|
56 | let range_simd = set1(*range.start())..=set1(*range.end());
| ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
|
= note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
= note: consult the function's documentation for information on how to avoid undefined behavior
note: an unsafe function restricts its caller, but its body is safe by default
--> bitpacker/src/filter_vec/avx2.rs:48:1
|
48 | / unsafe fn filter_vec_avx2_aux(
49 | | mut input: *const __m256i,
50 | | range: RangeInclusive<i32>,
51 | | output: *mut u32,
52 | | offset: u32,
53 | | num_words: usize,
54 | | ) -> usize {
| |__________^
|