nvim-hs-0.2.5: Haskell plugin backend for neovim

Copyright(c) Sebastian Witte
LicenseApache-2.0
Maintainerwoozletoff@gmail.com
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Neovim.RPC.FunctionCall

Description

 

Synopsis

Documentation

acall :: NvimObject result => FunctionName -> [Object] -> Neovim r st (STM (Either NeovimException result)) Source #

Helper function that concurrently puts a Message in the event queue and returns an STM action that returns the result.

acall' :: NvimObject result => FunctionName -> [Object] -> Neovim r st (STM result) Source #

Helper function similar to acall that throws a runtime exception if the result is an error object.

scall Source #

Arguments

:: NvimObject result 
=> FunctionName 
-> [Object]

Parameters in an Object array

-> Neovim r st (Either NeovimException result)

result value of the call or the thrown exception

Call a neovim function synchronously. This function blocks until the result is available.

scall' :: NvimObject result => FunctionName -> [Object] -> Neovim r st result Source #

Helper function similar to scall that throws a runtime exception if the result is an error object.

scallThrow :: NvimObject result => FunctionName -> [Object] -> Neovim r st result Source #

Similar to scall, but throw a NeovimException instead of returning it.

atomically' :: MonadIO io => STM result -> io result Source #

Lifted variant of atomically.

wait :: Neovim r st (STM result) -> Neovim r st result Source #

Wait for the result of the STM action.

This action possibly blocks as it is an alias for ioSTM -> ioSTM >>= liftIO . atomically.

wait' :: Neovim r st (STM result) -> Neovim r st () Source #

Variant of wait that discards the result.

waitErr Source #

Arguments

:: Pretty e 
=> String

Prefix error message with this.

-> Neovim r st (STM (Either e result))

Function call to neovim

-> Neovim r st result 

Wait for the result of the STM action and call err . (loc++) . show if the action returned an error.

waitErr' :: Pretty e => String -> Neovim r st (STM (Either e result)) -> Neovim r st () Source #

waitErr that discards the result.

respond :: NvimObject result => Request -> Either String result -> Neovim r st () Source #

Send the result back to the neovim instance.