sig
val equal : Cudf.package -> Cudf.package -> bool
val compare : Cudf.package -> Cudf.package -> int
val hash : Cudf.package -> int
module Cudf_hashtbl :
sig
type key = Cudf.package
type 'a t
val create : int -> 'a t
val clear : 'a t -> unit
val copy : 'a t -> 'a t
val add : 'a t -> key -> 'a -> unit
val remove : 'a t -> key -> unit
val find : 'a t -> key -> 'a
val find_all : 'a t -> key -> 'a list
val replace : 'a t -> key -> 'a -> unit
val mem : 'a t -> key -> bool
val iter : (key -> 'a -> unit) -> 'a t -> unit
val fold : (key -> 'a -> 'b -> 'b) -> 'a t -> 'b -> 'b
val length : 'a t -> int
end
module Cudf_set :
sig
type elt = Cudf.package
type t
val empty : t
val is_empty : t -> bool
val mem : elt -> t -> bool
val add : elt -> t -> t
val singleton : elt -> t
val remove : elt -> t -> t
val union : t -> t -> t
val inter : t -> t -> t
val diff : t -> t -> t
val compare : t -> t -> int
val equal : t -> t -> bool
val subset : t -> t -> bool
val iter : (elt -> unit) -> t -> unit
val fold : (elt -> 'a -> 'a) -> t -> 'a -> 'a
val for_all : (elt -> bool) -> t -> bool
val exists : (elt -> bool) -> t -> bool
val filter : (elt -> bool) -> t -> t
val partition : (elt -> bool) -> t -> t * t
val cardinal : t -> int
val elements : t -> elt list
val min_elt : t -> elt
val max_elt : t -> elt
val choose : t -> elt
val split : elt -> t -> t * bool * t
end
val to_set : CudfAdd.Cudf_set.elt list -> CudfAdd.Cudf_set.t
val encode : string -> string
val decode : string -> string
val string_of : (Format.formatter -> 'a -> 'b) -> 'a -> string
val pp_version : Format.formatter -> Cudf.package -> unit
val pp_package : Format.formatter -> Cudf.package -> unit
val string_of_version : Cudf.package -> string
val string_of_package : Cudf.package -> string
module StringSet :
sig
type elt = ExtLib.String.t
type t
val empty : t
val is_empty : t -> bool
val mem : elt -> t -> bool
val add : elt -> t -> t
val singleton : elt -> t
val remove : elt -> t -> t
val union : t -> t -> t
val inter : t -> t -> t
val diff : t -> t -> t
val compare : t -> t -> int
val equal : t -> t -> bool
val subset : t -> t -> bool
val iter : (elt -> unit) -> t -> unit
val fold : (elt -> 'a -> 'a) -> t -> 'a -> 'a
val for_all : (elt -> bool) -> t -> bool
val exists : (elt -> bool) -> t -> bool
val filter : (elt -> bool) -> t -> t
val partition : (elt -> bool) -> t -> t * t
val cardinal : t -> int
val elements : t -> elt list
val min_elt : t -> elt
val max_elt : t -> elt
val choose : t -> elt
val split : elt -> t -> t * bool * t
end
val pkgnames : Cudf.universe -> CudfAdd.StringSet.t
val add_properties :
Cudf.preamble -> (string * Cudf_types.typedecl1) list -> Cudf.preamble
val is_essential : Cudf.package -> bool
val realversionmap :
Cudf.package list ->
(Cudf_types.pkgname * string, Cudf.package) ExtLib.Hashtbl.t
val vartoint : Cudf.universe -> Cudf.package -> int
val inttovar : Cudf.universe -> int -> Cudf.package
val add_to_package_list :
('a, 'b list Pervasives.ref) ExtLib.Hashtbl.t -> 'a -> 'b -> unit
val get_package_list :
('a, 'b list Pervasives.ref) ExtLib.Hashtbl.t -> 'a -> 'b list
val unique : 'a list -> 'a list
val normalize_set : int list -> int list
val who_provides :
Cudf.universe ->
Cudf_types.pkgname * Cudf_types.constr -> Cudf.package list
val resolve_vpkg_int :
Cudf.universe -> Cudf_types.pkgname * Cudf_types.constr -> int list
val resolve_vpkgs_int :
Cudf.universe ->
(Cudf_types.pkgname * Cudf_types.constr) list -> int list
val resolve_deps :
Cudf.universe ->
(Cudf_types.pkgname * Cudf_types.constr) list -> Cudf.package list
val who_depends : Cudf.universe -> Cudf.package -> Cudf.package list list
val who_conflicts :
(int, int list Pervasives.ref) ExtLib.Hashtbl.t ->
Cudf.universe -> Cudf.package -> Cudf.package list
val init_conflicts :
Cudf.universe -> (int, int list Pervasives.ref) ExtLib.Hashtbl.t
val compute_pool : Cudf.universe -> int list list array * int list array
val cudfop :
(string * string) option ->
([> `Eq | `Geq | `Gt | `Leq | `Lt ] * string) option
end