pub mod condition;
pub mod prelude;
pub mod primitives;
pub use vantage_expressions;
pub(crate) mod types;
#[cfg(any(feature = "sqlite", feature = "postgres", feature = "mysql"))]
mod sql_exec;
#[cfg(all(
feature = "vista",
any(feature = "sqlite", feature = "postgres", feature = "mysql")
))]
mod sql_vista;
#[cfg(any(feature = "sqlite", feature = "postgres", feature = "mysql"))]
mod table_writes;
#[cfg(feature = "sqlite")]
pub mod sqlite;
#[cfg(feature = "postgres")]
pub mod postgres;
#[cfg(feature = "mysql")]
pub mod mysql;
#[cfg(feature = "rhai")]
pub mod rhai_engine;
pub(crate) fn like_pattern_str(text: &str) -> String {
let escaped = text
.replace('$', "$$")
.replace('%', "$%")
.replace('_', "$_");
format!("%{escaped}%")
}
#[cfg(feature = "vista")]
pub(crate) fn like_pattern(value: &ciborium::Value) -> String {
like_pattern_str(&vantage_vista::operand_text(value))
}