Skip to content

Latest commit

 

History

History
27 lines (20 loc) · 653 Bytes

README.md

File metadata and controls

27 lines (20 loc) · 653 Bytes

purescript-type-isequal

Build Status

Type equality check returning a Boolean kind. Useful for type-level programming.

Example

From tests:

isEqual
  :: forall a b result
   . IsEqual a b result
  => Proxy a
  -> Proxy b
  -> BProxy result
isEqual _ _ =  BProxy

-- this is true as Int is Int
testA :: BProxy True
testA = isEqual (Proxy :: Proxy Int) (Proxy :: Proxy Int)

-- this is false as Int is not String
testB :: BProxy False
testB = isEqual (Proxy :: Proxy Int) (Proxy :: Proxy String)