@@ -99,13 +99,14 @@ module Dune_file = struct
9999 | x -> x
100100 ;;
101101
102- let to_dyn x =
103- let open Dyn in
104- match x with
105- | Normal -> variant " Normal" []
106- | Parameter -> variant " Parameter" []
107- | Ppx_deriver args -> variant " Ppx_deriver" [ Ppx_args. to_dyn args ]
108- | Ppx_rewriter args -> variant " Ppx_rewriter" [ Ppx_args. to_dyn args ]
102+ let to_dyn x =
103+ let open Dyn in
104+ match x with
105+ | Normal -> variant " Normal" []
106+ | Parameter -> variant " Parameter" []
107+ | Ppx_deriver args -> variant " Ppx_deriver" [ Ppx_args. to_dyn args ]
108+ | Ppx_rewriter args -> variant " Ppx_rewriter" [ Ppx_args. to_dyn args ]
109+ ;;
109110end
110111
111112type t =
@@ -117,24 +118,14 @@ let equal = Poly.equal
117118let to_dyn x =
118119 let open Dyn in
119120 match x with
120- | Dune_file t -> variant " Dune_file" [Dune_file. to_dyn t]
121+ | Dune_file t -> variant " Dune_file" [ Dune_file. to_dyn t ]
121122 | Virtual -> variant " Virtual" []
122123;;
123124
124125let decode =
125126 let open Decoder in
126127 (* TODO: Less code reuse with either? *)
127- sum
128- [ " normal" , return (Dune_file Normal )
129- ; " parameter" , return (Dune_file Parameter )
130- ; ( " ppx_deriver"
131- , let + args = Ppx_args. decode in
132- Dune_file (Ppx_deriver args) )
133- ; ( " ppx_rewriter"
134- , let + args = Ppx_args. decode in
135- Dune_file (Ppx_rewriter args) )
136- ; " virtual" , return Virtual
137- ]
128+ map ~f: (fun k -> Dune_file k) Dune_file. decode < |> enum [ " virtual" , Virtual ]
138129;;
139130
140131let encode t =
0 commit comments