compiler: de-lhs hsSyn/
[ghc.git] / compiler / hsSyn / HsPat.hs-boot
1 {-# LANGUAGE CPP, KindSignatures #-}
2 {-# LANGUAGE FlexibleContexts #-}
3 {-# LANGUAGE UndecidableInstances #-} -- Note [Pass sensitive types]
4                                       -- in module PlaceHolder
5 {-# LANGUAGE ConstraintKinds #-}
6 #if __GLASGOW_HASKELL__ > 706
7 {-# LANGUAGE RoleAnnotations #-}
8 #endif
9
10 module HsPat where
11 import SrcLoc( Located )
12
13 import Data.Data hiding (Fixity)
14 import Outputable
15 import PlaceHolder      ( DataId )
16
17 #if __GLASGOW_HASKELL__ > 706
18 type role Pat nominal
19 #endif
20 data Pat (i :: *)
21 type LPat i = Located (Pat i)
22
23 #if __GLASGOW_HASKELL__ > 706
24 instance Typeable Pat
25 #else
26 instance Typeable1 Pat
27 #endif
28
29 instance (DataId id) => Data (Pat id)
30 instance (OutputableBndr name) => Outputable (Pat name)