Skip to content

Commit 2deac4e

Browse files
committed
fix(linter): false positive in unicorn/escape-case
1 parent 490c1dd commit 2deac4e

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

crates/oxc_linter/src/rules/unicorn/escape_case.rs

+10-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,14 @@ declare_oxc_lint!(
5050
);
5151

5252
fn is_hex(iter: &Chars, count: usize) -> bool {
53-
iter.clone().take(count).all(|c| c.is_ascii_hexdigit())
53+
let mut iter = iter.clone();
54+
for _ in 0..count {
55+
match iter.next() {
56+
Some(c) if c.is_ascii_hexdigit() => continue,
57+
_ => return false,
58+
}
59+
}
60+
true
5461
}
5562

5663
// /(?<=(?:^|[^\\])(?:\\\\)*\\)(?<data>x[\dA-Fa-f]{2}|u[\dA-Fa-f]{4}|u{[\dA-Fa-f]+})/g
@@ -196,6 +203,8 @@ fn test() {
196203
r#"const foo = new RegExp("/\u{1D306}/", "u")"#,
197204
r#"const foo = new RegExp("/\ca/")"#,
198205
r#"const foo = new RegExp("/\cA/")"#,
206+
// Issue: <https://github.com/oxc-project/oxc/issues/9583>
207+
r"const foo = e`\u`;",
199208
];
200209

201210
let fail = vec![

0 commit comments

Comments
 (0)