Odoc_info.Typetype record_field = Odoc_type.record_field = {rf_name : string;rf_mutable : bool;rf_type : Types.type_expr;mutable rf_text : info option;}type constructor_args = Odoc_type.constructor_args = | Cstr_record of record_field list| Cstr_tuple of Types.type_expr listtype variant_constructor = Odoc_type.variant_constructor = {vc_name : string;vc_args : constructor_args;vc_ret : Types.type_expr option;mutable vc_text : info option;}type type_kind = Odoc_type.type_kind = | Type_abstract| Type_variant of variant_constructor list| Type_record of record_field list| Type_opentype object_field = Odoc_type.object_field = {of_name : string;of_type : Types.type_expr;mutable of_text : Odoc_types.info option;}type type_manifest = Odoc_type.type_manifest = | Other of Types.type_expr| Object_type of object_field listtype t_type = Odoc_type.t_type = {ty_name : Name.t;mutable ty_info : info option;ty_parameters : (Types.type_expr * Types.Variance.t) list;ty_kind : type_kind;ty_private : private_flag;ty_manifest : type_manifest option;mutable ty_loc : location;mutable ty_code : string option;}