Module Match.Case

module InvalidSyntax : sig ... end
type ('M, 'T, 'B) t = 'M * ('M, 'T, 'B) t'
and ('M, 'T, 'B) t' = {
  1. pattern : ('M, 'T) MatchPattern.t;
  2. body : 'B;
  3. guard : ('M, 'T) Expression.t option;
  4. comments : ('M, unit) Syntax.t option;
  5. invalid_syntax : 'M InvalidSyntax.t;
  6. case_match_root_loc : 'M;
}
val pp : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> (Format.formatter -> 'B -> unit) -> Format.formatter -> ('M, 'T, 'B) t -> unit
val show : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> (Format.formatter -> 'B -> unit) -> ('M, 'T, 'B) t -> string
val pp_t' : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> (Format.formatter -> 'B -> unit) -> Format.formatter -> ('M, 'T, 'B) t' -> unit
val show_t' : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> (Format.formatter -> 'B -> unit) -> ('M, 'T, 'B) t' -> string