Module Generic_core_desc.Fields

module Fields: sig .. end
Generic representation of a record's collection of fields.

module T: sig .. end
type ('p, 'r) t = ('p, 'r) T.fields = 
| Nil : (unit, 'r0) t
| Cons : ('t, 'r1) Generic_core_desc.Field.t * ('ts, 'r1) t -> ('t * 'ts, 'r1) t
List of fields. The type ('p, 'r) t is the list of fields for the record 'r, 'p is a product type isomorphic to the record type 'r, it gathers all of the field types, in the same order are they are provided in the list.
val product : ('p, 'r) t -> 'p Product.t
Returns the list of types witnessing the product type 'p. Everything else is discarded (name of field, set procedure).
val types_of_mutable_fields : ('p, 'r) t -> Ty.ty' list
Returns the list of the types of all mutable fields.