mik_sql/pagination/
value_conv.rs

1//! Value conversion helpers for pagination.
2
3use crate::builder::Value;
4
5impl From<i64> for Value {
6    fn from(v: i64) -> Self {
7        Self::Int(v)
8    }
9}
10
11impl From<i32> for Value {
12    fn from(v: i32) -> Self {
13        Self::Int(i64::from(v))
14    }
15}
16
17impl From<f64> for Value {
18    fn from(v: f64) -> Self {
19        Self::Float(v)
20    }
21}
22
23impl From<String> for Value {
24    fn from(v: String) -> Self {
25        Self::String(v)
26    }
27}
28
29impl From<&str> for Value {
30    fn from(v: &str) -> Self {
31        Self::String(v.to_string())
32    }
33}
34
35impl From<bool> for Value {
36    fn from(v: bool) -> Self {
37        Self::Bool(v)
38    }
39}
40
41#[cfg(test)]
42mod tests {
43    use super::*;
44
45    #[test]
46    fn test_value_from_conversions() {
47        let _: Value = 42i64.into();
48        let _: Value = 42i32.into();
49        let _: Value = 1.234f64.into();
50        let _: Value = "hello".into();
51        let _: Value = String::from("world").into();
52        let _: Value = true.into();
53    }
54}