Safe Haskell | None |
---|---|
Language | Haskell2010 |
GHCi.Message
Contents
- data Message a where
- Shutdown :: Message ()
- InitLinker :: Message ()
- LookupSymbol :: String -> Message (Maybe (RemotePtr ()))
- LookupClosure :: String -> Message (Maybe HValueRef)
- LoadDLL :: String -> Message (Maybe String)
- LoadArchive :: String -> Message ()
- LoadObj :: String -> Message ()
- UnloadObj :: String -> Message ()
- AddLibrarySearchPath :: String -> Message (RemotePtr ())
- RemoveLibrarySearchPath :: RemotePtr () -> Message Bool
- ResolveObjs :: Message Bool
- FindSystemLibrary :: String -> Message (Maybe String)
- CreateBCOs :: [ByteString] -> Message [HValueRef]
- FreeHValueRefs :: [HValueRef] -> Message ()
- MallocData :: ByteString -> Message (RemotePtr ())
- MallocStrings :: [ByteString] -> Message [RemotePtr ()]
- PrepFFI :: FFIConv -> [FFIType] -> FFIType -> Message (RemotePtr C_ffi_cif)
- FreeFFI :: RemotePtr C_ffi_cif -> Message ()
- MkConInfoTable :: Int -> Int -> Int -> [Word8] -> Message (RemotePtr StgInfoTable)
- EvalStmt :: EvalOpts -> EvalExpr HValueRef -> Message (EvalStatus [HValueRef])
- ResumeStmt :: EvalOpts -> RemoteRef (ResumeContext [HValueRef]) -> Message (EvalStatus [HValueRef])
- AbandonStmt :: RemoteRef (ResumeContext [HValueRef]) -> Message ()
- EvalString :: HValueRef -> Message (EvalResult String)
- EvalStringToString :: HValueRef -> String -> Message (EvalResult String)
- EvalIO :: HValueRef -> Message (EvalResult ())
- MkCostCentres :: String -> [(String, String)] -> Message [RemotePtr CostCentre]
- CostCentreStackInfo :: RemotePtr CostCentreStack -> Message [String]
- NewBreakArray :: Int -> Message (RemoteRef BreakArray)
- EnableBreakpoint :: RemoteRef BreakArray -> Int -> Bool -> Message ()
- BreakpointStatus :: RemoteRef BreakArray -> Int -> Message Bool
- GetBreakpointVar :: HValueRef -> Int -> Message (Maybe HValueRef)
- StartTH :: Message (RemoteRef (IORef QState))
- FinishTH :: RemoteRef (IORef QState) -> Message ()
- RunTH :: RemoteRef (IORef QState) -> HValueRef -> THResultType -> Maybe Loc -> Message ByteString
- NewName :: String -> Message (THResult Name)
- Report :: Bool -> String -> Message (THResult ())
- LookupName :: Bool -> String -> Message (THResult (Maybe Name))
- Reify :: Name -> Message (THResult Info)
- ReifyFixity :: Name -> Message (THResult (Maybe Fixity))
- ReifyInstances :: Name -> [Type] -> Message (THResult [Dec])
- ReifyRoles :: Name -> Message (THResult [Role])
- ReifyAnnotations :: AnnLookup -> TypeRep -> Message (THResult [ByteString])
- ReifyModule :: Module -> Message (THResult ModuleInfo)
- ReifyConStrictness :: Name -> Message (THResult [DecidedStrictness])
- AddDependentFile :: FilePath -> Message (THResult ())
- AddTopDecls :: [Dec] -> Message (THResult ())
- IsExtEnabled :: Extension -> Message (THResult Bool)
- ExtsEnabled :: Message (THResult [Extension])
- StartRecover :: Message ()
- EndRecover :: Bool -> Message ()
- QDone :: Message ()
- QException :: String -> Message ()
- QFail :: String -> Message ()
- data Msg = (Binary a, Show a) => Msg (Message a)
- data EvalStatus_ a b
- = EvalComplete Word64 (EvalResult a)
- | EvalBreak Bool HValueRef Int Int (RemoteRef (ResumeContext b)) (RemotePtr CostCentreStack)
- type EvalStatus a = EvalStatus_ a a
- data EvalResult a
- data EvalOpts = EvalOpts {}
- data EvalExpr a
- data SerializableException
- data THResult a
- = THException String
- | THComplete a
- data THResultType
- = THExp
- | THPat
- | THType
- | THDec
- | THAnnWrapper
- data ResumeContext a = ResumeContext {
- resumeBreakMVar :: MVar ()
- resumeStatusMVar :: MVar (EvalStatus a)
- resumeThreadId :: ThreadId
- data QState = QState {}
- getMessage :: Get Msg
- putMessage :: Message a -> Put
- data Pipe = Pipe {
- pipeRead :: Handle
- pipeWrite :: Handle
- pipeLeftovers :: IORef (Maybe ByteString)
- remoteCall :: Binary a => Pipe -> Message a -> IO a
- readPipe :: Pipe -> Get a -> IO a
- writePipe :: Pipe -> Put -> IO ()
Documentation
A Message a
is a message that returns a value of type a
Constructors
data EvalStatus_ a b Source #
Constructors
EvalComplete Word64 (EvalResult a) | |
EvalBreak Bool HValueRef Int Int (RemoteRef (ResumeContext b)) (RemotePtr CostCentreStack) |
Instances
Show a => Show (EvalStatus_ a b) # | |
Generic (EvalStatus_ a b) # | |
Binary a => Binary (EvalStatus_ a b) # | |
type Rep (EvalStatus_ a b) # | |
type EvalStatus a = EvalStatus_ a a Source #
data EvalResult a Source #
Constructors
EvalException SerializableException | |
EvalSuccess a |
Instances
Show a => Show (EvalResult a) # | |
Generic (EvalResult a) # | |
Binary a => Binary (EvalResult a) # | |
type Rep (EvalResult a) # | |
Constructors
EvalOpts | |
Fields
|
We can pass simple expressions to EvalStmt, consisting of values and application. This allows us to wrap the statement to be executed in another function, which is used by GHCi to implement :set args and :set prog. It might be worthwhile to extend this little language in the future.
data SerializableException Source #
Constructors
EUserInterrupt | |
EExitCode ExitCode | |
EOtherException String |
Constructors
THException String | |
THComplete a |
data ResumeContext a Source #
Constructors
ResumeContext | |
Fields
|
Constructors
QState | |
getMessage :: Get Msg Source #
putMessage :: Message a -> Put Source #
Constructors
Pipe | |
Fields
|