sig
type kind = [ `C | `OCaml | `OCaml_toplevel ]
val pp_kind : Format.formatter -> As_part_bin.kind -> unit
val kind : [< `Bin ] As_part.t -> As_part_bin.kind
val byte : [< `Bin ] As_part.t -> bool
val native : [< `Bin ] As_part.t -> bool
val js : [< `Bin ] As_part.t -> bool
val ocaml :
[< As_part.kind ] As_part.t -> [< As_part.kind > `Bin ] As_part.t option
val ocaml_toplevel :
[< As_part.kind ] As_part.t -> [< As_part.kind > `Bin ] As_part.t option
val c :
[< As_part.kind ] As_part.t -> [< As_part.kind > `Bin ] As_part.t option
val v :
?usage:As_part.usage ->
?exists:bool As_conf.value ->
?args:As_args.t ->
?byte:bool ->
?native:bool ->
?js:bool ->
string ->
As_part_bin.kind ->
[< `Lib | `Pkg | `Unit ] As_part.t list ->
[< As_part.kind > `Bin ] As_part.t
val to_cmd :
?ext:As_path.ext -> [< `Bin ] As_part.t -> As_acmd.cmd As_conf.value
val to_cmd_path :
?abs:bool ->
?ext:As_path.ext -> [< `Bin ] As_part.t -> As_path.t As_conf.value
val exists : ?ext:As_path.ext -> [< `Bin ] As_part.t -> bool As_conf.value
val gen :
?usage:As_part.usage ->
?exists:bool As_conf.value ->
?args:As_args.t ->
?dir:As_path.t As_conf.value ->
?name:string ->
?ext:As_path.ext ->
?stdin:As_path.t As_conf.value ->
?stdout:As_path.t As_conf.value ->
?stderr:As_path.t As_conf.value ->
[< `Bin ] As_part.t ->
string list As_conf.value -> [< As_part.kind > `Base ] As_part.t
end