Skip to content

Commit

Permalink
refactor(linter): react/jsx_no_undef use loop instead of recursion (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
overlookmotel committed Aug 30, 2024
1 parent be7b8c6 commit afb038e
Showing 1 changed file with 9 additions and 5 deletions.
14 changes: 9 additions & 5 deletions crates/oxc_linter/src/rules/react/jsx_no_undef.rs
Original file line number Diff line number Diff line change
Expand Up @@ -41,11 +41,15 @@ fn get_resolvable_ident<'a>(node: &'a JSXElementName<'a>) -> Option<&'a Identifi
}
}

fn get_member_ident<'a>(expr: &'a JSXMemberExpression<'a>) -> Option<&'a IdentifierReference> {
match &expr.object {
JSXMemberExpressionObject::Identifier(_) => None,
JSXMemberExpressionObject::IdentifierReference(ident) => Some(ident),
JSXMemberExpressionObject::MemberExpression(next_expr) => get_member_ident(next_expr),
fn get_member_ident<'a>(mut expr: &'a JSXMemberExpression<'a>) -> Option<&'a IdentifierReference> {
loop {
match &expr.object {
JSXMemberExpressionObject::Identifier(_) => return None,
JSXMemberExpressionObject::IdentifierReference(ident) => return Some(ident),
JSXMemberExpressionObject::MemberExpression(next_expr) => {
expr = next_expr;
}
}
}
}

Expand Down

0 comments on commit afb038e

Please sign in to comment.