2 % (c) The GRASP/AQUA Project, Glasgow University, 1993-1998
4 %************************************************************************
6 \section[HsPragmas]{Pragmas in Haskell interface files}
8 %************************************************************************
10 See also: @Sig@ (``signatures'') which is where user-supplied pragmas
11 for values show up; ditto @SpecInstSig@ (for instances) and
12 @SpecDataSig@ (for data types).
15 module HsPragmas where
17 #include "HsVersions.h"
23 All the pragma stuff has changed. Here are some placeholders!
26 data GenPragmas name = NoGenPragmas
27 data DataPragmas name = NoDataPragmas
28 data InstancePragmas name = NoInstancePragmas
29 data ClassOpPragmas name = NoClassOpPragmas
30 data ClassPragmas name = NoClassPragmas
32 noClassPragmas = NoClassPragmas
33 isNoClassPragmas NoClassPragmas = True
35 noDataPragmas = NoDataPragmas
36 isNoDataPragmas NoDataPragmas = True
38 noGenPragmas = NoGenPragmas
39 isNoGenPragmas NoGenPragmas = True
41 noInstancePragmas = NoInstancePragmas
42 isNoInstancePragmas NoInstancePragmas = True
44 noClassOpPragmas = NoClassOpPragmas
45 isNoClassOpPragmas NoClassOpPragmas = True
47 instance Outputable name => Outputable (ClassPragmas name) where
48 ppr NoClassPragmas = empty
50 instance Outputable name => Outputable (ClassOpPragmas name) where
51 ppr NoClassOpPragmas = empty
53 instance Outputable name => Outputable (InstancePragmas name) where
54 ppr NoInstancePragmas = empty
56 instance Outputable name => Outputable (GenPragmas name) where
57 ppr NoGenPragmas = empty