ffa9f4723237e7214590fa3220bfeac83d0ded00
[nt-coerce.git] / GHC / NT.hs
1 {-# OPTIONS_GHC -fplugin GHC.NT.Plugin #-}
2
3 module GHC.NT (NT, coerce, refl, sym, trans, createNT, listNT) where
4
5 import GHC.NT.Type
6
7 coerce :: NT a b -> a -> b
8 coerce = error "GHC.NT.coerce"
9
10 refl   :: NT a a
11 refl = error "GHC.NT.refl"
12
13 sym    :: NT a b -> NT b a
14 sym = error "GHC.NT.sym"
15
16 trans  :: NT a b -> NT b c -> NT a c
17 trans = error "GHC.NT.trans"
18
19 createNT :: NT a b
20 createNT = error "GHC.NT.createNT"
21 {-# NOINLINE createNT #-}
22
23 listNT :: NT a b -> NT [a] [b]
24 listNT = error "GHC.NT.liftNT"
25