Db
contains types which will be stored persistently, so jenga doesn't need to rerun
all the actions on restart.
This is different from make
which does not need persistent state, because instead
of storing the knowledge that dependencies+action produced targets, it uses timestamps
dependencies > timestamps of targets to claim that targets need to be recreated, and
it doesn't even make record the dependency on the action.
Most types do not expose bin_ios because there is some sharing in the serialized
format across values (see With_index), and so they cannot be serialized
independently.
module Kind : sig ... end
module Mtime : sig ... end
module Stats : sig ... end
module Digest : sig ... end
module Listing : sig ... end
module Glob : sig ... end
module Pm_key : sig ... end
module Proxy : sig ... end
module Proxy_map : sig ... end
module Sandbox_kind : sig ... end
module Save_proxy : sig ... end
module Process_proxy : sig ... end
module Action_proxy : sig ... end
module Rule_proxy : sig ... end
module Output_proxy : sig ... end
val create : unit ‑> t
val digest_cache : t ‑> (Stats.t * Digest.t) Path.Table.t
val generated : t ‑> Path.Set.t Path.Rel.Table.t
val ruled : t ‑> Rule_proxy.t Path.Rel.Table.t
val actioned : t ‑> Output_proxy.t Action_proxy.Table.t
module With_index : sig ... end with type outer_t := t