sig
type stage = Early | Extending | Extended | Exiting | Loading | Configuring
val run_after_early_stage : (unit -> unit) -> unit
val run_during_extending_stage : (unit -> unit) -> unit
val run_after_extended_stage : (unit -> unit) -> unit
type exit
val nop : Cmdline.exit
exception Exit
val run_after_exiting_stage : (unit -> Cmdline.exit) -> unit
val run_after_loading_stage : (unit -> unit) -> unit
val is_going_to_load : unit -> unit
val run_after_configuring_stage : (unit -> unit) -> unit
val run_after_setting_files : (string list -> unit) -> unit
val at_normal_exit : (unit -> unit) -> unit
val at_error_exit : (exn -> unit) -> unit
module Group :
sig
type t
val default : Cmdline.Group.t
val name : Cmdline.Group.t -> string
val add :
?memo:bool -> plugin:string -> string -> Cmdline.Group.t * bool
end
val protect : exn -> string
val catch_at_toplevel : exn -> bool
val catch_toplevel_run :
f:(unit -> unit) ->
at_normal_exit:(unit -> unit) -> on_error:(exn -> unit) -> unit
val run_normal_exit_hook : unit -> unit
val run_error_exit_hook : exn -> unit
val error_occurred : exn -> unit
val bail_out : unit -> 'a
type on_from_name = { on_from_name : 'a. string -> (unit -> 'a) -> 'a; }
val parse_and_boot :
on_from_name:Cmdline.on_from_name ->
get_toplevel:(unit -> (unit -> unit) -> unit) ->
play_analysis:(unit -> unit) -> unit
val nb_given_options : unit -> int
val use_cmdline_files : (string list -> unit) -> unit
val help : unit -> Cmdline.exit
val list_plugins : unit -> Cmdline.exit
val plugin_help : string -> Cmdline.exit
val print_option_help :
Format.formatter ->
plugin:string -> group:Cmdline.Group.t -> string -> unit
val add_plugin : ?short:string -> string -> help:string -> unit
type option_setting =
Unit of (unit -> unit)
| Int of (int -> unit)
| String of (string -> unit)
| String_list of (string list -> unit)
val add_option :
string ->
plugin:string ->
group:Cmdline.Group.t ->
Cmdline.stage ->
?argname:string ->
help:string ->
visible:bool ->
ext_help:(unit, Format.formatter, unit) Pervasives.format ->
Cmdline.option_setting -> unit
val add_option_without_action :
string ->
plugin:string ->
group:Cmdline.Group.t ->
?argname:string ->
help:string ->
visible:bool ->
ext_help:(unit, Format.formatter, unit) Pervasives.format -> unit -> unit
val add_aliases :
string ->
plugin:string ->
group:Cmdline.Group.t -> Cmdline.stage -> string list -> unit
val replace_option_setting :
string ->
plugin:string -> group:Cmdline.Group.t -> Cmdline.option_setting -> unit
module Kernel_log : Log.Messages
module type Level =
sig
val value_if_set : int option Pervasives.ref
val get : unit -> int
val set : int -> unit
end
module Debug_level : Level
module Verbose_level : Level
module Kernel_debug_level : Level
module Kernel_verbose_level : Level
val kernel_debug_atleast_ref : (int -> bool) Pervasives.ref
val kernel_verbose_atleast_ref : (int -> bool) Pervasives.ref
val journal_enable : bool
val journal_isset : bool
val use_obj : bool
val use_type : bool
val quiet : bool
val deterministic : bool
val last_project_created_by_copy : (unit -> string option) Pervasives.ref
val load_all_plugins : (unit -> unit) Pervasives.ref
val add_loading_failures : string -> unit
end