haskell-lsp-0.16.0.0: Haskell library for the Microsoft Language Server Protocol

Safe HaskellNone
LanguageHaskell2010

Language.Haskell.LSP.Core

Synopsis

Documentation

data LanguageContextData config Source #

state used by the LSP dispatcher to manage the message loop

type Handler b = b -> IO () Source #

The Handler type captures a function that receives local read-only state a, a function to send a reply message once encoded as a ByteString, and a received message of type b

data InitializeCallbacks config Source #

Contains all the callbacks to use for initialized the language server. it is parameterized over a config type variable representing the type for the specific configuration data the language server needs to use.

Constructors

InitializeCallbacks 

Fields

  • onInitialConfiguration :: InitializeRequest -> Either Text config

    Invoked on the first message from the language client, containg the client configuration This callback should return either the parsed configuration data or an error indicating what went wrong. The parsed configuration object will be stored internally and passed to hanlder functions as context.

  • onConfigurationChange :: DidChangeConfigurationNotification -> Either Text config

    Invoked whenever the clients sends a message with a changed client configuration. This callback should return either the parsed configuration data or an error indicating what went wrong. The parsed configuration object will be stored internally and passed to hanlder functions as context.

  • onStartup :: LspFuncs config -> IO (Maybe ResponseError)

    Once the initial configuration has been received, this callback will be invoked to offer the language server implementation the chance to create any processes or start new threads that may be necesary for the server lifecycle.

data LspFuncs c Source #

Returned to the server on startup, providing ways to interact with the client.

Constructors

LspFuncs 

Fields

data Progress Source #

A package indicating the perecentage of progress complete and a an optional message to go with it during a withProgress

Since: 0.10.0.0

Constructors

Progress (Maybe Double) (Maybe Text) 

data ProgressCancellable Source #

Whether or not the user should be able to cancel a 'withProgress'/'withIndefiniteProgress' session

Since: 0.11.0.0

type SendFunc = FromServerMessage -> IO () Source #

A function to send a message to the client

data Handlers Source #

Callbacks from the language server to the language handler

Constructors

Handlers 

Fields

Instances
Default Handlers Source # 
Instance details

Defined in Language.Haskell.LSP.Core

Methods

def :: Handlers #

setupLogger :: Maybe FilePath -> [String] -> Priority -> IO () Source #

===============================================================

utility

Logger

reverseSortEdit :: WorkspaceEdit -> WorkspaceEdit Source #

The changes in a workspace edit should be applied from the end of the file toward the start. Sort them into this order.