Module type Var.FD

module type FD = sig .. end
Extended signature for finite domain variable (with added functions irrelevant to set variables).

include Var.BASICFD
val remove : t -> elt -> unit
remove v a removes a from the domain of v. Leaves the domain unchanged if a does not belong to it.
val values : t -> elt list
values v returns the list of all integers in the domain of v. If v is instantiated to n, returns the singleton list containing n.
val iter : (elt -> unit) -> t -> unit
iter f v iterates f on each integer in the domain of v.