Module Pattern.Object

module Property: { ... };
type property('M, 'T) =
  1. | Property(Property.t('M, 'T))
  2. | RestElement(RestElement.t('M, 'T))
;
and t('M, 'T) = {
  1. properties: list(property('M, 'T)),
  2. annot: Type.annotation_or_hint('M, 'T),
  3. comments: option(Syntax.t('M, list(Comment.t('M)))),
};
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;