Statement.Switchmodule Case: { ... };type t('M, 'T) = {discriminant: Expression.t('M, 'T),cases: list(Case.t('M, 'T)),comments: option(Syntax.t('M, unit)),exhaustive_out: 'T,};let pp:
(Format.formatter => 'M => unit) =>
(Format.formatter => 'T => unit) =>
Format.formatter =>
t('M, 'T) =>
unit;let show:
(Format.formatter => 'M => unit) =>
(Format.formatter => 'T => unit) =>
t('M, 'T) =>
string;