package jenga

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

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 =
  1. | Dep of t Dep.t
  2. | Glob of Db.Glob.t * Path.t list -> t
  3. | Rules of [ `Duplicate_target of Path.Rel.t | `Ok of Ruleset.t ]
  4. | All of t list
val sexp_of_t : t -> Ppx_sexp_conv_lib.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