Skip to content

Commit 188b718

Browse files
authored
Revert "Fix CREATE FUNCTION round trip for Hive dialect (apache#1693)"
This reverts commit 79f7d12.
1 parent 8f51620 commit 188b718

File tree

3 files changed

+9
-6
lines changed

3 files changed

+9
-6
lines changed

src/ast/ddl.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2011,6 +2011,8 @@ impl fmt::Display for CreateFunction {
20112011
)?;
20122012
if let Some(args) = &self.args {
20132013
write!(f, "({})", display_comma_separated(args))?;
2014+
} else {
2015+
write!(f, "()")?;
20142016
}
20152017
if let Some(return_type) = &self.return_type {
20162018
write!(f, " RETURNS {return_type}")?;

src/parser/mod.rs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4553,13 +4553,14 @@ impl<'a> Parser<'a> {
45534553
temporary: bool,
45544554
) -> Result<Statement, ParserError> {
45554555
let name = self.parse_object_name(false)?;
4556-
45574556
self.expect_token(&Token::LParen)?;
4558-
let args = if Token::RParen != self.peek_token_ref().token {
4559-
self.parse_comma_separated(Parser::parse_function_arg)?
4557+
let args = if self.consume_token(&Token::RParen) {
4558+
self.prev_token();
4559+
None
45604560
} else {
4561-
vec![]
4561+
Some(self.parse_comma_separated(Parser::parse_function_arg)?)
45624562
};
4563+
45634564
self.expect_token(&Token::RParen)?;
45644565

45654566
let return_type = if self.parse_keyword(Keyword::RETURNS) {
@@ -4655,7 +4656,7 @@ impl<'a> Parser<'a> {
46554656
or_replace,
46564657
temporary,
46574658
name,
4658-
args: Some(args),
4659+
args,
46594660
return_type,
46604661
behavior: body.behavior,
46614662
called_on_null: body.called_on_null,

tests/sqlparser_postgres.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5147,7 +5147,7 @@ fn parse_trigger_related_functions() {
51475147
temporary: false,
51485148
if_not_exists: false,
51495149
name: ObjectName::from(vec![Ident::new("emp_stamp")]),
5150-
args: Some(vec![]),
5150+
args: None,
51515151
return_type: Some(DataType::Trigger),
51525152
function_body: Some(
51535153
CreateFunctionBody::AsBeforeOptions(

0 commit comments

Comments
 (0)