Module Object.Property

type ('M, 'T) key =
  1. | StringLiteral of 'M * 'M StringLiteral.t
  2. | NumberLiteral of 'M * 'M NumberLiteral.t
  3. | BigIntLiteral of 'M * 'M BigIntLiteral.t
  4. | Identifier of ('M, 'T) Identifier.t
  5. | Computed of ('M, 'T) ComputedKey.t
and ('M, 'T) t = 'M * ('M, 'T) t'
and ('M, 'T) t' = {
  1. key : ('M, 'T) key;
  2. pattern : ('M, 'T) Pattern.t;
  3. default : ('M, 'T) Expression.t option;
  4. shorthand : bool;
}
val pp_key : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> Format.formatter -> ('M, 'T) key -> unit
val show_key : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> ('M, 'T) key -> string
val pp : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> Format.formatter -> ('M, 'T) t -> unit
val show : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> ('M, 'T) t -> string
val pp_t' : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> Format.formatter -> ('M, 'T) t' -> unit
val show_t' : (Format.formatter -> 'M -> unit) -> (Format.formatter -> 'T -> unit) -> ('M, 'T) t' -> string