GHC.Prelude

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

Safe Haskell | Ignore
Language | GHC2021

GHC.Prelude

Description

Custom GHC Prelude

This module serves as a replacement for the Prelude module and abstracts over differences between the bootstrapping GHC version, and may also provide a common default vocabulary.

Synopsis

- module GHC.Prelude.Basic
- pprTrace :: String -> SDoc -> a -> a
- pprTraceM :: Applicative f => String -> SDoc -> f ()
- pprTraceDebug :: String -> SDoc -> a -> a
- pprTraceIt :: Outputable a => String -> a -> a
- pprTraceWith :: String -> (a -> SDoc) -> a -> a
- pprSTrace :: HasCallStack => SDoc -> a -> a
- pprTraceException :: ExceptionMonad m => String -> SDoc -> m a -> m a
- warnPprTrace :: HasCallStack => Bool -> String -> SDoc -> a -> a
- warnPprTraceM :: (Applicative f, HasCallStack) => Bool -> String -> SDoc -> f ()
- pprTraceUserWarning :: HasCallStack => SDoc -> a -> a

# Documentation

module GHC.Prelude.Basic

pprTrace :: String -> SDoc -> a -> a #

If debug output is on, show some `SDoc` on the screen

pprTraceM :: Applicative f => String -> SDoc -> f () #

pprTraceDebug :: String -> SDoc -> a -> a #

pprTraceIt :: Outputable a => String -> a -> a #

`pprTraceIt desc x` is equivalent to `pprTrace desc (ppr x) x`

pprTraceWith :: String -> (a -> SDoc) -> a -> a #

`pprTraceWith desc f x` is equivalent to `pprTrace desc (f x) x`. This allows you to print details from the returned value as well as from ambient variables.

pprSTrace :: HasCallStack => SDoc -> a -> a #

If debug output is on, show some `SDoc` on the screen along with a call stack when available.

pprTraceException :: ExceptionMonad m => String -> SDoc -> m a -> m a #

`pprTraceException desc x action` runs action, printing a message if it throws an exception.

warnPprTrace :: HasCallStack => Bool -> String -> SDoc -> a -> a #

Just warn about an assertion failure, recording the given file and line number.

warnPprTraceM :: (Applicative f, HasCallStack) => Bool -> String -> SDoc -> f () #

pprTraceUserWarning :: HasCallStack => SDoc -> a -> a #

For when we want to show the user a non-fatal WARNING so that they can report a GHC bug, but don't want to panic.