Module MatchPattern.MemberPattern

type base('M, 'T) =
  1. | BaseIdentifier(Identifier.t('M, 'T))
  2. | BaseMember(t('M, 'T))
;
and property('M, 'T) =
  1. | PropertyString(('M, StringLiteral.t('M)))
  2. | PropertyNumber(('M, NumberLiteral.t('M)))
  3. | PropertyBigInt(('M, BigIntLiteral.t('M)))
  4. | PropertyIdentifier(Identifier.t('M, 'T))
;
and t('M, 'T) = ('T, t'('M, 'T));
and t'('M, 'T) = {
  1. base: base('M, 'T),
  2. property: property('M, 'T),
  3. comments: option(Syntax.t('M, unit)),
};
let pp_base: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => base('M, 'T) => unit;
let show_base: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => base('M, 'T) => string;
let pp_property: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => property('M, 'T) => unit;
let show_property: (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => property('M, 'T) => string;
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;
let pp_t': (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => Format.formatter => t'('M, 'T) => unit;
let show_t': (Format.formatter => 'M => unit) => (Format.formatter => 'T => unit) => t'('M, 'T) => string;