sig
val verbose_atleast : int -> bool
val debug_atleast : int -> bool
val set_debug_keys : string list -> unit
val get_debug_keyset : unit -> string list
val result : ?level:int -> 'a Log.pretty_printer
val feedback : ?level:int -> 'a Log.pretty_printer
val debug : ?level:int -> ?dkey:string -> 'a Log.pretty_printer
val warning : 'a Log.pretty_printer
val error : 'a Log.pretty_printer
val abort : ('a, 'b) Log.pretty_aborter
val failure : 'a Log.pretty_printer
val fatal : ('a, 'b) Log.pretty_aborter
val verify : bool -> ('a, bool) Log.pretty_aborter
val not_yet_implemented : ('a, Format.formatter, unit, 'b) format4 -> 'a
val deprecated : string -> now:string -> ('a -> 'b) -> 'a -> 'b
val with_result : (Log.event -> 'a) -> ('b, 'a) Log.pretty_aborter
val with_warning : (Log.event -> 'a) -> ('b, 'a) Log.pretty_aborter
val with_error : (Log.event -> 'a) -> ('b, 'a) Log.pretty_aborter
val with_failure : (Log.event -> 'a) -> ('b, 'a) Log.pretty_aborter
val log :
?kind:Log.kind -> ?verbose:int -> ?debug:int -> 'a Log.pretty_printer
val with_log :
(Log.event -> 'a) -> ?kind:Log.kind -> ('b, 'a) Log.pretty_aborter
val register : Log.kind -> (Log.event -> unit) -> unit
val register_tag_handlers : (string -> string) * (string -> string) -> unit
val add_group : ?memo:bool -> string -> Plugin.group
module Help : Plugin.Bool
module Verbose : Plugin.Int
module Debug : Plugin.Int
val help : Plugin.group
val messages : Plugin.group
val parameters : unit -> Parameter.t list
module PrintVersion : Plugin.Bool
module PrintShare : Plugin.Bool
module PrintLib : Plugin.Bool
module PrintPluginPath : Plugin.Bool
module GeneralVerbose : Plugin.Int
module GeneralDebug : Plugin.Int
module Quiet : Plugin.Bool
module Unicode :
sig
type t = bool
val parameter : Parameter.t
val set : t -> unit
val add_set_hook : (t -> t -> unit) -> unit
val add_update_hook : (t -> t -> unit) -> unit
val get : unit -> t
val clear : unit -> unit
val is_default : unit -> bool
val option_name : string
val self : State.t
val name : string
val kind : State.kind
val mark_as_computed : ?project:Project.t -> unit -> unit
val is_computed : ?project:Project.t -> unit -> bool
module Datatype : Datatype.S
val add_hook_on_update : (Datatype.t -> unit) -> unit
val howto_marshal : (Datatype.t -> 'a) -> ('a -> Datatype.t) -> unit
val equal : t -> t -> bool
val add_aliases : string list -> unit
val add_alias : string list -> unit
val is_set : unit -> bool
val unsafe_set : t -> unit
val on : unit -> unit
val off : unit -> unit
val without_unicode : ('a -> 'b) -> 'a -> 'b
end
module UseUnicode : Plugin.Bool
module Time : Plugin.String
module Collect_messages : Plugin.Bool
module PrintCode : Plugin.Bool
module PrintComments : Plugin.Bool
module CodeOutput :
sig
type t = string
val parameter : Parameter.t
val set : t -> unit
val add_set_hook : (t -> t -> unit) -> unit
val add_update_hook : (t -> t -> unit) -> unit
val get : unit -> t
val clear : unit -> unit
val is_default : unit -> bool
val option_name : string
val self : State.t
val name : string
val kind : State.kind
val mark_as_computed : ?project:Project.t -> unit -> unit
val is_computed : ?project:Project.t -> unit -> bool
module Datatype : Datatype.S
val add_hook_on_update : (Datatype.t -> unit) -> unit
val howto_marshal : (Datatype.t -> 'a) -> ('a -> Datatype.t) -> unit
val equal : t -> t -> bool
val add_aliases : string list -> unit
val add_alias : string list -> unit
val is_set : unit -> bool
val unsafe_set : t -> unit
val set_possible_values : string list -> unit
val get_possible_values : unit -> string list
val output : (Format.formatter -> unit) -> unit
end
module FloatNormal : Plugin.Bool
module FloatRelative : Plugin.Bool
module FloatHex : Plugin.Bool
module BigIntsHex : Plugin.Int
module SaveState : Plugin.String
module LoadState : Plugin.String
module AddPath : Plugin.String_list
module LoadModule : Plugin.String_set
module LoadScript : Plugin.String_set
module Dynlink : Plugin.Bool
module Journal :
sig module Enable : Plugin.Bool module Name : Plugin.String end
module UnrollingLevel : Plugin.Int
module Machdep : Plugin.String
module CppCommand : Plugin.String
module CppExtraArgs : Plugin.String_set
module ReadAnnot : Plugin.Bool
module PreprocessAnnot : Plugin.Bool
module TypeCheck : Plugin.Bool
module ContinueOnAnnotError : Plugin.Bool
module SimplifyCfg : Plugin.Bool
module KeepSwitch : Plugin.Bool
module Constfold : Plugin.Bool
module Files :
sig
type t = string list
val parameter : Parameter.t
val set : t -> unit
val add_set_hook : (t -> t -> unit) -> unit
val add_update_hook : (t -> t -> unit) -> unit
val get : unit -> t
val clear : unit -> unit
val is_default : unit -> bool
val option_name : string
val self : State.t
val name : string
val kind : State.kind
val mark_as_computed : ?project:Project.t -> unit -> unit
val is_computed : ?project:Project.t -> unit -> bool
module Datatype : Datatype.S
val add_hook_on_update : (Datatype.t -> unit) -> unit
val howto_marshal : (Datatype.t -> 'a) -> ('a -> Datatype.t) -> unit
val equal : t -> t -> bool
val add_aliases : string list -> unit
val add_alias : string list -> unit
val is_set : unit -> bool
val unsafe_set : t -> unit
val add : string -> unit
val remove : string -> unit
val is_empty : unit -> bool
val get_set : ?sep:string -> unit -> string
val iter : (string -> unit) -> unit
val exists : (string -> bool) -> bool
module Check : Plugin.Bool
module Copy : Plugin.Bool
module Orig_name : Plugin.Bool
end
val normalization_parameters : Parameter.t list
module AllowDuplication : Plugin.Bool
module DoCollapseCallCast : Plugin.Bool
module ForceRLArgEval : Plugin.Bool
module MainFunction :
sig
type t = string
val parameter : Parameter.t
val set : t -> unit
val add_set_hook : (t -> t -> unit) -> unit
val add_update_hook : (t -> t -> unit) -> unit
val get : unit -> t
val clear : unit -> unit
val is_default : unit -> bool
val option_name : string
val self : State.t
val name : string
val kind : State.kind
val mark_as_computed : ?project:Project.t -> unit -> unit
val is_computed : ?project:Project.t -> unit -> bool
module Datatype : Datatype.S
val add_hook_on_update : (Datatype.t -> unit) -> unit
val howto_marshal : (Datatype.t -> 'a) -> ('a -> Datatype.t) -> unit
val equal : t -> t -> bool
val add_aliases : string list -> unit
val add_alias : string list -> unit
val is_set : unit -> bool
val set_possible_values : string list -> unit
val get_possible_values : unit -> string list
val unsafe_set : t -> unit
end
module LibEntry :
sig
type t = bool
val parameter : Parameter.t
val set : t -> unit
val add_set_hook : (t -> t -> unit) -> unit
val add_update_hook : (t -> t -> unit) -> unit
val get : unit -> t
val clear : unit -> unit
val is_default : unit -> bool
val option_name : string
val self : State.t
val name : string
val kind : State.kind
val mark_as_computed : ?project:Project.t -> unit -> unit
val is_computed : ?project:Project.t -> unit -> bool
module Datatype : Datatype.S
val add_hook_on_update : (Datatype.t -> unit) -> unit
val howto_marshal : (Datatype.t -> 'a) -> ('a -> Datatype.t) -> unit
val equal : t -> t -> bool
val add_aliases : string list -> unit
val add_alias : string list -> unit
val is_set : unit -> bool
val on : unit -> unit
val off : unit -> unit
val unsafe_set : t -> unit
end
module UnspecifiedAccess : Plugin.Bool
module ArrayPrecisionLevel : Plugin.Int
module PreciseUnions : Plugin.Bool
module Overflow : Plugin.Bool
module StopAtFirstAlarm : Plugin.Bool
module SafeArrays : Plugin.Bool
module AbsoluteValidRange : Plugin.String
end