Skip to content

Commit abecd1c

Browse files
committed
Moves return table columns parsing in parse_data_type.
1 parent e35c3eb commit abecd1c

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

src/parser/mod.rs

+5-8
Original file line numberDiff line numberDiff line change
@@ -4563,14 +4563,7 @@ impl<'a> Parser<'a> {
45634563
self.expect_token(&Token::RParen)?;
45644564

45654565
let return_type = if self.parse_keyword(Keyword::RETURNS) {
4566-
if dialect_of!(self is PostgreSqlDialect | GenericDialect)
4567-
&& self.parse_keyword(Keyword::TABLE)
4568-
{
4569-
let columns = self.parse_parenthesized_columns()?;
4570-
Some(DataType::Table(columns))
4571-
} else {
4572-
Some(self.parse_data_type()?)
4573-
}
4566+
Some(self.parse_data_type()?)
45744567
} else {
45754568
None
45764569
};
@@ -8874,6 +8867,10 @@ impl<'a> Parser<'a> {
88748867
let _ = self.parse_keyword(Keyword::TYPE);
88758868
Ok(DataType::AnyType)
88768869
}
8870+
Keyword::TABLE => {
8871+
let columns = self.parse_returns_table_columns()?;
8872+
Ok(DataType::Table(columns))
8873+
}
88778874
_ => {
88788875
self.prev_token();
88798876
let type_name = self.parse_object_name(false)?;

0 commit comments

Comments
 (0)