Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Synopsis
- getNextMessage :: Handle -> IO LazyByteString
- getHeaders :: Handle -> IO [(String, String)]
- type RequestMap = IxMap LspId RequestCallback
- emptyRequestMap :: RequestMap
- data RequestCallback (m :: Method 'ClientToServer 'Request) = RequestCallback {
- requestCallback :: TResponseMessage m -> IO ()
- requestMethod :: SClientMethod m
- type NotificationMap = DMap SMethod NotificationCallback
- emptyNotificationMap :: NotificationMap
- newtype NotificationCallback (m :: Method 'ServerToClient 'Notification) = NotificationCallback {
- notificationCallback :: TNotificationMessage m -> IO ()
- updateRequestMap :: LspId m -> RequestCallback m -> RequestMap -> RequestMap
- appendNotificationCallback :: SMethod m -> NotificationCallback m -> NotificationMap -> NotificationMap
- removeNotificationCallback :: SMethod (m :: Method 'ServerToClient 'Notification) -> NotificationMap -> NotificationMap
- decodeFromServerMsg :: LazyByteString -> RequestMap -> ((FromServerMessage, IO ()), RequestMap)
Documentation
getNextMessage :: Handle -> IO LazyByteString Source #
Fetches the next message bytes based on the Content-Length header
type RequestMap = IxMap LspId RequestCallback Source #
data RequestCallback (m :: Method 'ClientToServer 'Request) Source #
RequestCallback | |
|
type NotificationMap = DMap SMethod NotificationCallback Source #
newtype NotificationCallback (m :: Method 'ServerToClient 'Notification) Source #
NotificationCallback | |
|
Instances
Monoid (NotificationCallback m) Source # | |
Defined in Language.LSP.Client.Decoding mempty :: NotificationCallback m # mappend :: NotificationCallback m -> NotificationCallback m -> NotificationCallback m # mconcat :: [NotificationCallback m] -> NotificationCallback m # | |
Semigroup (NotificationCallback m) Source # | |
Defined in Language.LSP.Client.Decoding (<>) :: NotificationCallback m -> NotificationCallback m -> NotificationCallback m # sconcat :: NonEmpty (NotificationCallback m) -> NotificationCallback m # stimes :: Integral b => b -> NotificationCallback m -> NotificationCallback m # |
updateRequestMap :: LspId m -> RequestCallback m -> RequestMap -> RequestMap Source #
appendNotificationCallback :: SMethod m -> NotificationCallback m -> NotificationMap -> NotificationMap Source #
removeNotificationCallback :: SMethod (m :: Method 'ServerToClient 'Notification) -> NotificationMap -> NotificationMap Source #
decodeFromServerMsg :: LazyByteString -> RequestMap -> ((FromServerMessage, IO ()), RequestMap) Source #