OCaml Library Collection
/
type constructor_description = {
  1. cstr_name : string;
  2. cstr_res : Types.type_expr;
  3. cstr_existentials : Types.type_expr list;
  4. cstr_args : Types.type_expr list;
  5. cstr_arity : int;
  6. cstr_tag : constructor_tag;
  7. cstr_consts : int;
  8. cstr_nonconsts : int;
  9. cstr_generalized : bool;
  10. cstr_private : Asttypes.private_flag;
  11. cstr_loc : Location.t;
  12. cstr_attributes : Parsetree.attributes;
  13. cstr_inlined : Types.type_declaration option;
  14. cstr_uid : Types.Uid.t;
}
and constructor_tag =
  1. | Cstr_constant of int
  2. | Cstr_block of int
  3. | Cstr_unboxed
  4. | Cstr_extension of Path.t * bool
val equal_constr : constructor_description -> constructor_description -> bool
val may_equal_constr : constructor_description -> constructor_description -> bool
val cstr_res_type_path : constructor_description -> Path.t
type label_description = {
  1. lbl_name : string;
  2. lbl_res : Types.type_expr;
  3. lbl_arg : Types.type_expr;
  4. lbl_mut : Asttypes.mutable_flag;
  5. lbl_atomic : Asttypes.atomic_flag;
  6. lbl_pos : int;
  7. lbl_all : label_description array;
  8. lbl_repres : Types.record_representation;
  9. lbl_private : Asttypes.private_flag;
  10. lbl_loc : Location.t;
  11. lbl_attributes : Parsetree.attributes;
  12. lbl_uid : Types.Uid.t;
}
val lbl_res_type_path : label_description -> Path.t