Skip to main content

surrealdb_expr/expr/statements/
rebuild.rs

1use surrealdb_strand::Strand;
2use surrealdb_types::{SqlFormat, ToSql};
3
4use crate::val::TableName;
5
6#[derive(Clone, Debug, Eq, PartialEq, Hash)]
7pub enum RebuildStatement {
8	Index(RebuildIndexStatement),
9}
10
11impl ToSql for RebuildStatement {
12	fn fmt_sql(&self, f: &mut String, fmt: SqlFormat) {
13		let stmt: crate::sql::statements::rebuild::RebuildStatement = self.clone().into();
14		stmt.fmt_sql(f, fmt);
15	}
16}
17
18#[derive(Clone, Debug, Default, Eq, PartialEq, Hash)]
19pub struct RebuildIndexStatement {
20	pub name: Strand,
21	pub table: TableName,
22	pub if_exists: bool,
23	pub concurrently: bool,
24}
25
26impl ToSql for RebuildIndexStatement {
27	fn fmt_sql(&self, f: &mut String, fmt: SqlFormat) {
28		let stmt: crate::sql::statements::rebuild::RebuildIndexStatement = self.clone().into();
29		stmt.fmt_sql(f, fmt);
30	}
31}