Module Jenga_lib.Scheme

Scheme.t supports the description of rule-generation schemes in jenga, where the scheme may itself have dependencies. This allows generation of rules based on a glob pattern, say *.c, or generation w.r.t to a config file.

include module type of Scheme_type
type t =
| Dep of t Dep.t
| Glob of Db.Glob.t * Path.t list ‑> t
| Rules of [ `Duplicate_target of Path.Rel.t | `Ok of Ruleset.t ]
| All of t list
val sexp_of_t : t ‑> Base.Sexp.t
val rules : ?⁠sources:Path.t list ‑> Rule.t list ‑> t
val sources : Path.t list ‑> t
val dep : t Dep.t ‑> t
val all : t list ‑> t
val glob : Db.Glob.t ‑> (Path.t list ‑> t) ‑> t
val rules_dep : Rule.t list Dep.t ‑> t
val contents : Path.t ‑> (string ‑> t) ‑> t
val empty : t