Portability | non-portable (GHC Extensions) |
---|---|
Stability | experimental |
Maintainer | Patrick Bahr <paba@diku.dk> |
This module defines equality for (higher-order) signatures, which lifts to equality for (higher-order) terms and contexts. All definitions are generalised versions of those in Data.Comp.Equality.
Documentation
Signature equality. An instance HEqF f
gives rise to an instance
KEq (HTerm f)
.
heqMod :: (HEqF f, HFunctor f, HFoldable f) => f a i -> f b i -> Maybe [(A a, A b)]Source
This function implements equality of values of type f a
modulo
the equality of a
itself. If two functorial values are equal in this
sense, eqMod
returns a Just
value containing a list of pairs
consisting of corresponding components of the two functorial
values.