From c642042536362bba0d3ee0ebf6a6c33a888a0ff5 Mon Sep 17 00:00:00 2001 From: Marcos Magueta Date: Mon, 9 Mar 2026 21:48:51 -0300 Subject: defenestrate json --- lib/tuple.ml | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'lib/tuple.ml') diff --git a/lib/tuple.ml b/lib/tuple.ml index 3c11fba..11fc508 100644 --- a/lib/tuple.ml +++ b/lib/tuple.ml @@ -1,18 +1,25 @@ -module AttributeMap = Map.Make(String) +module AttributeMap = struct + include Map.Make(String) + let sexp_of_t sexp_of_v m = + Sexplib.Sexp.List + (List.map (fun (k, v) -> Sexplib.Sexp.List [Sexplib.Sexp.Atom k; sexp_of_v v]) + (bindings m)) +end type non_materialized = { hash : Conventions.Hash.t; relation : Conventions.Name.t; attributes : Attribute.referenced AttributeMap.t; -} +} [@@deriving sexp_of] type materialized = { relation: Conventions.Name.t; - attributes: Attribute.materialized AttributeMap.t -} + attributes: Attribute.materialized AttributeMap.t; +} [@@deriving sexp_of] -type t = +type t = | Materialized of materialized | NonMaterialized of non_materialized +[@@deriving sexp_of] let make_materialized ~relation ~attributes = Materialized { relation; attributes } -- cgit v1.2.3