Skip to main content

surrealdb_sql/statements/remove/
mod.rs

1pub mod access;
2use surrealdb_types::{SqlFormat, ToSql};
3pub mod analyzer;
4pub mod api;
5pub mod bucket;
6pub mod config;
7pub mod database;
8pub mod event;
9pub mod field;
10pub mod function;
11pub mod index;
12pub mod model;
13pub mod module;
14pub mod namespace;
15pub mod param;
16pub mod sequence;
17pub mod table;
18pub mod user;
19
20pub use access::RemoveAccessStatement;
21pub use analyzer::RemoveAnalyzerStatement;
22pub use api::RemoveApiStatement;
23pub use bucket::RemoveBucketStatement;
24pub use config::{RemoveConfigKind, RemoveConfigStatement};
25pub use database::RemoveDatabaseStatement;
26pub use event::RemoveEventStatement;
27pub use field::RemoveFieldStatement;
28pub use function::RemoveFunctionStatement;
29pub use index::RemoveIndexStatement;
30pub use model::RemoveModelStatement;
31pub use module::RemoveModuleStatement;
32pub use namespace::RemoveNamespaceStatement;
33pub use param::RemoveParamStatement;
34pub use sequence::RemoveSequenceStatement;
35pub use table::RemoveTableStatement;
36pub use user::RemoveUserStatement;
37
38#[derive(Clone, Debug, Eq, PartialEq)]
39#[cfg_attr(feature = "arbitrary", derive(arbitrary::Arbitrary))]
40pub enum RemoveStatement {
41	Namespace(RemoveNamespaceStatement),
42	Database(RemoveDatabaseStatement),
43	Function(RemoveFunctionStatement),
44	Analyzer(RemoveAnalyzerStatement),
45	Access(RemoveAccessStatement),
46	Param(RemoveParamStatement),
47	Table(RemoveTableStatement),
48	Event(RemoveEventStatement),
49	Field(RemoveFieldStatement),
50	Index(RemoveIndexStatement),
51	User(RemoveUserStatement),
52	#[cfg_attr(feature = "arbitrary", arbitrary(skip))]
53	Model(RemoveModelStatement),
54	Api(RemoveApiStatement),
55	Bucket(RemoveBucketStatement),
56	Sequence(RemoveSequenceStatement),
57	Module(RemoveModuleStatement),
58	Config(RemoveConfigStatement),
59}
60
61impl ToSql for RemoveStatement {
62	fn fmt_sql(&self, f: &mut String, fmt: SqlFormat) {
63		match self {
64			Self::Namespace(v) => v.fmt_sql(f, fmt),
65			Self::Database(v) => v.fmt_sql(f, fmt),
66			Self::Function(v) => v.fmt_sql(f, fmt),
67			Self::Access(v) => v.fmt_sql(f, fmt),
68			Self::Param(v) => v.fmt_sql(f, fmt),
69			Self::Table(v) => v.fmt_sql(f, fmt),
70			Self::Event(v) => v.fmt_sql(f, fmt),
71			Self::Field(v) => v.fmt_sql(f, fmt),
72			Self::Index(v) => v.fmt_sql(f, fmt),
73			Self::Analyzer(v) => v.fmt_sql(f, fmt),
74			Self::User(v) => v.fmt_sql(f, fmt),
75			Self::Model(v) => v.fmt_sql(f, fmt),
76			Self::Api(v) => v.fmt_sql(f, fmt),
77			Self::Bucket(v) => v.fmt_sql(f, fmt),
78			Self::Sequence(v) => v.fmt_sql(f, fmt),
79			Self::Module(v) => v.fmt_sql(f, fmt),
80			Self::Config(v) => v.fmt_sql(f, fmt),
81		}
82	}
83}