| Copyright | (c) Sebastian Witte |
|---|---|
| License | Apache-2.0 |
| Maintainer | woozletoff@gmail.com |
| Stability | experimental |
| Safe Haskell | None |
| Language | Haskell2010 |
Neovim.RPC.Common
Description
Synopsis
- data RPCConfig = RPCConfig {}
- newRPCConfig :: (Applicative io, MonadIO io) => io RPCConfig
- data SocketType
- createHandle :: (Functor io, MonadIO io) => SocketType -> io Handle
- cleanUpHandle :: MonadIO io => Handle -> Bool -> io ()
Documentation
Things shared between the socket reader and the event handler.
Constructors
| RPCConfig | |
Fields
| |
newRPCConfig :: (Applicative io, MonadIO io) => io RPCConfig Source #
Create a new basic configuration containing a communication channel for remote procedure call events and an empty lookup table for functions to mediate.
data SocketType Source #
Simple data type defining the kind of socket the socket reader should use.
Constructors
| Stdout Handle | Use the handle for receiving msgpack-rpc messages. This is suitable for an embedded neovim which is used in test cases. |
| Environment | Read the connection information from the environment
variable |
| UnixSocket FilePath | Use a unix socket. |
| TCP Int String | Use an IP socket. First argument is the port and the second is the host name. |
createHandle :: (Functor io, MonadIO io) => SocketType -> io Handle Source #
Create a Handle from the given socket description.
The handle is not automatically closed.