about summary refs log tree commit diff
path: root/tvix/serde/src/lib.rs
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2022-12-31T15·13+0300
committertazjin <tazjin@tvl.su>2023-01-02T22·24+0000
commit90c32eec7a382195e6d533c6e55a3d20c58cc3a5 (patch)
tree81f70eb9ab9eb621ab9a6d11d3951a58292cf28c /tvix/serde/src/lib.rs
parent49ee3e3b148c1edb74a15e26eacb5911647d1de5 (diff)
feat(tvix/serde): initial Nix->serde::Deserialize impl r/5566
This will make it possible fairly easily use Nix to represent
arbitrary data structures, e.g. for using Nix as a config language.

Only pure Nix (i.e. no `import` etc.) is supported for now.

Not all types, specifically no struct traversal, are implemented in
this commit.

Change-Id: I9ac91a229a0d12bf818e6e3249f3e5a691599a2c
Reviewed-on: https://cl.tvl.fyi/c/depot/+/7712
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
Diffstat (limited to '')
-rw-r--r--tvix/serde/src/lib.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/tvix/serde/src/lib.rs b/tvix/serde/src/lib.rs
new file mode 100644
index 0000000000..b3052be596
--- /dev/null
+++ b/tvix/serde/src/lib.rs
@@ -0,0 +1,8 @@
+//! `tvix-serde` implements (de-)serialisation of Rust data structures
+//! to/from Nix. This is intended to make it easy to use Nix as as
+//! configuration language.
+
+mod de;
+mod error;
+
+pub use de::from_str;