aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/channel.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/channel.h')
-rw-r--r--src/nvim/channel.h72
1 files changed, 9 insertions, 63 deletions
diff --git a/src/nvim/channel.h b/src/nvim/channel.h
index 5c9d708ac2..35d369e513 100644
--- a/src/nvim/channel.h
+++ b/src/nvim/channel.h
@@ -4,75 +4,17 @@
#include <stdint.h>
#include <stdlib.h>
+#include "nvim/channel_defs.h" // IWYU pragma: keep
#include "nvim/eval/typval_defs.h"
+#include "nvim/event/defs.h"
#include "nvim/event/libuv_process.h"
-#include "nvim/event/multiqueue.h"
-#include "nvim/event/process.h"
-#include "nvim/event/socket.h"
-#include "nvim/event/stream.h"
-#include "nvim/garray_defs.h"
+#include "nvim/func_attr.h"
#include "nvim/macros_defs.h"
-#include "nvim/main.h"
#include "nvim/map_defs.h"
#include "nvim/msgpack_rpc/channel_defs.h"
#include "nvim/os/pty_process.h"
-#include "nvim/terminal.h"
#include "nvim/types_defs.h"
-#define CHAN_STDIO 1
-#define CHAN_STDERR 2
-
-typedef enum {
- kChannelStreamProc,
- kChannelStreamSocket,
- kChannelStreamStdio,
- kChannelStreamStderr,
- kChannelStreamInternal,
-} ChannelStreamType;
-
-typedef enum {
- kChannelPartStdin,
- kChannelPartStdout,
- kChannelPartStderr,
- kChannelPartRpc,
- kChannelPartAll,
-} ChannelPart;
-
-typedef enum {
- kChannelStdinPipe,
- kChannelStdinNull,
-} ChannelStdinMode;
-
-typedef struct {
- Stream in;
- Stream out;
-} StdioPair;
-
-typedef struct {
- bool closed;
-} StderrState;
-
-typedef struct {
- LuaRef cb;
- bool closed;
-} InternalState;
-
-typedef struct {
- Callback cb;
- dict_T *self;
- garray_T buffer;
- bool eof;
- bool buffered;
- bool fwd_err;
- const char *type;
-} CallbackReader;
-
-#define CALLBACK_READER_INIT ((CallbackReader){ .cb = CALLBACK_NONE, \
- .self = NULL, \
- .buffer = GA_EMPTY_INIT_VALUE, \
- .buffered = false, \
- .fwd_err = false, \
- .type = NULL })
static inline bool callback_reader_set(CallbackReader reader)
{
return reader.cb.type != kCallbackNone || reader.self;
@@ -122,7 +64,9 @@ static inline Channel *find_channel(uint64_t id)
}
static inline Stream *channel_instream(Channel *chan)
- FUNC_ATTR_NONNULL_ALL
+ REAL_FATTR_NONNULL_ALL;
+
+static inline Stream *channel_instream(Channel *chan)
{
switch (chan->streamtype) {
case kChannelStreamProc:
@@ -142,7 +86,9 @@ static inline Stream *channel_instream(Channel *chan)
}
static inline Stream *channel_outstream(Channel *chan)
- FUNC_ATTR_NONNULL_ALL
+ REAL_FATTR_NONNULL_ALL;
+
+static inline Stream *channel_outstream(Channel *chan)
{
switch (chan->streamtype) {
case kChannelStreamProc: