Skip to content

Commit 2710d87

Browse files
committed
fix: benchmark regression
1 parent c2705b1 commit 2710d87

18 files changed

+105
-5
lines changed

crates/ruff_linter/src/rules/flake8_use_pathlib/helpers.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,17 +26,14 @@ pub(crate) fn is_pathlib_path_call(checker: &Checker, expr: &Expr) -> bool {
2626
pub(crate) fn check_os_pathlib_single_arg_calls(
2727
checker: &Checker,
2828
call: &ExprCall,
29+
segments: Option<&[&str]>,
2930
full_import: &[&str],
3031
attr: &str,
3132
fn_argument: &str,
3233
fix_enabled: bool,
3334
violation: impl Violation,
3435
) {
35-
if checker
36-
.semantic()
37-
.resolve_qualified_name(&call.func)
38-
.is_none_or(|qualified_name| qualified_name.segments() != full_import)
39-
{
36+
if segments.is_none_or(|name| name != full_import) {
4037
return;
4138
}
4239

crates/ruff_linter/src/rules/flake8_use_pathlib/rules/os_path_abspath.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,15 @@ impl Violation for OsPathAbspath {
6060

6161
/// PTH100
6262
pub(crate) fn os_path_abspath(checker: &Checker, call: &ExprCall) {
63+
let segments = checker
64+
.semantic()
65+
.resolve_qualified_name(&call.func)
66+
.map(|s| s.segments().to_vec());
67+
6368
check_os_pathlib_single_arg_calls(
6469
checker,
6570
call,
71+
segments.as_deref(),
6672
&["os", "path", "abspath"],
6773
"resolve()",
6874
"path",

crates/ruff_linter/src/rules/flake8_use_pathlib/rules/os_path_basename.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,15 @@ impl Violation for OsPathBasename {
5959

6060
/// PTH119
6161
pub(crate) fn os_path_basename(checker: &Checker, call: &ExprCall) {
62+
let segments = checker
63+
.semantic()
64+
.resolve_qualified_name(&call.func)
65+
.map(|s| s.segments().to_vec());
66+
6267
check_os_pathlib_single_arg_calls(
6368
checker,
6469
call,
70+
segments.as_deref(),
6571
&["os", "path", "basename"],
6672
"name",
6773
"path",

crates/ruff_linter/src/rules/flake8_use_pathlib/rules/os_path_dirname.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,15 @@ impl Violation for OsPathDirname {
5959

6060
/// PTH120
6161
pub(crate) fn os_path_dirname(checker: &Checker, call: &ExprCall) {
62+
let segments = checker
63+
.semantic()
64+
.resolve_qualified_name(&call.func)
65+
.map(|s| s.segments().to_vec());
66+
6267
check_os_pathlib_single_arg_calls(
6368
checker,
6469
call,
70+
segments.as_deref(),
6571
&["os", "path", "dirname"],
6672
"parent",
6773
"path",

crates/ruff_linter/src/rules/flake8_use_pathlib/rules/os_path_exists.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,15 @@ impl Violation for OsPathExists {
5959

6060
/// PTH110
6161
pub(crate) fn os_path_exists(checker: &Checker, call: &ExprCall) {
62+
let segments = checker
63+
.semantic()
64+
.resolve_qualified_name(&call.func)
65+
.map(|s| s.segments().to_vec());
66+
6267
check_os_pathlib_single_arg_calls(
6368
checker,
6469
call,
70+
segments.as_deref(),
6571
&["os", "path", "exists"],
6672
"exists()",
6773
"path",

crates/ruff_linter/src/rules/flake8_use_pathlib/rules/os_path_expanduser.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,9 +59,15 @@ impl Violation for OsPathExpanduser {
5959

6060
/// PTH111
6161
pub(crate) fn os_path_expanduser(checker: &Checker, call: &ExprCall) {
62+
let segments = checker
63+
.semantic()
64+
.resolve_qualified_name(&call.func)
65+
.map(|s| s.segments().to_vec());
66+
6267
check_os_pathlib_single_arg_calls(
6368
checker,
6469
call,
70+
segments.as_deref(),
6571
&["os", "path", "expanduser"],
6672
"expanduser()",
6773
"path",

crates/ruff_linter/src/rules/flake8_use_pathlib/rules/os_path_getatime.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,15 @@ impl Violation for OsPathGetatime {
6262

6363
/// PTH203
6464
pub(crate) fn os_path_getatime(checker: &Checker, call: &ExprCall) {
65+
let segments = checker
66+
.semantic()
67+
.resolve_qualified_name(&call.func)
68+
.map(|s| s.segments().to_vec());
69+
6570
check_os_pathlib_single_arg_calls(
6671
checker,
6772
call,
73+
segments.as_deref(),
6874
&["os", "path", "getatime"],
6975
"stat().st_atime",
7076
"filename",

crates/ruff_linter/src/rules/flake8_use_pathlib/rules/os_path_getctime.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,15 @@ impl Violation for OsPathGetctime {
6363

6464
/// PTH205
6565
pub(crate) fn os_path_getctime(checker: &Checker, call: &ExprCall) {
66+
let segments = checker
67+
.semantic()
68+
.resolve_qualified_name(&call.func)
69+
.map(|s| s.segments().to_vec());
70+
6671
check_os_pathlib_single_arg_calls(
6772
checker,
6873
call,
74+
segments.as_deref(),
6975
&["os", "path", "getctime"],
7076
"stat().st_ctime",
7177
"filename",

crates/ruff_linter/src/rules/flake8_use_pathlib/rules/os_path_getmtime.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,15 @@ impl Violation for OsPathGetmtime {
6363

6464
/// PTH204
6565
pub(crate) fn os_path_getmtime(checker: &Checker, call: &ExprCall) {
66+
let segments = checker
67+
.semantic()
68+
.resolve_qualified_name(&call.func)
69+
.map(|s| s.segments().to_vec());
70+
6671
check_os_pathlib_single_arg_calls(
6772
checker,
6873
call,
74+
segments.as_deref(),
6975
&["os", "path", "getmtime"],
7076
"stat().st_mtime",
7177
"filename",

crates/ruff_linter/src/rules/flake8_use_pathlib/rules/os_path_getsize.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,15 @@ impl Violation for OsPathGetsize {
6363

6464
/// PTH202
6565
pub(crate) fn os_path_getsize(checker: &Checker, call: &ExprCall) {
66+
let segments = checker
67+
.semantic()
68+
.resolve_qualified_name(&call.func)
69+
.map(|s| s.segments().to_vec());
70+
6671
check_os_pathlib_single_arg_calls(
6772
checker,
6873
call,
74+
segments.as_deref(),
6975
&["os", "path", "getsize"],
7076
"stat().st_size",
7177
"filename",

0 commit comments

Comments
 (0)