fix new rust 1.87 cargo clippy warnings (#1856)

This commit is contained in:
Ophir LOJKINE 2025-05-19 13:09:00 +02:00 committed by GitHub
parent ae587dcbec
commit e7bf186e44
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 14 additions and 10 deletions

View file

@ -741,7 +741,7 @@ mod tests {
} }
} }
fn do_visit<V: Visitor>(sql: &str, visitor: &mut V) -> Statement { fn do_visit<V: Visitor<Break = ()>>(sql: &str, visitor: &mut V) -> Statement {
let dialect = GenericDialect {}; let dialect = GenericDialect {};
let tokens = Tokenizer::new(&dialect, sql).tokenize().unwrap(); let tokens = Tokenizer::new(&dialect, sql).tokenize().unwrap();
let s = Parser::new(&dialect) let s = Parser::new(&dialect)
@ -749,7 +749,8 @@ mod tests {
.parse_statement() .parse_statement()
.unwrap(); .unwrap();
s.visit(visitor); let flow = s.visit(visitor);
assert_eq!(flow, ControlFlow::Continue(()));
s s
} }
@ -938,7 +939,8 @@ mod tests {
.unwrap(); .unwrap();
let mut visitor = QuickVisitor {}; let mut visitor = QuickVisitor {};
s.visit(&mut visitor); let flow = s.visit(&mut visitor);
assert_eq!(flow, ControlFlow::Continue(()));
} }
} }
@ -969,7 +971,7 @@ mod visit_mut_tests {
} }
} }
fn do_visit_mut<V: VisitorMut>(sql: &str, visitor: &mut V) -> Statement { fn do_visit_mut<V: VisitorMut<Break = ()>>(sql: &str, visitor: &mut V) -> Statement {
let dialect = GenericDialect {}; let dialect = GenericDialect {};
let tokens = Tokenizer::new(&dialect, sql).tokenize().unwrap(); let tokens = Tokenizer::new(&dialect, sql).tokenize().unwrap();
let mut s = Parser::new(&dialect) let mut s = Parser::new(&dialect)
@ -977,7 +979,8 @@ mod visit_mut_tests {
.parse_statement() .parse_statement()
.unwrap(); .unwrap();
s.visit(visitor); let flow = s.visit(visitor);
assert_eq!(flow, ControlFlow::Continue(()));
s s
} }

View file

@ -149,6 +149,10 @@
#![cfg_attr(not(feature = "std"), no_std)] #![cfg_attr(not(feature = "std"), no_std)]
#![allow(clippy::upper_case_acronyms)] #![allow(clippy::upper_case_acronyms)]
// Permit large enum variants to keep a unified, expressive AST.
// Splitting complex nodes (expressions, statements, types) into separate types
// would bloat the API and hide intent. Extra memory is a worthwhile tradeoff.
#![allow(clippy::large_enum_variant)]
// Allow proc-macros to find this crate // Allow proc-macros to find this crate
extern crate self as sqlparser; extern crate self as sqlparser;

View file

@ -2558,10 +2558,7 @@ impl<'a> Parser<'a> {
self.expect_token(&Token::LParen)?; self.expect_token(&Token::LParen)?;
let mut trim_where = None; let mut trim_where = None;
if let Token::Word(word) = self.peek_token().token { if let Token::Word(word) = self.peek_token().token {
if [Keyword::BOTH, Keyword::LEADING, Keyword::TRAILING] if [Keyword::BOTH, Keyword::LEADING, Keyword::TRAILING].contains(&word.keyword) {
.iter()
.any(|d| word.keyword == *d)
{
trim_where = Some(self.parse_trim_where()?); trim_where = Some(self.parse_trim_where()?);
} }
} }

View file

@ -14346,7 +14346,7 @@ fn test_visit_order() {
let sql = "SELECT CASE a WHEN 1 THEN 2 WHEN 3 THEN 4 ELSE 5 END"; let sql = "SELECT CASE a WHEN 1 THEN 2 WHEN 3 THEN 4 ELSE 5 END";
let stmt = verified_stmt(sql); let stmt = verified_stmt(sql);
let mut visited = vec![]; let mut visited = vec![];
sqlparser::ast::visit_expressions(&stmt, |expr| { let _ = sqlparser::ast::visit_expressions(&stmt, |expr| {
visited.push(expr.to_string()); visited.push(expr.to_string());
core::ops::ControlFlow::<()>::Continue(()) core::ops::ControlFlow::<()>::Continue(())
}); });