surql_parser/upstream/sql/
split.rs1use crate::upstream::fmt::Fmt;
2use crate::upstream::sql::idiom::Idiom;
3use std::ops::Deref;
4use surrealdb_types::write_sql;
5#[derive(Clone, Debug, Default, PartialEq, Eq)]
6pub struct Splits(pub Vec<Split>);
7impl surrealdb_types::ToSql for Splits {
8 fn fmt_sql(&self, f: &mut String, fmt: surrealdb_types::SqlFormat) {
9 write_sql!(f, fmt, "SPLIT ON {}", Fmt::comma_separated(&self.0))
10 }
11}
12#[derive(Clone, Debug, Default, PartialEq, Eq)]
13#[cfg_attr(feature = "arbitrary", derive(arbitrary::Arbitrary))]
14pub struct Split(pub Idiom);
15impl Deref for Split {
16 type Target = Idiom;
17 fn deref(&self) -> &Self::Target {
18 &self.0
19 }
20}
21impl surrealdb_types::ToSql for Split {
22 fn fmt_sql(&self, f: &mut String, fmt: surrealdb_types::SqlFormat) {
23 self.0.fmt_sql(f, fmt);
24 }
25}