@@ -7950,15 +7950,15 @@ impl<'a> Parser<'a> {
79507950 loop {
79517951 if self.parse_keyword(Keyword::CONSTRAINT) {
79527952 let name = Some(self.parse_identifier()?);
7953- if let Some(option) = self.parse_optional_column_option(&col_name )? {
7953+ if let Some(option) = self.parse_optional_column_option()? {
79547954 options.push(ColumnOptionDef { name, option });
79557955 } else {
79567956 return self.expected(
79577957 "constraint details after CONSTRAINT <name>",
79587958 self.peek_token(),
79597959 );
79607960 }
7961- } else if let Some(option) = self.parse_optional_column_option(&col_name )? {
7961+ } else if let Some(option) = self.parse_optional_column_option()? {
79627962 options.push(ColumnOptionDef { name: None, option });
79637963 } else {
79647964 break;
@@ -7994,26 +7994,20 @@ impl<'a> Parser<'a> {
79947994 }
79957995 }
79967996
7997- pub fn parse_optional_column_option(
7998- &mut self,
7999- column_name: &Ident,
8000- ) -> Result<Option<ColumnOption>, ParserError> {
7997+ pub fn parse_optional_column_option(&mut self) -> Result<Option<ColumnOption>, ParserError> {
80017998 if let Some(option) = self.dialect.parse_column_option(self)? {
80027999 return option;
80038000 }
80048001
80058002 self.with_state(
80068003 ColumnDefinition,
80078004 |parser| -> Result<Option<ColumnOption>, ParserError> {
8008- parser.parse_optional_column_option_inner(column_name )
8005+ parser.parse_optional_column_option_inner()
80098006 },
80108007 )
80118008 }
80128009
8013- fn parse_optional_column_option_inner(
8014- &mut self,
8015- column_name: &Ident,
8016- ) -> Result<Option<ColumnOption>, ParserError> {
8010+ fn parse_optional_column_option_inner(&mut self) -> Result<Option<ColumnOption>, ParserError> {
80178011 if self.parse_keywords(&[Keyword::CHARACTER, Keyword::SET]) {
80188012 Ok(Some(ColumnOption::CharacterSet(
80198013 self.parse_object_name(false)?,
@@ -8061,7 +8055,7 @@ impl<'a> Parser<'a> {
80618055 name: None,
80628056 index_name: None,
80638057 index_type: None,
8064- columns: vec![column_name.clone().into() ],
8058+ columns: vec![],
80658059 index_options: vec![],
80668060 characteristics,
80678061 }
@@ -8075,7 +8069,7 @@ impl<'a> Parser<'a> {
80758069 index_name: None,
80768070 index_type_display: KeyOrIndexDisplay::None,
80778071 index_type: None,
8078- columns: vec![column_name.clone().into() ],
8072+ columns: vec![],
80798073 index_options: vec![],
80808074 characteristics,
80818075 nulls_distinct: NullsDistinctOption::None,
@@ -9089,7 +9083,7 @@ impl<'a> Parser<'a> {
90899083 let new_name = self.parse_identifier()?;
90909084 let data_type = self.parse_data_type()?;
90919085 let mut options = vec![];
9092- while let Some(option) = self.parse_optional_column_option(&new_name )? {
9086+ while let Some(option) = self.parse_optional_column_option()? {
90939087 options.push(option);
90949088 }
90959089
@@ -9107,7 +9101,7 @@ impl<'a> Parser<'a> {
91079101 let col_name = self.parse_identifier()?;
91089102 let data_type = self.parse_data_type()?;
91099103 let mut options = vec![];
9110- while let Some(option) = self.parse_optional_column_option(&col_name )? {
9104+ while let Some(option) = self.parse_optional_column_option()? {
91119105 options.push(option);
91129106 }
91139107
@@ -11369,7 +11363,7 @@ impl<'a> Parser<'a> {
1136911363 /// Parses a column definition within a view.
1137011364 fn parse_view_column(&mut self) -> Result<ViewColumnDef, ParserError> {
1137111365 let name = self.parse_identifier()?;
11372- let options = self.parse_view_column_options(&name )?;
11366+ let options = self.parse_view_column_options()?;
1137311367 let data_type = if dialect_of!(self is ClickHouseDialect) {
1137411368 Some(self.parse_data_type()?)
1137511369 } else {
@@ -11382,13 +11376,10 @@ impl<'a> Parser<'a> {
1138211376 })
1138311377 }
1138411378
11385- fn parse_view_column_options(
11386- &mut self,
11387- column_name: &Ident,
11388- ) -> Result<Option<ColumnOptions>, ParserError> {
11379+ fn parse_view_column_options(&mut self) -> Result<Option<ColumnOptions>, ParserError> {
1138911380 let mut options = Vec::new();
1139011381 loop {
11391- let option = self.parse_optional_column_option(column_name )?;
11382+ let option = self.parse_optional_column_option()?;
1139211383 if let Some(option) = option {
1139311384 options.push(option);
1139411385 } else {
0 commit comments