Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
Configuration options for the state lib (record, global reference, setter, initialisation)
type t = private {
root_dir : OpamFilename.Dir.t;
current_switch : OpamSwitch.t option;
switch_from : [ `Env | `Command_line | `Default ];
jobs : int Lazy.t;
dl_jobs : int;
build_test : bool;
build_doc : bool;
dryrun : bool;
makecmd : string Lazy.t;
ignore_constraints_on : OpamTypes.name_set;
unlock_base : bool;
no_env_notice : bool;
locked : string option;
}
type 'a options_fun =
?root_dir:OpamFilename.Dir.t ->
?current_switch:OpamSwitch.t ->
?switch_from:[ `Env | `Command_line | `Default ] ->
?jobs:int Lazy.t ->
?dl_jobs:int ->
?build_test:bool ->
?build_doc:bool ->
?dryrun:bool ->
?makecmd:string Lazy.t ->
?ignore_constraints_on:OpamTypes.name_set ->
?unlock_base:bool ->
?no_env_notice:bool ->
?locked:string option ->
'a
include OpamStd.Config.Sig
with type t := t
and type 'a options_fun := 'a options_fun
val default : t
The default values of the options to use at startup
val set : t -> (unit -> t) options_fun
Use to update any option in a t
, using the optional arguments of options_fun
. E.g. set opts ?option1:1 ?option4:"x" ()
val setk : (t -> 'a) -> t -> 'a options_fun
Same as set
, but passes the result to a continuation, allowing argument stacking
The global reference containing the currently set library options. Access using OpamXxxConfig.(!r.field)
.
val update : ?noop:_ -> (unit -> unit) options_fun
Updates the currently set options in r
according to the optional arguments
val init : ?noop:_ -> (unit -> unit) options_fun
Sets the options, reading the environment to get default values when unspecified
val initk : 'a -> 'a options_fun
Sets the options like init
, but returns the given value (for arguments stacking)
val opamroot : ?root_dir:OpamTypes.dirname -> unit -> OpamTypes.dirname
Get the initial opam root value (from default, env or optional argument). This allows to get it before doing the init, which is useful to get the configuration file used to fill some options to init()
val load : OpamTypes.dirname -> OpamFile.Config.t option
Loads the global configuration file, protecting against concurrent writes
val load_defaults : OpamFilename.Dir.t -> OpamFile.Config.t option
Loads the config file from the OPAM root and updates default values for all related OpamXxxConfig modules. Doesn't read the env yet, the init
functions should still be called afterwards. OpamFormat should be initialised beforehand, as it may impact the config file loading.
Returns the config file that was found, if any
val get_switch : unit -> OpamTypes.switch
Returns the current switch, failing with an error message is none is set.
val get_switch_opt : unit -> OpamTypes.switch option
Returns the current switch, if any is set.
val get_current_switch_from_cwd : OpamFilename.Dir.t -> OpamTypes.switch option
The function used to locate an external switch from parents of the current directory. Takes the opam root as parameter, and rejects any external switch configured with a different root
val local_switch_exists : OpamFilename.Dir.t -> OpamTypes.switch -> bool
Checks if a local switch exists and is configurade for the given root
val resolve_local_switch :
OpamFilename.Dir.t ->
OpamTypes.switch ->
OpamTypes.switch
Resolves the switch if it is a link to a global switch in the given root (return unchanged otherwise)