From 3473b504645a0e1986f32b93b9cae93d5659c861 Mon Sep 17 00:00:00 2001 From: Nadrieril Date: Wed, 10 Apr 2019 19:25:13 +0200 Subject: Prepare for serde support --- dhall/Cargo.toml | 1 + dhall/src/lib.rs | 1 + dhall/src/serde.rs | 9 +++++++++ 3 files changed, 11 insertions(+) create mode 100644 dhall/src/serde.rs (limited to 'dhall') diff --git a/dhall/Cargo.toml b/dhall/Cargo.toml index e898cde..7aa8b4f 100644 --- a/dhall/Cargo.toml +++ b/dhall/Cargo.toml @@ -16,6 +16,7 @@ bytecount = "0.5.1" itertools = "0.8.0" lalrpop-util = "0.16.3" term-painter = "0.2.3" +serde = { version = "1.0", features = ["derive"] } serde_cbor = "0.9.0" dhall_core = { path = "../dhall_core" } dhall_generator = { path = "../dhall_generator" } diff --git a/dhall/src/lib.rs b/dhall/src/lib.rs index b49d1c1..2d44115 100644 --- a/dhall/src/lib.rs +++ b/dhall/src/lib.rs @@ -26,6 +26,7 @@ pub use crate::traits::SimpleStaticType; pub use crate::traits::StaticType; pub use dhall_generator::SimpleStaticType; pub mod expr; +pub mod serde; pub fn from_str<'a, T: Deserialize<'a>>( s: &'a str, diff --git a/dhall/src/serde.rs b/dhall/src/serde.rs new file mode 100644 index 0000000..278ea7a --- /dev/null +++ b/dhall/src/serde.rs @@ -0,0 +1,9 @@ +use crate::expr::Type; +use crate::traits::Deserialize; +use crate::traits::Result; + +impl<'a, T: serde::Deserialize<'a>> Deserialize<'a> for T { + fn from_str(_s: &'a str, _ty: Option<&Type>) -> Result { + unimplemented!() + } +} -- cgit v1.2.3