Functor Partition.MakeFlow

module MakeFlow: 
functor (Abstract : Abstractions.Eva-> sig .. end

Flows are used to transfer states from one partition to another, by applying transfer functions and partitioning actions. They do not enforce the unicity of keys.

Parameters:
Abstract : Abstractions.Eva

type state = Abstract.Dom.t 
type t 
val empty : t
val initial : state list -> t
val to_list : t -> state list
val of_partition : state Partition.partition -> t
val to_partition : t -> state Partition.partition
val is_empty : t -> bool
val size : t -> int
val union : t -> t -> t
val transfer_keys : t -> Partition.action -> t
val transfer_states : (state -> state list) ->
t -> t
val iter : (state -> unit) -> t -> unit
val filter_map : (Partition.key -> state -> state option) ->
t -> t
val join_duplicate_keys : t -> t