Rollup merge of #111912 - WaffleLapkin:is_some_and_in_the_compiler, r=petrochenkov
Use `Option::is_some_and` and `Result::is_ok_and` in the compiler `.is_some_and(..)`/`.is_ok_and(..)` replace `.map_or(false, ..)` and `.map(..).unwrap_or(false)`, making the code more readable. This PR is a sibling of https://github.com/rust-lang/rust/pull/111873#issuecomment-1561316515
This commit is contained in:
commit
d0b3ebee66
97 changed files with 201 additions and 246 deletions
|
@ -118,7 +118,7 @@ impl<'tcx> BorrowExplanation<'tcx> {
|
|||
let path_span = path_span.unwrap();
|
||||
// path_span is only present in the case of closure capture
|
||||
assert!(matches!(later_use_kind, LaterUseKind::ClosureCapture));
|
||||
if !borrow_span.map_or(false, |sp| sp.overlaps(var_or_use_span)) {
|
||||
if !borrow_span.is_some_and(|sp| sp.overlaps(var_or_use_span)) {
|
||||
let path_label = "used here by closure";
|
||||
let capture_kind_label = message;
|
||||
err.span_label(
|
||||
|
@ -224,12 +224,9 @@ impl<'tcx> BorrowExplanation<'tcx> {
|
|||
if info.tail_result_is_ignored {
|
||||
// #85581: If the first mutable borrow's scope contains
|
||||
// the second borrow, this suggestion isn't helpful.
|
||||
if !multiple_borrow_span
|
||||
.map(|(old, new)| {
|
||||
old.to(info.span.shrink_to_hi()).contains(new)
|
||||
})
|
||||
.unwrap_or(false)
|
||||
{
|
||||
if !multiple_borrow_span.is_some_and(|(old, new)| {
|
||||
old.to(info.span.shrink_to_hi()).contains(new)
|
||||
}) {
|
||||
err.span_suggestion_verbose(
|
||||
info.span.shrink_to_hi(),
|
||||
"consider adding semicolon after the expression so its \
|
||||
|
|
|
@ -1156,7 +1156,7 @@ impl<'cx, 'tcx> MirBorrowckCtxt<'cx, 'tcx> {
|
|||
ty::Adt(def, ..) => Some(def.did()),
|
||||
_ => None,
|
||||
});
|
||||
let is_option_or_result = parent_self_ty.map_or(false, |def_id| {
|
||||
let is_option_or_result = parent_self_ty.is_some_and(|def_id| {
|
||||
matches!(tcx.get_diagnostic_name(def_id), Some(sym::Option | sym::Result))
|
||||
});
|
||||
if is_option_or_result && maybe_reinitialized_locations_is_empty {
|
||||
|
|
|
@ -289,8 +289,7 @@ impl<'a, 'tcx> MirBorrowckCtxt<'a, 'tcx> {
|
|||
.body
|
||||
.local_decls
|
||||
.get(local)
|
||||
.map(|l| mut_borrow_of_mutable_ref(l, self.local_names[local]))
|
||||
.unwrap_or(false) =>
|
||||
.is_some_and(|l| mut_borrow_of_mutable_ref(l, self.local_names[local])) =>
|
||||
{
|
||||
let decl = &self.body.local_decls[local];
|
||||
err.span_label(span, format!("cannot {act}"));
|
||||
|
@ -443,7 +442,7 @@ impl<'a, 'tcx> MirBorrowckCtxt<'a, 'tcx> {
|
|||
.sess
|
||||
.source_map()
|
||||
.span_to_snippet(span)
|
||||
.map_or(false, |snippet| snippet.starts_with("&mut ")) =>
|
||||
.is_ok_and(|snippet| snippet.starts_with("&mut ")) =>
|
||||
{
|
||||
err.span_label(span, format!("cannot {act}"));
|
||||
err.span_suggestion(
|
||||
|
|
|
@ -125,8 +125,7 @@ impl OutlivesSuggestionBuilder {
|
|||
|(r, _)| {
|
||||
self.constraints_to_add
|
||||
.get(r)
|
||||
.map(|r_outlived| r_outlived.as_slice().contains(fr))
|
||||
.unwrap_or(false)
|
||||
.is_some_and(|r_outlived| r_outlived.as_slice().contains(fr))
|
||||
},
|
||||
);
|
||||
|
||||
|
|
|
@ -159,7 +159,7 @@ impl<N: Idx> LivenessValues<N> {
|
|||
/// Returns `true` if the region `r` contains the given element.
|
||||
pub(crate) fn contains(&self, row: N, location: Location) -> bool {
|
||||
let index = self.elements.point_from_location(location);
|
||||
self.points.row(row).map_or(false, |r| r.contains(index))
|
||||
self.points.row(row).is_some_and(|r| r.contains(index))
|
||||
}
|
||||
|
||||
/// Returns an iterator of all the elements contained by the region `r`
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue