type (_, _) t = | Ignore : (unit, unit) t| Modify : {check_late_init : bool;
} -> (state, state) t| Read : (state, unit) t| ReadOpt : (state option, unit) t| Reject : (unit, unit) t| Close : {check_late_init : bool;
} -> (state, unit) t| Open : (unit, state) t