#[doc(hidden)]
pub use once_cell::sync::Lazy;
#[doc(hidden)]
pub use serde::Serialize;
#[doc(hidden)]
pub use serde_json;
pub use sqlrender_impl::SqlRender;
pub trait SqlRender {
fn select_sql(&self) -> Result<String, Error>;
fn scoped_select_sql(&self) -> Result<String, Error>;
fn insert_sql(&self) -> Result<String, Error>;
fn update_sql(&self) -> Result<String, Error>;
fn delete_sql(&self) -> Result<String, Error>;
fn soft_delete_sql(&self) -> Result<String, Error>;
fn ddl_sql(&self) -> Result<String, Error>;
fn table_name(&self) -> &'static str;
}
#[derive(thiserror::Error, Debug)]
pub enum Error {
#[error(transparent)]
SerdeJson(#[from] serde_json::Error),
#[error("SqlRender Error: {0}")]
OtherError(&'static str),
}