Module Shape.Item

Shape's items are elements of a structure or, in the case of constructors and labels, elements of a record or variants definition seen as a structure. These structures model module components and nested types' constructors and labels.

type t = string * Sig_component_kind.t
val name : t -> string
val kind : t -> Sig_component_kind.t
val make : string -> Sig_component_kind.t -> t
val value : Ident.t -> t
val type_ : Ident.t -> t
val constr : Ident.t -> t
val label : Ident.t -> t
val unboxed_label : Ident.t -> t
val module_ : Ident.t -> t
val module_type : Ident.t -> t
val extension_constructor : Ident.t -> t
val class_ : Ident.t -> t
val class_type : Ident.t -> t
val print : Format.formatter -> t -> unit
val compare : t -> t -> int
val is_constructor : t -> bool
val is_label : t -> bool
val is_unboxed_label : t -> bool
module Map : Map.S with type key = t