Skip to main content

surrealdb_expr/expr/statements/alter/
analyzer.rs

1use surrealdb_types::{SqlFormat, ToSql};
2
3use super::AlterKind;
4use crate::expr::{Expr, Filter, Literal, Tokenizer};
5
6#[derive(Clone, Debug, Eq, PartialEq, Hash)]
7pub struct AlterAnalyzerStatement {
8	pub name: Expr,
9	pub if_exists: bool,
10	pub function: AlterKind<String>,
11	pub tokenizers: AlterKind<Vec<Tokenizer>>,
12	pub filters: AlterKind<Vec<Filter>>,
13	pub comment: AlterKind<String>,
14}
15
16impl Default for AlterAnalyzerStatement {
17	fn default() -> Self {
18		Self {
19			name: Expr::Literal(Literal::None),
20			if_exists: false,
21			function: AlterKind::None,
22			tokenizers: AlterKind::None,
23			filters: AlterKind::None,
24			comment: AlterKind::None,
25		}
26	}
27}
28
29impl ToSql for AlterAnalyzerStatement {
30	fn fmt_sql(&self, f: &mut String, fmt: SqlFormat) {
31		let stmt: crate::sql::statements::alter::AlterAnalyzerStatement = self.clone().into();
32		stmt.fmt_sql(f, fmt);
33	}
34}