Data
module Phase : sig ... end
type ('phase, 'players) t = {
phase : 'phase;
players : 'players;
}
type ('phase, 'rolemap) initial = {
starting_phase : 'phase;
rolemap : 'rolemap;
module type S = sig ... end
module Make (P : Phase.S) (Ps : Players.S) : S with module Phase = P and module Players = Ps and type t = (P.t, Ps.t) t and type initial = (P.t, bool Ps.Player.Roles.Role.Map.t) initial