package opam-state

  1. Overview
  2. Docs

Module OpamPackageVarSource

Resolution and handling of opam variables + filters

Sourceval global_variable_names : (string * string) list

Lists of available switch-global variables and their description

Sourceval package_variable_names : (string * string) list

Lists of predefined package variables and their description

Sourceval 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)

Sourceval resolve_global : 'a OpamStateTypes.global_state -> OpamTypes.full_variable -> OpamTypes.variable_contents option

Resolves globally available variables only

Sourceval 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.

Sourceval 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}%"

Sourceval 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

Sourceval is_dev_package : 'a OpamStateTypes.switch_state -> OpamFile.OPAM.t -> bool
Sourceval 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.

Sourceval 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.

OCaml

Innovation. Community. Security.