type 'a shared =
| Shared of 'a
| Single of 'a
type ('a, 'ctx) t_store = {
act_get : unit -> 'a array;
act_get_shared : unit -> 'a shared array;
act_store : 'ctx -> 'a -> int;
act_store_shared : 'ctx -> 'a -> int;
}
module type Stored = sig ... end
module type S = sig ... end