mirror of
https://github.com/astral-sh/ruff.git
synced 2025-07-23 04:55:09 +00:00
Use range: _
in lieu of range: _range
(#6296)
## Summary `range: _range` is slightly inconvenient because you can't use it multiple times within a single match, unlike `_`.
This commit is contained in:
parent
9e2bbf4beb
commit
9f3567dea6
9 changed files with 249 additions and 455 deletions
|
@ -52,7 +52,7 @@ where
|
|||
if let Expr::Call(ast::ExprCall {
|
||||
func,
|
||||
arguments: Arguments { args, keywords, .. },
|
||||
range: _range,
|
||||
range: _,
|
||||
}) = expr
|
||||
{
|
||||
// Ex) `list()`
|
||||
|
@ -126,18 +126,15 @@ where
|
|||
}
|
||||
match expr {
|
||||
Expr::BoolOp(ast::ExprBoolOp {
|
||||
values,
|
||||
range: _range,
|
||||
..
|
||||
values, range: _, ..
|
||||
})
|
||||
| Expr::JoinedStr(ast::ExprJoinedStr {
|
||||
values,
|
||||
range: _range,
|
||||
}) => values.iter().any(|expr| any_over_expr(expr, func)),
|
||||
| Expr::JoinedStr(ast::ExprJoinedStr { values, range: _ }) => {
|
||||
values.iter().any(|expr| any_over_expr(expr, func))
|
||||
}
|
||||
Expr::NamedExpr(ast::ExprNamedExpr {
|
||||
target,
|
||||
value,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => any_over_expr(target, func) || any_over_expr(value, func),
|
||||
Expr::BinOp(ast::ExprBinOp { left, right, .. }) => {
|
||||
any_over_expr(left, func) || any_over_expr(right, func)
|
||||
|
@ -148,44 +145,35 @@ where
|
|||
test,
|
||||
body,
|
||||
orelse,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => any_over_expr(test, func) || any_over_expr(body, func) || any_over_expr(orelse, func),
|
||||
Expr::Dict(ast::ExprDict {
|
||||
keys,
|
||||
values,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => values
|
||||
.iter()
|
||||
.chain(keys.iter().flatten())
|
||||
.any(|expr| any_over_expr(expr, func)),
|
||||
Expr::Set(ast::ExprSet {
|
||||
elts,
|
||||
range: _range,
|
||||
})
|
||||
| Expr::List(ast::ExprList {
|
||||
elts,
|
||||
range: _range,
|
||||
..
|
||||
})
|
||||
| Expr::Tuple(ast::ExprTuple {
|
||||
elts,
|
||||
range: _range,
|
||||
..
|
||||
}) => elts.iter().any(|expr| any_over_expr(expr, func)),
|
||||
Expr::Set(ast::ExprSet { elts, range: _ })
|
||||
| Expr::List(ast::ExprList { elts, range: _, .. })
|
||||
| Expr::Tuple(ast::ExprTuple { elts, range: _, .. }) => {
|
||||
elts.iter().any(|expr| any_over_expr(expr, func))
|
||||
}
|
||||
Expr::ListComp(ast::ExprListComp {
|
||||
elt,
|
||||
generators,
|
||||
range: _range,
|
||||
range: _,
|
||||
})
|
||||
| Expr::SetComp(ast::ExprSetComp {
|
||||
elt,
|
||||
generators,
|
||||
range: _range,
|
||||
range: _,
|
||||
})
|
||||
| Expr::GeneratorExp(ast::ExprGeneratorExp {
|
||||
elt,
|
||||
generators,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
any_over_expr(elt, func)
|
||||
|| generators.iter().any(|generator| {
|
||||
|
@ -198,7 +186,7 @@ where
|
|||
key,
|
||||
value,
|
||||
generators,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
any_over_expr(key, func)
|
||||
|| any_over_expr(value, func)
|
||||
|
@ -208,28 +196,15 @@ where
|
|||
|| generator.ifs.iter().any(|expr| any_over_expr(expr, func))
|
||||
})
|
||||
}
|
||||
Expr::Await(ast::ExprAwait {
|
||||
value,
|
||||
range: _range,
|
||||
})
|
||||
| Expr::YieldFrom(ast::ExprYieldFrom {
|
||||
value,
|
||||
range: _range,
|
||||
})
|
||||
Expr::Await(ast::ExprAwait { value, range: _ })
|
||||
| Expr::YieldFrom(ast::ExprYieldFrom { value, range: _ })
|
||||
| Expr::Attribute(ast::ExprAttribute {
|
||||
value,
|
||||
range: _range,
|
||||
..
|
||||
value, range: _, ..
|
||||
})
|
||||
| Expr::Starred(ast::ExprStarred {
|
||||
value,
|
||||
range: _range,
|
||||
..
|
||||
value, range: _, ..
|
||||
}) => any_over_expr(value, func),
|
||||
Expr::Yield(ast::ExprYield {
|
||||
value,
|
||||
range: _range,
|
||||
}) => value
|
||||
Expr::Yield(ast::ExprYield { value, range: _ }) => value
|
||||
.as_ref()
|
||||
.is_some_and(|value| any_over_expr(value, func)),
|
||||
Expr::Compare(ast::ExprCompare {
|
||||
|
@ -238,7 +213,7 @@ where
|
|||
Expr::Call(ast::ExprCall {
|
||||
func: call_func,
|
||||
arguments: Arguments { args, keywords, .. },
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
any_over_expr(call_func, func)
|
||||
|| args.iter().any(|expr| any_over_expr(expr, func))
|
||||
|
@ -261,7 +236,7 @@ where
|
|||
lower,
|
||||
upper,
|
||||
step,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
lower
|
||||
.as_ref()
|
||||
|
@ -296,15 +271,11 @@ where
|
|||
F: Fn(&Expr) -> bool,
|
||||
{
|
||||
match pattern {
|
||||
Pattern::MatchValue(ast::PatternMatchValue {
|
||||
value,
|
||||
range: _range,
|
||||
}) => any_over_expr(value, func),
|
||||
Pattern::MatchValue(ast::PatternMatchValue { value, range: _ }) => {
|
||||
any_over_expr(value, func)
|
||||
}
|
||||
Pattern::MatchSingleton(_) => false,
|
||||
Pattern::MatchSequence(ast::PatternMatchSequence {
|
||||
patterns,
|
||||
range: _range,
|
||||
}) => patterns
|
||||
Pattern::MatchSequence(ast::PatternMatchSequence { patterns, range: _ }) => patterns
|
||||
.iter()
|
||||
.any(|pattern| any_over_pattern(pattern, func)),
|
||||
Pattern::MatchMapping(ast::PatternMatchMapping { keys, patterns, .. }) => {
|
||||
|
@ -331,10 +302,7 @@ where
|
|||
Pattern::MatchAs(ast::PatternMatchAs { pattern, .. }) => pattern
|
||||
.as_ref()
|
||||
.is_some_and(|pattern| any_over_pattern(pattern, func)),
|
||||
Pattern::MatchOr(ast::PatternMatchOr {
|
||||
patterns,
|
||||
range: _range,
|
||||
}) => patterns
|
||||
Pattern::MatchOr(ast::PatternMatchOr { patterns, range: _ }) => patterns
|
||||
.iter()
|
||||
.any(|pattern| any_over_pattern(pattern, func)),
|
||||
}
|
||||
|
@ -426,16 +394,12 @@ where
|
|||
.iter()
|
||||
.any(|decorator| any_over_expr(&decorator.expression, func))
|
||||
}
|
||||
Stmt::Return(ast::StmtReturn {
|
||||
value,
|
||||
range: _range,
|
||||
}) => value
|
||||
Stmt::Return(ast::StmtReturn { value, range: _ }) => value
|
||||
.as_ref()
|
||||
.is_some_and(|value| any_over_expr(value, func)),
|
||||
Stmt::Delete(ast::StmtDelete {
|
||||
targets,
|
||||
range: _range,
|
||||
}) => targets.iter().any(|expr| any_over_expr(expr, func)),
|
||||
Stmt::Delete(ast::StmtDelete { targets, range: _ }) => {
|
||||
targets.iter().any(|expr| any_over_expr(expr, func))
|
||||
}
|
||||
Stmt::TypeAlias(ast::StmtTypeAlias {
|
||||
name,
|
||||
type_params,
|
||||
|
@ -491,13 +455,13 @@ where
|
|||
test,
|
||||
body,
|
||||
orelse,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => any_over_expr(test, func) || any_over_body(body, func) || any_over_body(orelse, func),
|
||||
Stmt::If(ast::StmtIf {
|
||||
test,
|
||||
body,
|
||||
elif_else_clauses,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
any_over_expr(test, func)
|
||||
|| any_over_body(body, func)
|
||||
|
@ -522,7 +486,7 @@ where
|
|||
Stmt::Raise(ast::StmtRaise {
|
||||
exc,
|
||||
cause,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
exc.as_ref().is_some_and(|value| any_over_expr(value, func))
|
||||
|| cause
|
||||
|
@ -534,14 +498,14 @@ where
|
|||
handlers,
|
||||
orelse,
|
||||
finalbody,
|
||||
range: _range,
|
||||
range: _,
|
||||
})
|
||||
| Stmt::TryStar(ast::StmtTryStar {
|
||||
body,
|
||||
handlers,
|
||||
orelse,
|
||||
finalbody,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
any_over_body(body, func)
|
||||
|| handlers.iter().any(|handler| {
|
||||
|
@ -559,7 +523,7 @@ where
|
|||
Stmt::Assert(ast::StmtAssert {
|
||||
test,
|
||||
msg,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
any_over_expr(test, func)
|
||||
|| msg.as_ref().is_some_and(|value| any_over_expr(value, func))
|
||||
|
@ -567,7 +531,7 @@ where
|
|||
Stmt::Match(ast::StmtMatch {
|
||||
subject,
|
||||
cases,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
any_over_expr(subject, func)
|
||||
|| cases.iter().any(|case| {
|
||||
|
@ -575,7 +539,7 @@ where
|
|||
pattern,
|
||||
guard,
|
||||
body,
|
||||
range: _range,
|
||||
range: _,
|
||||
} = case;
|
||||
any_over_pattern(pattern, func)
|
||||
|| guard.as_ref().is_some_and(|expr| any_over_expr(expr, func))
|
||||
|
@ -586,10 +550,7 @@ where
|
|||
Stmt::ImportFrom(_) => false,
|
||||
Stmt::Global(_) => false,
|
||||
Stmt::Nonlocal(_) => false,
|
||||
Stmt::Expr(ast::StmtExpr {
|
||||
value,
|
||||
range: _range,
|
||||
}) => any_over_expr(value, func),
|
||||
Stmt::Expr(ast::StmtExpr { value, range: _ }) => any_over_expr(value, func),
|
||||
Stmt::Pass(_) | Stmt::Break(_) | Stmt::Continue(_) => false,
|
||||
Stmt::LineMagic(_) => false,
|
||||
}
|
||||
|
@ -935,7 +896,7 @@ where
|
|||
Stmt::Raise(ast::StmtRaise {
|
||||
exc,
|
||||
cause,
|
||||
range: _range,
|
||||
range: _,
|
||||
}) => {
|
||||
self.raises
|
||||
.push((stmt.range(), exc.as_deref(), cause.as_deref()));
|
||||
|
@ -974,11 +935,7 @@ where
|
|||
|
||||
/// Return `true` if a `Stmt` is a docstring.
|
||||
pub fn is_docstring_stmt(stmt: &Stmt) -> bool {
|
||||
if let Stmt::Expr(ast::StmtExpr {
|
||||
value,
|
||||
range: _range,
|
||||
}) = stmt
|
||||
{
|
||||
if let Stmt::Expr(ast::StmtExpr { value, range: _ }) = stmt {
|
||||
matches!(
|
||||
value.as_ref(),
|
||||
Expr::Constant(ast::ExprConstant {
|
||||
|
@ -997,11 +954,7 @@ pub fn on_conditional_branch<'a>(parents: &mut impl Iterator<Item = &'a Stmt>) -
|
|||
if matches!(parent, Stmt::If(_) | Stmt::While(_) | Stmt::Match(_)) {
|
||||
return true;
|
||||
}
|
||||
if let Stmt::Expr(ast::StmtExpr {
|
||||
value,
|
||||
range: _range,
|
||||
}) = parent
|
||||
{
|
||||
if let Stmt::Expr(ast::StmtExpr { value, range: _ }) = parent {
|
||||
if value.is_if_exp_expr() {
|
||||
return true;
|
||||
}
|
||||
|
@ -1126,10 +1079,7 @@ impl Truthiness {
|
|||
Constant::Complex { real, imag } => Some(*real != 0.0 || *imag != 0.0),
|
||||
Constant::Ellipsis => Some(true),
|
||||
},
|
||||
Expr::JoinedStr(ast::ExprJoinedStr {
|
||||
values,
|
||||
range: _range,
|
||||
}) => {
|
||||
Expr::JoinedStr(ast::ExprJoinedStr { values, range: _ }) => {
|
||||
if values.is_empty() {
|
||||
Some(false)
|
||||
} else if values.iter().any(|value| {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue