Module Config.Std

module Blang = Blang
module Dune = Dune
module Dune_project = Dune_project
include module type of struct include Blang.O end
include Blang.Constructors
val base : 'a -> 'a Blang.t
val true_ : _ Blang.t
val false_ : _ Blang.t
val constant : Base.bool -> _ Blang.t

function true -> true_ | false -> false_

val not_ : 'a Blang.t -> 'a Blang.t
val and_ : 'a Blang.t Base.list -> 'a Blang.t

n-ary And

val or_ : 'a Blang.t Base.list -> 'a Blang.t

n-ary Or

val if_ : 'a Blang.t -> 'a Blang.t -> 'a Blang.t -> 'a Blang.t

if_ if then else

val (&&) : 'a Blang.t -> 'a Blang.t -> 'a Blang.t
val (||) : 'a Blang.t -> 'a Blang.t -> 'a Blang.t
val (==>) : 'a Blang.t -> 'a Blang.t -> 'a Blang.t

a ==> b is "a implies b". This is not => to avoid making it look like a comparison operator.

val not : 'a Blang.t -> 'a Blang.t
val backend : 'a -> [> `backend of 'a ] Blang.t
val cond : ('condition * 'action) Base.list -> [> `cond of ('condition * 'action) Base.list ]
val dune : 'a -> [> `dune of 'a ] Blang.t
val dune_project : 'a -> [> `dune_project of 'a ] Blang.t
val enforce : 'a -> [> `enforce of 'a ]
val equals : 'a -> [> `equals of 'a ] Blang.t
val executable : 'a -> [> `executable of 'a ] Blang.t
val generate_opam_files : 'a -> [> `generate_opam_files of 'a ] Blang.t
val glob : Base.string -> [> `glob of Glob.t ] Blang.t
val has_field : 'a -> [> `has_field of 'a ] Blang.t
val has_mode : 'a -> [> `has_mode of 'a ] Blang.t
val implicit_transitive_deps : 'a -> [> `implicit_transitive_deps of 'a ] Blang.t
val include_subdirs : 'a -> [> `include_subdirs of 'a ] Blang.t
val instrumentation : 'a -> [> `instrumentation of 'a ] Blang.t
val is_prefix : Base.string -> [> `is_prefix of Base.string ] Blang.t
val is_present : [> `is_present ] Blang.t
val is_suffix : Base.string -> [> `is_suffix of Base.string ] Blang.t
val library : 'a -> [> `library of 'a ] Blang.t
val lint : 'a -> [> `lint of 'a ] Blang.t
val modes : 'a -> [> `modes of 'a ] Blang.t
val name : 'a -> [> `name of 'a ] Blang.t
val no_preprocessing : [> `no_preprocessing ] Blang.t
val path : 'a -> [> `path of 'a ] Blang.t
val pp : Dune.Pp.Name.t -> [> `pp of Dune.Pp.Name.t ] Blang.t
val pps : 'a -> [> `pps of 'a ] Blang.t
val preprocess : 'a -> [> `preprocess of 'a ] Blang.t
val public_name : 'a -> [> `public_name of 'a ] Blang.t
val return : [> `return ]
val skip_subtree : [> `skip_subtree ]
val stanza : 'a -> [> `stanza of 'a ] Blang.t