Module B0_tool.Cli

val man_see_manual : Cmdliner.Manpage.block
val editor_envs : Cmdliner.Cmd.Env.info list
val format : [ `Long | `Normal | `Short ] Cmdliner.Term.t
val pos_key : string Cmdliner.Term.t
val no_pager : bool Cmdliner.Term.t

N.B. only useful for subcmd, it's already in the driver conf.

val s_scope_selection : string
val subcmd : ?exits:Cmdliner.Cmd.Exit.info list -> ?envs:Cmdliner.Cmd.Env.info list -> ?synopsis:Cmdliner.Manpage.block -> string -> doc:string -> descr:Cmdliner.Manpage.block -> (unit -> B0_std.Os.Exit.t) Cmdliner.Term.t -> B0_std.Os.Exit.t Cmdliner.Cmd.t

subcmd does not require driver configuration options or a b0 file it justs setups logging and the tty stuff.

val subcmd_with_driver_conf : ?exits:Cmdliner.Cmd.Exit.info list -> ?envs:Cmdliner.Cmd.Env.info list -> ?synopsis:Cmdliner.Manpage.block -> string -> doc:string -> descr:Cmdliner.Manpage.block -> (B0_driver.Conf.t -> B0_std.Os.Exit.t) Cmdliner.Term.t -> B0_std.Os.Exit.t Cmdliner.Cmd.t

subcmd_with_driver_conf gives the options for a driver configuration value.

val subcmd_with_b0_file_if_any : ?exits:Cmdliner.Cmd.Exit.info list -> ?envs:Cmdliner.Cmd.Env.info list -> ?synopsis:Cmdliner.Manpage.block -> string -> doc:string -> descr:Cmdliner.Manpage.block -> (B0_driver.Conf.t -> B0_std.Os.Exit.t) Cmdliner.Term.t -> B0_std.Os.Exit.t Cmdliner.Cmd.t

subcmd_with_b0_if_any will have a b0 file if it exists and can be compiled. It will still execute if non of this is true. The command can check B0_driver.has_b0_file and B0_driver.has_failed_b0_file to understand the status at runtime. If the compilation fails a warning is automatically logged.

val subcmd_with_b0_file : ?exits:Cmdliner.Cmd.Exit.info list -> ?envs:Cmdliner.Cmd.Env.info list -> ?synopsis:Cmdliner.Manpage.block -> string -> doc:string -> descr:Cmdliner.Manpage.block -> (B0_driver.Conf.t -> B0_std.Os.Exit.t) Cmdliner.Term.t -> B0_std.Os.Exit.t Cmdliner.Cmd.t

subcmd_with_b0_file requires a functioning b0 file.

val cmd_group : ?exits:Cmdliner.Cmd.Exit.info list -> ?envs:Cmdliner.Cmd.Env.info list -> ?synopsis:Cmdliner.Manpage.block -> string -> doc:string -> descr:Cmdliner.Manpage.block -> ?default:B0_std.Os.Exit.t Cmdliner.Term.t -> B0_std.Os.Exit.t Cmdliner.Cmd.t list -> B0_std.Os.Exit.t Cmdliner.Cmd.t

cmd_group just groups without requiring anything particular.