Copyright | (c) Sebastian Witte |
---|---|
License | Apache-2.0 |
Maintainer | woozletoff@gmail.com |
Stability | experimental |
Safe Haskell | None |
Language | Haskell2010 |
Neovim.RPC.Common
Description
- 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.
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.