ghci-8.2.2: The library supporting GHC's interactive interpreter

Safe Haskell | None
Language | Haskell2010

GHCi.TH

Description

Running TH splices

Synopsis

- startTH :: IO (RemoteRef (IORef QState))
- runModFinalizerRefs :: Pipe -> RemoteRef (IORef QState) -> [RemoteRef (Q ())] -> IO ()
- runTH :: Pipe -> RemoteRef (IORef QState) -> HValueRef -> THResultType -> Maybe Loc -> IO ByteString
- data GHCiQException = GHCiQException QState String

# Documentation

startTH :: IO (RemoteRef (IORef QState)) #

The implementation of the `StartTH` message: create a new IORef QState, and return a RemoteRef to it.

runModFinalizerRefs :: Pipe -> RemoteRef (IORef QState) -> [RemoteRef (Q ())] -> IO () #

Runs the mod finalizers.

The references must be created on the caller process.

runTH #

Arguments

:: Pipe |
-> RemoteRef (IORef QState) | The TH state, created by `startTH`
-> HValueRef | The splice to run
-> THResultType | What kind of splice it is
-> Maybe Loc | The source location
-> IO ByteString | Returns an (encoded) result that depends on the THResultType

The implementation of the `RunTH` message

data GHCiQException #

The exception thrown by "fail" in the GHCiQ monad

Constructors

GHCiQException QState String |

Instances

Show GHCiQException # |
Methods showsPrec :: Int -> GHCiQException -> ShowS Source # show :: GHCiQException -> String Source # showList :: [GHCiQException] -> ShowS Source #
Exception GHCiQException # |
Methods toException :: GHCiQException -> SomeException Source # fromException :: SomeException -> Maybe GHCiQException Source # displayException :: GHCiQException -> String Source #