Module Generic_core_desc.Record

module Record: sig .. end
Generic representation of record datatypes.

module T: sig .. end
type ('p, 'r) t = ('p, 'r) T.record = {
   name : string;
   module_path : string list;
   fields : ('p, 'r) Generic_core_desc.Fields.t;
   iso : ('p, 'r) Fun.iso;
   unboxed : bool;
}
Record. The type (p,r) t represents the record type r isomorphic to the product type p.
val product : ('p, 'r) t -> 'p Product.t
Returns the list of field types witnessing the product type 'p for the record type 'r.
val types_of_mutable_fields : ('p, 'r) t -> Ty.ty' list
Returns the list of the types of all mutable fields.
val tuple : ('p, 'r) t -> 'r -> 'p Product.tuple
Returns a tuple of the fields of a record value.