| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
GHC.Hs.Binds
Contents
Synopsis
- module Language.Haskell.Syntax.Binds
- coveredByNamespaceSpecifier :: NamespaceSpecifier -> NameSpace -> Bool
- emptyLHsBinds :: forall (idL :: Pass) idR. LHsBindsLR (GhcPass idL) idR
- emptyLocalBinds :: forall (a :: Pass) (b :: Pass). HsLocalBindsLR (GhcPass a) (GhcPass b)
- emptyValBindsIn :: forall (a :: Pass) (b :: Pass). HsValBindsLR (GhcPass a) (GhcPass b)
- emptyValBindsOut :: forall (a :: Pass) (b :: Pass). HsValBindsLR (GhcPass a) (GhcPass b)
- eqEmptyLocalBinds :: HsLocalBindsLR a b -> Bool
- extractSpecPragName :: SourceText -> String
- getTcMultAnn :: HsMultAnn GhcTc -> Mult
- hasSpecPrags :: TcSpecPrags -> Bool
- hsSigDoc :: forall (p :: Pass). IsPass p => Sig (GhcPass p) -> SDoc
- isDefaultMethod :: TcSpecPrags -> Bool
- isEmptyIPBindsPR :: forall (p :: Pass). HsIPBinds (GhcPass p) -> Bool
- isEmptyIPBindsTc :: HsIPBinds GhcTc -> Bool
- isEmptyLHsBinds :: forall (idL :: Pass) idR. LHsBindsLR (GhcPass idL) idR -> Bool
- isEmptyValBinds :: forall (a :: Pass) (b :: Pass). HsValBindsLR (GhcPass a) (GhcPass b) -> Bool
- noSpecPrags :: TcSpecPrags
- overlappingNamespaceSpecifiers :: NamespaceSpecifier -> NamespaceSpecifier -> Bool
- plusHsValBinds :: forall (a :: Pass). HsValBinds (GhcPass a) -> HsValBinds (GhcPass a) -> HsValBinds (GhcPass a)
- pprDeclList :: [SDoc] -> SDoc
- pprHsMultAnn :: forall (id :: Pass). OutputableBndrId id => HsMultAnn (GhcPass id) -> SDoc
- pprLHsBinds :: forall (idL :: Pass) (idR :: Pass). (OutputableBndrId idL, OutputableBndrId idR) => LHsBindsLR (GhcPass idL) (GhcPass idR) -> SDoc
- pprLHsBindsForUser :: forall (idL :: Pass) (idR :: Pass) (id2 :: Pass). (OutputableBndrId idL, OutputableBndrId idR, OutputableBndrId id2) => LHsBindsLR (GhcPass idL) (GhcPass idR) -> [LSig (GhcPass id2)] -> [SDoc]
- pprMinimalSig :: OutputableBndr name => LBooleanFormula (GenLocated l name) -> SDoc
- pprSpec :: OutputableBndr id => id -> SDoc -> InlinePragma -> SDoc
- pprTcSpecPrags :: TcSpecPrags -> SDoc
- pprTicks :: SDoc -> SDoc -> SDoc
- pprVarSig :: OutputableBndr id => [id] -> SDoc -> SDoc
- ppr_monobind :: forall (idL :: Pass) (idR :: Pass). (OutputableBndrId idL, OutputableBndrId idR) => HsBindLR (GhcPass idL) (GhcPass idR) -> SDoc
- ppr_sig :: forall (p :: Pass). OutputableBndrId p => Sig (GhcPass p) -> SDoc
- pragBrackets :: SDoc -> SDoc
- pragSrcBrackets :: SourceText -> String -> SDoc -> SDoc
- setTcMultAnn :: Mult -> HsMultAnn GhcRn -> HsMultAnn GhcTc
- data ABExport = ABE {}
- data AbsBinds = AbsBinds {
- abs_tvs :: [TyVar]
- abs_ev_vars :: [EvVar]
- abs_exports :: [ABExport]
- abs_ev_binds :: [TcEvBinds]
- abs_binds :: LHsBinds GhcTc
- abs_sig :: Bool
- data ActivationAnn = ActivationAnn {}
- data AnnPSB = AnnPSB {}
- data AnnSig = AnnSig {}
- data AnnSpecSig = AnnSpecSig {
- ass_open :: EpaLocation
- ass_close :: EpToken "#-}"
- ass_dcolon :: TokDcolon
- ass_act :: ActivationAnn
- newtype IdSig = IdSig {}
- type LTcSpecPrag = Located TcSpecPrag
- data NHsValBindsLR idL = NValBinds [(RecFlag, LHsBinds idL)] [LSig GhcRn]
- data NamespaceSpecifier
- = NoNamespaceSpecifier
- | TypeNamespaceSpecifier (EpToken "type")
- | DataNamespaceSpecifier (EpToken "data")
- data TcSpecPrag = SpecPrag Id HsWrapper InlinePragma
- data TcSpecPrags
- type family XVarBindGhc (pL :: Pass) (pR :: Pass) where ...
Documentation
coveredByNamespaceSpecifier :: NamespaceSpecifier -> NameSpace -> Bool Source #
Check if namespace is covered by a namespace specifier: * NoNamespaceSpecifier covers both namespaces * TypeNamespaceSpecifier covers the type namespace only * DataNamespaceSpecifier covers the data namespace only
emptyLHsBinds :: forall (idL :: Pass) idR. LHsBindsLR (GhcPass idL) idR Source #
emptyLocalBinds :: forall (a :: Pass) (b :: Pass). HsLocalBindsLR (GhcPass a) (GhcPass b) Source #
emptyValBindsIn :: forall (a :: Pass) (b :: Pass). HsValBindsLR (GhcPass a) (GhcPass b) Source #
emptyValBindsOut :: forall (a :: Pass) (b :: Pass). HsValBindsLR (GhcPass a) (GhcPass b) Source #
eqEmptyLocalBinds :: HsLocalBindsLR a b -> Bool Source #
extractSpecPragName :: SourceText -> String Source #
Extracts the name for a SPECIALIZE instance pragma. In hsSigDoc, the src
field of SpecInstSig signature contains the SourceText for a SPECIALIZE
instance pragma of the form: "SourceText {-# SPECIALIZE"
Extraction ensures that all variants of the pragma name (with a Z or an
S) are output exactly as used in the pragma.
hasSpecPrags :: TcSpecPrags -> Bool Source #
isDefaultMethod :: TcSpecPrags -> Bool Source #
isEmptyLHsBinds :: forall (idL :: Pass) idR. LHsBindsLR (GhcPass idL) idR -> Bool Source #
isEmptyValBinds :: forall (a :: Pass) (b :: Pass). HsValBindsLR (GhcPass a) (GhcPass b) -> Bool Source #
overlappingNamespaceSpecifiers :: NamespaceSpecifier -> NamespaceSpecifier -> Bool Source #
Check if namespace specifiers overlap, i.e. if they are equal or if at least one of them doesn't specify a namespace
plusHsValBinds :: forall (a :: Pass). HsValBinds (GhcPass a) -> HsValBinds (GhcPass a) -> HsValBinds (GhcPass a) Source #
pprDeclList :: [SDoc] -> SDoc Source #
pprHsMultAnn :: forall (id :: Pass). OutputableBndrId id => HsMultAnn (GhcPass id) -> SDoc Source #
pprLHsBinds :: forall (idL :: Pass) (idR :: Pass). (OutputableBndrId idL, OutputableBndrId idR) => LHsBindsLR (GhcPass idL) (GhcPass idR) -> SDoc Source #
pprLHsBindsForUser :: forall (idL :: Pass) (idR :: Pass) (id2 :: Pass). (OutputableBndrId idL, OutputableBndrId idR, OutputableBndrId id2) => LHsBindsLR (GhcPass idL) (GhcPass idR) -> [LSig (GhcPass id2)] -> [SDoc] Source #
pprMinimalSig :: OutputableBndr name => LBooleanFormula (GenLocated l name) -> SDoc Source #
pprSpec :: OutputableBndr id => id -> SDoc -> InlinePragma -> SDoc Source #
pprTcSpecPrags :: TcSpecPrags -> SDoc Source #
ppr_monobind :: forall (idL :: Pass) (idR :: Pass). (OutputableBndrId idL, OutputableBndrId idR) => HsBindLR (GhcPass idL) (GhcPass idR) -> SDoc Source #
pragBrackets :: SDoc -> SDoc Source #
pragSrcBrackets :: SourceText -> String -> SDoc -> SDoc Source #
Using SourceText in case the pragma was spelled differently or used mixed case
Abstraction Bindings Export
Constructors
| ABE | |
Instances
| Data ABExport | |
Defined in GHC.Hs.Instances Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ABExport -> c ABExport gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ABExport toConstr :: ABExport -> Constr dataTypeOf :: ABExport -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ABExport) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ABExport) gmapT :: (forall b. Data b => b -> b) -> ABExport -> ABExport gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ABExport -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ABExport -> r gmapQ :: (forall d. Data d => d -> u) -> ABExport -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ABExport -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ABExport -> m ABExport gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ABExport -> m ABExport gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ABExport -> m ABExport | |
| Outputable ABExport Source # | |
Typechecked, generalised bindings, used in the output to the type checker. See Note [AbsBinds].
Constructors
| AbsBinds | |
Fields
| |
Instances
| Data AbsBinds | |
Defined in GHC.Hs.Instances Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AbsBinds -> c AbsBinds gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AbsBinds toConstr :: AbsBinds -> Constr dataTypeOf :: AbsBinds -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AbsBinds) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AbsBinds) gmapT :: (forall b. Data b => b -> b) -> AbsBinds -> AbsBinds gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AbsBinds -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AbsBinds -> r gmapQ :: (forall d. Data d => d -> u) -> AbsBinds -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> AbsBinds -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> AbsBinds -> m AbsBinds gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AbsBinds -> m AbsBinds gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AbsBinds -> m AbsBinds | |
data ActivationAnn Source #
Constructors
| ActivationAnn | |
Instances
| Data ActivationAnn Source # | |
Defined in GHC.Hs.Binds Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ActivationAnn -> c ActivationAnn gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ActivationAnn toConstr :: ActivationAnn -> Constr dataTypeOf :: ActivationAnn -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ActivationAnn) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ActivationAnn) gmapT :: (forall b. Data b => b -> b) -> ActivationAnn -> ActivationAnn gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ActivationAnn -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ActivationAnn -> r gmapQ :: (forall d. Data d => d -> u) -> ActivationAnn -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ActivationAnn -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ActivationAnn -> m ActivationAnn gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ActivationAnn -> m ActivationAnn gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ActivationAnn -> m ActivationAnn | |
| NoAnn ActivationAnn Source # | |
Defined in GHC.Hs.Binds Methods | |
| Eq ActivationAnn Source # | |
Defined in GHC.Hs.Binds Methods (==) :: ActivationAnn -> ActivationAnn -> Bool # (/=) :: ActivationAnn -> ActivationAnn -> Bool # | |
Constructors
| AnnPSB | |
Instances
| Data AnnPSB Source # | |
Defined in GHC.Hs.Binds Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AnnPSB -> c AnnPSB gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AnnPSB dataTypeOf :: AnnPSB -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AnnPSB) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AnnPSB) gmapT :: (forall b. Data b => b -> b) -> AnnPSB -> AnnPSB gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AnnPSB -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AnnPSB -> r gmapQ :: (forall d. Data d => d -> u) -> AnnPSB -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> AnnPSB -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> AnnPSB -> m AnnPSB gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnPSB -> m AnnPSB gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnPSB -> m AnnPSB | |
| NoAnn AnnPSB Source # | |
Defined in GHC.Hs.Binds | |
Constructors
| AnnSig | |
Instances
| Data AnnSig Source # | |
Defined in GHC.Hs.Binds Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AnnSig -> c AnnSig gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AnnSig dataTypeOf :: AnnSig -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AnnSig) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AnnSig) gmapT :: (forall b. Data b => b -> b) -> AnnSig -> AnnSig gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AnnSig -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AnnSig -> r gmapQ :: (forall d. Data d => d -> u) -> AnnSig -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> AnnSig -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> AnnSig -> m AnnSig gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnSig -> m AnnSig gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnSig -> m AnnSig | |
| NoAnn AnnSig Source # | |
Defined in GHC.Hs.Binds | |
data AnnSpecSig Source #
Constructors
| AnnSpecSig | |
Fields
| |
Instances
| Data AnnSpecSig Source # | |
Defined in GHC.Hs.Binds Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AnnSpecSig -> c AnnSpecSig gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AnnSpecSig toConstr :: AnnSpecSig -> Constr dataTypeOf :: AnnSpecSig -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AnnSpecSig) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AnnSpecSig) gmapT :: (forall b. Data b => b -> b) -> AnnSpecSig -> AnnSpecSig gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AnnSpecSig -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AnnSpecSig -> r gmapQ :: (forall d. Data d => d -> u) -> AnnSpecSig -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> AnnSpecSig -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> AnnSpecSig -> m AnnSpecSig gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnSpecSig -> m AnnSpecSig gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnSpecSig -> m AnnSpecSig | |
| NoAnn AnnSpecSig Source # | |
Defined in GHC.Hs.Binds Methods noAnn :: AnnSpecSig Source # | |
A type signature in generated code, notably the code generated for record selectors. We simply record the desired Id itself, replete with its name, type and IdDetails. Otherwise it's just like a type signature: there should be an accompanying binding
Instances
| Data IdSig Source # | |
Defined in GHC.Hs.Binds Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IdSig -> c IdSig gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IdSig dataTypeOf :: IdSig -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c IdSig) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IdSig) gmapT :: (forall b. Data b => b -> b) -> IdSig -> IdSig gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IdSig -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IdSig -> r gmapQ :: (forall d. Data d => d -> u) -> IdSig -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> IdSig -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> IdSig -> m IdSig gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IdSig -> m IdSig gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IdSig -> m IdSig | |
type LTcSpecPrag = Located TcSpecPrag Source #
Located Type checker Specification Pragmas
data NHsValBindsLR idL Source #
Instances
| Data (NHsValBindsLR GhcPs) | |
Defined in GHC.Hs.Instances Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NHsValBindsLR GhcPs -> c (NHsValBindsLR GhcPs) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (NHsValBindsLR GhcPs) toConstr :: NHsValBindsLR GhcPs -> Constr dataTypeOf :: NHsValBindsLR GhcPs -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (NHsValBindsLR GhcPs)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (NHsValBindsLR GhcPs)) gmapT :: (forall b. Data b => b -> b) -> NHsValBindsLR GhcPs -> NHsValBindsLR GhcPs gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NHsValBindsLR GhcPs -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NHsValBindsLR GhcPs -> r gmapQ :: (forall d. Data d => d -> u) -> NHsValBindsLR GhcPs -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NHsValBindsLR GhcPs -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NHsValBindsLR GhcPs -> m (NHsValBindsLR GhcPs) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NHsValBindsLR GhcPs -> m (NHsValBindsLR GhcPs) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NHsValBindsLR GhcPs -> m (NHsValBindsLR GhcPs) | |
| Data (NHsValBindsLR GhcRn) | |
Defined in GHC.Hs.Instances Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NHsValBindsLR GhcRn -> c (NHsValBindsLR GhcRn) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (NHsValBindsLR GhcRn) toConstr :: NHsValBindsLR GhcRn -> Constr dataTypeOf :: NHsValBindsLR GhcRn -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (NHsValBindsLR GhcRn)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (NHsValBindsLR GhcRn)) gmapT :: (forall b. Data b => b -> b) -> NHsValBindsLR GhcRn -> NHsValBindsLR GhcRn gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NHsValBindsLR GhcRn -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NHsValBindsLR GhcRn -> r gmapQ :: (forall d. Data d => d -> u) -> NHsValBindsLR GhcRn -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NHsValBindsLR GhcRn -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NHsValBindsLR GhcRn -> m (NHsValBindsLR GhcRn) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NHsValBindsLR GhcRn -> m (NHsValBindsLR GhcRn) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NHsValBindsLR GhcRn -> m (NHsValBindsLR GhcRn) | |
| Data (NHsValBindsLR GhcTc) | |
Defined in GHC.Hs.Instances Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NHsValBindsLR GhcTc -> c (NHsValBindsLR GhcTc) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (NHsValBindsLR GhcTc) toConstr :: NHsValBindsLR GhcTc -> Constr dataTypeOf :: NHsValBindsLR GhcTc -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (NHsValBindsLR GhcTc)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (NHsValBindsLR GhcTc)) gmapT :: (forall b. Data b => b -> b) -> NHsValBindsLR GhcTc -> NHsValBindsLR GhcTc gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NHsValBindsLR GhcTc -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NHsValBindsLR GhcTc -> r gmapQ :: (forall d. Data d => d -> u) -> NHsValBindsLR GhcTc -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NHsValBindsLR GhcTc -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NHsValBindsLR GhcTc -> m (NHsValBindsLR GhcTc) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NHsValBindsLR GhcTc -> m (NHsValBindsLR GhcTc) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NHsValBindsLR GhcTc -> m (NHsValBindsLR GhcTc) | |
data NamespaceSpecifier Source #
Optional namespace specifier for fixity signatures, WARNINIG and DEPRECATED pragmas.
Examples:
{-# WARNING in "x-partial" data Head "don't use this pattern synonym" #-} -- ↑ DataNamespaceSpecifier
{-# DEPRECATED type D "This type was deprecated" #-} -- ↑ TypeNamespaceSpecifier
infixr 6 data $ -- ↑ DataNamespaceSpecifier
Constructors
| NoNamespaceSpecifier | |
| TypeNamespaceSpecifier (EpToken "type") | |
| DataNamespaceSpecifier (EpToken "data") |
Instances
| Data NamespaceSpecifier Source # | |
Defined in GHC.Hs.Binds Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NamespaceSpecifier -> c NamespaceSpecifier gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NamespaceSpecifier toConstr :: NamespaceSpecifier -> Constr dataTypeOf :: NamespaceSpecifier -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NamespaceSpecifier) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NamespaceSpecifier) gmapT :: (forall b. Data b => b -> b) -> NamespaceSpecifier -> NamespaceSpecifier gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NamespaceSpecifier -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NamespaceSpecifier -> r gmapQ :: (forall d. Data d => d -> u) -> NamespaceSpecifier -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NamespaceSpecifier -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NamespaceSpecifier -> m NamespaceSpecifier gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NamespaceSpecifier -> m NamespaceSpecifier gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NamespaceSpecifier -> m NamespaceSpecifier | |
| Outputable NamespaceSpecifier Source # | |
Defined in GHC.Hs.Binds Methods ppr :: NamespaceSpecifier -> SDoc Source # | |
| Eq NamespaceSpecifier Source # | |
Defined in GHC.Hs.Binds Methods (==) :: NamespaceSpecifier -> NamespaceSpecifier -> Bool # (/=) :: NamespaceSpecifier -> NamespaceSpecifier -> Bool # | |
data TcSpecPrag Source #
Type checker Specification Pragma
Constructors
| SpecPrag Id HsWrapper InlinePragma | The Id to be specialised, a wrapper that specialises the polymorphic function, and inlining spec for the specialised function |
Instances
| Data TcSpecPrag Source # | |
Defined in GHC.Hs.Binds Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TcSpecPrag -> c TcSpecPrag gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TcSpecPrag toConstr :: TcSpecPrag -> Constr dataTypeOf :: TcSpecPrag -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TcSpecPrag) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TcSpecPrag) gmapT :: (forall b. Data b => b -> b) -> TcSpecPrag -> TcSpecPrag gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TcSpecPrag -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TcSpecPrag -> r gmapQ :: (forall d. Data d => d -> u) -> TcSpecPrag -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> TcSpecPrag -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> TcSpecPrag -> m TcSpecPrag gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TcSpecPrag -> m TcSpecPrag gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TcSpecPrag -> m TcSpecPrag | |
| Outputable TcSpecPrag Source # | |
Defined in GHC.Hs.Binds Methods ppr :: TcSpecPrag -> SDoc Source # | |
data TcSpecPrags Source #
Type checker Specialisation Pragmas
TcSpecPrags conveys SPECIALISE pragmas from the type checker to the desugarer
Constructors
| IsDefaultMethod | Super-specialised: a default method should be macro-expanded at every call site |
| SpecPrags [LTcSpecPrag] |
Instances
| Data TcSpecPrags Source # | |
Defined in GHC.Hs.Binds Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TcSpecPrags -> c TcSpecPrags gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TcSpecPrags toConstr :: TcSpecPrags -> Constr dataTypeOf :: TcSpecPrags -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TcSpecPrags) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TcSpecPrags) gmapT :: (forall b. Data b => b -> b) -> TcSpecPrags -> TcSpecPrags gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TcSpecPrags -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TcSpecPrags -> r gmapQ :: (forall d. Data d => d -> u) -> TcSpecPrags -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> TcSpecPrags -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> TcSpecPrags -> m TcSpecPrags gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TcSpecPrags -> m TcSpecPrags gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TcSpecPrags -> m TcSpecPrags | |
type family XVarBindGhc (pL :: Pass) (pR :: Pass) where ... Source #
Equations
| XVarBindGhc 'Typechecked 'Typechecked = NoExtField | |
| XVarBindGhc _1 _2 = DataConCantHappen |
Orphan instances
| OutputableBndrId p => Outputable (FixitySig (GhcPass p)) Source # | |
| OutputableBndrId p => Outputable (HsIPBinds (GhcPass p)) Source # | |
| OutputableBndrId p => Outputable (IPBind (GhcPass p)) Source # | |
| Outputable (XRec pass (IdP pass)) => Outputable (RecordPatSynField pass) Source # | |
Methods ppr :: RecordPatSynField pass -> SDoc Source # | |
| OutputableBndrId p => Outputable (Sig (GhcPass p)) Source # | |
| (OutputableBndrId pl, OutputableBndrId pr) => Outputable (HsBindLR (GhcPass pl) (GhcPass pr)) Source # | |
| (OutputableBndrId pl, OutputableBndrId pr) => Outputable (HsLocalBindsLR (GhcPass pl) (GhcPass pr)) Source # | |
| (OutputableBndrId pl, OutputableBndrId pr) => Outputable (HsValBindsLR (GhcPass pl) (GhcPass pr)) Source # | |
| (OutputableBndrId l, OutputableBndrId r) => Outputable (PatSynBind (GhcPass l) (GhcPass r)) Source # | |