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 Jenga_lib.Scheme_type
type t
=
| Dep of t Jenga_lib.Dep.t |
| Glob of Jenga_lib.Db.Glob.t * Jenga_lib.Path.t list ‑> t |
| Rules of [ `Duplicate_target of Jenga_lib.Path.Rel.t | `Ok of Jenga_lib.Ruleset.t ] |
| All of t list |
val sexp_of_t : t ‑> Base.Sexp.t
val rules : ?sources:Jenga_lib.Path.t list ‑> Jenga_lib.Rule.t list ‑> t
val sources : Jenga_lib.Path.t list ‑> t
val dep : t Jenga_lib.Dep.t ‑> t
val glob : Jenga_lib.Db.Glob.t ‑> (Jenga_lib.Path.t list ‑> t) ‑> t
val rules_dep : Jenga_lib.Rule.t list Jenga_lib.Dep.t ‑> t
val contents : Jenga_lib.Path.t ‑> (string ‑> t) ‑> t
val empty : t