package ocaml-base-compiler
Representation and manipulation of types.
type record_field = Odoc_type.record_field = {
rf_name : string;
(*Name of the field.
*)rf_mutable : bool;
(*
*)true
if mutable.rf_type : Types.type_expr;
(*Type of the field.
*)mutable rf_text : info option;
(*Optional description in the associated comment.
*)
}
Description of a record type field.
type constructor_args = Odoc_type.constructor_args =
| Cstr_record of record_field list
| Cstr_tuple of Types.type_expr list
Description of a variant type constructor.
type variant_constructor = Odoc_type.variant_constructor = {
vc_name : string;
(*Name of the constructor.
*)vc_args : constructor_args;
vc_ret : Types.type_expr option;
mutable vc_text : info option;
(*Optional description in the associated comment.
*)
}
type type_kind = Odoc_type.type_kind =
| Type_abstract
(*Type is abstract, for example
*)type t
.| Type_variant of variant_constructor list
(*constructors
*)| Type_record of record_field list
(*fields
*)| Type_open
(*Type is open
*)
The various kinds of a type.
type object_field = Odoc_type.object_field = {
of_name : string;
of_type : Types.type_expr;
mutable of_text : Odoc_types.info option;
(*optional user description
*)
}
type type_manifest = Odoc_type.type_manifest =
| Other of Types.type_expr
(*Type manifest directly taken from Typedtree.
*)| Object_type of object_field list
type t_type = Odoc_type.t_type = {
ty_name : Name.t;
(*Complete name of the type.
*)mutable ty_info : info option;
(*Information found in the optional associated comment.
*)ty_parameters : (Types.type_expr * bool * bool) list;
(*type parameters: (type, covariant, contravariant)
*)ty_kind : type_kind;
(*Type kind.
*)ty_private : private_flag;
(*Private or public type.
*)ty_manifest : type_manifest option;
mutable ty_loc : location;
mutable ty_code : string option;
}
Representation of a type.
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>