Skip to main content

surql_parser/upstream/sql/
changefeed.rs

1use crate::compat::types::PublicDuration;
2#[derive(Clone, Copy, Debug, Eq, PartialEq, Hash)]
3pub struct ChangeFeed {
4	pub expiry: PublicDuration,
5	pub store_diff: bool,
6}
7impl surrealdb_types::ToSql for ChangeFeed {
8	fn fmt_sql(&self, f: &mut String, sql_fmt: surrealdb_types::SqlFormat) {
9		use surrealdb_types::write_sql;
10		write_sql!(f, sql_fmt, "CHANGEFEED {}", self.expiry);
11		if self.store_diff {
12			f.push_str(" INCLUDE ORIGINAL");
13		}
14	}
15}