drizzle_core/traits/param.rs
1/// A marker trait for types that can be used as SQL parameters.
2///
3/// This trait is used as a bound on the parameter type in SQL fragments.
4/// It ensures type safety when building SQL queries with parameters.
5pub trait SQLParam: Clone + core::fmt::Debug {}
6
7// Implement SQLParam for common types
8// impl<T: SQLParam> SQLParam for Option<T> {}
9// impl<T: SQLParam> SQLParam for Vec<T> {}
10// impl<T: SQLParam> SQLParam for Box<[T]> {}
11// impl<T: SQLParam> SQLParam for Rc<T> {}
12// impl<T: SQLParam> SQLParam for Arc<T> {}
13// impl<T: SQLParam> SQLParam for RefCell<T> {}
14// impl<'a, T: SQLParam> SQLParam for Cow<'a, T> {}
15// impl<T: SQLParam> SQLParam for &[T] {}
16// impl<T: SQLParam> SQLParam for &T {}
17// impl<const N: usize, T: SQLParam> SQLParam for [T; N] {}