Statement.Ifmodule Alternate: { ... };type t('M, 'T) = {test: Expression.t('M, 'T),consequent: Statement.t('M, 'T),alternate: option(Alternate.t('M, 'T)),comments: option(Syntax.t('M, unit)),};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;