Parse an ALTER SYSTEM statement.
(&mut self)
| 6232 | |
| 6233 | /// Parse an ALTER SYSTEM statement. |
| 6234 | fn parse_alter_system(&mut self) -> Result<Statement<Raw>, ParserStatementError> { |
| 6235 | match self |
| 6236 | .expect_one_of_keywords(&[SET, RESET]) |
| 6237 | .map_no_statement_parser_err()? |
| 6238 | { |
| 6239 | SET => { |
| 6240 | let name = self |
| 6241 | .parse_identifier() |
| 6242 | .map_parser_err(StatementKind::AlterSystemSet)?; |
| 6243 | self.expect_keyword_or_token(TO, &Token::Eq) |
| 6244 | .map_parser_err(StatementKind::AlterSystemSet)?; |
| 6245 | let to = self |
| 6246 | .parse_set_variable_to() |
| 6247 | .map_parser_err(StatementKind::AlterSystemSet)?; |
| 6248 | Ok(Statement::AlterSystemSet(AlterSystemSetStatement { |
| 6249 | name, |
| 6250 | to, |
| 6251 | })) |
| 6252 | } |
| 6253 | RESET => { |
| 6254 | if self.parse_keyword(ALL) { |
| 6255 | Ok(Statement::AlterSystemResetAll( |
| 6256 | AlterSystemResetAllStatement {}, |
| 6257 | )) |
| 6258 | } else { |
| 6259 | let name = self |
| 6260 | .parse_identifier() |
| 6261 | .map_parser_err(StatementKind::AlterSystemReset)?; |
| 6262 | Ok(Statement::AlterSystemReset(AlterSystemResetStatement { |
| 6263 | name, |
| 6264 | })) |
| 6265 | } |
| 6266 | } |
| 6267 | _ => unreachable!(), |
| 6268 | } |
| 6269 | } |
| 6270 | |
| 6271 | fn parse_alter_connection(&mut self) -> Result<Statement<Raw>, ParserStatementError> { |
| 6272 | let if_exists = self.parse_if_exists().map_no_statement_parser_err()?; |
no test coverage detected