1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface HsTypes where
4 import Outputable(Outputable)
5 import Pretty(PprStyle, PrettyRep)
6 import ProtoName(ProtoName)
7 type ClassAssertion a = (a, a)
8 type Context a = [(a, a)]
9 data MonoType a = MonoTyVar a | MonoTyCon a [MonoType a] | FunMonoTy (MonoType a) (MonoType a) | ListMonoTy (MonoType a) | TupleMonoTy [PolyType a] | MonoTyVarTemplate a | MonoDict a (MonoType a)
10 data PolyType a = UnoverloadedTy (MonoType a) | OverloadedTy [(a, a)] (MonoType a) | ForAllTy [a] (MonoType a)
11 type ProtoNameContext = [(ProtoName, ProtoName)]
12 type ProtoNameMonoType = MonoType ProtoName
13 type ProtoNamePolyType = PolyType ProtoName
14 type RenamedContext = [(Name, Name)]
15 type RenamedMonoType = MonoType Name
16 type RenamedPolyType = PolyType Name
17 cmpList :: (a -> a -> Int#) -> [a] -> [a] -> Int#
18 {-# GHC_PRAGMA _A_ 3 _U_ 211 _N_ _S_ "LSS" _N_ _N_ #-}
19 cmpMonoType :: (a -> a -> Int#) -> MonoType a -> MonoType a -> Int#
20 {-# GHC_PRAGMA _A_ 3 _U_ 222 _N_ _S_ "LSS" _N_ _N_ #-}
21 cmpPolyType :: (a -> a -> Int#) -> PolyType a -> PolyType a -> Int#
22 {-# GHC_PRAGMA _A_ 3 _U_ 222 _N_ _S_ "LSS" _N_ _N_ #-}
23 eqMonoType :: MonoType ProtoName -> MonoType ProtoName -> Bool
24 {-# GHC_PRAGMA _A_ 2 _U_ 22 _N_ _S_ "SS" _N_ _N_ #-}
25 pprContext :: Outputable a => PprStyle -> [(a, a)] -> Int -> Bool -> PrettyRep
26 {-# GHC_PRAGMA _A_ 3 _U_ 22122 _N_ _S_ "LLS" _N_ _N_ #-}
27 pprParendMonoType :: Outputable a => PprStyle -> MonoType a -> Int -> Bool -> PrettyRep
28 {-# GHC_PRAGMA _A_ 1 _U_ 22122 _N_ _N_ _N_ _N_ #-}
29 instance Outputable a => Outputable (MonoType a)
30 {-# GHC_PRAGMA _M_ HsTypes {-dfun-} _A_ 1 _U_ 2 _N_ _N_ _N_ _N_ #-}
31 instance Outputable a => Outputable (PolyType a)
32 {-# GHC_PRAGMA _M_ HsTypes {-dfun-} _A_ 1 _U_ 2 _N_ _N_ _N_ _N_ #-}