aboutsummaryrefslogtreecommitdiff
path: root/src/os/event_defs.h
diff options
context:
space:
mode:
authorThiago de Arruda <tpadilha84@gmail.com>2014-04-16 21:17:22 -0300
committerThiago de Arruda <tpadilha84@gmail.com>2014-04-18 16:11:59 -0300
commit350144f5113e111fea0d5b33589d6d478280f298 (patch)
treef4b171dab623dba155a171c519bf304085d89bff /src/os/event_defs.h
parentc40428c934534b44f847b62cad54c38169bbdb83 (diff)
downloadrneovim-350144f5113e111fea0d5b33589d6d478280f298.tar.gz
rneovim-350144f5113e111fea0d5b33589d6d478280f298.tar.bz2
rneovim-350144f5113e111fea0d5b33589d6d478280f298.zip
Create EventType for RStream reading
RStream will be the main way Neovim receives asynchronous messages, so it is best to have a specialized EventType for it. A new flag parameter was added to `rstream_new` which tells the RStream instance to defer event handling for later with KE_EVENT instead of handling it directly from libuv callback.
Diffstat (limited to 'src/os/event_defs.h')
-rw-r--r--src/os/event_defs.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/os/event_defs.h b/src/os/event_defs.h
index 8e00324ba6..5925a31718 100644
--- a/src/os/event_defs.h
+++ b/src/os/event_defs.h
@@ -6,7 +6,8 @@
typedef enum {
kEventSignal,
- kEventJobActivity
+ kEventJobActivity,
+ kEventRStreamData
} EventType;
typedef struct {
@@ -14,6 +15,10 @@ typedef struct {
union {
int signum;
struct {
+ RStream *ptr;
+ bool eof;
+ } rstream;
+ struct {
Job *ptr;
RStream *target;
bool from_stdout;