GHC.Tc.Types.TH

ghc-lib-parser-9.14.1.20251220: The GHC API, decoupled from GHC versions

Safe Haskell | Ignore
Language | GHC2021

GHC.Tc.Types.TH

Synopsis

- data SpliceType
  - = Typed
  - | Untyped
- data SpliceOrBracket
  - = IsSplice
  - | IsBracket
- data ThLevel where
  - Splice SpliceType ThLevel
  - RunSplice (TcRef [ForeignRef (Q ())])
  - Comp
  - Brack ThLevel PendingStuff
  - pattern TypedBrack :: ThLevel -> ThLevel
  - pattern UntypedBrack :: ThLevel -> TcRef [PendingRnSplice] -> ThLevel
- data PendingStuff
  - = RnPending (TcRef [PendingRnSplice])
  - | RnPendingTyped
  - | TcPending (TcRef [PendingTcSplice]) (TcRef WantedConstraints) QuoteWrapper
- data ThLevelIndex
- topLevel :: ThLevel
- topAnnLevel :: ThLevel
- topSpliceLevel :: ThLevel
- thLevelIndex :: ThLevel -> ThLevelIndex
- topLevelIndex :: ThLevelIndex
- spliceLevelIndex :: ThLevelIndex
- quoteLevelIndex :: ThLevelIndex
- thLevelIndexFromImportLevel :: ImportLevel -> ThLevelIndex

# Documentation

data SpliceType #

Constructors

Typed |
Untyped |

data SpliceOrBracket #

Constructors

IsSplice |
IsBracket |

data ThLevel #

Constructors

Splice SpliceType ThLevel |
RunSplice (TcRef [ForeignRef (Q ())]) |
Comp |
Brack ThLevel PendingStuff |

Bundled Patterns

pattern TypedBrack :: ThLevel -> ThLevel |
pattern UntypedBrack :: ThLevel -> TcRef [PendingRnSplice] -> ThLevel |

#### Instances

Instances details

Outputable ThLevel # |
Instance details Defined in GHC.Tc.Types.TH Methods ppr :: ThLevel -> SDoc #

data PendingStuff #

Constructors

RnPending (TcRef [PendingRnSplice]) |
RnPendingTyped |
TcPending (TcRef [PendingTcSplice]) (TcRef WantedConstraints) QuoteWrapper |

data ThLevelIndex #

The integer which represents the level

#### Instances

Instances details

Data ThLevelIndex # |
Instance details Defined in GHC.Types.ThLevelIndex Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ThLevelIndex -> c ThLevelIndex # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ThLevelIndex # toConstr :: ThLevelIndex -> Constr # dataTypeOf :: ThLevelIndex -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ThLevelIndex) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ThLevelIndex) # gmapT :: (forall b. Data b => b -> b) -> ThLevelIndex -> ThLevelIndex # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ThLevelIndex -> r # gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ThLevelIndex -> r # gmapQ :: (forall d. Data d => d -> u) -> ThLevelIndex -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> ThLevelIndex -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> ThLevelIndex -> m ThLevelIndex # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ThLevelIndex -> m ThLevelIndex # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ThLevelIndex -> m ThLevelIndex #
Outputable ThLevelIndex # |
Instance details Defined in GHC.Types.ThLevelIndex Methods ppr :: ThLevelIndex -> SDoc #
Eq ThLevelIndex # |
Instance details Defined in GHC.Types.ThLevelIndex Methods (==) :: ThLevelIndex -> ThLevelIndex -> Bool # (/=) :: ThLevelIndex -> ThLevelIndex -> Bool #
Ord ThLevelIndex # |
Instance details Defined in GHC.Types.ThLevelIndex Methods compare :: ThLevelIndex -> ThLevelIndex -> Ordering # (<) :: ThLevelIndex -> ThLevelIndex -> Bool # (<=) :: ThLevelIndex -> ThLevelIndex -> Bool # (>) :: ThLevelIndex -> ThLevelIndex -> Bool # (>=) :: ThLevelIndex -> ThLevelIndex -> Bool # max :: ThLevelIndex -> ThLevelIndex -> ThLevelIndex # min :: ThLevelIndex -> ThLevelIndex -> ThLevelIndex #

topLevel :: ThLevel #

topAnnLevel :: ThLevel #

topSpliceLevel :: ThLevel #

thLevelIndex :: ThLevel -> ThLevelIndex #

topLevelIndex :: ThLevelIndex #

spliceLevelIndex :: ThLevelIndex #

quoteLevelIndex :: ThLevelIndex #

thLevelIndexFromImportLevel :: ImportLevel -> ThLevelIndex #

Convert a `ImportLevel` to a `ThLevelIndex`