1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface HsDecls where
3 import HsBinds(MonoBinds, Sig)
5 import HsPragmas(ClassPragmas, DataPragmas, InstancePragmas, TypePragmas)
6 import HsTypes(MonoType)
8 import Outputable(NamedThing, Outputable)
9 import PreludePS(_PackedString)
10 import ProtoName(ProtoName)
12 data ClassDecl a b = ClassDecl [(a, a)] a a [Sig a] (MonoBinds a b) (ClassPragmas a) SrcLoc
13 data ConDecl a = ConDecl a [MonoType a] SrcLoc
14 data DataTypeSig a = AbstractTypeSig a SrcLoc | SpecDataSig a (MonoType a) SrcLoc
15 data DefaultDecl a = DefaultDecl [MonoType a] SrcLoc
16 data FixityDecl a = InfixL a Int | InfixR a Int | InfixN a Int
17 data InstDecl a b = InstDecl [(a, a)] a (MonoType a) (MonoBinds a b) Bool _PackedString _PackedString [Sig a] (InstancePragmas a) SrcLoc
18 type ProtoNameClassDecl = ClassDecl ProtoName (InPat ProtoName)
19 type ProtoNameConDecl = ConDecl ProtoName
20 type ProtoNameDataTypeSig = DataTypeSig ProtoName
21 type ProtoNameDefaultDecl = DefaultDecl ProtoName
22 type ProtoNameFixityDecl = FixityDecl ProtoName
23 type ProtoNameInstDecl = InstDecl ProtoName (InPat ProtoName)
24 type ProtoNameSpecialisedInstanceSig = SpecialisedInstanceSig ProtoName
25 type ProtoNameTyDecl = TyDecl ProtoName
26 type RenamedClassDecl = ClassDecl Name (InPat Name)
27 type RenamedConDecl = ConDecl Name
28 type RenamedDataTypeSig = DataTypeSig Name
29 type RenamedDefaultDecl = DefaultDecl Name
30 type RenamedFixityDecl = FixityDecl Name
31 type RenamedInstDecl = InstDecl Name (InPat Name)
32 type RenamedSpecialisedInstanceSig = SpecialisedInstanceSig Name
33 type RenamedTyDecl = TyDecl Name
34 data SpecialisedInstanceSig a = InstSpecSig a (MonoType a) SrcLoc
35 data TyDecl a = TyData [(a, a)] a [a] [ConDecl a] [a] (DataPragmas a) SrcLoc | TySynonym a [a] (MonoType a) TypePragmas SrcLoc
36 eqConDecls :: [ConDecl ProtoName] -> [ConDecl ProtoName] -> Bool
37 {-# GHC_PRAGMA _A_ 2 _U_ 11 _N_ _S_ "SS" _N_ _N_ #-}
38 instance (NamedThing a, Outputable a, NamedThing b, Outputable b) => Outputable (ClassDecl a b)
39 {-# GHC_PRAGMA _M_ HsDecls {-dfun-} _A_ 4 _U_ 2222 _N_ _N_ _N_ _N_ #-}
40 instance (NamedThing a, Outputable a) => Outputable (ConDecl a)
41 {-# GHC_PRAGMA _M_ HsDecls {-dfun-} _A_ 2 _U_ 22 _N_ _N_ _N_ _N_ #-}
42 instance (NamedThing a, Outputable a) => Outputable (DataTypeSig a)
43 {-# GHC_PRAGMA _M_ HsDecls {-dfun-} _A_ 2 _U_ 02 _N_ _N_ _N_ _N_ #-}
44 instance (NamedThing a, Outputable a) => Outputable (DefaultDecl a)
45 {-# GHC_PRAGMA _M_ HsDecls {-dfun-} _A_ 2 _U_ 02 _N_ _N_ _N_ _N_ #-}
46 instance (NamedThing a, Outputable a) => Outputable (FixityDecl a)
47 {-# GHC_PRAGMA _M_ HsDecls {-dfun-} _A_ 4 _U_ 22 _N_ _S_ "LLLS" _N_ _N_ #-}
48 instance (NamedThing a, Outputable a, NamedThing b, Outputable b) => Outputable (InstDecl a b)
49 {-# GHC_PRAGMA _M_ HsDecls {-dfun-} _A_ 4 _U_ 2222 _N_ _N_ _N_ _N_ #-}
50 instance (NamedThing a, Outputable a) => Outputable (SpecialisedInstanceSig a)
51 {-# GHC_PRAGMA _M_ HsDecls {-dfun-} _A_ 2 _U_ 02 _N_ _N_ _N_ _N_ #-}
52 instance (NamedThing a, Outputable a) => Outputable (TyDecl a)
53 {-# GHC_PRAGMA _M_ HsDecls {-dfun-} _A_ 2 _U_ 22 _N_ _N_ _N_ _N_ #-}