Add functions to GrowableBitSet#151148
Conversation
|
r? @SparrowLii rustbot has assigned @SparrowLii. Use |
compiler/rustc_index/src/bit_set.rs
Outdated
|
|
||
| #[inline] | ||
| pub fn contains_any(&self, elems: Range<T>) -> bool { | ||
| if elems.start.index() < self.bit_set.domain_size { |
There was a problem hiding this comment.
This might be a bit nitpicky, but I think it might be neater to evaluate the if condition as elems.start.index() >= self.bit_set.domain_size (returning false), so that you can just return self.bit_set.contains_any(elems.start..T::new(elems.end.index().min(self.bit_set.domain_size))
There was a problem hiding this comment.
It could also just be
elems.start.index() < self.bit_set.domain_size
&& self.bit_set.contains_any(elems.start..T::new(elems.end.index().min(self.bit_set.domain_size)))I find them all more or less equally readable.
There was a problem hiding this comment.
True (and I think I prefer the suggestion you just made here). I just thought it felt stylistically out of place with how the other functions are implemented in GrowableBitSet<T>.
|
r? compiler |
|
@bors r+ rollup |
Add functions to `GrowableBitSet` Only really need `insert_range` for clippy, but may as well add the others. Using `Range` instead of `RangeBounds` since an end bound is needed for this to make sense and there aren't any traits to enforce that.
…uwer Rollup of 22 pull requests Successful merges: - #153049 (Add `-Zsanitize=kernel-hwaddress`) - #153702 (Add macro matcher for `guard` fragment specifier) - #154200 (debuginfo: emit DW_TAG_call_site entries) - #154263 (interpret: when passing an argument fails, point at that argument) - #154269 (miri recursive validation: only check one layer deep) - #154313 (Init `self_decl` with a correct visibility) - #154344 (Update LLVM to 22.1.2) - #154348 (re-enable enzyme/autodiff builds on dist-aarch64-apple) - #154351 (Overhaul `Erasable` impls) - #154363 (delegation: fix zero-args nested delegation ICE) - #154364 (delegation: don't propagate synthetic params, remove lifetime hacks) - #151148 (Add functions to `GrowableBitSet`) - #154090 (Move tests in the statics category) - #154112 (some `tests/ui/macros` cleanup) - #154131 (begin `tests/ui/structs-enums` cleanup) - #154216 (unstably mark `NonNull::with_exposed_provenance` as const) - #154230 (Moved and rename issue-50411 to tests/ui/mir/inliner-double-elaborate) - #154233 (Move ui/issues tests to relevant subdirectories) - #154288 (Fix typo in doc comment for `char::to_titlecase`) - #154355 (delegation: add const type ICE test) - #154358 (install-template.sh: Optimize by using Bourne shell builtins.) - #154360 (fromrangeiter-overflow-checks: accept optional `signext` for argument)
…uwer Rollup of 22 pull requests Successful merges: - rust-lang/rust#153049 (Add `-Zsanitize=kernel-hwaddress`) - rust-lang/rust#153702 (Add macro matcher for `guard` fragment specifier) - rust-lang/rust#154200 (debuginfo: emit DW_TAG_call_site entries) - rust-lang/rust#154263 (interpret: when passing an argument fails, point at that argument) - rust-lang/rust#154269 (miri recursive validation: only check one layer deep) - rust-lang/rust#154313 (Init `self_decl` with a correct visibility) - rust-lang/rust#154344 (Update LLVM to 22.1.2) - rust-lang/rust#154348 (re-enable enzyme/autodiff builds on dist-aarch64-apple) - rust-lang/rust#154351 (Overhaul `Erasable` impls) - rust-lang/rust#154363 (delegation: fix zero-args nested delegation ICE) - rust-lang/rust#154364 (delegation: don't propagate synthetic params, remove lifetime hacks) - rust-lang/rust#151148 (Add functions to `GrowableBitSet`) - rust-lang/rust#154090 (Move tests in the statics category) - rust-lang/rust#154112 (some `tests/ui/macros` cleanup) - rust-lang/rust#154131 (begin `tests/ui/structs-enums` cleanup) - rust-lang/rust#154216 (unstably mark `NonNull::with_exposed_provenance` as const) - rust-lang/rust#154230 (Moved and rename issue-50411 to tests/ui/mir/inliner-double-elaborate) - rust-lang/rust#154233 (Move ui/issues tests to relevant subdirectories) - rust-lang/rust#154288 (Fix typo in doc comment for `char::to_titlecase`) - rust-lang/rust#154355 (delegation: add const type ICE test) - rust-lang/rust#154358 (install-template.sh: Optimize by using Bourne shell builtins.) - rust-lang/rust#154360 (fromrangeiter-overflow-checks: accept optional `signext` for argument)
Only really need
insert_rangefor clippy, but may as well add the others. UsingRangeinstead ofRangeBoundssince an end bound is needed for this to make sense and there aren't any traits to enforce that.