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

GHC.Unit.Module.Warnings

Description

Warnings for a module

Synopsis

Documentation

newtype WarningCategory #

Instances

Instances details
NFData WarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

Methods

rnf :: WarningCategory -> () #

Data WarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WarningCategory -> c WarningCategory #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c WarningCategory #

toConstr :: WarningCategory -> Constr #

dataTypeOf :: WarningCategory -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c WarningCategory) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c WarningCategory) #

gmapT :: (forall b. Data b => b -> b) -> WarningCategory -> WarningCategory #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WarningCategory -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WarningCategory -> r #

gmapQ :: (forall d. Data d => d -> u) -> WarningCategory -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WarningCategory -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WarningCategory -> m WarningCategory #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WarningCategory -> m WarningCategory #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WarningCategory -> m WarningCategory #

Show WarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

Uniquable WarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

Binary WarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

Outputable WarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

Methods

ppr :: WarningCategory -> SDoc #

Eq WarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

defaultWarningCategory :: WarningCategory #

The deprecations category is used for all DEPRECATED pragmas and for WARNING pragmas that do not specify a category.

validWarningCategory :: WarningCategory -> Bool #

Is this warning category allowed to appear in user-defined WARNING pragmas? It must either be the known category deprecations, or be a custom category that begins with x- and contains only valid characters (letters, numbers, apostrophes and dashes).

data InWarningCategory #

Instances

Instances details
Data InWarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> InWarningCategory -> c InWarningCategory #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c InWarningCategory #

toConstr :: InWarningCategory -> Constr #

dataTypeOf :: InWarningCategory -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c InWarningCategory) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c InWarningCategory) #

gmapT :: (forall b. Data b => b -> b) -> InWarningCategory -> InWarningCategory #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> InWarningCategory -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> InWarningCategory -> r #

gmapQ :: (forall d. Data d => d -> u) -> InWarningCategory -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> InWarningCategory -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> InWarningCategory -> m InWarningCategory #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> InWarningCategory -> m InWarningCategory #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> InWarningCategory -> m InWarningCategory #

Outputable InWarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

Eq InWarningCategory # 
Instance details

Defined in GHC.Unit.Module.Warnings

data WarningCategorySet #

A finite or infinite set of warning categories.

Unlike WarningFlag, there are (in principle) infinitely many warning categories, so we cannot necessarily enumerate all of them. However the set is constructed by adding or removing categories one at a time, so we can represent it as either a finite set of categories, or a cofinite set (where we store the complement).

emptyWarningCategorySet :: WarningCategorySet #

The empty set of warning categories.

completeWarningCategorySet :: WarningCategorySet #

The set consisting of all possible warning categories.

elemWarningCategorySet :: WarningCategory -> WarningCategorySet -> Bool #

Does this warning category belong to the set?

insertWarningCategorySet :: WarningCategory -> WarningCategorySet -> WarningCategorySet #

Insert an element into a warning category set.

deleteWarningCategorySet :: WarningCategory -> WarningCategorySet -> WarningCategorySet #

Delete an element from a warning category set.

data Warnings pass #

Warning information from a module

Constructors

WarnSome 

Fields

WarnAll (WarningTxt pass)

Whole module deprecated

Instances

Instances details
Eq (IdP pass) => Eq (Warnings pass) # 
Instance details

Defined in GHC.Unit.Module.Warnings

Methods

(==) :: Warnings pass -> Warnings pass -> Bool #

(/=) :: Warnings pass -> Warnings pass -> Bool #

data WarningTxt pass #

Warning Text

reason/explanation from a WARNING or DEPRECATED pragma

Constructors

WarningTxt 

Fields

DeprecatedTxt SourceText [LocatedE (WithHsDocIdentifiers StringLiteral pass)] 

Instances

Instances details
(Data pass, Data (IdP pass)) => Data (WarningTxt pass) # 
Instance details

Defined in GHC.Unit.Module.Warnings

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WarningTxt pass -> c (WarningTxt pass) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (WarningTxt pass) #

toConstr :: WarningTxt pass -> Constr #

dataTypeOf :: WarningTxt pass -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (WarningTxt pass)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (WarningTxt pass)) #

gmapT :: (forall b. Data b => b -> b) -> WarningTxt pass -> WarningTxt pass #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WarningTxt pass -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WarningTxt pass -> r #

gmapQ :: (forall d. Data d => d -> u) -> WarningTxt pass -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WarningTxt pass -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> WarningTxt pass -> m (WarningTxt pass) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> WarningTxt pass -> m (WarningTxt pass) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> WarningTxt pass -> m (WarningTxt pass) #

Generic (WarningTxt pass) # 
Instance details

Defined in GHC.Unit.Module.Warnings

Methods

from :: WarningTxt pass -> Rep (WarningTxt pass) x #

to :: Rep (WarningTxt pass) x -> WarningTxt pass #

Outputable (WarningTxt pass) # 
Instance details

Defined in GHC.Unit.Module.Warnings

Methods

ppr :: WarningTxt pass -> SDoc #

Eq (IdP pass) => Eq (WarningTxt pass) # 
Instance details

Defined in GHC.Unit.Module.Warnings

Methods

(==) :: WarningTxt pass -> WarningTxt pass -> Bool #

(/=) :: WarningTxt pass -> WarningTxt pass -> Bool #

type Rep (WarningTxt pass) # 
Instance details

Defined in GHC.Unit.Module.Warnings

type Anno (WarningTxt (GhcPass pass)) # 
Instance details

Defined in GHC.Unit.Module.Warnings

type LWarningTxt pass = XRec pass (WarningTxt pass) #

type DeclWarnOccNames pass = [(OccName, WarningTxt pass)] #

Deprecated declarations

type ExportWarnNames pass = [(Name, WarningTxt pass)] #

Names that are deprecated as exports

warningTxtCategory :: WarningTxt pass -> WarningCategory #

To which warning category does this WARNING or DEPRECATED pragma belong? See Note [Warning categories].

warningTxtMessage :: WarningTxt p -> [LocatedE (WithHsDocIdentifiers StringLiteral p)] #

The message that the WarningTxt was specified to output

warningTxtSame :: WarningTxt p1 -> WarningTxt p2 -> Bool #

True if the 2 WarningTxts have the same category and messages

mkIfaceDeclWarnCache :: Warnings p -> OccName -> Maybe (WarningTxt p) #

Constructs the cache for the mi_decl_warn_fn field of a ModIface

mkIfaceExportWarnCache :: Warnings p -> Name -> Maybe (WarningTxt p) #

Constructs the cache for the mi_export_warn_fn field of a ModIface

insertWarnDecls #

Arguments

:: Warnings p

Existing warnings

-> [(OccName, WarningTxt p)]

New declaration deprecations

-> Warnings p

Updated warnings

insertWarnExports #

Arguments

:: Warnings p

Existing warnings

-> [(Name, WarningTxt p)]

New export deprecations

-> Warnings p

Updated warnings