Module Assemblage.Pkg

module Pkg: sig .. end
Package part.

Packages are named entities that provide action command arguments in certain contexts. Some parts query and use these arguments when packages are specified in their needs.



Metadata


type lookup = Assemblage.Ctx.t -> string list 
The type for lookups. Given a context the package answers with a list of command arguments.
type kind = [ `OCamlfind
| `Other of string * lookup Assemblage.Conf.value
| `Pkg_config ]
The type for package kinds.
val pp_kind : Format.formatter -> kind -> unit
pp_kind ppf k prints an unspecified representation of k on ppf.
val kind : [< `Pkg ] Assemblage.part -> kind
kind p is p's package kind.
val lookup : [< `Pkg ] Assemblage.part -> lookup Assemblage.Conf.value
query p q is p's lookup function.
val opt : [< `Pkg ] Assemblage.part -> bool
opt p is true if the package is optional.
val ocamlfind : [< Assemblage.part_kind ] Assemblage.part ->
[< Assemblage.part_kind > `Pkg ] Assemblage.part option
ocamlfind p is Some p iff p is an `OCamlfind package.
val pkg_config : [< Assemblage.part_kind ] Assemblage.part ->
[< Assemblage.part_kind > `Pkg ] Assemblage.part option
pkg_config p is Some p iff p is a `Pkg_config package.
val other : [< Assemblage.part_kind ] Assemblage.part ->
[< Assemblage.part_kind > `Pkg ] Assemblage.part option
c p is Some p iff p is a C package.

Packages


val v : ?usage:Assemblage.Part.usage ->
?exists:bool Assemblage.Conf.value ->
?opt:bool ->
string ->
kind -> [< Assemblage.part_kind > `Pkg ] Assemblage.part
v opt name kind is a package named name of the given kind. name is the name used for looking up the package system if kind is not `Other. opt should be true if the package is optional.
val list_lookup : [< Assemblage.part_kind ] Assemblage.part list ->
lookup Assemblage.Conf.value
list_lookup ps is a lookup function that looks up all package in ps and returns the aggregated result. The arguments are in order of package appearance.