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