re put at least one Named let binding for each named used in the structure so that the structure is self contained, and not depend on table anymore. This is needed especially if the structure has to go outside and be given to some other part of the world
This compare is insensible to alpha conversion of cycle indexes,
as well as reduction.
The polymorphic compare may be wrong for equivalent structures.
See also alpha_conversion
or reduce
if needed.
This function considers equivalent polymorphic variants with different order of fields, as long as the order of cases is the only difference.
This generates new uniq Names for the type present in the structure. In particular, behavior overrides done via the generic registering mechanism will not occur when working out of the returned type_rep.
Diff
offers a way to know given two type structures if their bin_io representation
would be compatible. If not, the difference between the structure is computed and
can be given as part as an error message.
Diff.t
is *NOT* stable. It does not support with bin_io
on purpose,
not any guarantee is given about the type of diffs : it may arbitrarily change
in any further version. Consider that serializing it as an Sexp.t
with the
only aim being to log it somewhere for a human to read is the *only* reasonable
thing to do with a Diff.t
over the wire.