1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
open Import
module Persistent = Dune_util.Persistent
let doc = "Dump the contents of a file stored in Dune's persistent database."
let man =
[ `S "DESCRIPTION"
; `P
{|Dump the contents of a file stored in Dune's persistent database in a human readable format.|}
; `Blocks Common.help_secs
]
;;
let info = Cmd.info "dump" ~doc ~man
let term =
let+ builder = Common.Builder.term
and+ file = Arg.(required & pos 0 (some Arg.path) None & Arg.info [] ~docv:"FILE") in
let _common, _config = Common.init builder in
let (Persistent.T ((module D), data)) = Persistent.load_exn (Arg.Path.path file) in
Console.print [ Dyn.pp (D.to_dyn data) ]
;;
let command = Cmd.v info term
|