module type S =sig..end
Operations over selections which depend on a State Dependency Graph implementation.
val with_dependencies : State.t -> State_selection.tThe selection containing the given state and all its dependencies.
val only_dependencies : State.t -> State_selection.tThe selection containing all the dependencies of the given state (but not this state itself).
val with_codependencies : State.t -> State_selection.tThe selection containing the given state and all its co-dependencies.
val only_codependencies : State.t -> State_selection.tThe selection containing all the co-dependencies of the given state (but not this state itself).
val union : State_selection.t -> State_selection.t -> State_selection.tUnion of two selections.
val list_union : State_selection.t list -> State_selection.tUnion of an arbitrary number of selection (0 gives an empty selection)
val diff : State_selection.t -> State_selection.t -> State_selection.tDifference between two selections.
val cardinal : State_selection.t -> intSize of a selection.
val to_list : State_selection.t -> State.t listConvert a selection into a list of states.
val pretty : Stdlib.Format.formatter -> State_selection.t -> unitDisplay a selection.
val pretty_witness : Stdlib.Format.formatter -> State_selection.t -> unitDisplay a selection in a more concise form. (Using the atomic operations that were used to create it.)
val iter_succ : (State.t -> unit) -> State_selection.t -> State.t -> unitIterate over the successor of a state in a selection. The order is unspecified.
val fold_succ : (State.t -> 'a -> 'a) -> State_selection.t -> State.t -> 'a -> 'aIterate over the successor of a state in a selection. The order is unspecified.
val iter : (State.t -> unit) -> State_selection.t -> unitIterate over a selection. The order is unspecified.
val fold : (State.t -> 'a -> 'a) -> State_selection.t -> 'a -> 'aFold over a selection. The order is unspecified.
val iter_in_order : (State.t -> unit) -> State_selection.t -> unitIterate over a selection in a topological ordering compliant with the
State Dependency Graph. Less efficient that State_selection.S.iter.
val fold_in_order : (State.t -> 'a -> 'a) -> State_selection.t -> 'a -> 'aFold over a selection in a topological ordering compliant with the
State Dependency Graph. Less efficient that State_selection.S.iter.