module OpamSolution: sig
.. end
Applying solver solutions
val resolve : ?verbose:bool ->
OpamState.state ->
OpamTypes.user_action ->
requested:OpamTypes.name_set ->
orphans:OpamTypes.package_set ->
OpamTypes.atom OpamTypes.request ->
(OpamSolver.solution, OpamCudf.conflict) OpamTypes.result
Resolve an user request
val apply : ?ask:bool ->
OpamState.state ->
OpamTypes.user_action ->
requested:OpamPackage.Name.Set.t ->
OpamSolver.solution -> OpamTypes.solver_result
Apply a solution returned by the solver. If ask
is not
specified, prompts the user whenever the solution isn't
obvious from the request
val resolve_and_apply : ?ask:bool ->
OpamState.state ->
OpamTypes.user_action ->
requested:OpamPackage.Name.Set.t ->
orphans:OpamTypes.package_set ->
OpamTypes.atom OpamTypes.request -> OpamTypes.solver_result
Call the solver to get a solution and then call apply
. If ask
is not
specified, prompts the user whenever the solution isn't obvious from the
request
val check_solution : OpamState.state -> OpamTypes.solver_result -> unit
Raise an error if no solution is found or in case of error.
Atoms
val eq_atom : OpamTypes.name -> OpamTypes.version -> OpamTypes.atom
Return an atom with a string version constraint
val atom_of_package : OpamTypes.package -> OpamTypes.atom
Return a simple atom, with no version constrain, from a package
val atoms_of_packages : OpamTypes.package_set -> OpamTypes.atom list
Return a list of simple atoms (ie. with no version constraints)
from a set of packages
val eq_atoms_of_packages : OpamTypes.package_set -> OpamTypes.atom list
Return a list of constrained atoms from a set of packages
val check_availability : ?permissive:bool ->
OpamState.state -> OpamPackage.Set.t -> OpamTypes.atom list -> unit
Checks that the atoms can possibly be verified (individually) in a package
set. Displays an error and exits otherwise. permissive
just changes the
error message.
val sanitize_atom_list : ?permissive:bool ->
OpamState.state -> OpamTypes.atom list -> OpamTypes.atom list
Takes a "raw" list of atoms (from the user), and match it to existing
packages. Match packages with the wrong capitalisation, and raises errors on
non-existing packages, and unavailable ones unless permissive
is set.
Exits with a message on error.
val sum : OpamTypes.stats -> int
Stats