summaryrefslogtreecommitdiffstats
path: root/src/client_ext/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/client_ext/mod.rs')
-rw-r--r--src/client_ext/mod.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/client_ext/mod.rs b/src/client_ext/mod.rs
new file mode 100644
index 0000000..0693d99
--- /dev/null
+++ b/src/client_ext/mod.rs
@@ -0,0 +1,26 @@
+use serde::Deserializer;
+use tdlib_rs::client::ClientLike;
+
+use serde::Deserialize;
+use serde_derive::{Serialize, Deserialize};
+use serde_json::{json, Value as SerdeJsonValue};
+use tdlib_rs::Client;
+use tdlib_rs::client::ResponseFuture;
+
+#[allow(unused)]
+pub fn deserialize_i64_0<'de, D: Deserializer<'de>>(deserializer: D) -> std::result::Result<i64, D::Error> {
+ String::deserialize(deserializer)?.parse::<i64>().map_err(serde::de::Error::custom)
+}
+#[allow(unused)]
+pub fn deserialize_i64_1<'de, D: Deserializer<'de>>(deserializer: D) -> std::result::Result<Vec<i64>, D::Error> {
+ use std::str::FromStr;
+ Vec::<&'de str>::deserialize(deserializer)?
+ .into_iter()
+ .map(i64::from_str)
+ .collect::<std::result::Result<Vec<_>, _>>()
+ .map_err(serde::de::Error::custom)
+}
+
+include!("generated.rs");
+
+impl ClientExt for Client {}