sig
type ocaml_interface = [ `Hidden | `Normal | `Opaque ]
type ocaml_unit = [ `Both | `Ml | `Mli ]
type c_unit = [ `Both | `C | `H ]
type kind =
[ `C of Assemblage.Unit.c_unit
| `Js
| `OCaml of
Assemblage.Unit.ocaml_unit * Assemblage.Unit.ocaml_interface ]
val pp_kind : Format.formatter -> Assemblage.Unit.kind -> unit
val kind : [< `Unit ] Assemblage.part -> Assemblage.Unit.kind
val dir :
[< `Unit ] Assemblage.part -> Assemblage.Path.t Assemblage.Conf.value
val ocaml :
[< Assemblage.part_kind ] Assemblage.part ->
[< Assemblage.part_kind > `Unit ] Assemblage.part option
val c :
[< Assemblage.part_kind ] Assemblage.part ->
[< Assemblage.part_kind > `Unit ] Assemblage.part option
val js :
[< Assemblage.part_kind ] Assemblage.part ->
[< Assemblage.part_kind > `Unit ] Assemblage.part option
val v :
?usage:Assemblage.Part.usage ->
?exists:bool Assemblage.Conf.value ->
?args:Assemblage.Args.t ->
?needs:[< `Lib | `Pkg ] Assemblage.part list ->
?dir:Assemblage.Path.t Assemblage.Conf.value ->
string ->
Assemblage.Unit.kind -> [< Assemblage.part_kind > `Unit ] Assemblage.part
end