Refactor visible type application.
[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 {-# LANGUAGE RoleAnnotations #-}
7
8 module HsPat where
9 import SrcLoc( Located )
10
11 import Data.Data hiding (Fixity)
12 import Outputable
13 import PlaceHolder      ( DataId )
14
15 type role Pat nominal
16 data Pat (i :: *)
17 type LPat i = Located (Pat i)
18
19 instance Typeable Pat
20
21 instance (DataId id) => Data (Pat id)
22 instance (OutputableBndr name) => Outputable (Pat name)