@@ -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
@@ -8377,8 +8374,8 @@ impl<'a> Parser<'a> {
83778374 Keyword::LINES,
83788375 Keyword::NULL,
83798376 ]) {
8380- Some(Keyword::FIELDS) => {
8381- if self.parse_keywords(&[Keyword::TERMINATED, Keyword::BY]) {
8377+ Some(Keyword::FIELDS)
8378+ if self.parse_keywords(&[Keyword::TERMINATED, Keyword::BY]) => {
83828379 row_delimiters.push(HiveRowDelimiter {
83838380 delimiter: HiveDelimiter::FieldsTerminatedBy,
83848381 char: self.parse_identifier()?,
@@ -8390,58 +8387,43 @@ impl<'a> Parser<'a> {
83908387 char: self.parse_identifier()?,
83918388 });
83928389 }
8393- } else {
8394- break;
83958390 }
8396- }
8397- Some(Keyword::COLLECTION) => {
8391+ Some(Keyword::COLLECTION)
83988392 if self.parse_keywords(&[
83998393 Keyword::ITEMS,
84008394 Keyword::TERMINATED,
84018395 Keyword::BY,
8402- ]) {
8396+ ]) => {
84038397 row_delimiters.push(HiveRowDelimiter {
84048398 delimiter: HiveDelimiter::CollectionItemsTerminatedBy,
84058399 char: self.parse_identifier()?,
84068400 });
8407- } else {
8408- break;
84098401 }
8410- }
8411- Some(Keyword::MAP) => {
8402+ Some(Keyword::MAP)
84128403 if self.parse_keywords(&[
84138404 Keyword::KEYS,
84148405 Keyword::TERMINATED,
84158406 Keyword::BY,
8416- ]) {
8407+ ]) => {
84178408 row_delimiters.push(HiveRowDelimiter {
84188409 delimiter: HiveDelimiter::MapKeysTerminatedBy,
84198410 char: self.parse_identifier()?,
84208411 });
8421- } else {
8422- break;
84238412 }
8424- }
8425- Some(Keyword::LINES) => {
8426- if self.parse_keywords(&[Keyword::TERMINATED, Keyword::BY]) {
8413+ Some(Keyword::LINES)
8414+ if self.parse_keywords(&[Keyword::TERMINATED, Keyword::BY]) => {
84278415 row_delimiters.push(HiveRowDelimiter {
84288416 delimiter: HiveDelimiter::LinesTerminatedBy,
84298417 char: self.parse_identifier()?,
84308418 });
8431- } else {
8432- break;
84338419 }
8434- }
8435- Some(Keyword::NULL) => {
8436- if self.parse_keywords(&[Keyword::DEFINED, Keyword::AS]) {
8420+ Some(Keyword::NULL)
8421+ if self.parse_keywords(&[Keyword::DEFINED, Keyword::AS]) => {
84378422 row_delimiters.push(HiveRowDelimiter {
84388423 delimiter: HiveDelimiter::NullDefinedAs,
84398424 char: self.parse_identifier()?,
84408425 });
8441- } else {
8442- break;
84438426 }
8444- }
84458427 _ => {
84468428 break;
84478429 }
0 commit comments