@@ -508,11 +508,10 @@ impl<'a> Parser<'a> {
508508 Token::EOF => break,
509509
510510 // end of statement
511- Token::Word(word) => {
512- if expecting_statement_delimiter && word.keyword == Keyword::END {
511+ Token::Word(word)
512+ if expecting_statement_delimiter && word.keyword == Keyword::END => {
513513 break;
514514 }
515- }
516515 _ => {}
517516 }
518517
@@ -1305,8 +1304,8 @@ impl<'a> Parser<'a> {
13051304
13061305 let next_token = self.next_token();
13071306 match next_token.token {
1308- t @ (Token::Word(_) | Token::SingleQuotedString(_)) => {
1309- if self.peek_token_ref().token == Token::Period {
1307+ t @ (Token::Word(_) | Token::SingleQuotedString(_))
1308+ if self.peek_token_ref().token == Token::Period => {
13101309 let mut id_parts: Vec<Ident> = vec![match t {
13111310 Token::Word(w) => w.into_ident(next_token.span),
13121311 Token::SingleQuotedString(s) => Ident::with_quote('\'', s),
@@ -1343,7 +1342,6 @@ impl<'a> Parser<'a> {
13431342 }
13441343 }
13451344 }
1346- }
13471345 Token::Mul => {
13481346 return Ok(Expr::Wildcard(AttachedToken(next_token)));
13491347 }
@@ -5031,11 +5029,10 @@ impl<'a> Parser<'a> {
50315029 loop {
50325030 match &self.peek_nth_token_ref(0).token {
50335031 Token::EOF => break,
5034- Token::Word(w) => {
5035- if w.quote_style.is_none() && terminal_keywords.contains(&w.keyword) {
5032+ Token::Word(w)
5033+ if w.quote_style.is_none() && terminal_keywords.contains(&w.keyword) => {
50365034 break;
50375035 }
5038- }
50395036 _ => {}
50405037 }
50415038
@@ -8388,8 +8385,8 @@ impl<'a> Parser<'a> {
83888385 Keyword::LINES,
83898386 Keyword::NULL,
83908387 ]) {
8391- Some(Keyword::FIELDS) => {
8392- if self.parse_keywords(&[Keyword::TERMINATED, Keyword::BY]) {
8388+ Some(Keyword::FIELDS)
8389+ if self.parse_keywords(&[Keyword::TERMINATED, Keyword::BY]) => {
83938390 row_delimiters.push(HiveRowDelimiter {
83948391 delimiter: HiveDelimiter::FieldsTerminatedBy,
83958392 char: self.parse_identifier()?,
@@ -8401,58 +8398,43 @@ impl<'a> Parser<'a> {
84018398 char: self.parse_identifier()?,
84028399 });
84038400 }
8404- } else {
8405- break;
84068401 }
8407- }
8408- Some(Keyword::COLLECTION) => {
8402+ Some(Keyword::COLLECTION)
84098403 if self.parse_keywords(&[
84108404 Keyword::ITEMS,
84118405 Keyword::TERMINATED,
84128406 Keyword::BY,
8413- ]) {
8407+ ]) => {
84148408 row_delimiters.push(HiveRowDelimiter {
84158409 delimiter: HiveDelimiter::CollectionItemsTerminatedBy,
84168410 char: self.parse_identifier()?,
84178411 });
8418- } else {
8419- break;
84208412 }
8421- }
8422- Some(Keyword::MAP) => {
8413+ Some(Keyword::MAP)
84238414 if self.parse_keywords(&[
84248415 Keyword::KEYS,
84258416 Keyword::TERMINATED,
84268417 Keyword::BY,
8427- ]) {
8418+ ]) => {
84288419 row_delimiters.push(HiveRowDelimiter {
84298420 delimiter: HiveDelimiter::MapKeysTerminatedBy,
84308421 char: self.parse_identifier()?,
84318422 });
8432- } else {
8433- break;
84348423 }
8435- }
8436- Some(Keyword::LINES) => {
8437- if self.parse_keywords(&[Keyword::TERMINATED, Keyword::BY]) {
8424+ Some(Keyword::LINES)
8425+ if self.parse_keywords(&[Keyword::TERMINATED, Keyword::BY]) => {
84388426 row_delimiters.push(HiveRowDelimiter {
84398427 delimiter: HiveDelimiter::LinesTerminatedBy,
84408428 char: self.parse_identifier()?,
84418429 });
8442- } else {
8443- break;
84448430 }
8445- }
8446- Some(Keyword::NULL) => {
8447- if self.parse_keywords(&[Keyword::DEFINED, Keyword::AS]) {
8431+ Some(Keyword::NULL)
8432+ if self.parse_keywords(&[Keyword::DEFINED, Keyword::AS]) => {
84488433 row_delimiters.push(HiveRowDelimiter {
84498434 delimiter: HiveDelimiter::NullDefinedAs,
84508435 char: self.parse_identifier()?,
84518436 });
8452- } else {
8453- break;
84548437 }
8455- }
84568438 _ => {
84578439 break;
84588440 }
0 commit comments