Skip to main content

surrealdb_expr/expr/convert/statements/alter/
self_mod.rs

1//! `sql` -> `expr` conversions declared directly in [`crate::sql::statements::alter`].
2//!
3//! Lives in core rather than beside the AST: `surrealdb-sql` sits below
4//! core, so it cannot name `expr` types.
5
6use crate::sql::statements::alter::*;
7
8impl<A, B> From<AlterKind<A>> for crate::expr::statements::alter::AlterKind<B>
9where
10	B: From<A>,
11{
12	fn from(value: AlterKind<A>) -> Self {
13		match value {
14			AlterKind::Set(a) => crate::expr::statements::alter::AlterKind::Set(a.into()),
15			AlterKind::Drop => crate::expr::statements::alter::AlterKind::Drop,
16			AlterKind::None => crate::expr::statements::alter::AlterKind::None,
17		}
18	}
19}
20
21impl<A, B> From<crate::expr::statements::alter::AlterKind<A>> for AlterKind<B>
22where
23	B: From<A>,
24{
25	fn from(value: crate::expr::statements::alter::AlterKind<A>) -> Self {
26		match value {
27			crate::expr::statements::alter::AlterKind::Set(a) => AlterKind::Set(a.into()),
28			crate::expr::statements::alter::AlterKind::Drop => AlterKind::Drop,
29			crate::expr::statements::alter::AlterKind::None => AlterKind::None,
30		}
31	}
32}
33
34impl From<AlterStatement> for crate::expr::statements::AlterStatement {
35	fn from(v: AlterStatement) -> Self {
36		match v {
37			AlterStatement::System(v) => Self::System(v.into()),
38			AlterStatement::Namespace(v) => Self::Namespace(v.into()),
39			AlterStatement::Database(v) => Self::Database(v.into()),
40			AlterStatement::Table(v) => Self::Table(v.into()),
41			AlterStatement::Api(v) => Self::Api(v.into()),
42			AlterStatement::Event(v) => Self::Event(v.into()),
43			AlterStatement::Index(v) => Self::Index(v.into()),
44			AlterStatement::Sequence(v) => Self::Sequence(v.into()),
45			AlterStatement::Field(v) => Self::Field(Box::new((*v).into())),
46			AlterStatement::Param(v) => Self::Param(v.into()),
47			AlterStatement::Bucket(v) => Self::Bucket(v.into()),
48			AlterStatement::Config(v) => Self::Config(v.into()),
49			AlterStatement::Analyzer(v) => Self::Analyzer(v.into()),
50			AlterStatement::Function(v) => Self::Function(v.into()),
51			AlterStatement::User(v) => Self::User(v.into()),
52			AlterStatement::Access(v) => Self::Access(v.into()),
53			AlterStatement::Module(v) => Self::Module(v.into()),
54		}
55	}
56}
57
58impl From<crate::expr::statements::AlterStatement> for AlterStatement {
59	fn from(v: crate::expr::statements::AlterStatement) -> Self {
60		match v {
61			crate::expr::statements::AlterStatement::System(v) => Self::System(v.into()),
62			crate::expr::statements::AlterStatement::Namespace(v) => Self::Namespace(v.into()),
63			crate::expr::statements::AlterStatement::Database(v) => Self::Database(v.into()),
64			crate::expr::statements::AlterStatement::Table(v) => Self::Table(v.into()),
65			crate::expr::statements::AlterStatement::Api(v) => Self::Api(v.into()),
66			crate::expr::statements::AlterStatement::Event(v) => Self::Event(v.into()),
67			crate::expr::statements::AlterStatement::Index(v) => Self::Index(v.into()),
68			crate::expr::statements::AlterStatement::Sequence(v) => Self::Sequence(v.into()),
69			crate::expr::statements::AlterStatement::Field(v) => Self::Field(Box::new((*v).into())),
70			crate::expr::statements::AlterStatement::Param(v) => Self::Param(v.into()),
71			crate::expr::statements::AlterStatement::Bucket(v) => Self::Bucket(v.into()),
72			crate::expr::statements::AlterStatement::Config(v) => Self::Config(v.into()),
73			crate::expr::statements::AlterStatement::Analyzer(v) => Self::Analyzer(v.into()),
74			crate::expr::statements::AlterStatement::Function(v) => Self::Function(v.into()),
75			crate::expr::statements::AlterStatement::User(v) => Self::User(v.into()),
76			crate::expr::statements::AlterStatement::Access(v) => Self::Access(v.into()),
77			crate::expr::statements::AlterStatement::Module(v) => Self::Module(v.into()),
78		}
79	}
80}