Language.LSP.Protocol.Message

lsp-types-2.3.0.1: Haskell library for the Microsoft Language Server Protocol, data types

Safe Haskell | None
Language | GHC2021

Language.LSP.Protocol.Message

Contents

- Messages
  - LSP protocol message types and metadata
  - Parsing LSP messages
- Methods
  - Main LSP method types and functions
  - Helpers for working with methods
- LSP registrations

Synopsis

- data ResponseError = ResponseError {
  - _code :: LSPErrorCodes |? ErrorCodes
  - _message :: Text
  - _xdata :: Maybe Value
  }
- data TResponseError (m :: Method f 'Request) = TResponseError {
  - _code :: LSPErrorCodes |? ErrorCodes
  - _message :: Text
  - _xdata :: Maybe (ErrorData m)
  }
- data RequestMessage = RequestMessage {
  - _jsonrpc :: Text
  - _id :: Int32 |? Text
  - _method :: Text
  - _params :: Maybe Value
  }
- data ResponseMessage = ResponseMessage {
  - _jsonrpc :: Text
  - _id :: Int32 |? (Text |? Null)
  - _result :: Maybe Value
  - _error :: Maybe ResponseError
  }
- data TRequestMessage (m :: Method f 'Request) = TRequestMessage {
  - _jsonrpc :: Text
  - _id :: LspId m
  - _method :: SMethod m
  - _params :: MessageParams m
  }
- data TResponseMessage (m :: Method f 'Request) = TResponseMessage {
  - _jsonrpc :: Text
  - _id :: Maybe (LspId m)
  - _result :: Either (TResponseError m) (MessageResult m)
  }
- data NotificationMessage = NotificationMessage {
  - _jsonrpc :: Text
  - _method :: Text
  - _params :: Maybe Value
  }
- data TNotificationMessage (m :: Method f 'Notification) = TNotificationMessage {
  - _jsonrpc :: Text
  - _method :: SMethod m
  - _params :: MessageParams m
  }
- addNullField :: String -> Value -> Value
- toUntypedResponseError :: forall {f :: MessageDirection} (m :: Method f 'Request). ToJSON (ErrorData m) => TResponseError m -> ResponseError
- data TCustomMessage (s :: Symbol) (f :: MessageDirection) (t :: MessageKind) where
  - ReqMess :: forall (s :: Symbol) (f :: MessageDirection). TRequestMessage ('Method_CustomMethod s :: Method f 'Request) -> TCustomMessage s f 'Request
  - NotMess :: forall (s :: Symbol) (f :: MessageDirection). TNotificationMessage ('Method_CustomMethod s :: Method f 'Notification) -> TCustomMessage s f 'Notification
- type family TMessage (m :: Method f t) where ...
- type TClientMessage (m :: Method 'ClientToServer t) = TMessage m
- type TServerMessage (m :: Method 'ServerToClient t) = TMessage m
- data LspId (m :: Method f 'Request)
  - = IdInt !Int32
  - | IdString !Text
- data SomeLspId where
  - SomeLspId :: forall {f :: MessageDirection} (m :: Method f 'Request). !(LspId m) -> SomeLspId
- data MessageDirection
  - = ServerToClient
  - | ClientToServer
- data MessageKind
  - = Notification
  - | Request
- data SMessageDirection (f :: MessageDirection) where
  - SClientToServer :: SMessageDirection 'ClientToServer
  - SServerToClient :: SMessageDirection 'ServerToClient
  - SBothDirections :: forall (f :: MessageDirection). SMessageDirection f
- data SMessageKind (f :: MessageKind) where
  - SNotification :: SMessageKind 'Notification
  - SRequest :: SMessageKind 'Request
  - SBothTypes :: forall (f :: MessageKind). SMessageKind f
- runEq :: forall (t1 :: MessageKind) (t2 :: MessageKind) (f :: MessageDirection) (m1 :: Method f t1) (m2 :: Method f t2). t1 ~ t2 => (SMethod m1 -> SMethod m2 -> Maybe (Either (CustomEq m1 m2) (m1 :~~: m2))) -> SMethod m1 -> SMethod m2 -> Maybe (m1 :~~: m2)
- data FromServerMessage' (a :: Method 'ClientToServer 'Request -> Type) where
  - FromServerMess :: forall (t :: MessageKind) (m :: Method 'ServerToClient t) (a :: Method 'ClientToServer 'Request -> Type). SMethod m -> TMessage m -> FromServerMessage' a
  - FromServerRsp :: forall (m :: Method 'ClientToServer 'Request) (a :: Method 'ClientToServer 'Request -> Type). a m -> TResponseMessage m -> FromServerMessage' a
- type FromServerMessage = FromServerMessage' (SMethod :: Method 'ClientToServer 'Request -> Type)
- serverMethodJSON :: forall {t :: MessageKind} (m :: Method 'ServerToClient t) x. SServerMethod m -> (ToJSON (TServerMessage m) => x) -> x
- clientResponseJSON :: forall (m :: Method 'ClientToServer 'Request) x. SClientMethod m -> (HasJSON (TResponseMessage m) => x) -> x
- fromServerNot :: forall (m :: Method 'ServerToClient 'Notification). TMessage m ~ TNotificationMessage m => TNotificationMessage m -> FromServerMessage
- fromServerReq :: forall (m :: Method 'ServerToClient 'Request). TMessage m ~ TRequestMessage m => TRequestMessage m -> FromServerMessage
- data FromClientMessage' (a :: Method 'ServerToClient 'Request -> Type) where
  - FromClientMess :: forall (t :: MessageKind) (m :: Method 'ClientToServer t) (a :: Method 'ServerToClient 'Request -> Type). SMethod m -> TMessage m -> FromClientMessage' a
  - FromClientRsp :: forall (m :: Method 'ServerToClient 'Request) (a :: Method 'ServerToClient 'Request -> Type). a m -> TResponseMessage m -> FromClientMessage' a
- type FromClientMessage = FromClientMessage' (SMethod :: Method 'ServerToClient 'Request -> Type)
- clientMethodJSON :: forall {t :: MessageKind} (m :: Method 'ClientToServer t) x. SClientMethod m -> (ToJSON (TClientMessage m) => x) -> x
- serverResponseJSON :: forall (m :: Method 'ServerToClient 'Request) x. SServerMethod m -> (HasJSON (TResponseMessage m) => x) -> x
- fromClientNot :: forall (m :: Method 'ClientToServer 'Notification). TMessage m ~ TNotificationMessage m => TNotificationMessage m -> FromClientMessage
- fromClientReq :: forall (m :: Method 'ClientToServer 'Request). TMessage m ~ TRequestMessage m => TRequestMessage m -> FromClientMessage
- type LookupFunc (f :: MessageDirection) (a :: Method f 'Request -> Type) = forall (m :: Method f 'Request). LspId m -> Maybe (SMethod m, a m)
- parseServerMessage :: forall (a :: Method 'ClientToServer 'Request -> Type). LookupFunc 'ClientToServer a -> Value -> Parser (FromServerMessage' a)
- splitServerMethod :: forall {t :: MessageKind} (m :: Method 'ServerToClient t). SServerMethod m -> ServerNotOrReq m
- data ServerNotOrReq (m :: Method 'ServerToClient t) where
  - IsServerNot :: forall (m1 :: Method 'ServerToClient 'Notification). (HasJSON (TServerMessage m1), TMessage m1 ~ TNotificationMessage m1) => ServerNotOrReq m1
  - IsServerReq :: forall (m1 :: Method 'ServerToClient 'Request). (HasJSON (TServerMessage m1), HasJSON (TResponseMessage m1), TMessage m1 ~ TRequestMessage m1) => ServerNotOrReq m1
  - IsServerEither :: forall {t :: MessageKind} (s :: Symbol). ServerNotOrReq ('Method_CustomMethod s :: Method 'ServerToClient t)
- parseClientMessage :: forall (a :: Method 'ServerToClient 'Request -> Type). LookupFunc 'ServerToClient a -> Value -> Parser (FromClientMessage' a)
- splitClientMethod :: forall {t :: MessageKind} (m :: Method 'ClientToServer t). SClientMethod m -> ClientNotOrReq m
- data ClientNotOrReq (m :: Method 'ClientToServer t) where
  - IsClientNot :: forall (m1 :: Method 'ClientToServer 'Notification). (HasJSON (TClientMessage m1), TMessage m1 ~ TNotificationMessage m1) => ClientNotOrReq m1
  - IsClientReq :: forall (m1 :: Method 'ClientToServer 'Request). (HasJSON (TClientMessage m1), HasJSON (TResponseMessage m1), TMessage m1 ~ TRequestMessage m1) => ClientNotOrReq m1
  - IsClientEither :: forall {t :: MessageKind} (s :: Symbol). ClientNotOrReq ('Method_CustomMethod s :: Method 'ClientToServer t)
- type HasJSON a = (ToJSON a, FromJSON a, Eq a)
- data CustomEq (m1 :: Method f t1) (m2 :: Method f t2) where
  - CustomEq :: forall (f :: MessageDirection) (t1 :: MessageKind) (m1 :: Method f t1) (s :: Symbol) (t2 :: MessageKind) (m2 :: Method f t2). (m1 ~ ('Method_CustomMethod s :: Method f t1), m2 ~ ('Method_CustomMethod s :: Method f t2)) => {..} -> CustomEq m1 m2
- mEqServer :: forall {t1 :: MessageKind} {t2 :: MessageKind} (m1 :: Method 'ServerToClient t1) (m2 :: Method 'ServerToClient t2). SServerMethod m1 -> SServerMethod m2 -> Maybe (Either (CustomEq m1 m2) (m1 :~~: m2))
- mEqClient :: forall {t1 :: MessageKind} {t2 :: MessageKind} (m1 :: Method 'ClientToServer t1) (m2 :: Method 'ClientToServer t2). SClientMethod m1 -> SClientMethod m2 -> Maybe (Either (CustomEq m1 m2) (m1 :~~: m2))
- data Method (f :: MessageDirection) (t :: MessageKind) where
  - Method_TextDocumentImplementation :: Method 'ClientToServer 'Request
  - Method_TextDocumentTypeDefinition :: Method 'ClientToServer 'Request
  - Method_WorkspaceWorkspaceFolders :: Method 'ServerToClient 'Request
  - Method_WorkspaceConfiguration :: Method 'ServerToClient 'Request
  - Method_TextDocumentDocumentColor :: Method 'ClientToServer 'Request
  - Method_TextDocumentColorPresentation :: Method 'ClientToServer 'Request
  - Method_TextDocumentFoldingRange :: Method 'ClientToServer 'Request
  - Method_TextDocumentDeclaration :: Method 'ClientToServer 'Request
  - Method_TextDocumentSelectionRange :: Method 'ClientToServer 'Request
  - Method_WindowWorkDoneProgressCreate :: Method 'ServerToClient 'Request
  - Method_TextDocumentPrepareCallHierarchy :: Method 'ClientToServer 'Request
  - Method_CallHierarchyIncomingCalls :: Method 'ClientToServer 'Request
  - Method_CallHierarchyOutgoingCalls :: Method 'ClientToServer 'Request
  - Method_TextDocumentSemanticTokensFull :: Method 'ClientToServer 'Request
  - Method_TextDocumentSemanticTokensFullDelta :: Method 'ClientToServer 'Request
  - Method_TextDocumentSemanticTokensRange :: Method 'ClientToServer 'Request
  - Method_WorkspaceSemanticTokensRefresh :: Method 'ServerToClient 'Request
  - Method_WindowShowDocument :: Method 'ServerToClient 'Request
  - Method_TextDocumentLinkedEditingRange :: Method 'ClientToServer 'Request
  - Method_WorkspaceWillCreateFiles :: Method 'ClientToServer 'Request
  - Method_WorkspaceWillRenameFiles :: Method 'ClientToServer 'Request
  - Method_WorkspaceWillDeleteFiles :: Method 'ClientToServer 'Request
  - Method_TextDocumentMoniker :: Method 'ClientToServer 'Request
  - Method_TextDocumentPrepareTypeHierarchy :: Method 'ClientToServer 'Request
  - Method_TypeHierarchySupertypes :: Method 'ClientToServer 'Request
  - Method_TypeHierarchySubtypes :: Method 'ClientToServer 'Request
  - Method_TextDocumentInlineValue :: Method 'ClientToServer 'Request
  - Method_WorkspaceInlineValueRefresh :: Method 'ServerToClient 'Request
  - Method_TextDocumentInlayHint :: Method 'ClientToServer 'Request
  - Method_InlayHintResolve :: Method 'ClientToServer 'Request
  - Method_WorkspaceInlayHintRefresh :: Method 'ServerToClient 'Request
  - Method_TextDocumentDiagnostic :: Method 'ClientToServer 'Request
  - Method_WorkspaceDiagnostic :: Method 'ClientToServer 'Request
  - Method_WorkspaceDiagnosticRefresh :: Method 'ServerToClient 'Request
  - Method_ClientRegisterCapability :: Method 'ServerToClient 'Request
  - Method_ClientUnregisterCapability :: Method 'ServerToClient 'Request
  - Method_Initialize :: Method 'ClientToServer 'Request
  - Method_Shutdown :: Method 'ClientToServer 'Request
  - Method_WindowShowMessageRequest :: Method 'ServerToClient 'Request
  - Method_TextDocumentWillSaveWaitUntil :: Method 'ClientToServer 'Request
  - Method_TextDocumentCompletion :: Method 'ClientToServer 'Request
  - Method_CompletionItemResolve :: Method 'ClientToServer 'Request
  - Method_TextDocumentHover :: Method 'ClientToServer 'Request
  - Method_TextDocumentSignatureHelp :: Method 'ClientToServer 'Request
  - Method_TextDocumentDefinition :: Method 'ClientToServer 'Request
  - Method_TextDocumentReferences :: Method 'ClientToServer 'Request
  - Method_TextDocumentDocumentHighlight :: Method 'ClientToServer 'Request
  - Method_TextDocumentDocumentSymbol :: Method 'ClientToServer 'Request
  - Method_TextDocumentCodeAction :: Method 'ClientToServer 'Request
  - Method_CodeActionResolve :: Method 'ClientToServer 'Request
  - Method_WorkspaceSymbol :: Method 'ClientToServer 'Request
  - Method_WorkspaceSymbolResolve :: Method 'ClientToServer 'Request
  - Method_TextDocumentCodeLens :: Method 'ClientToServer 'Request
  - Method_CodeLensResolve :: Method 'ClientToServer 'Request
  - Method_WorkspaceCodeLensRefresh :: Method 'ServerToClient 'Request
  - Method_TextDocumentDocumentLink :: Method 'ClientToServer 'Request
  - Method_DocumentLinkResolve :: Method 'ClientToServer 'Request
  - Method_TextDocumentFormatting :: Method 'ClientToServer 'Request
  - Method_TextDocumentRangeFormatting :: Method 'ClientToServer 'Request
  - Method_TextDocumentOnTypeFormatting :: Method 'ClientToServer 'Request
  - Method_TextDocumentRename :: Method 'ClientToServer 'Request
  - Method_TextDocumentPrepareRename :: Method 'ClientToServer 'Request
  - Method_WorkspaceExecuteCommand :: Method 'ClientToServer 'Request
  - Method_WorkspaceApplyEdit :: Method 'ServerToClient 'Request
  - Method_WorkspaceDidChangeWorkspaceFolders :: Method 'ClientToServer 'Notification
  - Method_WindowWorkDoneProgressCancel :: Method 'ClientToServer 'Notification
  - Method_WorkspaceDidCreateFiles :: Method 'ClientToServer 'Notification
  - Method_WorkspaceDidRenameFiles :: Method 'ClientToServer 'Notification
  - Method_WorkspaceDidDeleteFiles :: Method 'ClientToServer 'Notification
  - Method_NotebookDocumentDidOpen :: Method 'ClientToServer 'Notification
  - Method_NotebookDocumentDidChange :: Method 'ClientToServer 'Notification
  - Method_NotebookDocumentDidSave :: Method 'ClientToServer 'Notification
  - Method_NotebookDocumentDidClose :: Method 'ClientToServer 'Notification
  - Method_Initialized :: Method 'ClientToServer 'Notification
  - Method_Exit :: Method 'ClientToServer 'Notification
  - Method_WorkspaceDidChangeConfiguration :: Method 'ClientToServer 'Notification
  - Method_WindowShowMessage :: Method 'ServerToClient 'Notification
  - Method_WindowLogMessage :: Method 'ServerToClient 'Notification
  - Method_TelemetryEvent :: Method 'ServerToClient 'Notification
  - Method_TextDocumentDidOpen :: Method 'ClientToServer 'Notification
  - Method_TextDocumentDidChange :: Method 'ClientToServer 'Notification
  - Method_TextDocumentDidClose :: Method 'ClientToServer 'Notification
  - Method_TextDocumentDidSave :: Method 'ClientToServer 'Notification
  - Method_TextDocumentWillSave :: Method 'ClientToServer 'Notification
  - Method_WorkspaceDidChangeWatchedFiles :: Method 'ClientToServer 'Notification
  - Method_TextDocumentPublishDiagnostics :: Method 'ServerToClient 'Notification
  - Method_SetTrace :: Method 'ClientToServer 'Notification
  - Method_LogTrace :: Method 'ServerToClient 'Notification
  - Method_CancelRequest :: forall (f :: MessageDirection). Method f 'Notification
  - Method_Progress :: forall (f :: MessageDirection). Method f 'Notification
  - Method_CustomMethod :: forall (f :: MessageDirection) (t :: MessageKind). Symbol -> Method f t
- data SMethod (m :: Method f t) where
  - SMethod_TextDocumentImplementation :: SMethod 'Method_TextDocumentImplementation
  - SMethod_TextDocumentTypeDefinition :: SMethod 'Method_TextDocumentTypeDefinition
  - SMethod_WorkspaceWorkspaceFolders :: SMethod 'Method_WorkspaceWorkspaceFolders
  - SMethod_WorkspaceConfiguration :: SMethod 'Method_WorkspaceConfiguration
  - SMethod_TextDocumentDocumentColor :: SMethod 'Method_TextDocumentDocumentColor
  - SMethod_TextDocumentColorPresentation :: SMethod 'Method_TextDocumentColorPresentation
  - SMethod_TextDocumentFoldingRange :: SMethod 'Method_TextDocumentFoldingRange
  - SMethod_TextDocumentDeclaration :: SMethod 'Method_TextDocumentDeclaration
  - SMethod_TextDocumentSelectionRange :: SMethod 'Method_TextDocumentSelectionRange
  - SMethod_WindowWorkDoneProgressCreate :: SMethod 'Method_WindowWorkDoneProgressCreate
  - SMethod_TextDocumentPrepareCallHierarchy :: SMethod 'Method_TextDocumentPrepareCallHierarchy
  - SMethod_CallHierarchyIncomingCalls :: SMethod 'Method_CallHierarchyIncomingCalls
  - SMethod_CallHierarchyOutgoingCalls :: SMethod 'Method_CallHierarchyOutgoingCalls
  - SMethod_TextDocumentSemanticTokensFull :: SMethod 'Method_TextDocumentSemanticTokensFull
  - SMethod_TextDocumentSemanticTokensFullDelta :: SMethod 'Method_TextDocumentSemanticTokensFullDelta
  - SMethod_TextDocumentSemanticTokensRange :: SMethod 'Method_TextDocumentSemanticTokensRange
  - SMethod_WorkspaceSemanticTokensRefresh :: SMethod 'Method_WorkspaceSemanticTokensRefresh
  - SMethod_WindowShowDocument :: SMethod 'Method_WindowShowDocument
  - SMethod_TextDocumentLinkedEditingRange :: SMethod 'Method_TextDocumentLinkedEditingRange
  - SMethod_WorkspaceWillCreateFiles :: SMethod 'Method_WorkspaceWillCreateFiles
  - SMethod_WorkspaceWillRenameFiles :: SMethod 'Method_WorkspaceWillRenameFiles
  - SMethod_WorkspaceWillDeleteFiles :: SMethod 'Method_WorkspaceWillDeleteFiles
  - SMethod_TextDocumentMoniker :: SMethod 'Method_TextDocumentMoniker
  - SMethod_TextDocumentPrepareTypeHierarchy :: SMethod 'Method_TextDocumentPrepareTypeHierarchy
  - SMethod_TypeHierarchySupertypes :: SMethod 'Method_TypeHierarchySupertypes
  - SMethod_TypeHierarchySubtypes :: SMethod 'Method_TypeHierarchySubtypes
  - SMethod_TextDocumentInlineValue :: SMethod 'Method_TextDocumentInlineValue
  - SMethod_WorkspaceInlineValueRefresh :: SMethod 'Method_WorkspaceInlineValueRefresh
  - SMethod_TextDocumentInlayHint :: SMethod 'Method_TextDocumentInlayHint
  - SMethod_InlayHintResolve :: SMethod 'Method_InlayHintResolve
  - SMethod_WorkspaceInlayHintRefresh :: SMethod 'Method_WorkspaceInlayHintRefresh
  - SMethod_TextDocumentDiagnostic :: SMethod 'Method_TextDocumentDiagnostic
  - SMethod_WorkspaceDiagnostic :: SMethod 'Method_WorkspaceDiagnostic
  - SMethod_WorkspaceDiagnosticRefresh :: SMethod 'Method_WorkspaceDiagnosticRefresh
  - SMethod_ClientRegisterCapability :: SMethod 'Method_ClientRegisterCapability
  - SMethod_ClientUnregisterCapability :: SMethod 'Method_ClientUnregisterCapability
  - SMethod_Initialize :: SMethod 'Method_Initialize
  - SMethod_Shutdown :: SMethod 'Method_Shutdown
  - SMethod_WindowShowMessageRequest :: SMethod 'Method_WindowShowMessageRequest
  - SMethod_TextDocumentWillSaveWaitUntil :: SMethod 'Method_TextDocumentWillSaveWaitUntil
  - SMethod_TextDocumentCompletion :: SMethod 'Method_TextDocumentCompletion
  - SMethod_CompletionItemResolve :: SMethod 'Method_CompletionItemResolve
  - SMethod_TextDocumentHover :: SMethod 'Method_TextDocumentHover
  - SMethod_TextDocumentSignatureHelp :: SMethod 'Method_TextDocumentSignatureHelp
  - SMethod_TextDocumentDefinition :: SMethod 'Method_TextDocumentDefinition
  - SMethod_TextDocumentReferences :: SMethod 'Method_TextDocumentReferences
  - SMethod_TextDocumentDocumentHighlight :: SMethod 'Method_TextDocumentDocumentHighlight
  - SMethod_TextDocumentDocumentSymbol :: SMethod 'Method_TextDocumentDocumentSymbol
  - SMethod_TextDocumentCodeAction :: SMethod 'Method_TextDocumentCodeAction
  - SMethod_CodeActionResolve :: SMethod 'Method_CodeActionResolve
  - SMethod_WorkspaceSymbol :: SMethod 'Method_WorkspaceSymbol
  - SMethod_WorkspaceSymbolResolve :: SMethod 'Method_WorkspaceSymbolResolve
  - SMethod_TextDocumentCodeLens :: SMethod 'Method_TextDocumentCodeLens
  - SMethod_CodeLensResolve :: SMethod 'Method_CodeLensResolve
  - SMethod_WorkspaceCodeLensRefresh :: SMethod 'Method_WorkspaceCodeLensRefresh
  - SMethod_TextDocumentDocumentLink :: SMethod 'Method_TextDocumentDocumentLink
  - SMethod_DocumentLinkResolve :: SMethod 'Method_DocumentLinkResolve
  - SMethod_TextDocumentFormatting :: SMethod 'Method_TextDocumentFormatting
  - SMethod_TextDocumentRangeFormatting :: SMethod 'Method_TextDocumentRangeFormatting
  - SMethod_TextDocumentOnTypeFormatting :: SMethod 'Method_TextDocumentOnTypeFormatting
  - SMethod_TextDocumentRename :: SMethod 'Method_TextDocumentRename
  - SMethod_TextDocumentPrepareRename :: SMethod 'Method_TextDocumentPrepareRename
  - SMethod_WorkspaceExecuteCommand :: SMethod 'Method_WorkspaceExecuteCommand
  - SMethod_WorkspaceApplyEdit :: SMethod 'Method_WorkspaceApplyEdit
  - SMethod_WorkspaceDidChangeWorkspaceFolders :: SMethod 'Method_WorkspaceDidChangeWorkspaceFolders
  - SMethod_WindowWorkDoneProgressCancel :: SMethod 'Method_WindowWorkDoneProgressCancel
  - SMethod_WorkspaceDidCreateFiles :: SMethod 'Method_WorkspaceDidCreateFiles
  - SMethod_WorkspaceDidRenameFiles :: SMethod 'Method_WorkspaceDidRenameFiles
  - SMethod_WorkspaceDidDeleteFiles :: SMethod 'Method_WorkspaceDidDeleteFiles
  - SMethod_NotebookDocumentDidOpen :: SMethod 'Method_NotebookDocumentDidOpen
  - SMethod_NotebookDocumentDidChange :: SMethod 'Method_NotebookDocumentDidChange
  - SMethod_NotebookDocumentDidSave :: SMethod 'Method_NotebookDocumentDidSave
  - SMethod_NotebookDocumentDidClose :: SMethod 'Method_NotebookDocumentDidClose
  - SMethod_Initialized :: SMethod 'Method_Initialized
  - SMethod_Exit :: SMethod 'Method_Exit
  - SMethod_WorkspaceDidChangeConfiguration :: SMethod 'Method_WorkspaceDidChangeConfiguration
  - SMethod_WindowShowMessage :: SMethod 'Method_WindowShowMessage
  - SMethod_WindowLogMessage :: SMethod 'Method_WindowLogMessage
  - SMethod_TelemetryEvent :: SMethod 'Method_TelemetryEvent
  - SMethod_TextDocumentDidOpen :: SMethod 'Method_TextDocumentDidOpen
  - SMethod_TextDocumentDidChange :: SMethod 'Method_TextDocumentDidChange
  - SMethod_TextDocumentDidClose :: SMethod 'Method_TextDocumentDidClose
  - SMethod_TextDocumentDidSave :: SMethod 'Method_TextDocumentDidSave
  - SMethod_TextDocumentWillSave :: SMethod 'Method_TextDocumentWillSave
  - SMethod_WorkspaceDidChangeWatchedFiles :: SMethod 'Method_WorkspaceDidChangeWatchedFiles
  - SMethod_TextDocumentPublishDiagnostics :: SMethod 'Method_TextDocumentPublishDiagnostics
  - SMethod_SetTrace :: SMethod 'Method_SetTrace
  - SMethod_LogTrace :: SMethod 'Method_LogTrace
  - SMethod_CancelRequest :: forall {f :: MessageDirection}. SMethod ('Method_CancelRequest :: Method f 'Notification)
  - SMethod_Progress :: forall {f :: MessageDirection}. SMethod ('Method_Progress :: Method f 'Notification)
  - SMethod_CustomMethod :: forall {f :: MessageDirection} {t :: MessageKind} (s :: Symbol). KnownSymbol s => Proxy s -> SMethod ('Method_CustomMethod s :: Method f t)
- type family MessageParams (m :: Method f t) where ...
- type family MessageResult (m :: Method f t) where ...
- type family ErrorData (m :: Method f t) where ...
- type family RegistrationOptions (m :: Method f t) where ...
- data SomeMethod where
  - SomeMethod :: forall {f :: MessageDirection} {t :: MessageKind} (m :: Method f t). SMethod m -> SomeMethod
- someMethodToMethodString :: SomeMethod -> String
- methodStringToSomeMethod :: String -> SomeMethod
- messageDirection :: forall (f :: MessageDirection) (t :: MessageKind) (m :: Method f t). SMethod m -> SMessageDirection f
- messageKind :: forall (f :: MessageDirection) (t :: MessageKind) (m :: Method f t). SMethod m -> SMessageKind t
- isOptionalMethod :: SomeMethod -> Bool
- type SClientMethod (m :: Method 'ClientToServer t) = SMethod m
- type SServerMethod (m :: Method 'ServerToClient t) = SMethod m
- data SomeClientMethod = SomeClientMethod (SMethod m)
- data SomeServerMethod = SomeServerMethod (SMethod m)
- someClientMethod :: forall {f :: MessageDirection} {t :: MessageKind} (m :: Method f t). SMethod m -> Maybe SomeClientMethod
- someServerMethod :: forall {f :: MessageDirection} {t :: MessageKind} (m :: Method f t). SMethod m -> Maybe SomeServerMethod
- data TRegistration (m :: Method 'ClientToServer t) = TRegistration {
  - _id :: Text
  - _method :: SClientMethod m
  - _registerOptions :: !(Maybe (RegistrationOptions m))
  }
- regHelper :: forall {f :: MessageDirection} {t :: MessageKind} (m :: Method f t) x. SMethod m -> ((Show (RegistrationOptions m), ToJSON (RegistrationOptions m), FromJSON (RegistrationOptions m)) => x) -> x
- data TUnregistration (m :: Method 'ClientToServer t) = TUnregistration {
  - _id :: Text
  - _method :: SMethod m
  }
- data SomeRegistration = SomeRegistration (TRegistration m)
- toUntypedRegistration :: forall {t :: MessageKind} (m :: Method 'ClientToServer t). TRegistration m -> Registration
- toSomeRegistration :: Registration -> Maybe SomeRegistration
- data SomeUnregistration = SomeUnregistration (TUnregistration m)
- toUntypedUnregistration :: forall {t :: MessageKind} (m :: Method 'ClientToServer t). TUnregistration m -> Unregistration
- toSomeUnregistration :: Unregistration -> Maybe SomeUnregistration

# Messages

## LSP protocol message types and metadata

data ResponseError #

Response error type as defined in the spec.

Constructors

ResponseError |
Fields _code :: LSPErrorCodes |? ErrorCodes _message :: Text _xdata :: Maybe Value

#### Instances

Instances details

FromJSON ResponseError # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser ResponseError # parseJSONList :: Value -> Parser [ResponseError] # omittedField :: Maybe ResponseError #
ToJSON ResponseError # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods toJSON :: ResponseError -> Value # toEncoding :: ResponseError -> Encoding # toJSONList :: [ResponseError] -> Value # toEncodingList :: [ResponseError] -> Encoding # omitField :: ResponseError -> Bool #
Generic ResponseError # |
Instance details Defined in Language.LSP.Protocol.Message.Types Associated Types
type Rep ResponseError |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep ResponseError = D1 ('MetaData "ResponseError" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "ResponseError" 'PrefixI 'True) (S1 ('MetaSel ('Just "_code") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (LSPErrorCodes |? ErrorCodes)) :*: (S1 ('MetaSel ('Just "_message") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_xdata") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Value)))))
Methods from :: ResponseError -> Rep ResponseError x # to :: Rep ResponseError x -> ResponseError #
Show ResponseError # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods showsPrec :: Int -> ResponseError -> ShowS # show :: ResponseError -> String # showList :: [ResponseError] -> ShowS #
Eq ResponseError # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods (==) :: ResponseError -> ResponseError -> Bool # (/=) :: ResponseError -> ResponseError -> Bool #
Pretty ResponseError # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods pretty :: ResponseError -> Doc ann # prettyList :: [ResponseError] -> Doc ann #
HasMessage ResponseError Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods message :: Lens' ResponseError Text #
HasError ResponseMessage (Maybe ResponseError) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods error :: Lens' ResponseMessage (Maybe ResponseError) #
HasXdata ResponseError (Maybe Value) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods xdata :: Lens' ResponseError (Maybe Value) #
HasCode ResponseError (LSPErrorCodes |? ErrorCodes) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods code :: Lens' ResponseError (LSPErrorCodes |? ErrorCodes) #
type Rep ResponseError # |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep ResponseError = D1 ('MetaData "ResponseError" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "ResponseError" 'PrefixI 'True) (S1 ('MetaSel ('Just "_code") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (LSPErrorCodes |? ErrorCodes)) :*: (S1 ('MetaSel ('Just "_message") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_xdata") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Value)))))

data TResponseError (m :: Method f 'Request) #

Constructors

TResponseError |
Fields _code :: LSPErrorCodes |? ErrorCodes _message :: Text _xdata :: Maybe (ErrorData m)

#### Instances

Instances details

FromJSON (ErrorData m) => FromJSON (TResponseError m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser (TResponseError m) # parseJSONList :: Value -> Parser [TResponseError m] # omittedField :: Maybe (TResponseError m) #
ToJSON (ErrorData m) => ToJSON (TResponseError m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods toJSON :: TResponseError m -> Value # toEncoding :: TResponseError m -> Encoding # toJSONList :: [TResponseError m] -> Value # toEncodingList :: [TResponseError m] -> Encoding # omitField :: TResponseError m -> Bool #
Generic (TResponseError m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Associated Types
type Rep (TResponseError m) |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep (TResponseError m) = D1 ('MetaData "TResponseError" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TResponseError" 'PrefixI 'True) (S1 ('MetaSel ('Just "_code") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (LSPErrorCodes |? ErrorCodes)) :*: (S1 ('MetaSel ('Just "_message") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_xdata") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (ErrorData m))))))
Methods from :: TResponseError m -> Rep (TResponseError m) x # to :: Rep (TResponseError m) x -> TResponseError m #
Show (ErrorData m) => Show (TResponseError m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods showsPrec :: Int -> TResponseError m -> ShowS # show :: TResponseError m -> String # showList :: [TResponseError m] -> ShowS #
Eq (ErrorData m) => Eq (TResponseError m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods (==) :: TResponseError m -> TResponseError m -> Bool # (/=) :: TResponseError m -> TResponseError m -> Bool #
ToJSON (ErrorData m) => Pretty (TResponseError m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods pretty :: TResponseError m -> Doc ann # prettyList :: [TResponseError m] -> Doc ann #
a ~ Maybe (ErrorData m) => HasXdata (TResponseError m) a # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods xdata :: Lens' (TResponseError m) a #
HasMessage (TResponseError m) Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods message :: Lens' (TResponseError m) Text #
HasCode (TResponseError m) (LSPErrorCodes |? ErrorCodes) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods code :: Lens' (TResponseError m) (LSPErrorCodes |? ErrorCodes) #
type Rep (TResponseError m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep (TResponseError m) = D1 ('MetaData "TResponseError" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TResponseError" 'PrefixI 'True) (S1 ('MetaSel ('Just "_code") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (LSPErrorCodes |? ErrorCodes)) :*: (S1 ('MetaSel ('Just "_message") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_xdata") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (ErrorData m))))))

data RequestMessage #

Request message type as defined in the spec.

Constructors

RequestMessage |
Fields _jsonrpc :: Text _id :: Int32 |? Text _method :: Text _params :: Maybe Value

#### Instances

Instances details

FromJSON RequestMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser RequestMessage # parseJSONList :: Value -> Parser [RequestMessage] # omittedField :: Maybe RequestMessage #
ToJSON RequestMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods toJSON :: RequestMessage -> Value # toEncoding :: RequestMessage -> Encoding # toJSONList :: [RequestMessage] -> Value # toEncodingList :: [RequestMessage] -> Encoding # omitField :: RequestMessage -> Bool #
Generic RequestMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Associated Types
type Rep RequestMessage |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep RequestMessage = D1 ('MetaData "RequestMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "RequestMessage" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Int32 |? Text))) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_params") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Value)))))
Methods from :: RequestMessage -> Rep RequestMessage x # to :: Rep RequestMessage x -> RequestMessage #
Show RequestMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods showsPrec :: Int -> RequestMessage -> ShowS # show :: RequestMessage -> String # showList :: [RequestMessage] -> ShowS #
Eq RequestMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods (==) :: RequestMessage -> RequestMessage -> Bool # (/=) :: RequestMessage -> RequestMessage -> Bool #
Pretty RequestMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods pretty :: RequestMessage -> Doc ann # prettyList :: [RequestMessage] -> Doc ann #
HasJsonrpc RequestMessage Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods jsonrpc :: Lens' RequestMessage Text #
HasMethod RequestMessage Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' RequestMessage Text #
HasParams RequestMessage (Maybe Value) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods params :: Lens' RequestMessage (Maybe Value) #
HasId RequestMessage (Int32 |? Text) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods id :: Lens' RequestMessage (Int32 |? Text) #
type Rep RequestMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep RequestMessage = D1 ('MetaData "RequestMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "RequestMessage" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Int32 |? Text))) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_params") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Value)))))

data ResponseMessage #

Response message type as defined in the spec.

Constructors

ResponseMessage |
Fields _jsonrpc :: Text _id :: Int32 |? (Text |? Null) _result :: Maybe Value _error :: Maybe ResponseError

#### Instances

Instances details

FromJSON ResponseMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser ResponseMessage # parseJSONList :: Value -> Parser [ResponseMessage] # omittedField :: Maybe ResponseMessage #
ToJSON ResponseMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods toJSON :: ResponseMessage -> Value # toEncoding :: ResponseMessage -> Encoding # toJSONList :: [ResponseMessage] -> Value # toEncodingList :: [ResponseMessage] -> Encoding # omitField :: ResponseMessage -> Bool #
Generic ResponseMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Associated Types
type Rep ResponseMessage |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep ResponseMessage = D1 ('MetaData "ResponseMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "ResponseMessage" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Int32 |? (Text |? Null)))) :*: (S1 ('MetaSel ('Just "_result") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Value)) :*: S1 ('MetaSel ('Just "_error") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe ResponseError)))))
Methods from :: ResponseMessage -> Rep ResponseMessage x # to :: Rep ResponseMessage x -> ResponseMessage #
Show ResponseMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods showsPrec :: Int -> ResponseMessage -> ShowS # show :: ResponseMessage -> String # showList :: [ResponseMessage] -> ShowS #
Eq ResponseMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods (==) :: ResponseMessage -> ResponseMessage -> Bool # (/=) :: ResponseMessage -> ResponseMessage -> Bool #
Pretty ResponseMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods pretty :: ResponseMessage -> Doc ann # prettyList :: [ResponseMessage] -> Doc ann #
HasJsonrpc ResponseMessage Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods jsonrpc :: Lens' ResponseMessage Text #
HasError ResponseMessage (Maybe ResponseError) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods error :: Lens' ResponseMessage (Maybe ResponseError) #
HasResult ResponseMessage (Maybe Value) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods result :: Lens' ResponseMessage (Maybe Value) #
HasId ResponseMessage (Int32 |? (Text |? Null)) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods id :: Lens' ResponseMessage (Int32 |? (Text |? Null)) #
type Rep ResponseMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep ResponseMessage = D1 ('MetaData "ResponseMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "ResponseMessage" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Int32 |? (Text |? Null)))) :*: (S1 ('MetaSel ('Just "_result") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Value)) :*: S1 ('MetaSel ('Just "_error") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe ResponseError)))))

data TRequestMessage (m :: Method f 'Request) #

Typed request message, containing the correct parameter payload.

Constructors

TRequestMessage |
Fields _jsonrpc :: Text _id :: LspId m _method :: SMethod m _params :: MessageParams m

#### Instances

Instances details

(FromJSON (MessageParams m), FromJSON (SMethod m)) => FromJSON (TRequestMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser (TRequestMessage m) # parseJSONList :: Value -> Parser [TRequestMessage m] # omittedField :: Maybe (TRequestMessage m) #
ToJSON (MessageParams m) => ToJSON (TRequestMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods toJSON :: TRequestMessage m -> Value # toEncoding :: TRequestMessage m -> Encoding # toJSONList :: [TRequestMessage m] -> Value # toEncodingList :: [TRequestMessage m] -> Encoding # omitField :: TRequestMessage m -> Bool #
Generic (TRequestMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Associated Types
type Rep (TRequestMessage m) |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep (TRequestMessage m) = D1 ('MetaData "TRequestMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TRequestMessage" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (LspId m))) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SMethod m)) :*: S1 ('MetaSel ('Just "_params") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (MessageParams m)))))
Methods from :: TRequestMessage m -> Rep (TRequestMessage m) x # to :: Rep (TRequestMessage m) x -> TRequestMessage m #
Show (MessageParams m) => Show (TRequestMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods showsPrec :: Int -> TRequestMessage m -> ShowS # show :: TRequestMessage m -> String # showList :: [TRequestMessage m] -> ShowS #
Eq (MessageParams m) => Eq (TRequestMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods (==) :: TRequestMessage m -> TRequestMessage m -> Bool # (/=) :: TRequestMessage m -> TRequestMessage m -> Bool #
ToJSON (MessageParams m) => Pretty (TRequestMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods pretty :: TRequestMessage m -> Doc ann # prettyList :: [TRequestMessage m] -> Doc ann #
HasJsonrpc (TRequestMessage m) Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods jsonrpc :: Lens' (TRequestMessage m) Text #
a ~ MessageParams m => HasParams (TRequestMessage m) a # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods params :: Lens' (TRequestMessage m) a #
HasId (TRequestMessage m) (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods id :: Lens' (TRequestMessage m) (LspId m) #
HasMethod (TRequestMessage m) (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' (TRequestMessage m) (SMethod m) #
type Rep (TRequestMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep (TRequestMessage m) = D1 ('MetaData "TRequestMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TRequestMessage" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (LspId m))) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SMethod m)) :*: S1 ('MetaSel ('Just "_params") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (MessageParams m)))))

data TResponseMessage (m :: Method f 'Request) #

A typed response message with a correct result payload.

Constructors

TResponseMessage |
Fields _jsonrpc :: Text _id :: Maybe (LspId m) _result :: Either (TResponseError m) (MessageResult m)

#### Instances

Instances details

(FromJSON (MessageResult a), FromJSON (ErrorData a)) => FromJSON (TResponseMessage a) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser (TResponseMessage a) # parseJSONList :: Value -> Parser [TResponseMessage a] # omittedField :: Maybe (TResponseMessage a) #
(ToJSON (MessageResult m), ToJSON (ErrorData m)) => ToJSON (TResponseMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods toJSON :: TResponseMessage m -> Value # toEncoding :: TResponseMessage m -> Encoding # toJSONList :: [TResponseMessage m] -> Value # toEncodingList :: [TResponseMessage m] -> Encoding # omitField :: TResponseMessage m -> Bool #
Generic (TResponseMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Associated Types
type Rep (TResponseMessage m) |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep (TResponseMessage m) = D1 ('MetaData "TResponseMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TResponseMessage" 'PrefixI 'True) (S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (LspId m))) :*: S1 ('MetaSel ('Just "_result") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Either (TResponseError m) (MessageResult m))))))
Methods from :: TResponseMessage m -> Rep (TResponseMessage m) x # to :: Rep (TResponseMessage m) x -> TResponseMessage m #
(Show (MessageResult m), Show (ErrorData m)) => Show (TResponseMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods showsPrec :: Int -> TResponseMessage m -> ShowS # show :: TResponseMessage m -> String # showList :: [TResponseMessage m] -> ShowS #
(Eq (MessageResult m), Eq (ErrorData m)) => Eq (TResponseMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods (==) :: TResponseMessage m -> TResponseMessage m -> Bool # (/=) :: TResponseMessage m -> TResponseMessage m -> Bool #
(ToJSON (MessageResult m), ToJSON (ErrorData m)) => Pretty (TResponseMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods pretty :: TResponseMessage m -> Doc ann # prettyList :: [TResponseMessage m] -> Doc ann #
HasJsonrpc (TResponseMessage m) Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods jsonrpc :: Lens' (TResponseMessage m) Text #
a ~ Either (TResponseError m) (MessageResult m) => HasResult (TResponseMessage m) a # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods result :: Lens' (TResponseMessage m) a #
HasId (TResponseMessage m) (Maybe (LspId m)) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods id :: Lens' (TResponseMessage m) (Maybe (LspId m)) #
type Rep (TResponseMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep (TResponseMessage m) = D1 ('MetaData "TResponseMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TResponseMessage" 'PrefixI 'True) (S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (LspId m))) :*: S1 ('MetaSel ('Just "_result") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Either (TResponseError m) (MessageResult m))))))

data NotificationMessage #

Notification message type as defined in the spec.

Constructors

NotificationMessage |
Fields _jsonrpc :: Text _method :: Text _params :: Maybe Value

#### Instances

Instances details

FromJSON NotificationMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser NotificationMessage # parseJSONList :: Value -> Parser [NotificationMessage] # omittedField :: Maybe NotificationMessage #
ToJSON NotificationMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods toJSON :: NotificationMessage -> Value # toEncoding :: NotificationMessage -> Encoding # toJSONList :: [NotificationMessage] -> Value # toEncodingList :: [NotificationMessage] -> Encoding # omitField :: NotificationMessage -> Bool #
Generic NotificationMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Associated Types
type Rep NotificationMessage |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep NotificationMessage = D1 ('MetaData "NotificationMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "NotificationMessage" 'PrefixI 'True) (S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_params") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Value)))))
Methods from :: NotificationMessage -> Rep NotificationMessage x # to :: Rep NotificationMessage x -> NotificationMessage #
Show NotificationMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods showsPrec :: Int -> NotificationMessage -> ShowS # show :: NotificationMessage -> String # showList :: [NotificationMessage] -> ShowS #
Eq NotificationMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods (==) :: NotificationMessage -> NotificationMessage -> Bool # (/=) :: NotificationMessage -> NotificationMessage -> Bool #
Pretty NotificationMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods pretty :: NotificationMessage -> Doc ann # prettyList :: [NotificationMessage] -> Doc ann #
HasJsonrpc NotificationMessage Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods jsonrpc :: Lens' NotificationMessage Text #
HasMethod NotificationMessage Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' NotificationMessage Text #
HasParams NotificationMessage (Maybe Value) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods params :: Lens' NotificationMessage (Maybe Value) #
type Rep NotificationMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep NotificationMessage = D1 ('MetaData "NotificationMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "NotificationMessage" 'PrefixI 'True) (S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_params") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Value)))))

data TNotificationMessage (m :: Method f 'Notification) #

Typed notification message, containing the correct parameter payload.

Constructors

TNotificationMessage |
Fields _jsonrpc :: Text _method :: SMethod m _params :: MessageParams m

#### Instances

Instances details

(FromJSON (MessageParams m), FromJSON (SMethod m)) => FromJSON (TNotificationMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser (TNotificationMessage m) # parseJSONList :: Value -> Parser [TNotificationMessage m] # omittedField :: Maybe (TNotificationMessage m) #
ToJSON (MessageParams m) => ToJSON (TNotificationMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods toJSON :: TNotificationMessage m -> Value # toEncoding :: TNotificationMessage m -> Encoding # toJSONList :: [TNotificationMessage m] -> Value # toEncodingList :: [TNotificationMessage m] -> Encoding # omitField :: TNotificationMessage m -> Bool #
Generic (TNotificationMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Associated Types
type Rep (TNotificationMessage m) |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep (TNotificationMessage m) = D1 ('MetaData "TNotificationMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TNotificationMessage" 'PrefixI 'True) (S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SMethod m)) :*: S1 ('MetaSel ('Just "_params") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (MessageParams m)))))
Methods from :: TNotificationMessage m -> Rep (TNotificationMessage m) x # to :: Rep (TNotificationMessage m) x -> TNotificationMessage m #
Show (MessageParams m) => Show (TNotificationMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods showsPrec :: Int -> TNotificationMessage m -> ShowS # show :: TNotificationMessage m -> String # showList :: [TNotificationMessage m] -> ShowS #
Eq (MessageParams m) => Eq (TNotificationMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods (==) :: TNotificationMessage m -> TNotificationMessage m -> Bool # (/=) :: TNotificationMessage m -> TNotificationMessage m -> Bool #
ToJSON (MessageParams m) => Pretty (TNotificationMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods pretty :: TNotificationMessage m -> Doc ann # prettyList :: [TNotificationMessage m] -> Doc ann #
HasJsonrpc (TNotificationMessage m) Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods jsonrpc :: Lens' (TNotificationMessage m) Text #
a ~ MessageParams m => HasParams (TNotificationMessage m) a # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods params :: Lens' (TNotificationMessage m) a #
HasMethod (TNotificationMessage m) (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' (TNotificationMessage m) (SMethod m) #
type Rep (TNotificationMessage m) # |
Instance details Defined in Language.LSP.Protocol.Message.Types type Rep (TNotificationMessage m) = D1 ('MetaData "TNotificationMessage" "Language.LSP.Protocol.Message.Types" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TNotificationMessage" 'PrefixI 'True) (S1 ('MetaSel ('Just "_jsonrpc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SMethod m)) :*: S1 ('MetaSel ('Just "_params") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (MessageParams m)))))

addNullField :: String -> Value -> Value #

Replace a missing field in an object with a null field, to simplify parsing This is a hack to allow other types than Maybe to work like Maybe in allowing the field to be missing. See also this issue: https://github.com/haskell/aeson/issues/646

toUntypedResponseError :: forall {f :: MessageDirection} (m :: Method f 'Request). ToJSON (ErrorData m) => TResponseError m -> ResponseError #

data TCustomMessage (s :: Symbol) (f :: MessageDirection) (t :: MessageKind) where #

A typed custom message. A special data type is needed to distinguish between notifications and requests, since a CustomMethod can be both!

Constructors

ReqMess :: forall (s :: Symbol) (f :: MessageDirection). TRequestMessage ('Method_CustomMethod s :: Method f 'Request) -> TCustomMessage s f 'Request |
NotMess :: forall (s :: Symbol) (f :: MessageDirection). TNotificationMessage ('Method_CustomMethod s :: Method f 'Notification) -> TCustomMessage s f 'Notification |

#### Instances

Instances details

KnownSymbol s => FromJSON (TCustomMessage s f 'Notification) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser (TCustomMessage s f 'Notification) # parseJSONList :: Value -> Parser [TCustomMessage s f 'Notification] # omittedField :: Maybe (TCustomMessage s f 'Notification) #
KnownSymbol s => FromJSON (TCustomMessage s f 'Request) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods parseJSON :: Value -> Parser (TCustomMessage s f 'Request) # parseJSONList :: Value -> Parser [TCustomMessage s f 'Request] # omittedField :: Maybe (TCustomMessage s f 'Request) #
ToJSON (TCustomMessage s f t) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods toJSON :: TCustomMessage s f t -> Value # toEncoding :: TCustomMessage s f t -> Encoding # toJSONList :: [TCustomMessage s f t] -> Value # toEncodingList :: [TCustomMessage s f t] -> Encoding # omitField :: TCustomMessage s f t -> Bool #
Show (TCustomMessage s f t) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods showsPrec :: Int -> TCustomMessage s f t -> ShowS # show :: TCustomMessage s f t -> String # showList :: [TCustomMessage s f t] -> ShowS #
KnownSymbol s => Pretty (TCustomMessage s f t) # |
Instance details Defined in Language.LSP.Protocol.Message.Types Methods pretty :: TCustomMessage s f t -> Doc ann # prettyList :: [TCustomMessage s f t] -> Doc ann #

type family TMessage (m :: Method f t) where ... #

Map a method to the Request/Notification type with the correct payload.

Equations

TMessage ('Method_CustomMethod s :: Method f t) = TCustomMessage s f t |
TMessage (m :: Method f 'Request) = TRequestMessage m |
TMessage (m :: Method f 'Notification) = TNotificationMessage m |

type TClientMessage (m :: Method 'ClientToServer t) = TMessage m #

type TServerMessage (m :: Method 'ServerToClient t) = TMessage m #

data LspId (m :: Method f 'Request) #

Id used for a request, Can be either a String or an Int

Constructors

IdInt !Int32 |
IdString !Text |

#### Instances

Instances details

FromJSON (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods parseJSON :: Value -> Parser (LspId m) # parseJSONList :: Value -> Parser [LspId m] # omittedField :: Maybe (LspId m) #
ToJSON (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods toJSON :: LspId m -> Value # toEncoding :: LspId m -> Encoding # toJSONList :: [LspId m] -> Value # toEncodingList :: [LspId m] -> Encoding # omitField :: LspId m -> Bool #
Generic (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Associated Types
type Rep (LspId m) |
Instance details Defined in Language.LSP.Protocol.Message.LspId type Rep (LspId m) = D1 ('MetaData "LspId" "Language.LSP.Protocol.Message.LspId" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "IdInt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int32)) :+: C1 ('MetaCons "IdString" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)))
Methods from :: LspId m -> Rep (LspId m) x # to :: Rep (LspId m) x -> LspId m #
Read (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods readsPrec :: Int -> ReadS (LspId m) # readList :: ReadS [LspId m] # readPrec :: ReadPrec (LspId m) # readListPrec :: ReadPrec [LspId m] #
Show (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods showsPrec :: Int -> LspId m -> ShowS # show :: LspId m -> String # showList :: [LspId m] -> ShowS #
Eq (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods (==) :: LspId m -> LspId m -> Bool # (/=) :: LspId m -> LspId m -> Bool #
Ord (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods compare :: LspId m -> LspId m -> Ordering # (<) :: LspId m -> LspId m -> Bool # (<=) :: LspId m -> LspId m -> Bool # (>) :: LspId m -> LspId m -> Bool # (>=) :: LspId m -> LspId m -> Bool # max :: LspId m -> LspId m -> LspId m # min :: LspId m -> LspId m -> LspId m #
Hashable (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods hashWithSalt :: Int -> LspId m -> Int # hash :: LspId m -> Int #
Pretty (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods pretty :: LspId m -> Doc ann # prettyList :: [LspId m] -> Doc ann #
IxOrd (LspId :: Method f 'Request -> Type) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Associated Types
type Base (LspId :: Method f 'Request -> Type) |
Instance details Defined in Language.LSP.Protocol.Message.LspId type Base (LspId :: Method f 'Request -> Type) = SomeLspId
Methods toBase :: forall (a :: Method f 'Request). LspId a -> Base (LspId :: Method f 'Request -> Type) #
HasId (TResponseMessage m) (Maybe (LspId m)) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods id :: Lens' (TResponseMessage m) (Maybe (LspId m)) #
HasId (TRequestMessage m) (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods id :: Lens' (TRequestMessage m) (LspId m) #
type Rep (LspId m) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId type Rep (LspId m) = D1 ('MetaData "LspId" "Language.LSP.Protocol.Message.LspId" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "IdInt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int32)) :+: C1 ('MetaCons "IdString" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)))
type Base (LspId :: Method f 'Request -> Type) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId type Base (LspId :: Method f 'Request -> Type) = SomeLspId

data SomeLspId where #

Constructors

SomeLspId :: forall {f :: MessageDirection} (m :: Method f 'Request). !(LspId m) -> SomeLspId |

#### Instances

Instances details

Show SomeLspId # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods showsPrec :: Int -> SomeLspId -> ShowS # show :: SomeLspId -> String # showList :: [SomeLspId] -> ShowS #
Eq SomeLspId # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods (==) :: SomeLspId -> SomeLspId -> Bool # (/=) :: SomeLspId -> SomeLspId -> Bool #
Ord SomeLspId # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods compare :: SomeLspId -> SomeLspId -> Ordering # (<) :: SomeLspId -> SomeLspId -> Bool # (<=) :: SomeLspId -> SomeLspId -> Bool # (>) :: SomeLspId -> SomeLspId -> Bool # (>=) :: SomeLspId -> SomeLspId -> Bool # max :: SomeLspId -> SomeLspId -> SomeLspId # min :: SomeLspId -> SomeLspId -> SomeLspId #
Hashable SomeLspId # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Methods hashWithSalt :: Int -> SomeLspId -> Int # hash :: SomeLspId -> Int #

data MessageDirection #

Which direction messages are sent in.

Constructors

ServerToClient |
ClientToServer |

data MessageKind #

What kind of message is sent.

Constructors

Notification |
Request |

data SMessageDirection (f :: MessageDirection) where #

Singleton type for `MessageDirection`.

Constructors

SClientToServer :: SMessageDirection 'ClientToServer |
SServerToClient :: SMessageDirection 'ServerToClient |
SBothDirections :: forall (f :: MessageDirection). SMessageDirection f |

data SMessageKind (f :: MessageKind) where #

Singleton type for `MessageKind`.

Constructors

SNotification :: SMessageKind 'Notification |
SRequest :: SMessageKind 'Request |
SBothTypes :: forall (f :: MessageKind). SMessageKind f |

## Parsing LSP messages

runEq :: forall (t1 :: MessageKind) (t2 :: MessageKind) (f :: MessageDirection) (m1 :: Method f t1) (m2 :: Method f t2). t1 ~ t2 => (SMethod m1 -> SMethod m2 -> Maybe (Either (CustomEq m1 m2) (m1 :~~: m2))) -> SMethod m1 -> SMethod m2 -> Maybe (m1 :~~: m2) #

data FromServerMessage' (a :: Method 'ClientToServer 'Request -> Type) where #

Constructors

FromServerMess :: forall (t :: MessageKind) (m :: Method 'ServerToClient t) (a :: Method 'ClientToServer 'Request -> Type). SMethod m -> TMessage m -> FromServerMessage' a |
FromServerRsp :: forall (m :: Method 'ClientToServer 'Request) (a :: Method 'ClientToServer 'Request -> Type). a m -> TResponseMessage m -> FromServerMessage' a |

#### Instances

Instances details

ToJSON FromServerMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Parsing Methods toJSON :: FromServerMessage -> Value # toEncoding :: FromServerMessage -> Encoding # toJSONList :: [FromServerMessage] -> Value # toEncodingList :: [FromServerMessage] -> Encoding # omitField :: FromServerMessage -> Bool #
Show FromServerMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Parsing Methods showsPrec :: Int -> FromServerMessage -> ShowS # show :: FromServerMessage -> String # showList :: [FromServerMessage] -> ShowS #
Eq FromServerMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Parsing Methods (==) :: FromServerMessage -> FromServerMessage -> Bool # (/=) :: FromServerMessage -> FromServerMessage -> Bool #

type FromServerMessage = FromServerMessage' (SMethod :: Method 'ClientToServer 'Request -> Type) #

serverMethodJSON :: forall {t :: MessageKind} (m :: Method 'ServerToClient t) x. SServerMethod m -> (ToJSON (TServerMessage m) => x) -> x #

clientResponseJSON :: forall (m :: Method 'ClientToServer 'Request) x. SClientMethod m -> (HasJSON (TResponseMessage m) => x) -> x #

fromServerNot :: forall (m :: Method 'ServerToClient 'Notification). TMessage m ~ TNotificationMessage m => TNotificationMessage m -> FromServerMessage #

fromServerReq :: forall (m :: Method 'ServerToClient 'Request). TMessage m ~ TRequestMessage m => TRequestMessage m -> FromServerMessage #

data FromClientMessage' (a :: Method 'ServerToClient 'Request -> Type) where #

Constructors

FromClientMess :: forall (t :: MessageKind) (m :: Method 'ClientToServer t) (a :: Method 'ServerToClient 'Request -> Type). SMethod m -> TMessage m -> FromClientMessage' a |
FromClientRsp :: forall (m :: Method 'ServerToClient 'Request) (a :: Method 'ServerToClient 'Request -> Type). a m -> TResponseMessage m -> FromClientMessage' a |

#### Instances

Instances details

ToJSON FromClientMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Parsing Methods toJSON :: FromClientMessage -> Value # toEncoding :: FromClientMessage -> Encoding # toJSONList :: [FromClientMessage] -> Value # toEncodingList :: [FromClientMessage] -> Encoding # omitField :: FromClientMessage -> Bool #

type FromClientMessage = FromClientMessage' (SMethod :: Method 'ServerToClient 'Request -> Type) #

clientMethodJSON :: forall {t :: MessageKind} (m :: Method 'ClientToServer t) x. SClientMethod m -> (ToJSON (TClientMessage m) => x) -> x #

serverResponseJSON :: forall (m :: Method 'ServerToClient 'Request) x. SServerMethod m -> (HasJSON (TResponseMessage m) => x) -> x #

fromClientNot :: forall (m :: Method 'ClientToServer 'Notification). TMessage m ~ TNotificationMessage m => TNotificationMessage m -> FromClientMessage #

fromClientReq :: forall (m :: Method 'ClientToServer 'Request). TMessage m ~ TRequestMessage m => TRequestMessage m -> FromClientMessage #

type LookupFunc (f :: MessageDirection) (a :: Method f 'Request -> Type) = forall (m :: Method f 'Request). LspId m -> Maybe (SMethod m, a m) #

parseServerMessage :: forall (a :: Method 'ClientToServer 'Request -> Type). LookupFunc 'ClientToServer a -> Value -> Parser (FromServerMessage' a) #

splitServerMethod :: forall {t :: MessageKind} (m :: Method 'ServerToClient t). SServerMethod m -> ServerNotOrReq m #

data ServerNotOrReq (m :: Method 'ServerToClient t) where #

Constructors

IsServerNot :: forall (m1 :: Method 'ServerToClient 'Notification). (HasJSON (TServerMessage m1), TMessage m1 ~ TNotificationMessage m1) => ServerNotOrReq m1 |
IsServerReq :: forall (m1 :: Method 'ServerToClient 'Request). (HasJSON (TServerMessage m1), HasJSON (TResponseMessage m1), TMessage m1 ~ TRequestMessage m1) => ServerNotOrReq m1 |
IsServerEither :: forall {t :: MessageKind} (s :: Symbol). ServerNotOrReq ('Method_CustomMethod s :: Method 'ServerToClient t) |

parseClientMessage :: forall (a :: Method 'ServerToClient 'Request -> Type). LookupFunc 'ServerToClient a -> Value -> Parser (FromClientMessage' a) #

splitClientMethod :: forall {t :: MessageKind} (m :: Method 'ClientToServer t). SClientMethod m -> ClientNotOrReq m #

data ClientNotOrReq (m :: Method 'ClientToServer t) where #

Constructors

IsClientNot :: forall (m1 :: Method 'ClientToServer 'Notification). (HasJSON (TClientMessage m1), TMessage m1 ~ TNotificationMessage m1) => ClientNotOrReq m1 |
IsClientReq :: forall (m1 :: Method 'ClientToServer 'Request). (HasJSON (TClientMessage m1), HasJSON (TResponseMessage m1), TMessage m1 ~ TRequestMessage m1) => ClientNotOrReq m1 |
IsClientEither :: forall {t :: MessageKind} (s :: Symbol). ClientNotOrReq ('Method_CustomMethod s :: Method 'ClientToServer t) |

type HasJSON a = (ToJSON a, FromJSON a, Eq a) #

data CustomEq (m1 :: Method f t1) (m2 :: Method f t2) where #

Given a witness that two custom methods are of the same type, produce a witness that the methods are the same

Constructors

CustomEq |
Fields :: forall (f :: MessageDirection) (t1 :: MessageKind) (m1 :: Method f t1) (s :: Symbol) (t2 :: MessageKind) (m2 :: Method f t2). (m1 ~ ('Method_CustomMethod s :: Method f t1), m2 ~ ('Method_CustomMethod s :: Method f t2)) => { runCustomEq :: t1 ~ t2 => m1 :~~: m2 } -> CustomEq m1 m2

mEqServer :: forall {t1 :: MessageKind} {t2 :: MessageKind} (m1 :: Method 'ServerToClient t1) (m2 :: Method 'ServerToClient t2). SServerMethod m1 -> SServerMethod m2 -> Maybe (Either (CustomEq m1 m2) (m1 :~~: m2)) #

Heterogeneous equality on singleton server methods

mEqClient :: forall {t1 :: MessageKind} {t2 :: MessageKind} (m1 :: Method 'ClientToServer t1) (m2 :: Method 'ClientToServer t2). SClientMethod m1 -> SClientMethod m2 -> Maybe (Either (CustomEq m1 m2) (m1 :~~: m2)) #

Heterogeneous equality on singleton client methods

# Methods

## Main LSP method types and functions

data Method (f :: MessageDirection) (t :: MessageKind) where #

A type representing a LSP method (or class of methods), intended to be used mostly at the type level.

Constructors

Method_TextDocumentImplementation :: Method 'ClientToServer 'Request |
Method_TextDocumentTypeDefinition :: Method 'ClientToServer 'Request |
Method_WorkspaceWorkspaceFolders :: Method 'ServerToClient 'Request |
Method_WorkspaceConfiguration :: Method 'ServerToClient 'Request |
Method_TextDocumentDocumentColor :: Method 'ClientToServer 'Request |
Method_TextDocumentColorPresentation :: Method 'ClientToServer 'Request |
Method_TextDocumentFoldingRange :: Method 'ClientToServer 'Request |
Method_TextDocumentDeclaration :: Method 'ClientToServer 'Request |
Method_TextDocumentSelectionRange :: Method 'ClientToServer 'Request |
Method_WindowWorkDoneProgressCreate :: Method 'ServerToClient 'Request |
Method_TextDocumentPrepareCallHierarchy :: Method 'ClientToServer 'Request |
Method_CallHierarchyIncomingCalls :: Method 'ClientToServer 'Request |
Method_CallHierarchyOutgoingCalls :: Method 'ClientToServer 'Request |
Method_TextDocumentSemanticTokensFull :: Method 'ClientToServer 'Request |
Method_TextDocumentSemanticTokensFullDelta :: Method 'ClientToServer 'Request |
Method_TextDocumentSemanticTokensRange :: Method 'ClientToServer 'Request |
Method_WorkspaceSemanticTokensRefresh :: Method 'ServerToClient 'Request |
Method_WindowShowDocument :: Method 'ServerToClient 'Request |
Method_TextDocumentLinkedEditingRange :: Method 'ClientToServer 'Request |
Method_WorkspaceWillCreateFiles :: Method 'ClientToServer 'Request |
Method_WorkspaceWillRenameFiles :: Method 'ClientToServer 'Request |
Method_WorkspaceWillDeleteFiles :: Method 'ClientToServer 'Request |
Method_TextDocumentMoniker :: Method 'ClientToServer 'Request |
Method_TextDocumentPrepareTypeHierarchy :: Method 'ClientToServer 'Request |
Method_TypeHierarchySupertypes :: Method 'ClientToServer 'Request |
Method_TypeHierarchySubtypes :: Method 'ClientToServer 'Request |
Method_TextDocumentInlineValue :: Method 'ClientToServer 'Request |
Method_WorkspaceInlineValueRefresh :: Method 'ServerToClient 'Request |
Method_TextDocumentInlayHint :: Method 'ClientToServer 'Request |
Method_InlayHintResolve :: Method 'ClientToServer 'Request |
Method_WorkspaceInlayHintRefresh :: Method 'ServerToClient 'Request |
Method_TextDocumentDiagnostic :: Method 'ClientToServer 'Request |
Method_WorkspaceDiagnostic :: Method 'ClientToServer 'Request |
Method_WorkspaceDiagnosticRefresh :: Method 'ServerToClient 'Request |
Method_ClientRegisterCapability :: Method 'ServerToClient 'Request |
Method_ClientUnregisterCapability :: Method 'ServerToClient 'Request |
Method_Initialize :: Method 'ClientToServer 'Request |
Method_Shutdown :: Method 'ClientToServer 'Request |
Method_WindowShowMessageRequest :: Method 'ServerToClient 'Request |
Method_TextDocumentWillSaveWaitUntil :: Method 'ClientToServer 'Request |
Method_TextDocumentCompletion :: Method 'ClientToServer 'Request |
Method_CompletionItemResolve :: Method 'ClientToServer 'Request |
Method_TextDocumentHover :: Method 'ClientToServer 'Request |
Method_TextDocumentSignatureHelp :: Method 'ClientToServer 'Request |
Method_TextDocumentDefinition :: Method 'ClientToServer 'Request |
Method_TextDocumentReferences :: Method 'ClientToServer 'Request |
Method_TextDocumentDocumentHighlight :: Method 'ClientToServer 'Request |
Method_TextDocumentDocumentSymbol :: Method 'ClientToServer 'Request |
Method_TextDocumentCodeAction :: Method 'ClientToServer 'Request |
Method_CodeActionResolve :: Method 'ClientToServer 'Request |
Method_WorkspaceSymbol :: Method 'ClientToServer 'Request |
Method_WorkspaceSymbolResolve :: Method 'ClientToServer 'Request |
Method_TextDocumentCodeLens :: Method 'ClientToServer 'Request |
Method_CodeLensResolve :: Method 'ClientToServer 'Request |
Method_WorkspaceCodeLensRefresh :: Method 'ServerToClient 'Request |
Method_TextDocumentDocumentLink :: Method 'ClientToServer 'Request |
Method_DocumentLinkResolve :: Method 'ClientToServer 'Request |
Method_TextDocumentFormatting :: Method 'ClientToServer 'Request |
Method_TextDocumentRangeFormatting :: Method 'ClientToServer 'Request |
Method_TextDocumentOnTypeFormatting :: Method 'ClientToServer 'Request |
Method_TextDocumentRename :: Method 'ClientToServer 'Request |
Method_TextDocumentPrepareRename :: Method 'ClientToServer 'Request |
Method_WorkspaceExecuteCommand :: Method 'ClientToServer 'Request |
Method_WorkspaceApplyEdit :: Method 'ServerToClient 'Request |
Method_WorkspaceDidChangeWorkspaceFolders :: Method 'ClientToServer 'Notification |
Method_WindowWorkDoneProgressCancel :: Method 'ClientToServer 'Notification |
Method_WorkspaceDidCreateFiles :: Method 'ClientToServer 'Notification |
Method_WorkspaceDidRenameFiles :: Method 'ClientToServer 'Notification |
Method_WorkspaceDidDeleteFiles :: Method 'ClientToServer 'Notification |
Method_NotebookDocumentDidOpen :: Method 'ClientToServer 'Notification |
Method_NotebookDocumentDidChange :: Method 'ClientToServer 'Notification |
Method_NotebookDocumentDidSave :: Method 'ClientToServer 'Notification |
Method_NotebookDocumentDidClose :: Method 'ClientToServer 'Notification |
Method_Initialized :: Method 'ClientToServer 'Notification |
Method_Exit :: Method 'ClientToServer 'Notification |
Method_WorkspaceDidChangeConfiguration :: Method 'ClientToServer 'Notification |
Method_WindowShowMessage :: Method 'ServerToClient 'Notification |
Method_WindowLogMessage :: Method 'ServerToClient 'Notification |
Method_TelemetryEvent :: Method 'ServerToClient 'Notification |
Method_TextDocumentDidOpen :: Method 'ClientToServer 'Notification |
Method_TextDocumentDidChange :: Method 'ClientToServer 'Notification |
Method_TextDocumentDidClose :: Method 'ClientToServer 'Notification |
Method_TextDocumentDidSave :: Method 'ClientToServer 'Notification |
Method_TextDocumentWillSave :: Method 'ClientToServer 'Notification |
Method_WorkspaceDidChangeWatchedFiles :: Method 'ClientToServer 'Notification |
Method_TextDocumentPublishDiagnostics :: Method 'ServerToClient 'Notification |
Method_SetTrace :: Method 'ClientToServer 'Notification |
Method_LogTrace :: Method 'ServerToClient 'Notification |
Method_CancelRequest :: forall (f :: MessageDirection). Method f 'Notification |
Method_Progress :: forall (f :: MessageDirection). Method f 'Notification |
Method_CustomMethod :: forall (f :: MessageDirection) (t :: MessageKind). Symbol -> Method f t |

#### Instances

Instances details

IxOrd (LspId :: Method f 'Request -> Type) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Associated Types
type Base (LspId :: Method f 'Request -> Type) |
Instance details Defined in Language.LSP.Protocol.Message.LspId type Base (LspId :: Method f 'Request -> Type) = SomeLspId
Methods toBase :: forall (a :: Method f 'Request). LspId a -> Base (LspId :: Method f 'Request -> Type) #
GCompare (SMethod :: Method f t -> Type) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods gcompare :: forall (a :: Method f t) (b :: Method f t). SMethod a -> SMethod b -> GOrdering a b #
GEq (SMethod :: Method f t -> Type) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods geq :: forall (a :: Method f t) (b :: Method f t). SMethod a -> SMethod b -> Maybe (a :~: b) #
type Base (LspId :: Method f 'Request -> Type) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId type Base (LspId :: Method f 'Request -> Type) = SomeLspId

data SMethod (m :: Method f t) where #

A singleton type for `Method`.

Constructors

SMethod_TextDocumentImplementation :: SMethod 'Method_TextDocumentImplementation |
SMethod_TextDocumentTypeDefinition :: SMethod 'Method_TextDocumentTypeDefinition |
SMethod_WorkspaceWorkspaceFolders :: SMethod 'Method_WorkspaceWorkspaceFolders |
SMethod_WorkspaceConfiguration :: SMethod 'Method_WorkspaceConfiguration |
SMethod_TextDocumentDocumentColor :: SMethod 'Method_TextDocumentDocumentColor |
SMethod_TextDocumentColorPresentation :: SMethod 'Method_TextDocumentColorPresentation |
SMethod_TextDocumentFoldingRange :: SMethod 'Method_TextDocumentFoldingRange |
SMethod_TextDocumentDeclaration :: SMethod 'Method_TextDocumentDeclaration |
SMethod_TextDocumentSelectionRange :: SMethod 'Method_TextDocumentSelectionRange |
SMethod_WindowWorkDoneProgressCreate :: SMethod 'Method_WindowWorkDoneProgressCreate |
SMethod_TextDocumentPrepareCallHierarchy :: SMethod 'Method_TextDocumentPrepareCallHierarchy |
SMethod_CallHierarchyIncomingCalls :: SMethod 'Method_CallHierarchyIncomingCalls |
SMethod_CallHierarchyOutgoingCalls :: SMethod 'Method_CallHierarchyOutgoingCalls |
SMethod_TextDocumentSemanticTokensFull :: SMethod 'Method_TextDocumentSemanticTokensFull |
SMethod_TextDocumentSemanticTokensFullDelta :: SMethod 'Method_TextDocumentSemanticTokensFullDelta |
SMethod_TextDocumentSemanticTokensRange :: SMethod 'Method_TextDocumentSemanticTokensRange |
SMethod_WorkspaceSemanticTokensRefresh :: SMethod 'Method_WorkspaceSemanticTokensRefresh |
SMethod_WindowShowDocument :: SMethod 'Method_WindowShowDocument |
SMethod_TextDocumentLinkedEditingRange :: SMethod 'Method_TextDocumentLinkedEditingRange |
SMethod_WorkspaceWillCreateFiles :: SMethod 'Method_WorkspaceWillCreateFiles |
SMethod_WorkspaceWillRenameFiles :: SMethod 'Method_WorkspaceWillRenameFiles |
SMethod_WorkspaceWillDeleteFiles :: SMethod 'Method_WorkspaceWillDeleteFiles |
SMethod_TextDocumentMoniker :: SMethod 'Method_TextDocumentMoniker |
SMethod_TextDocumentPrepareTypeHierarchy :: SMethod 'Method_TextDocumentPrepareTypeHierarchy |
SMethod_TypeHierarchySupertypes :: SMethod 'Method_TypeHierarchySupertypes |
SMethod_TypeHierarchySubtypes :: SMethod 'Method_TypeHierarchySubtypes |
SMethod_TextDocumentInlineValue :: SMethod 'Method_TextDocumentInlineValue |
SMethod_WorkspaceInlineValueRefresh :: SMethod 'Method_WorkspaceInlineValueRefresh |
SMethod_TextDocumentInlayHint :: SMethod 'Method_TextDocumentInlayHint |
SMethod_InlayHintResolve :: SMethod 'Method_InlayHintResolve |
SMethod_WorkspaceInlayHintRefresh :: SMethod 'Method_WorkspaceInlayHintRefresh |
SMethod_TextDocumentDiagnostic :: SMethod 'Method_TextDocumentDiagnostic |
SMethod_WorkspaceDiagnostic :: SMethod 'Method_WorkspaceDiagnostic |
SMethod_WorkspaceDiagnosticRefresh :: SMethod 'Method_WorkspaceDiagnosticRefresh |
SMethod_ClientRegisterCapability :: SMethod 'Method_ClientRegisterCapability |
SMethod_ClientUnregisterCapability :: SMethod 'Method_ClientUnregisterCapability |
SMethod_Initialize :: SMethod 'Method_Initialize |
SMethod_Shutdown :: SMethod 'Method_Shutdown |
SMethod_WindowShowMessageRequest :: SMethod 'Method_WindowShowMessageRequest |
SMethod_TextDocumentWillSaveWaitUntil :: SMethod 'Method_TextDocumentWillSaveWaitUntil |
SMethod_TextDocumentCompletion :: SMethod 'Method_TextDocumentCompletion |
SMethod_CompletionItemResolve :: SMethod 'Method_CompletionItemResolve |
SMethod_TextDocumentHover :: SMethod 'Method_TextDocumentHover |
SMethod_TextDocumentSignatureHelp :: SMethod 'Method_TextDocumentSignatureHelp |
SMethod_TextDocumentDefinition :: SMethod 'Method_TextDocumentDefinition |
SMethod_TextDocumentReferences :: SMethod 'Method_TextDocumentReferences |
SMethod_TextDocumentDocumentHighlight :: SMethod 'Method_TextDocumentDocumentHighlight |
SMethod_TextDocumentDocumentSymbol :: SMethod 'Method_TextDocumentDocumentSymbol |
SMethod_TextDocumentCodeAction :: SMethod 'Method_TextDocumentCodeAction |
SMethod_CodeActionResolve :: SMethod 'Method_CodeActionResolve |
SMethod_WorkspaceSymbol :: SMethod 'Method_WorkspaceSymbol |
SMethod_WorkspaceSymbolResolve :: SMethod 'Method_WorkspaceSymbolResolve |
SMethod_TextDocumentCodeLens :: SMethod 'Method_TextDocumentCodeLens |
SMethod_CodeLensResolve :: SMethod 'Method_CodeLensResolve |
SMethod_WorkspaceCodeLensRefresh :: SMethod 'Method_WorkspaceCodeLensRefresh |
SMethod_TextDocumentDocumentLink :: SMethod 'Method_TextDocumentDocumentLink |
SMethod_DocumentLinkResolve :: SMethod 'Method_DocumentLinkResolve |
SMethod_TextDocumentFormatting :: SMethod 'Method_TextDocumentFormatting |
SMethod_TextDocumentRangeFormatting :: SMethod 'Method_TextDocumentRangeFormatting |
SMethod_TextDocumentOnTypeFormatting :: SMethod 'Method_TextDocumentOnTypeFormatting |
SMethod_TextDocumentRename :: SMethod 'Method_TextDocumentRename |
SMethod_TextDocumentPrepareRename :: SMethod 'Method_TextDocumentPrepareRename |
SMethod_WorkspaceExecuteCommand :: SMethod 'Method_WorkspaceExecuteCommand |
SMethod_WorkspaceApplyEdit :: SMethod 'Method_WorkspaceApplyEdit |
SMethod_WorkspaceDidChangeWorkspaceFolders :: SMethod 'Method_WorkspaceDidChangeWorkspaceFolders |
SMethod_WindowWorkDoneProgressCancel :: SMethod 'Method_WindowWorkDoneProgressCancel |
SMethod_WorkspaceDidCreateFiles :: SMethod 'Method_WorkspaceDidCreateFiles |
SMethod_WorkspaceDidRenameFiles :: SMethod 'Method_WorkspaceDidRenameFiles |
SMethod_WorkspaceDidDeleteFiles :: SMethod 'Method_WorkspaceDidDeleteFiles |
SMethod_NotebookDocumentDidOpen :: SMethod 'Method_NotebookDocumentDidOpen |
SMethod_NotebookDocumentDidChange :: SMethod 'Method_NotebookDocumentDidChange |
SMethod_NotebookDocumentDidSave :: SMethod 'Method_NotebookDocumentDidSave |
SMethod_NotebookDocumentDidClose :: SMethod 'Method_NotebookDocumentDidClose |
SMethod_Initialized :: SMethod 'Method_Initialized |
SMethod_Exit :: SMethod 'Method_Exit |
SMethod_WorkspaceDidChangeConfiguration :: SMethod 'Method_WorkspaceDidChangeConfiguration |
SMethod_WindowShowMessage :: SMethod 'Method_WindowShowMessage |
SMethod_WindowLogMessage :: SMethod 'Method_WindowLogMessage |
SMethod_TelemetryEvent :: SMethod 'Method_TelemetryEvent |
SMethod_TextDocumentDidOpen :: SMethod 'Method_TextDocumentDidOpen |
SMethod_TextDocumentDidChange :: SMethod 'Method_TextDocumentDidChange |
SMethod_TextDocumentDidClose :: SMethod 'Method_TextDocumentDidClose |
SMethod_TextDocumentDidSave :: SMethod 'Method_TextDocumentDidSave |
SMethod_TextDocumentWillSave :: SMethod 'Method_TextDocumentWillSave |
SMethod_WorkspaceDidChangeWatchedFiles :: SMethod 'Method_WorkspaceDidChangeWatchedFiles |
SMethod_TextDocumentPublishDiagnostics :: SMethod 'Method_TextDocumentPublishDiagnostics |
SMethod_SetTrace :: SMethod 'Method_SetTrace |
SMethod_LogTrace :: SMethod 'Method_LogTrace |
SMethod_CancelRequest :: forall {f :: MessageDirection}. SMethod ('Method_CancelRequest :: Method f 'Notification) |
SMethod_Progress :: forall {f :: MessageDirection}. SMethod ('Method_Progress :: Method f 'Notification) |
SMethod_CustomMethod :: forall {f :: MessageDirection} {t :: MessageKind} (s :: Symbol). KnownSymbol s => Proxy s -> SMethod ('Method_CustomMethod s :: Method f t) |

#### Instances

Instances details

ToJSON FromClientMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Parsing Methods toJSON :: FromClientMessage -> Value # toEncoding :: FromClientMessage -> Encoding # toJSONList :: [FromClientMessage] -> Value # toEncodingList :: [FromClientMessage] -> Encoding # omitField :: FromClientMessage -> Bool #
ToJSON FromServerMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Parsing Methods toJSON :: FromServerMessage -> Value # toEncoding :: FromServerMessage -> Encoding # toJSONList :: [FromServerMessage] -> Value # toEncodingList :: [FromServerMessage] -> Encoding # omitField :: FromServerMessage -> Bool #
Show FromServerMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Parsing Methods showsPrec :: Int -> FromServerMessage -> ShowS # show :: FromServerMessage -> String # showList :: [FromServerMessage] -> ShowS #
Eq FromServerMessage # |
Instance details Defined in Language.LSP.Protocol.Message.Parsing Methods (==) :: FromServerMessage -> FromServerMessage -> Bool # (/=) :: FromServerMessage -> FromServerMessage -> Bool #
HasMethod (TRegistration m) (SClientMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' (TRegistration m) (SClientMethod m) #
GCompare (SMethod :: Method f t -> Type) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods gcompare :: forall (a :: Method f t) (b :: Method f t). SMethod a -> SMethod b -> GOrdering a b #
GEq (SMethod :: Method f t -> Type) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods geq :: forall (a :: Method f t) (b :: Method f t). SMethod a -> SMethod b -> Maybe (a :~: b) #
HasMethod (TUnregistration m) (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' (TUnregistration m) (SMethod m) #
HasMethod (TNotificationMessage m) (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' (TNotificationMessage m) (SMethod m) #
HasMethod (TRequestMessage m) (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' (TRequestMessage m) (SMethod m) #
FromJSON (SMethod 'Method_Exit) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_Exit) # parseJSONList :: Value -> Parser [SMethod 'Method_Exit] # omittedField :: Maybe (SMethod 'Method_Exit) #
FromJSON (SMethod 'Method_Initialized) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_Initialized) # parseJSONList :: Value -> Parser [SMethod 'Method_Initialized] # omittedField :: Maybe (SMethod 'Method_Initialized) #
FromJSON (SMethod 'Method_NotebookDocumentDidChange) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_NotebookDocumentDidChange) # parseJSONList :: Value -> Parser [SMethod 'Method_NotebookDocumentDidChange] # omittedField :: Maybe (SMethod 'Method_NotebookDocumentDidChange) #
FromJSON (SMethod 'Method_NotebookDocumentDidClose) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_NotebookDocumentDidClose) # parseJSONList :: Value -> Parser [SMethod 'Method_NotebookDocumentDidClose] # omittedField :: Maybe (SMethod 'Method_NotebookDocumentDidClose) #
FromJSON (SMethod 'Method_NotebookDocumentDidOpen) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_NotebookDocumentDidOpen) # parseJSONList :: Value -> Parser [SMethod 'Method_NotebookDocumentDidOpen] # omittedField :: Maybe (SMethod 'Method_NotebookDocumentDidOpen) #
FromJSON (SMethod 'Method_NotebookDocumentDidSave) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_NotebookDocumentDidSave) # parseJSONList :: Value -> Parser [SMethod 'Method_NotebookDocumentDidSave] # omittedField :: Maybe (SMethod 'Method_NotebookDocumentDidSave) #
FromJSON (SMethod 'Method_SetTrace) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_SetTrace) # parseJSONList :: Value -> Parser [SMethod 'Method_SetTrace] # omittedField :: Maybe (SMethod 'Method_SetTrace) #
FromJSON (SMethod 'Method_TextDocumentDidChange) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDidChange) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDidChange] # omittedField :: Maybe (SMethod 'Method_TextDocumentDidChange) #
FromJSON (SMethod 'Method_TextDocumentDidClose) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDidClose) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDidClose] # omittedField :: Maybe (SMethod 'Method_TextDocumentDidClose) #
FromJSON (SMethod 'Method_TextDocumentDidOpen) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDidOpen) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDidOpen] # omittedField :: Maybe (SMethod 'Method_TextDocumentDidOpen) #
FromJSON (SMethod 'Method_TextDocumentDidSave) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDidSave) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDidSave] # omittedField :: Maybe (SMethod 'Method_TextDocumentDidSave) #
FromJSON (SMethod 'Method_TextDocumentWillSave) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentWillSave) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentWillSave] # omittedField :: Maybe (SMethod 'Method_TextDocumentWillSave) #
FromJSON (SMethod 'Method_WindowWorkDoneProgressCancel) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WindowWorkDoneProgressCancel) # parseJSONList :: Value -> Parser [SMethod 'Method_WindowWorkDoneProgressCancel] # omittedField :: Maybe (SMethod 'Method_WindowWorkDoneProgressCancel) #
FromJSON (SMethod 'Method_WorkspaceDidChangeConfiguration) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceDidChangeConfiguration) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceDidChangeConfiguration] # omittedField :: Maybe (SMethod 'Method_WorkspaceDidChangeConfiguration) #
FromJSON (SMethod 'Method_WorkspaceDidChangeWatchedFiles) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceDidChangeWatchedFiles) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceDidChangeWatchedFiles] # omittedField :: Maybe (SMethod 'Method_WorkspaceDidChangeWatchedFiles) #
FromJSON (SMethod 'Method_WorkspaceDidChangeWorkspaceFolders) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceDidChangeWorkspaceFolders) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceDidChangeWorkspaceFolders] # omittedField :: Maybe (SMethod 'Method_WorkspaceDidChangeWorkspaceFolders) #
FromJSON (SMethod 'Method_WorkspaceDidCreateFiles) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceDidCreateFiles) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceDidCreateFiles] # omittedField :: Maybe (SMethod 'Method_WorkspaceDidCreateFiles) #
FromJSON (SMethod 'Method_WorkspaceDidDeleteFiles) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceDidDeleteFiles) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceDidDeleteFiles] # omittedField :: Maybe (SMethod 'Method_WorkspaceDidDeleteFiles) #
FromJSON (SMethod 'Method_WorkspaceDidRenameFiles) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceDidRenameFiles) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceDidRenameFiles] # omittedField :: Maybe (SMethod 'Method_WorkspaceDidRenameFiles) #
FromJSON (SMethod 'Method_CallHierarchyIncomingCalls) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_CallHierarchyIncomingCalls) # parseJSONList :: Value -> Parser [SMethod 'Method_CallHierarchyIncomingCalls] # omittedField :: Maybe (SMethod 'Method_CallHierarchyIncomingCalls) #
FromJSON (SMethod 'Method_CallHierarchyOutgoingCalls) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_CallHierarchyOutgoingCalls) # parseJSONList :: Value -> Parser [SMethod 'Method_CallHierarchyOutgoingCalls] # omittedField :: Maybe (SMethod 'Method_CallHierarchyOutgoingCalls) #
FromJSON (SMethod 'Method_CodeActionResolve) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_CodeActionResolve) # parseJSONList :: Value -> Parser [SMethod 'Method_CodeActionResolve] # omittedField :: Maybe (SMethod 'Method_CodeActionResolve) #
FromJSON (SMethod 'Method_CodeLensResolve) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_CodeLensResolve) # parseJSONList :: Value -> Parser [SMethod 'Method_CodeLensResolve] # omittedField :: Maybe (SMethod 'Method_CodeLensResolve) #
FromJSON (SMethod 'Method_CompletionItemResolve) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_CompletionItemResolve) # parseJSONList :: Value -> Parser [SMethod 'Method_CompletionItemResolve] # omittedField :: Maybe (SMethod 'Method_CompletionItemResolve) #
FromJSON (SMethod 'Method_DocumentLinkResolve) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_DocumentLinkResolve) # parseJSONList :: Value -> Parser [SMethod 'Method_DocumentLinkResolve] # omittedField :: Maybe (SMethod 'Method_DocumentLinkResolve) #
FromJSON (SMethod 'Method_Initialize) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_Initialize) # parseJSONList :: Value -> Parser [SMethod 'Method_Initialize] # omittedField :: Maybe (SMethod 'Method_Initialize) #
FromJSON (SMethod 'Method_InlayHintResolve) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_InlayHintResolve) # parseJSONList :: Value -> Parser [SMethod 'Method_InlayHintResolve] # omittedField :: Maybe (SMethod 'Method_InlayHintResolve) #
FromJSON (SMethod 'Method_Shutdown) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_Shutdown) # parseJSONList :: Value -> Parser [SMethod 'Method_Shutdown] # omittedField :: Maybe (SMethod 'Method_Shutdown) #
FromJSON (SMethod 'Method_TextDocumentCodeAction) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentCodeAction) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentCodeAction] # omittedField :: Maybe (SMethod 'Method_TextDocumentCodeAction) #
FromJSON (SMethod 'Method_TextDocumentCodeLens) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentCodeLens) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentCodeLens] # omittedField :: Maybe (SMethod 'Method_TextDocumentCodeLens) #
FromJSON (SMethod 'Method_TextDocumentColorPresentation) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentColorPresentation) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentColorPresentation] # omittedField :: Maybe (SMethod 'Method_TextDocumentColorPresentation) #
FromJSON (SMethod 'Method_TextDocumentCompletion) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentCompletion) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentCompletion] # omittedField :: Maybe (SMethod 'Method_TextDocumentCompletion) #
FromJSON (SMethod 'Method_TextDocumentDeclaration) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDeclaration) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDeclaration] # omittedField :: Maybe (SMethod 'Method_TextDocumentDeclaration) #
FromJSON (SMethod 'Method_TextDocumentDefinition) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDefinition) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDefinition] # omittedField :: Maybe (SMethod 'Method_TextDocumentDefinition) #
FromJSON (SMethod 'Method_TextDocumentDiagnostic) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDiagnostic) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDiagnostic] # omittedField :: Maybe (SMethod 'Method_TextDocumentDiagnostic) #
FromJSON (SMethod 'Method_TextDocumentDocumentColor) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDocumentColor) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDocumentColor] # omittedField :: Maybe (SMethod 'Method_TextDocumentDocumentColor) #
FromJSON (SMethod 'Method_TextDocumentDocumentHighlight) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDocumentHighlight) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDocumentHighlight] # omittedField :: Maybe (SMethod 'Method_TextDocumentDocumentHighlight) #
FromJSON (SMethod 'Method_TextDocumentDocumentLink) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDocumentLink) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDocumentLink] # omittedField :: Maybe (SMethod 'Method_TextDocumentDocumentLink) #
FromJSON (SMethod 'Method_TextDocumentDocumentSymbol) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentDocumentSymbol) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentDocumentSymbol] # omittedField :: Maybe (SMethod 'Method_TextDocumentDocumentSymbol) #
FromJSON (SMethod 'Method_TextDocumentFoldingRange) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentFoldingRange) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentFoldingRange] # omittedField :: Maybe (SMethod 'Method_TextDocumentFoldingRange) #
FromJSON (SMethod 'Method_TextDocumentFormatting) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentFormatting) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentFormatting] # omittedField :: Maybe (SMethod 'Method_TextDocumentFormatting) #
FromJSON (SMethod 'Method_TextDocumentHover) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentHover) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentHover] # omittedField :: Maybe (SMethod 'Method_TextDocumentHover) #
FromJSON (SMethod 'Method_TextDocumentImplementation) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentImplementation) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentImplementation] # omittedField :: Maybe (SMethod 'Method_TextDocumentImplementation) #
FromJSON (SMethod 'Method_TextDocumentInlayHint) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentInlayHint) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentInlayHint] # omittedField :: Maybe (SMethod 'Method_TextDocumentInlayHint) #
FromJSON (SMethod 'Method_TextDocumentInlineValue) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentInlineValue) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentInlineValue] # omittedField :: Maybe (SMethod 'Method_TextDocumentInlineValue) #
FromJSON (SMethod 'Method_TextDocumentLinkedEditingRange) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentLinkedEditingRange) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentLinkedEditingRange] # omittedField :: Maybe (SMethod 'Method_TextDocumentLinkedEditingRange) #
FromJSON (SMethod 'Method_TextDocumentMoniker) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentMoniker) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentMoniker] # omittedField :: Maybe (SMethod 'Method_TextDocumentMoniker) #
FromJSON (SMethod 'Method_TextDocumentOnTypeFormatting) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentOnTypeFormatting) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentOnTypeFormatting] # omittedField :: Maybe (SMethod 'Method_TextDocumentOnTypeFormatting) #
FromJSON (SMethod 'Method_TextDocumentPrepareCallHierarchy) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentPrepareCallHierarchy) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentPrepareCallHierarchy] # omittedField :: Maybe (SMethod 'Method_TextDocumentPrepareCallHierarchy) #
FromJSON (SMethod 'Method_TextDocumentPrepareRename) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentPrepareRename) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentPrepareRename] # omittedField :: Maybe (SMethod 'Method_TextDocumentPrepareRename) #
FromJSON (SMethod 'Method_TextDocumentPrepareTypeHierarchy) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentPrepareTypeHierarchy) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentPrepareTypeHierarchy] # omittedField :: Maybe (SMethod 'Method_TextDocumentPrepareTypeHierarchy) #
FromJSON (SMethod 'Method_TextDocumentRangeFormatting) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentRangeFormatting) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentRangeFormatting] # omittedField :: Maybe (SMethod 'Method_TextDocumentRangeFormatting) #
FromJSON (SMethod 'Method_TextDocumentReferences) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentReferences) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentReferences] # omittedField :: Maybe (SMethod 'Method_TextDocumentReferences) #
FromJSON (SMethod 'Method_TextDocumentRename) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentRename) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentRename] # omittedField :: Maybe (SMethod 'Method_TextDocumentRename) #
FromJSON (SMethod 'Method_TextDocumentSelectionRange) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentSelectionRange) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentSelectionRange] # omittedField :: Maybe (SMethod 'Method_TextDocumentSelectionRange) #
FromJSON (SMethod 'Method_TextDocumentSemanticTokensFull) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentSemanticTokensFull) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentSemanticTokensFull] # omittedField :: Maybe (SMethod 'Method_TextDocumentSemanticTokensFull) #
FromJSON (SMethod 'Method_TextDocumentSemanticTokensFullDelta) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentSemanticTokensFullDelta) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentSemanticTokensFullDelta] # omittedField :: Maybe (SMethod 'Method_TextDocumentSemanticTokensFullDelta) #
FromJSON (SMethod 'Method_TextDocumentSemanticTokensRange) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentSemanticTokensRange) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentSemanticTokensRange] # omittedField :: Maybe (SMethod 'Method_TextDocumentSemanticTokensRange) #
FromJSON (SMethod 'Method_TextDocumentSignatureHelp) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentSignatureHelp) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentSignatureHelp] # omittedField :: Maybe (SMethod 'Method_TextDocumentSignatureHelp) #
FromJSON (SMethod 'Method_TextDocumentTypeDefinition) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentTypeDefinition) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentTypeDefinition] # omittedField :: Maybe (SMethod 'Method_TextDocumentTypeDefinition) #
FromJSON (SMethod 'Method_TextDocumentWillSaveWaitUntil) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentWillSaveWaitUntil) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentWillSaveWaitUntil] # omittedField :: Maybe (SMethod 'Method_TextDocumentWillSaveWaitUntil) #
FromJSON (SMethod 'Method_TypeHierarchySubtypes) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TypeHierarchySubtypes) # parseJSONList :: Value -> Parser [SMethod 'Method_TypeHierarchySubtypes] # omittedField :: Maybe (SMethod 'Method_TypeHierarchySubtypes) #
FromJSON (SMethod 'Method_TypeHierarchySupertypes) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TypeHierarchySupertypes) # parseJSONList :: Value -> Parser [SMethod 'Method_TypeHierarchySupertypes] # omittedField :: Maybe (SMethod 'Method_TypeHierarchySupertypes) #
FromJSON (SMethod 'Method_WorkspaceDiagnostic) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceDiagnostic) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceDiagnostic] # omittedField :: Maybe (SMethod 'Method_WorkspaceDiagnostic) #
FromJSON (SMethod 'Method_WorkspaceExecuteCommand) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceExecuteCommand) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceExecuteCommand] # omittedField :: Maybe (SMethod 'Method_WorkspaceExecuteCommand) #
FromJSON (SMethod 'Method_WorkspaceSymbol) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceSymbol) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceSymbol] # omittedField :: Maybe (SMethod 'Method_WorkspaceSymbol) #
FromJSON (SMethod 'Method_WorkspaceSymbolResolve) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceSymbolResolve) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceSymbolResolve] # omittedField :: Maybe (SMethod 'Method_WorkspaceSymbolResolve) #
FromJSON (SMethod 'Method_WorkspaceWillCreateFiles) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceWillCreateFiles) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceWillCreateFiles] # omittedField :: Maybe (SMethod 'Method_WorkspaceWillCreateFiles) #
FromJSON (SMethod 'Method_WorkspaceWillDeleteFiles) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceWillDeleteFiles) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceWillDeleteFiles] # omittedField :: Maybe (SMethod 'Method_WorkspaceWillDeleteFiles) #
FromJSON (SMethod 'Method_WorkspaceWillRenameFiles) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceWillRenameFiles) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceWillRenameFiles] # omittedField :: Maybe (SMethod 'Method_WorkspaceWillRenameFiles) #
FromJSON (SMethod 'Method_LogTrace) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_LogTrace) # parseJSONList :: Value -> Parser [SMethod 'Method_LogTrace] # omittedField :: Maybe (SMethod 'Method_LogTrace) #
FromJSON (SMethod 'Method_TelemetryEvent) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TelemetryEvent) # parseJSONList :: Value -> Parser [SMethod 'Method_TelemetryEvent] # omittedField :: Maybe (SMethod 'Method_TelemetryEvent) #
FromJSON (SMethod 'Method_TextDocumentPublishDiagnostics) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_TextDocumentPublishDiagnostics) # parseJSONList :: Value -> Parser [SMethod 'Method_TextDocumentPublishDiagnostics] # omittedField :: Maybe (SMethod 'Method_TextDocumentPublishDiagnostics) #
FromJSON (SMethod 'Method_WindowLogMessage) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WindowLogMessage) # parseJSONList :: Value -> Parser [SMethod 'Method_WindowLogMessage] # omittedField :: Maybe (SMethod 'Method_WindowLogMessage) #
FromJSON (SMethod 'Method_WindowShowMessage) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WindowShowMessage) # parseJSONList :: Value -> Parser [SMethod 'Method_WindowShowMessage] # omittedField :: Maybe (SMethod 'Method_WindowShowMessage) #
FromJSON (SMethod 'Method_ClientRegisterCapability) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_ClientRegisterCapability) # parseJSONList :: Value -> Parser [SMethod 'Method_ClientRegisterCapability] # omittedField :: Maybe (SMethod 'Method_ClientRegisterCapability) #
FromJSON (SMethod 'Method_ClientUnregisterCapability) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_ClientUnregisterCapability) # parseJSONList :: Value -> Parser [SMethod 'Method_ClientUnregisterCapability] # omittedField :: Maybe (SMethod 'Method_ClientUnregisterCapability) #
FromJSON (SMethod 'Method_WindowShowDocument) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WindowShowDocument) # parseJSONList :: Value -> Parser [SMethod 'Method_WindowShowDocument] # omittedField :: Maybe (SMethod 'Method_WindowShowDocument) #
FromJSON (SMethod 'Method_WindowShowMessageRequest) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WindowShowMessageRequest) # parseJSONList :: Value -> Parser [SMethod 'Method_WindowShowMessageRequest] # omittedField :: Maybe (SMethod 'Method_WindowShowMessageRequest) #
FromJSON (SMethod 'Method_WindowWorkDoneProgressCreate) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WindowWorkDoneProgressCreate) # parseJSONList :: Value -> Parser [SMethod 'Method_WindowWorkDoneProgressCreate] # omittedField :: Maybe (SMethod 'Method_WindowWorkDoneProgressCreate) #
FromJSON (SMethod 'Method_WorkspaceApplyEdit) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceApplyEdit) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceApplyEdit] # omittedField :: Maybe (SMethod 'Method_WorkspaceApplyEdit) #
FromJSON (SMethod 'Method_WorkspaceCodeLensRefresh) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceCodeLensRefresh) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceCodeLensRefresh] # omittedField :: Maybe (SMethod 'Method_WorkspaceCodeLensRefresh) #
FromJSON (SMethod 'Method_WorkspaceConfiguration) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceConfiguration) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceConfiguration] # omittedField :: Maybe (SMethod 'Method_WorkspaceConfiguration) #
FromJSON (SMethod 'Method_WorkspaceDiagnosticRefresh) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceDiagnosticRefresh) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceDiagnosticRefresh] # omittedField :: Maybe (SMethod 'Method_WorkspaceDiagnosticRefresh) #
FromJSON (SMethod 'Method_WorkspaceInlayHintRefresh) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceInlayHintRefresh) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceInlayHintRefresh] # omittedField :: Maybe (SMethod 'Method_WorkspaceInlayHintRefresh) #
FromJSON (SMethod 'Method_WorkspaceInlineValueRefresh) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceInlineValueRefresh) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceInlineValueRefresh] # omittedField :: Maybe (SMethod 'Method_WorkspaceInlineValueRefresh) #
FromJSON (SMethod 'Method_WorkspaceSemanticTokensRefresh) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceSemanticTokensRefresh) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceSemanticTokensRefresh] # omittedField :: Maybe (SMethod 'Method_WorkspaceSemanticTokensRefresh) #
FromJSON (SMethod 'Method_WorkspaceWorkspaceFolders) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod 'Method_WorkspaceWorkspaceFolders) # parseJSONList :: Value -> Parser [SMethod 'Method_WorkspaceWorkspaceFolders] # omittedField :: Maybe (SMethod 'Method_WorkspaceWorkspaceFolders) #
FromJSON (SMethod ('Method_CancelRequest :: Method f 'Notification)) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod ('Method_CancelRequest :: Method f 'Notification)) # parseJSONList :: Value -> Parser [SMethod ('Method_CancelRequest :: Method f 'Notification)] # omittedField :: Maybe (SMethod ('Method_CancelRequest :: Method f 'Notification)) #
FromJSON (SMethod ('Method_Progress :: Method f 'Notification)) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod ('Method_Progress :: Method f 'Notification)) # parseJSONList :: Value -> Parser [SMethod ('Method_Progress :: Method f 'Notification)] # omittedField :: Maybe (SMethod ('Method_Progress :: Method f 'Notification)) #
KnownSymbol s => FromJSON (SMethod ('Method_CustomMethod s :: Method f t)) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser (SMethod ('Method_CustomMethod s :: Method f t)) # parseJSONList :: Value -> Parser [SMethod ('Method_CustomMethod s :: Method f t)] # omittedField :: Maybe (SMethod ('Method_CustomMethod s :: Method f t)) #
ToJSON (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods toJSON :: SMethod m -> Value # toEncoding :: SMethod m -> Encoding # toJSONList :: [SMethod m] -> Value # toEncodingList :: [SMethod m] -> Encoding # omitField :: SMethod m -> Bool #
Show (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods showsPrec :: Int -> SMethod m -> ShowS # show :: SMethod m -> String # showList :: [SMethod m] -> ShowS #
Eq (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods (==) :: SMethod m -> SMethod m -> Bool # (/=) :: SMethod m -> SMethod m -> Bool #
Ord (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods compare :: SMethod m -> SMethod m -> Ordering # (<) :: SMethod m -> SMethod m -> Bool # (<=) :: SMethod m -> SMethod m -> Bool # (>) :: SMethod m -> SMethod m -> Bool # (>=) :: SMethod m -> SMethod m -> Bool # max :: SMethod m -> SMethod m -> SMethod m # min :: SMethod m -> SMethod m -> SMethod m #
Pretty (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods pretty :: SMethod m -> Doc ann # prettyList :: [SMethod m] -> Doc ann #

type family MessageParams (m :: Method f t) where ... #

Maps a LSP method to its parameter type.

Equations

MessageParams 'Method_TextDocumentImplementation = ImplementationParams |
MessageParams 'Method_TextDocumentTypeDefinition = TypeDefinitionParams |
MessageParams 'Method_WorkspaceWorkspaceFolders = Maybe Void |
MessageParams 'Method_WorkspaceConfiguration = ConfigurationParams |
MessageParams 'Method_TextDocumentDocumentColor = DocumentColorParams |
MessageParams 'Method_TextDocumentColorPresentation = ColorPresentationParams |
MessageParams 'Method_TextDocumentFoldingRange = FoldingRangeParams |
MessageParams 'Method_TextDocumentDeclaration = DeclarationParams |
MessageParams 'Method_TextDocumentSelectionRange = SelectionRangeParams |
MessageParams 'Method_WindowWorkDoneProgressCreate = WorkDoneProgressCreateParams |
MessageParams 'Method_TextDocumentPrepareCallHierarchy = CallHierarchyPrepareParams |
MessageParams 'Method_CallHierarchyIncomingCalls = CallHierarchyIncomingCallsParams |
MessageParams 'Method_CallHierarchyOutgoingCalls = CallHierarchyOutgoingCallsParams |
MessageParams 'Method_TextDocumentSemanticTokensFull = SemanticTokensParams |
MessageParams 'Method_TextDocumentSemanticTokensFullDelta = SemanticTokensDeltaParams |
MessageParams 'Method_TextDocumentSemanticTokensRange = SemanticTokensRangeParams |
MessageParams 'Method_WorkspaceSemanticTokensRefresh = Maybe Void |
MessageParams 'Method_WindowShowDocument = ShowDocumentParams |
MessageParams 'Method_TextDocumentLinkedEditingRange = LinkedEditingRangeParams |
MessageParams 'Method_WorkspaceWillCreateFiles = CreateFilesParams |
MessageParams 'Method_WorkspaceWillRenameFiles = RenameFilesParams |
MessageParams 'Method_WorkspaceWillDeleteFiles = DeleteFilesParams |
MessageParams 'Method_TextDocumentMoniker = MonikerParams |
MessageParams 'Method_TextDocumentPrepareTypeHierarchy = TypeHierarchyPrepareParams |
MessageParams 'Method_TypeHierarchySupertypes = TypeHierarchySupertypesParams |
MessageParams 'Method_TypeHierarchySubtypes = TypeHierarchySubtypesParams |
MessageParams 'Method_TextDocumentInlineValue = InlineValueParams |
MessageParams 'Method_WorkspaceInlineValueRefresh = Maybe Void |
MessageParams 'Method_TextDocumentInlayHint = InlayHintParams |
MessageParams 'Method_InlayHintResolve = InlayHint |
MessageParams 'Method_WorkspaceInlayHintRefresh = Maybe Void |
MessageParams 'Method_TextDocumentDiagnostic = DocumentDiagnosticParams |
MessageParams 'Method_WorkspaceDiagnostic = WorkspaceDiagnosticParams |
MessageParams 'Method_WorkspaceDiagnosticRefresh = Maybe Void |
MessageParams 'Method_ClientRegisterCapability = RegistrationParams |
MessageParams 'Method_ClientUnregisterCapability = UnregistrationParams |
MessageParams 'Method_Initialize = InitializeParams |
MessageParams 'Method_Shutdown = Maybe Void |
MessageParams 'Method_WindowShowMessageRequest = ShowMessageRequestParams |
MessageParams 'Method_TextDocumentWillSaveWaitUntil = WillSaveTextDocumentParams |
MessageParams 'Method_TextDocumentCompletion = CompletionParams |
MessageParams 'Method_CompletionItemResolve = CompletionItem |
MessageParams 'Method_TextDocumentHover = HoverParams |
MessageParams 'Method_TextDocumentSignatureHelp = SignatureHelpParams |
MessageParams 'Method_TextDocumentDefinition = DefinitionParams |
MessageParams 'Method_TextDocumentReferences = ReferenceParams |
MessageParams 'Method_TextDocumentDocumentHighlight = DocumentHighlightParams |
MessageParams 'Method_TextDocumentDocumentSymbol = DocumentSymbolParams |
MessageParams 'Method_TextDocumentCodeAction = CodeActionParams |
MessageParams 'Method_CodeActionResolve = CodeAction |
MessageParams 'Method_WorkspaceSymbol = WorkspaceSymbolParams |
MessageParams 'Method_WorkspaceSymbolResolve = WorkspaceSymbol |
MessageParams 'Method_TextDocumentCodeLens = CodeLensParams |
MessageParams 'Method_CodeLensResolve = CodeLens |
MessageParams 'Method_WorkspaceCodeLensRefresh = Maybe Void |
MessageParams 'Method_TextDocumentDocumentLink = DocumentLinkParams |
MessageParams 'Method_DocumentLinkResolve = DocumentLink |
MessageParams 'Method_TextDocumentFormatting = DocumentFormattingParams |
MessageParams 'Method_TextDocumentRangeFormatting = DocumentRangeFormattingParams |
MessageParams 'Method_TextDocumentOnTypeFormatting = DocumentOnTypeFormattingParams |
MessageParams 'Method_TextDocumentRename = RenameParams |
MessageParams 'Method_TextDocumentPrepareRename = PrepareRenameParams |
MessageParams 'Method_WorkspaceExecuteCommand = ExecuteCommandParams |
MessageParams 'Method_WorkspaceApplyEdit = ApplyWorkspaceEditParams |
MessageParams 'Method_WorkspaceDidChangeWorkspaceFolders = DidChangeWorkspaceFoldersParams |
MessageParams 'Method_WindowWorkDoneProgressCancel = WorkDoneProgressCancelParams |
MessageParams 'Method_WorkspaceDidCreateFiles = CreateFilesParams |
MessageParams 'Method_WorkspaceDidRenameFiles = RenameFilesParams |
MessageParams 'Method_WorkspaceDidDeleteFiles = DeleteFilesParams |
MessageParams 'Method_NotebookDocumentDidOpen = DidOpenNotebookDocumentParams |
MessageParams 'Method_NotebookDocumentDidChange = DidChangeNotebookDocumentParams |
MessageParams 'Method_NotebookDocumentDidSave = DidSaveNotebookDocumentParams |
MessageParams 'Method_NotebookDocumentDidClose = DidCloseNotebookDocumentParams |
MessageParams 'Method_Initialized = InitializedParams |
MessageParams 'Method_Exit = Maybe Void |
MessageParams 'Method_WorkspaceDidChangeConfiguration = DidChangeConfigurationParams |
MessageParams 'Method_WindowShowMessage = ShowMessageParams |
MessageParams 'Method_WindowLogMessage = LogMessageParams |
MessageParams 'Method_TelemetryEvent = Value |
MessageParams 'Method_TextDocumentDidOpen = DidOpenTextDocumentParams |
MessageParams 'Method_TextDocumentDidChange = DidChangeTextDocumentParams |
MessageParams 'Method_TextDocumentDidClose = DidCloseTextDocumentParams |
MessageParams 'Method_TextDocumentDidSave = DidSaveTextDocumentParams |
MessageParams 'Method_TextDocumentWillSave = WillSaveTextDocumentParams |
MessageParams 'Method_WorkspaceDidChangeWatchedFiles = DidChangeWatchedFilesParams |
MessageParams 'Method_TextDocumentPublishDiagnostics = PublishDiagnosticsParams |
MessageParams 'Method_SetTrace = SetTraceParams |
MessageParams 'Method_LogTrace = LogTraceParams |
MessageParams ('Method_CancelRequest :: Method f 'Notification) = CancelParams |
MessageParams ('Method_Progress :: Method f 'Notification) = ProgressParams |
MessageParams ('Method_CustomMethod s :: Method f t) = Value |

type family MessageResult (m :: Method f t) where ... #

Maps a LSP method to its result type.

Equations

MessageResult 'Method_TextDocumentImplementation = Definition |? ([DefinitionLink] |? Null) |
MessageResult 'Method_TextDocumentTypeDefinition = Definition |? ([DefinitionLink] |? Null) |
MessageResult 'Method_WorkspaceWorkspaceFolders = [WorkspaceFolder] |? Null |
MessageResult 'Method_WorkspaceConfiguration = [Value] |
MessageResult 'Method_TextDocumentDocumentColor = [ColorInformation] |
MessageResult 'Method_TextDocumentColorPresentation = [ColorPresentation] |
MessageResult 'Method_TextDocumentFoldingRange = [FoldingRange] |? Null |
MessageResult 'Method_TextDocumentDeclaration = Declaration |? ([DeclarationLink] |? Null) |
MessageResult 'Method_TextDocumentSelectionRange = [SelectionRange] |? Null |
MessageResult 'Method_WindowWorkDoneProgressCreate = Null |
MessageResult 'Method_TextDocumentPrepareCallHierarchy = [CallHierarchyItem] |? Null |
MessageResult 'Method_CallHierarchyIncomingCalls = [CallHierarchyIncomingCall] |? Null |
MessageResult 'Method_CallHierarchyOutgoingCalls = [CallHierarchyOutgoingCall] |? Null |
MessageResult 'Method_TextDocumentSemanticTokensFull = SemanticTokens |? Null |
MessageResult 'Method_TextDocumentSemanticTokensFullDelta = SemanticTokens |? (SemanticTokensDelta |? Null) |
MessageResult 'Method_TextDocumentSemanticTokensRange = SemanticTokens |? Null |
MessageResult 'Method_WorkspaceSemanticTokensRefresh = Null |
MessageResult 'Method_WindowShowDocument = ShowDocumentResult |
MessageResult 'Method_TextDocumentLinkedEditingRange = LinkedEditingRanges |? Null |
MessageResult 'Method_WorkspaceWillCreateFiles = WorkspaceEdit |? Null |
MessageResult 'Method_WorkspaceWillRenameFiles = WorkspaceEdit |? Null |
MessageResult 'Method_WorkspaceWillDeleteFiles = WorkspaceEdit |? Null |
MessageResult 'Method_TextDocumentMoniker = [Moniker] |? Null |
MessageResult 'Method_TextDocumentPrepareTypeHierarchy = [TypeHierarchyItem] |? Null |
MessageResult 'Method_TypeHierarchySupertypes = [TypeHierarchyItem] |? Null |
MessageResult 'Method_TypeHierarchySubtypes = [TypeHierarchyItem] |? Null |
MessageResult 'Method_TextDocumentInlineValue = [InlineValue] |? Null |
MessageResult 'Method_WorkspaceInlineValueRefresh = Null |
MessageResult 'Method_TextDocumentInlayHint = [InlayHint] |? Null |
MessageResult 'Method_InlayHintResolve = InlayHint |
MessageResult 'Method_WorkspaceInlayHintRefresh = Null |
MessageResult 'Method_TextDocumentDiagnostic = DocumentDiagnosticReport |
MessageResult 'Method_WorkspaceDiagnostic = WorkspaceDiagnosticReport |
MessageResult 'Method_WorkspaceDiagnosticRefresh = Null |
MessageResult 'Method_ClientRegisterCapability = Null |
MessageResult 'Method_ClientUnregisterCapability = Null |
MessageResult 'Method_Initialize = InitializeResult |
MessageResult 'Method_Shutdown = Null |
MessageResult 'Method_WindowShowMessageRequest = MessageActionItem |? Null |
MessageResult 'Method_TextDocumentWillSaveWaitUntil = [TextEdit] |? Null |
MessageResult 'Method_TextDocumentCompletion = [CompletionItem] |? (CompletionList |? Null) |
MessageResult 'Method_CompletionItemResolve = CompletionItem |
MessageResult 'Method_TextDocumentHover = Hover |? Null |
MessageResult 'Method_TextDocumentSignatureHelp = SignatureHelp |? Null |
MessageResult 'Method_TextDocumentDefinition = Definition |? ([DefinitionLink] |? Null) |
MessageResult 'Method_TextDocumentReferences = [Location] |? Null |
MessageResult 'Method_TextDocumentDocumentHighlight = [DocumentHighlight] |? Null |
MessageResult 'Method_TextDocumentDocumentSymbol = [SymbolInformation] |? ([DocumentSymbol] |? Null) |
MessageResult 'Method_TextDocumentCodeAction = [Command |? CodeAction] |? Null |
MessageResult 'Method_CodeActionResolve = CodeAction |
MessageResult 'Method_WorkspaceSymbol = [SymbolInformation] |? ([WorkspaceSymbol] |? Null) |
MessageResult 'Method_WorkspaceSymbolResolve = WorkspaceSymbol |
MessageResult 'Method_TextDocumentCodeLens = [CodeLens] |? Null |
MessageResult 'Method_CodeLensResolve = CodeLens |
MessageResult 'Method_WorkspaceCodeLensRefresh = Null |
MessageResult 'Method_TextDocumentDocumentLink = [DocumentLink] |? Null |
MessageResult 'Method_DocumentLinkResolve = DocumentLink |
MessageResult 'Method_TextDocumentFormatting = [TextEdit] |? Null |
MessageResult 'Method_TextDocumentRangeFormatting = [TextEdit] |? Null |
MessageResult 'Method_TextDocumentOnTypeFormatting = [TextEdit] |? Null |
MessageResult 'Method_TextDocumentRename = WorkspaceEdit |? Null |
MessageResult 'Method_TextDocumentPrepareRename = PrepareRenameResult |? Null |
MessageResult 'Method_WorkspaceExecuteCommand = Value |? Null |
MessageResult 'Method_WorkspaceApplyEdit = ApplyWorkspaceEditResult |
MessageResult ('Method_CustomMethod s :: Method f t) = Value |

type family ErrorData (m :: Method f t) where ... #

Maps a LSP method to its error data type.

Equations

ErrorData 'Method_TextDocumentImplementation = Maybe Void |
ErrorData 'Method_TextDocumentTypeDefinition = Maybe Void |
ErrorData 'Method_WorkspaceWorkspaceFolders = Maybe Void |
ErrorData 'Method_WorkspaceConfiguration = Maybe Void |
ErrorData 'Method_TextDocumentDocumentColor = Maybe Void |
ErrorData 'Method_TextDocumentColorPresentation = Maybe Void |
ErrorData 'Method_TextDocumentFoldingRange = Maybe Void |
ErrorData 'Method_TextDocumentDeclaration = Maybe Void |
ErrorData 'Method_TextDocumentSelectionRange = Maybe Void |
ErrorData 'Method_WindowWorkDoneProgressCreate = Maybe Void |
ErrorData 'Method_TextDocumentPrepareCallHierarchy = Maybe Void |
ErrorData 'Method_CallHierarchyIncomingCalls = Maybe Void |
ErrorData 'Method_CallHierarchyOutgoingCalls = Maybe Void |
ErrorData 'Method_TextDocumentSemanticTokensFull = Maybe Void |
ErrorData 'Method_TextDocumentSemanticTokensFullDelta = Maybe Void |
ErrorData 'Method_TextDocumentSemanticTokensRange = Maybe Void |
ErrorData 'Method_WorkspaceSemanticTokensRefresh = Maybe Void |
ErrorData 'Method_WindowShowDocument = Maybe Void |
ErrorData 'Method_TextDocumentLinkedEditingRange = Maybe Void |
ErrorData 'Method_WorkspaceWillCreateFiles = Maybe Void |
ErrorData 'Method_WorkspaceWillRenameFiles = Maybe Void |
ErrorData 'Method_WorkspaceWillDeleteFiles = Maybe Void |
ErrorData 'Method_TextDocumentMoniker = Maybe Void |
ErrorData 'Method_TextDocumentPrepareTypeHierarchy = Maybe Void |
ErrorData 'Method_TypeHierarchySupertypes = Maybe Void |
ErrorData 'Method_TypeHierarchySubtypes = Maybe Void |
ErrorData 'Method_TextDocumentInlineValue = Maybe Void |
ErrorData 'Method_WorkspaceInlineValueRefresh = Maybe Void |
ErrorData 'Method_TextDocumentInlayHint = Maybe Void |
ErrorData 'Method_InlayHintResolve = Maybe Void |
ErrorData 'Method_WorkspaceInlayHintRefresh = Maybe Void |
ErrorData 'Method_TextDocumentDiagnostic = DiagnosticServerCancellationData |
ErrorData 'Method_WorkspaceDiagnostic = DiagnosticServerCancellationData |
ErrorData 'Method_WorkspaceDiagnosticRefresh = Maybe Void |
ErrorData 'Method_ClientRegisterCapability = Maybe Void |
ErrorData 'Method_ClientUnregisterCapability = Maybe Void |
ErrorData 'Method_Initialize = InitializeError |
ErrorData 'Method_Shutdown = Maybe Void |
ErrorData 'Method_WindowShowMessageRequest = Maybe Void |
ErrorData 'Method_TextDocumentWillSaveWaitUntil = Maybe Void |
ErrorData 'Method_TextDocumentCompletion = Maybe Void |
ErrorData 'Method_CompletionItemResolve = Maybe Void |
ErrorData 'Method_TextDocumentHover = Maybe Void |
ErrorData 'Method_TextDocumentSignatureHelp = Maybe Void |
ErrorData 'Method_TextDocumentDefinition = Maybe Void |
ErrorData 'Method_TextDocumentReferences = Maybe Void |
ErrorData 'Method_TextDocumentDocumentHighlight = Maybe Void |
ErrorData 'Method_TextDocumentDocumentSymbol = Maybe Void |
ErrorData 'Method_TextDocumentCodeAction = Maybe Void |
ErrorData 'Method_CodeActionResolve = Maybe Void |
ErrorData 'Method_WorkspaceSymbol = Maybe Void |
ErrorData 'Method_WorkspaceSymbolResolve = Maybe Void |
ErrorData 'Method_TextDocumentCodeLens = Maybe Void |
ErrorData 'Method_CodeLensResolve = Maybe Void |
ErrorData 'Method_WorkspaceCodeLensRefresh = Maybe Void |
ErrorData 'Method_TextDocumentDocumentLink = Maybe Void |
ErrorData 'Method_DocumentLinkResolve = Maybe Void |
ErrorData 'Method_TextDocumentFormatting = Maybe Void |
ErrorData 'Method_TextDocumentRangeFormatting = Maybe Void |
ErrorData 'Method_TextDocumentOnTypeFormatting = Maybe Void |
ErrorData 'Method_TextDocumentRename = Maybe Void |
ErrorData 'Method_TextDocumentPrepareRename = Maybe Void |
ErrorData 'Method_WorkspaceExecuteCommand = Maybe Void |
ErrorData 'Method_WorkspaceApplyEdit = Maybe Void |
ErrorData ('Method_CustomMethod s :: Method f t) = Value |

type family RegistrationOptions (m :: Method f t) where ... #

Maps a LSP method to its registration options type.

Equations

RegistrationOptions 'Method_TextDocumentImplementation = ImplementationRegistrationOptions |
RegistrationOptions 'Method_TextDocumentTypeDefinition = TypeDefinitionRegistrationOptions |
RegistrationOptions 'Method_WorkspaceWorkspaceFolders = Maybe Void |
RegistrationOptions 'Method_WorkspaceConfiguration = Maybe Void |
RegistrationOptions 'Method_TextDocumentDocumentColor = DocumentColorRegistrationOptions |
RegistrationOptions 'Method_TextDocumentColorPresentation = Rec (("workDoneProgress" .== Maybe Bool) .+ (("documentSelector" .== (DocumentSelector |? Null)) .+ (Empty :: Row Type))) |
RegistrationOptions 'Method_TextDocumentFoldingRange = FoldingRangeRegistrationOptions |
RegistrationOptions 'Method_TextDocumentDeclaration = DeclarationRegistrationOptions |
RegistrationOptions 'Method_TextDocumentSelectionRange = SelectionRangeRegistrationOptions |
RegistrationOptions 'Method_WindowWorkDoneProgressCreate = Maybe Void |
RegistrationOptions 'Method_TextDocumentPrepareCallHierarchy = CallHierarchyRegistrationOptions |
RegistrationOptions 'Method_CallHierarchyIncomingCalls = Maybe Void |
RegistrationOptions 'Method_CallHierarchyOutgoingCalls = Maybe Void |
RegistrationOptions 'Method_TextDocumentSemanticTokensFull = SemanticTokensRegistrationOptions |
RegistrationOptions 'Method_TextDocumentSemanticTokensFullDelta = SemanticTokensRegistrationOptions |
RegistrationOptions 'Method_TextDocumentSemanticTokensRange = Maybe Void |
RegistrationOptions 'Method_WorkspaceSemanticTokensRefresh = Maybe Void |
RegistrationOptions 'Method_WindowShowDocument = Maybe Void |
RegistrationOptions 'Method_TextDocumentLinkedEditingRange = LinkedEditingRangeRegistrationOptions |
RegistrationOptions 'Method_WorkspaceWillCreateFiles = FileOperationRegistrationOptions |
RegistrationOptions 'Method_WorkspaceWillRenameFiles = FileOperationRegistrationOptions |
RegistrationOptions 'Method_WorkspaceWillDeleteFiles = FileOperationRegistrationOptions |
RegistrationOptions 'Method_TextDocumentMoniker = MonikerRegistrationOptions |
RegistrationOptions 'Method_TextDocumentPrepareTypeHierarchy = TypeHierarchyRegistrationOptions |
RegistrationOptions 'Method_TypeHierarchySupertypes = Maybe Void |
RegistrationOptions 'Method_TypeHierarchySubtypes = Maybe Void |
RegistrationOptions 'Method_TextDocumentInlineValue = InlineValueRegistrationOptions |
RegistrationOptions 'Method_WorkspaceInlineValueRefresh = Maybe Void |
RegistrationOptions 'Method_TextDocumentInlayHint = InlayHintRegistrationOptions |
RegistrationOptions 'Method_InlayHintResolve = Maybe Void |
RegistrationOptions 'Method_WorkspaceInlayHintRefresh = Maybe Void |
RegistrationOptions 'Method_TextDocumentDiagnostic = DiagnosticRegistrationOptions |
RegistrationOptions 'Method_WorkspaceDiagnostic = Maybe Void |
RegistrationOptions 'Method_WorkspaceDiagnosticRefresh = Maybe Void |
RegistrationOptions 'Method_ClientRegisterCapability = Maybe Void |
RegistrationOptions 'Method_ClientUnregisterCapability = Maybe Void |
RegistrationOptions 'Method_Initialize = Maybe Void |
RegistrationOptions 'Method_Shutdown = Maybe Void |
RegistrationOptions 'Method_WindowShowMessageRequest = Maybe Void |
RegistrationOptions 'Method_TextDocumentWillSaveWaitUntil = TextDocumentRegistrationOptions |
RegistrationOptions 'Method_TextDocumentCompletion = CompletionRegistrationOptions |
RegistrationOptions 'Method_CompletionItemResolve = Maybe Void |
RegistrationOptions 'Method_TextDocumentHover = HoverRegistrationOptions |
RegistrationOptions 'Method_TextDocumentSignatureHelp = SignatureHelpRegistrationOptions |
RegistrationOptions 'Method_TextDocumentDefinition = DefinitionRegistrationOptions |
RegistrationOptions 'Method_TextDocumentReferences = ReferenceRegistrationOptions |
RegistrationOptions 'Method_TextDocumentDocumentHighlight = DocumentHighlightRegistrationOptions |
RegistrationOptions 'Method_TextDocumentDocumentSymbol = DocumentSymbolRegistrationOptions |
RegistrationOptions 'Method_TextDocumentCodeAction = CodeActionRegistrationOptions |
RegistrationOptions 'Method_CodeActionResolve = Maybe Void |
RegistrationOptions 'Method_WorkspaceSymbol = WorkspaceSymbolRegistrationOptions |
RegistrationOptions 'Method_WorkspaceSymbolResolve = Maybe Void |
RegistrationOptions 'Method_TextDocumentCodeLens = CodeLensRegistrationOptions |
RegistrationOptions 'Method_CodeLensResolve = Maybe Void |
RegistrationOptions 'Method_WorkspaceCodeLensRefresh = Maybe Void |
RegistrationOptions 'Method_TextDocumentDocumentLink = DocumentLinkRegistrationOptions |
RegistrationOptions 'Method_DocumentLinkResolve = Maybe Void |
RegistrationOptions 'Method_TextDocumentFormatting = DocumentFormattingRegistrationOptions |
RegistrationOptions 'Method_TextDocumentRangeFormatting = DocumentRangeFormattingRegistrationOptions |
RegistrationOptions 'Method_TextDocumentOnTypeFormatting = DocumentOnTypeFormattingRegistrationOptions |
RegistrationOptions 'Method_TextDocumentRename = RenameRegistrationOptions |
RegistrationOptions 'Method_TextDocumentPrepareRename = Maybe Void |
RegistrationOptions 'Method_WorkspaceExecuteCommand = ExecuteCommandRegistrationOptions |
RegistrationOptions 'Method_WorkspaceApplyEdit = Maybe Void |
RegistrationOptions 'Method_WorkspaceDidChangeWorkspaceFolders = Maybe Void |
RegistrationOptions 'Method_WindowWorkDoneProgressCancel = Maybe Void |
RegistrationOptions 'Method_WorkspaceDidCreateFiles = FileOperationRegistrationOptions |
RegistrationOptions 'Method_WorkspaceDidRenameFiles = FileOperationRegistrationOptions |
RegistrationOptions 'Method_WorkspaceDidDeleteFiles = FileOperationRegistrationOptions |
RegistrationOptions 'Method_NotebookDocumentDidOpen = NotebookDocumentSyncRegistrationOptions |
RegistrationOptions 'Method_NotebookDocumentDidChange = NotebookDocumentSyncRegistrationOptions |
RegistrationOptions 'Method_NotebookDocumentDidSave = NotebookDocumentSyncRegistrationOptions |
RegistrationOptions 'Method_NotebookDocumentDidClose = NotebookDocumentSyncRegistrationOptions |
RegistrationOptions 'Method_Initialized = Maybe Void |
RegistrationOptions 'Method_Exit = Maybe Void |
RegistrationOptions 'Method_WorkspaceDidChangeConfiguration = DidChangeConfigurationRegistrationOptions |
RegistrationOptions 'Method_WindowShowMessage = Maybe Void |
RegistrationOptions 'Method_WindowLogMessage = Maybe Void |
RegistrationOptions 'Method_TelemetryEvent = Maybe Void |
RegistrationOptions 'Method_TextDocumentDidOpen = TextDocumentRegistrationOptions |
RegistrationOptions 'Method_TextDocumentDidChange = TextDocumentChangeRegistrationOptions |
RegistrationOptions 'Method_TextDocumentDidClose = TextDocumentRegistrationOptions |
RegistrationOptions 'Method_TextDocumentDidSave = TextDocumentSaveRegistrationOptions |
RegistrationOptions 'Method_TextDocumentWillSave = TextDocumentRegistrationOptions |
RegistrationOptions 'Method_WorkspaceDidChangeWatchedFiles = DidChangeWatchedFilesRegistrationOptions |
RegistrationOptions 'Method_TextDocumentPublishDiagnostics = Maybe Void |
RegistrationOptions 'Method_SetTrace = Maybe Void |
RegistrationOptions 'Method_LogTrace = Maybe Void |
RegistrationOptions ('Method_CancelRequest :: Method f 'Notification) = Maybe Void |
RegistrationOptions ('Method_Progress :: Method f 'Notification) = Maybe Void |
RegistrationOptions ('Method_CustomMethod s :: Method f t) = Void |

data SomeMethod where #

A method which isn't statically known.

Constructors

SomeMethod :: forall {f :: MessageDirection} {t :: MessageKind} (m :: Method f t). SMethod m -> SomeMethod |

#### Instances

Instances details

FromJSON SomeMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser SomeMethod # parseJSONList :: Value -> Parser [SomeMethod] # omittedField :: Maybe SomeMethod #
ToJSON SomeMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods toJSON :: SomeMethod -> Value # toEncoding :: SomeMethod -> Encoding # toJSONList :: [SomeMethod] -> Value # toEncodingList :: [SomeMethod] -> Encoding # omitField :: SomeMethod -> Bool #
Show SomeMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods showsPrec :: Int -> SomeMethod -> ShowS # show :: SomeMethod -> String # showList :: [SomeMethod] -> ShowS #
Eq SomeMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods (==) :: SomeMethod -> SomeMethod -> Bool # (/=) :: SomeMethod -> SomeMethod -> Bool #
Ord SomeMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods compare :: SomeMethod -> SomeMethod -> Ordering # (<) :: SomeMethod -> SomeMethod -> Bool # (<=) :: SomeMethod -> SomeMethod -> Bool # (>) :: SomeMethod -> SomeMethod -> Bool # (>=) :: SomeMethod -> SomeMethod -> Bool # max :: SomeMethod -> SomeMethod -> SomeMethod # min :: SomeMethod -> SomeMethod -> SomeMethod #
Pretty SomeMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods pretty :: SomeMethod -> Doc ann # prettyList :: [SomeMethod] -> Doc ann #

someMethodToMethodString :: SomeMethod -> String #

Turn a `SomeMethod` into its LSP method string.

methodStringToSomeMethod :: String -> SomeMethod #

Turn a LSP method string into a `SomeMethod`.

messageDirection :: forall (f :: MessageDirection) (t :: MessageKind) (m :: Method f t). SMethod m -> SMessageDirection f #

Get a singleton witness for the message direction of a `SMethod`.

messageKind :: forall (f :: MessageDirection) (t :: MessageKind) (m :: Method f t). SMethod m -> SMessageKind t #

Get a singleton witness for the message kind of a `SMethod`.

## Helpers for working with methods

isOptionalMethod :: SomeMethod -> Bool #

Is this an "optional" method which servers and clients are allowed to ignore?

type SClientMethod (m :: Method 'ClientToServer t) = SMethod m #

type SServerMethod (m :: Method 'ServerToClient t) = SMethod m #

data SomeClientMethod #

Constructors

SomeClientMethod (SMethod m) |

#### Instances

Instances details

FromJSON SomeClientMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser SomeClientMethod # parseJSONList :: Value -> Parser [SomeClientMethod] # omittedField :: Maybe SomeClientMethod #
ToJSON SomeClientMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods toJSON :: SomeClientMethod -> Value # toEncoding :: SomeClientMethod -> Encoding # toJSONList :: [SomeClientMethod] -> Value # toEncodingList :: [SomeClientMethod] -> Encoding # omitField :: SomeClientMethod -> Bool #
Show SomeClientMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods showsPrec :: Int -> SomeClientMethod -> ShowS # show :: SomeClientMethod -> String # showList :: [SomeClientMethod] -> ShowS #
Pretty SomeClientMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods pretty :: SomeClientMethod -> Doc ann # prettyList :: [SomeClientMethod] -> Doc ann #

data SomeServerMethod #

Constructors

SomeServerMethod (SMethod m) |

#### Instances

Instances details

FromJSON SomeServerMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods parseJSON :: Value -> Parser SomeServerMethod # parseJSONList :: Value -> Parser [SomeServerMethod] # omittedField :: Maybe SomeServerMethod #
ToJSON SomeServerMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods toJSON :: SomeServerMethod -> Value # toEncoding :: SomeServerMethod -> Encoding # toJSONList :: [SomeServerMethod] -> Value # toEncodingList :: [SomeServerMethod] -> Encoding # omitField :: SomeServerMethod -> Bool #
Show SomeServerMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods showsPrec :: Int -> SomeServerMethod -> ShowS # show :: SomeServerMethod -> String # showList :: [SomeServerMethod] -> ShowS #
Pretty SomeServerMethod # |
Instance details Defined in Language.LSP.Protocol.Message.Method Methods pretty :: SomeServerMethod -> Doc ann # prettyList :: [SomeServerMethod] -> Doc ann #

someClientMethod :: forall {f :: MessageDirection} {t :: MessageKind} (m :: Method f t). SMethod m -> Maybe SomeClientMethod #

someServerMethod :: forall {f :: MessageDirection} {t :: MessageKind} (m :: Method f t). SMethod m -> Maybe SomeServerMethod #

# LSP registrations

data TRegistration (m :: Method 'ClientToServer t) #

Typed dynamic registration type, with correct options.

Constructors

TRegistration |
Fields _id :: Text The id used to register the request. The id can be used to deregister the request again. _method :: SClientMethod m The method / capability to register for. _registerOptions :: !(Maybe (RegistrationOptions m)) Options necessary for the registration. Make this strict to aid the pattern matching exhaustiveness checker

#### Instances

Instances details

ToJSON (TRegistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods toJSON :: TRegistration m -> Value # toEncoding :: TRegistration m -> Encoding # toJSONList :: [TRegistration m] -> Value # toEncodingList :: [TRegistration m] -> Encoding # omitField :: TRegistration m -> Bool #
Generic (TRegistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Associated Types
type Rep (TRegistration m) |
Instance details Defined in Language.LSP.Protocol.Message.Registration type Rep (TRegistration m) = D1 ('MetaData "TRegistration" "Language.LSP.Protocol.Message.Registration" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TRegistration" 'PrefixI 'True) (S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SClientMethod m)) :*: S1 ('MetaSel ('Just "_registerOptions") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe (RegistrationOptions m))))))
Methods from :: TRegistration m -> Rep (TRegistration m) x # to :: Rep (TRegistration m) x -> TRegistration m #
Show (RegistrationOptions m) => Show (TRegistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods showsPrec :: Int -> TRegistration m -> ShowS # show :: TRegistration m -> String # showList :: [TRegistration m] -> ShowS #
Eq (RegistrationOptions m) => Eq (TRegistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods (==) :: TRegistration m -> TRegistration m -> Bool # (/=) :: TRegistration m -> TRegistration m -> Bool #
Pretty (TRegistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods pretty :: TRegistration m -> Doc ann # prettyList :: [TRegistration m] -> Doc ann #
HasId (TRegistration m) Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods id :: Lens' (TRegistration m) Text #
a ~ Maybe (RegistrationOptions m) => HasRegisterOptions (TRegistration m) a # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods registerOptions :: Lens' (TRegistration m) a #
HasMethod (TRegistration m) (SClientMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' (TRegistration m) (SClientMethod m) #
type Rep (TRegistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration type Rep (TRegistration m) = D1 ('MetaData "TRegistration" "Language.LSP.Protocol.Message.Registration" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TRegistration" 'PrefixI 'True) (S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SClientMethod m)) :*: S1 ('MetaSel ('Just "_registerOptions") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe (RegistrationOptions m))))))

regHelper :: forall {f :: MessageDirection} {t :: MessageKind} (m :: Method f t) x. SMethod m -> ((Show (RegistrationOptions m), ToJSON (RegistrationOptions m), FromJSON (RegistrationOptions m)) => x) -> x #

data TUnregistration (m :: Method 'ClientToServer t) #

Typed dynamic unregistration type.

Constructors

TUnregistration |
Fields _id :: Text The id used to unregister the request or notification. Usually an id provided during the register request. _method :: SMethod m The method / capability to unregister for.

#### Instances

Instances details

ToJSON (TUnregistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods toJSON :: TUnregistration m -> Value # toEncoding :: TUnregistration m -> Encoding # toJSONList :: [TUnregistration m] -> Value # toEncodingList :: [TUnregistration m] -> Encoding # omitField :: TUnregistration m -> Bool #
Generic (TUnregistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Associated Types
type Rep (TUnregistration m) |
Instance details Defined in Language.LSP.Protocol.Message.Registration type Rep (TUnregistration m) = D1 ('MetaData "TUnregistration" "Language.LSP.Protocol.Message.Registration" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TUnregistration" 'PrefixI 'True) (S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SMethod m))))
Methods from :: TUnregistration m -> Rep (TUnregistration m) x # to :: Rep (TUnregistration m) x -> TUnregistration m #
Show (TUnregistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods showsPrec :: Int -> TUnregistration m -> ShowS # show :: TUnregistration m -> String # showList :: [TUnregistration m] -> ShowS #
Eq (TUnregistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods (==) :: TUnregistration m -> TUnregistration m -> Bool # (/=) :: TUnregistration m -> TUnregistration m -> Bool #
Pretty (TUnregistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods pretty :: TUnregistration m -> Doc ann # prettyList :: [TUnregistration m] -> Doc ann #
HasId (TUnregistration m) Text # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods id :: Lens' (TUnregistration m) Text #
HasMethod (TUnregistration m) (SMethod m) # |
Instance details Defined in Language.LSP.Protocol.Message.Lens Methods method :: Lens' (TUnregistration m) (SMethod m) #
type Rep (TUnregistration m) # |
Instance details Defined in Language.LSP.Protocol.Message.Registration type Rep (TUnregistration m) = D1 ('MetaData "TUnregistration" "Language.LSP.Protocol.Message.Registration" "lsp-types-2.3.0.1-DRgHF6G3wOAK70a4XwHYCC" 'False) (C1 ('MetaCons "TUnregistration" 'PrefixI 'True) (S1 ('MetaSel ('Just "_id") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (SMethod m))))

data SomeRegistration #

Constructors

SomeRegistration (TRegistration m) |

#### Instances

Instances details

FromJSON SomeRegistration # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods parseJSON :: Value -> Parser SomeRegistration # parseJSONList :: Value -> Parser [SomeRegistration] # omittedField :: Maybe SomeRegistration #
ToJSON SomeRegistration # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods toJSON :: SomeRegistration -> Value # toEncoding :: SomeRegistration -> Encoding # toJSONList :: [SomeRegistration] -> Value # toEncodingList :: [SomeRegistration] -> Encoding # omitField :: SomeRegistration -> Bool #
Show SomeRegistration # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods showsPrec :: Int -> SomeRegistration -> ShowS # show :: SomeRegistration -> String # showList :: [SomeRegistration] -> ShowS #
Pretty SomeRegistration # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods pretty :: SomeRegistration -> Doc ann # prettyList :: [SomeRegistration] -> Doc ann #

toUntypedRegistration :: forall {t :: MessageKind} (m :: Method 'ClientToServer t). TRegistration m -> Registration #

toSomeRegistration :: Registration -> Maybe SomeRegistration #

data SomeUnregistration #

Constructors

SomeUnregistration (TUnregistration m) |

#### Instances

Instances details

FromJSON SomeUnregistration # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods parseJSON :: Value -> Parser SomeUnregistration # parseJSONList :: Value -> Parser [SomeUnregistration] # omittedField :: Maybe SomeUnregistration #
ToJSON SomeUnregistration # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods toJSON :: SomeUnregistration -> Value # toEncoding :: SomeUnregistration -> Encoding # toJSONList :: [SomeUnregistration] -> Value # toEncodingList :: [SomeUnregistration] -> Encoding # omitField :: SomeUnregistration -> Bool #
Pretty SomeUnregistration # |
Instance details Defined in Language.LSP.Protocol.Message.Registration Methods pretty :: SomeUnregistration -> Doc ann # prettyList :: [SomeUnregistration] -> Doc ann #

toUntypedUnregistration :: forall {t :: MessageKind} (m :: Method 'ClientToServer t). TUnregistration m -> Unregistration #

toSomeUnregistration :: Unregistration -> Maybe SomeUnregistration #