easy_sqlx_core/sql/utils/
pair.rs

1use super::value::Value;
2// impl Value {
3//     pub fn get<T: I32, I64, F64, String>(&self) -> T {
4//         match self {
5//             Self::Int(val) => val,
6//             Self::Long(val) => val,
7//             Self::Float(v) => v,
8//             Self::Text(str) => str,
9//         };
10//     }
11// }
12
13#[derive(Debug, Clone)]
14pub struct Pair {
15    pub name: String,
16    pub value: Value,
17}
18
19impl Pair {
20    // pub fn bind_to_query<'a, DB: Database>(
21    //     &self,
22    //     query: sqlx::query::Query<'a, DB, DB::Arguments<'a>>,
23    // ) -> sqlx::query::Query<'a, DB, DB::Arguments<'a>>
24    // where
25    //     Option<bool>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
26    //     bool: sqlx::Type<DB>,
27    //     Option<i16>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
28    //     i16: sqlx::Type<DB>,
29    //     Option<i32>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
30    //     i32: sqlx::Type<DB>,
31    //     Option<i64>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
32    //     i64: sqlx::Type<DB>,
33    //     Option<f64>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
34    //     f64: sqlx::Type<DB>,
35    //     Option<f32>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
36    //     f32: sqlx::Type<DB>,
37    //     Option<NaiveDateTime>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
38    //     NaiveDateTime: sqlx::Type<DB>,
39    //     Option<String>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
40    //     String: sqlx::Type<DB>,
41    //     Option<Vec<u8>>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
42    //     Vec<u8>: sqlx::Type<DB>,
43    // {
44    //     self.value.bind_to_query(query)
45    // }
46
47    // pub fn bind_to_query_as<'a, O, DB: Database>(
48    //     &self,
49    //     query: sqlx::query::QueryAs<'a, DB, O, DB::Arguments<'a>>,
50    // ) -> sqlx::query::QueryAs<'a, DB, O, DB::Arguments<'a>>
51    // where
52    //     Option<bool>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
53    //     bool: sqlx::Type<DB>,
54    //     Option<i16>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
55    //     i16: sqlx::Type<DB>,
56    //     Option<i32>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
57    //     i32: sqlx::Type<DB>,
58    //     Option<i64>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
59    //     i64: sqlx::Type<DB>,
60    //     Option<f64>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
61    //     f64: sqlx::Type<DB>,
62    //     Option<f32>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
63    //     f32: sqlx::Type<DB>,
64    //     Option<NaiveDateTime>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
65    //     NaiveDateTime: sqlx::Type<DB>,
66    //     Option<String>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
67    //     String: sqlx::Type<DB>,
68    //     Option<Vec<u8>>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
69    //     Vec<u8>: sqlx::Type<DB>,
70    // {
71    //     self.value.bind_to_query_as(query)
72    // }
73
74    // pub fn bind_to_query_scalar<'a, O, DB: Database>(
75    //     &self,
76    //     query: sqlx::query::QueryAs<'a, DB, O, DB::Arguments<'a>>,
77    // ) -> sqlx::query::QueryAs<'a, DB, O, DB::Arguments<'a>>
78    // where
79    //     Option<bool>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
80    //     bool: sqlx::Type<DB>,
81    //     Option<i16>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
82    //     i16: sqlx::Type<DB>,
83    //     Option<i32>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
84    //     i32: sqlx::Type<DB>,
85    //     Option<i64>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
86    //     i64: sqlx::Type<DB>,
87    //     Option<f64>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
88    //     f64: sqlx::Type<DB>,
89    //     Option<f32>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
90    //     f32: sqlx::Type<DB>,
91    //     Option<NaiveDateTime>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
92    //     NaiveDateTime: sqlx::Type<DB>,
93    //     Option<String>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
94    //     String: sqlx::Type<DB>,
95    //     Option<Vec<u8>>: sqlx::Encode<'a, DB> + sqlx::Decode<'a, DB>,
96    //     Vec<u8>: sqlx::Type<DB>,
97    // {
98    //     self.value.bind_to_query_as(query)
99    // }
100}