copilot-core-2.2.1: An intermediate representation for Copilot.

Safe HaskellSafe
LanguageHaskell2010

Copilot.Core.Type.Equality

Documentation

data Equal :: * -> * -> * where Source #

Constructors

Refl :: Equal a a 

class EqualType t where Source #

Minimal complete definition

(=~=)

Methods

(=~=) :: t a -> t b -> Maybe (Equal a b) Source #

Instances

EqualType Type Source # 

Methods

(=~=) :: Type a -> Type b -> Maybe (Equal a b) Source #

coerce :: Equal a b -> a -> b Source #

trans :: Equal a b -> Equal b c -> Equal a c Source #

symm :: Equal a b -> Equal b a Source #

cong :: Equal a b -> Equal (f a) (f b) Source #