ghc-lib-parser-9.12.3.20251228: The GHC API, decoupled from GHC versions
Safe HaskellIgnore
LanguageGHC2021

GHC.Hs.Binds

Synopsis

Documentation

data ActivationAnn Source #

Constructors

ActivationAnn 

Instances

Instances details
Data ActivationAnn Source # 
Instance details

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 # 
Instance details

Defined in GHC.Hs.Binds

Eq ActivationAnn Source # 
Instance details

Defined in GHC.Hs.Binds

data NHsValBindsLR idL Source #

Constructors

NValBinds [(RecFlag, LHsBinds idL)] [LSig GhcRn] 

Instances

Instances details
Data (NHsValBindsLR GhcPs) 
Instance details

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) 
Instance details

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) 
Instance details

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 AbsBinds Source #

Typechecked, generalised bindings, used in the output to the type checker. See Note [AbsBinds].

Constructors

AbsBinds 

Fields

Instances

Instances details
Data AbsBinds 
Instance details

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 ABExport Source #

Abstraction Bindings Export

Constructors

ABE 

Fields

Instances

Instances details
Data ABExport 
Instance details

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 # 
Instance details

Defined in GHC.Hs.Binds

Methods

ppr :: ABExport -> SDoc Source #

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

Instances

Instances details
Data NamespaceSpecifier Source # 
Instance details

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 # 
Instance details

Defined in GHC.Hs.Binds

Eq NamespaceSpecifier Source # 
Instance details

Defined in GHC.Hs.Binds

ppr_sig :: forall (p :: Pass). OutputableBndrId p => Sig (GhcPass p) -> SDoc Source #

type family XVarBindGhc (pL :: Pass) (pR :: Pass) where ... Source #

data AnnPSB Source #

Constructors

AnnPSB 

Fields

Instances

Instances details
Data AnnPSB Source # 
Instance details

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

toConstr :: AnnPSB -> Constr

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 # 
Instance details

Defined in GHC.Hs.Binds

Methods

noAnn :: AnnPSB 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

Instances details
Data TcSpecPrags Source # 
Instance details

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

pprLHsBindsForUser :: forall (idL :: Pass) (idR :: Pass) (id2 :: Pass). (OutputableBndrId idL, OutputableBndrId idR, OutputableBndrId id2) => LHsBindsLR (GhcPass idL) (GhcPass idR) -> [LSig (GhcPass id2)] -> [SDoc] Source #

pprLHsBinds :: forall (idL :: Pass) (idR :: Pass). (OutputableBndrId idL, OutputableBndrId idR) => LHsBindsLR (GhcPass idL) (GhcPass idR) -> SDoc Source #

isEmptyLHsBinds :: forall (idL :: Pass) idR. LHsBindsLR (GhcPass idL) idR -> Bool Source #

emptyLocalBinds :: forall (a :: Pass) (b :: Pass). HsLocalBindsLR (GhcPass a) (GhcPass b) Source #

isEmptyValBinds :: forall (a :: Pass) (b :: Pass). HsValBindsLR (GhcPass a) (GhcPass b) -> Bool 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 #

emptyLHsBinds :: forall (idL :: Pass) idR. LHsBindsLR (GhcPass idL) idR Source #

pprHsMultAnn :: forall (id :: Pass). OutputableBndrId id => HsMultAnn (GhcPass id) -> SDoc Source #

ppr_monobind :: forall (idL :: Pass) (idR :: Pass). (OutputableBndrId idL, OutputableBndrId idR) => HsBindLR (GhcPass idL) (GhcPass idR) -> SDoc Source #

data AnnSig Source #

Constructors

AnnSig 

Fields

Instances

Instances details
Data AnnSig Source # 
Instance details

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

toConstr :: AnnSig -> Constr

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 # 
Instance details

Defined in GHC.Hs.Binds

Methods

noAnn :: AnnSig Source #

data AnnSpecSig Source #

Instances

Instances details
Data AnnSpecSig Source # 
Instance details

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 # 
Instance details

Defined in GHC.Hs.Binds

newtype IdSig 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

Constructors

IdSig 

Fields

Instances

Instances details
Data IdSig Source # 
Instance details

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

toConstr :: IdSig -> Constr

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

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

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

type LTcSpecPrag = Located TcSpecPrag Source #

Located Type checker Specification Pragmas

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

Instances details
Data TcSpecPrag Source # 
Instance details

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 # 
Instance details

Defined in GHC.Hs.Binds

Methods

ppr :: TcSpecPrag -> SDoc Source #

pragSrcBrackets :: SourceText -> String -> SDoc -> SDoc Source #

Using SourceText in case the pragma was spelled differently or used mixed case

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.

hsSigDoc :: forall (p :: Pass). IsPass p => Sig (GhcPass p) -> SDoc Source #

Orphan instances

OutputableBndrId p => Outputable (FixitySig (GhcPass p)) Source # 
Instance details

Methods

ppr :: FixitySig (GhcPass p) -> SDoc Source #

OutputableBndrId p => Outputable (HsIPBinds (GhcPass p)) Source # 
Instance details

Methods

ppr :: HsIPBinds (GhcPass p) -> SDoc Source #

OutputableBndrId p => Outputable (IPBind (GhcPass p)) Source # 
Instance details

Methods

ppr :: IPBind (GhcPass p) -> SDoc Source #

Outputable (XRec pass (IdP pass)) => Outputable (RecordPatSynField pass) Source # 
Instance details

Methods

ppr :: RecordPatSynField pass -> SDoc Source #

OutputableBndrId p => Outputable (Sig (GhcPass p)) Source # 
Instance details

Methods

ppr :: Sig (GhcPass p) -> SDoc Source #

(OutputableBndrId pl, OutputableBndrId pr) => Outputable (HsBindLR (GhcPass pl) (GhcPass pr)) Source # 
Instance details

Methods

ppr :: HsBindLR (GhcPass pl) (GhcPass pr) -> SDoc Source #

(OutputableBndrId pl, OutputableBndrId pr) => Outputable (HsLocalBindsLR (GhcPass pl) (GhcPass pr)) Source # 
Instance details

Methods

ppr :: HsLocalBindsLR (GhcPass pl) (GhcPass pr) -> SDoc Source #

(OutputableBndrId pl, OutputableBndrId pr) => Outputable (HsValBindsLR (GhcPass pl) (GhcPass pr)) Source # 
Instance details

Methods

ppr :: HsValBindsLR (GhcPass pl) (GhcPass pr) -> SDoc Source #

(OutputableBndrId l, OutputableBndrId r) => Outputable (PatSynBind (GhcPass l) (GhcPass r)) Source # 
Instance details

Methods

ppr :: PatSynBind (GhcPass l) (GhcPass r) -> SDoc Source #