Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
Resolution and handling of opam variables + filters
Lists of available switch-global variables and their description
Lists of predefined package variables and their description
val predefined_depends_variables : OpamTypes.full_variable list
Variables that are pre-defined in the dependency filtered-formula scope, and which resolution is delayed to after the universe is computed (these are the only ones allowed in the universe, and resolved by OpamFilter.filter_deps
)
val resolve_global :
'a OpamStateTypes.global_state ->
OpamTypes.full_variable ->
OpamTypes.variable_contents option
Resolves globally available variables only
val resolve_switch :
?package:OpamTypes.package ->
'a OpamStateTypes.switch_state ->
OpamTypes.full_variable ->
OpamTypes.variable_contents option
Resolves global variables within the context of a switch. If a package is specified, "name" and "version" as taken to exclusively resolve to the current package name and version.
val resolve :
'a OpamStateTypes.switch_state ->
?opam:OpamFile.OPAM.t ->
?local:OpamVariable.variable_contents option OpamVariable.Map.t ->
OpamFilter.env
Resolves filter variables, including global, switch and package variables ; a map of locally defined variables can be supplied, as well as the opam file of origin, which is used to resolve self-references (implicit "%{bin}%"
or explicit "%{_:bin}%"
val resolve_switch_raw :
?package:OpamTypes.package ->
'a OpamStateTypes.global_state ->
OpamTypes.switch ->
OpamFile.Switch_config.t ->
OpamTypes.full_variable ->
OpamTypes.variable_contents option
Like resolve_switch
, but takes more specific parameters so that it can be used before the switch state is fully loaded
val is_dev_package : 'a OpamStateTypes.switch_state -> OpamFile.OPAM.t -> bool
val filter_depends_formula :
?build:bool ->
?post:bool ->
?test:bool ->
?doc:bool ->
?dev:bool ->
?default:bool ->
env:OpamFilter.env ->
OpamTypes.filtered_formula ->
OpamTypes.formula
The defaults are true
for build
, false for dev
and post
, and defined by OpamStateConfig for test
and bool
.
val all_depends :
?build:bool ->
?post:bool ->
?test:bool ->
?doc:bool ->
?dev:bool ->
?filter_default:bool ->
?depopts:bool ->
'a OpamStateTypes.switch_state ->
OpamFile.OPAM.t ->
OpamTypes.formula
Assumes filter_default=false
by default, i.e. dependencies with undefined filters are discarded.