copilot-core-3.0: 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 #

Methods

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

Instances
EqualType Type Source # 
Instance details

Defined in Copilot.Core.Type

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 #