Skip to main content

surrealdb_expr/expr/statements/define/
index.rs

1use super::DefineKind;
2use crate::expr::index_kind::Index;
3use crate::expr::{Expr, Literal};
4
5#[derive(Clone, Debug, Eq, PartialEq, Hash)]
6pub struct DefineIndexStatement {
7	pub kind: DefineKind,
8	pub name: Expr,
9	pub what: Expr,
10	pub cols: Vec<Expr>,
11	pub index: Index,
12	pub comment: Expr,
13	pub concurrently: bool,
14}
15
16impl Default for DefineIndexStatement {
17	fn default() -> Self {
18		Self {
19			kind: DefineKind::Default,
20			name: Expr::Literal(Literal::None),
21			what: Expr::Literal(Literal::None),
22			cols: Vec::new(),
23			index: Index::Idx,
24			comment: Expr::Literal(Literal::None),
25			concurrently: false,
26		}
27	}
28}