aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/event
diff options
context:
space:
mode:
authordundargoc <gocdundar@gmail.com>2023-12-18 10:55:23 +0100
committerdundargoc <33953936+dundargoc@users.noreply.github.com>2023-12-21 17:38:42 +0100
commitaf93a74a0f4afa9a3a4f55ffdf28141eaf776d22 (patch)
tree76068552bf3a74b4170ecd7b087905c96ddd6f8f /src/nvim/event
parentade42d531bcc9ca61facfb0524128a8a9f9b2444 (diff)
downloadrneovim-af93a74a0f4afa9a3a4f55ffdf28141eaf776d22.tar.gz
rneovim-af93a74a0f4afa9a3a4f55ffdf28141eaf776d22.tar.bz2
rneovim-af93a74a0f4afa9a3a4f55ffdf28141eaf776d22.zip
refactor: run IWYU on entire repo
Reference: https://github.com/neovim/neovim/issues/6371.
Diffstat (limited to 'src/nvim/event')
-rw-r--r--src/nvim/event/defs.h54
-rw-r--r--src/nvim/event/libuv_process.c2
-rw-r--r--src/nvim/event/libuv_process.h2
-rw-r--r--src/nvim/event/loop.c2
-rw-r--r--src/nvim/event/loop.h9
-rw-r--r--src/nvim/event/multiqueue.h47
-rw-r--r--src/nvim/event/process.h9
-rw-r--r--src/nvim/event/rstream.c5
-rw-r--r--src/nvim/event/rstream.h8
-rw-r--r--src/nvim/event/signal.c2
-rw-r--r--src/nvim/event/signal.h7
-rw-r--r--src/nvim/event/socket.c2
-rw-r--r--src/nvim/event/socket.h9
-rw-r--r--src/nvim/event/stream.c1
-rw-r--r--src/nvim/event/stream.h10
-rw-r--r--src/nvim/event/time.c1
-rw-r--r--src/nvim/event/time.h8
-rw-r--r--src/nvim/event/wstream.c2
-rw-r--r--src/nvim/event/wstream.h10
19 files changed, 76 insertions, 114 deletions
diff --git a/src/nvim/event/defs.h b/src/nvim/event/defs.h
index ffea388b9b..e19ad4c970 100644
--- a/src/nvim/event/defs.h
+++ b/src/nvim/event/defs.h
@@ -20,52 +20,6 @@ typedef struct {
typedef struct multiqueue MultiQueue;
typedef void (*PutCallback)(MultiQueue *multiq, void *data);
-#define multiqueue_put(q, h, ...) \
- do { \
- multiqueue_put_event(q, event_create(h, __VA_ARGS__)); \
- } while (0)
-
-#define CREATE_EVENT(multiqueue, handler, ...) \
- do { \
- if (multiqueue) { \
- multiqueue_put((multiqueue), (handler), __VA_ARGS__); \
- } else { \
- void *argv[] = { __VA_ARGS__ }; \
- (handler)(argv); \
- } \
- } while (0)
-
-// Poll for events until a condition or timeout
-#define LOOP_PROCESS_EVENTS_UNTIL(loop, multiqueue, timeout, condition) \
- do { \
- int64_t remaining = timeout; \
- uint64_t before = (remaining > 0) ? os_hrtime() : 0; \
- while (!(condition)) { \
- LOOP_PROCESS_EVENTS(loop, multiqueue, remaining); \
- if (remaining == 0) { \
- break; \
- } else if (remaining > 0) { \
- uint64_t now = os_hrtime(); \
- remaining -= (int64_t)((now - before) / 1000000); \
- before = now; \
- if (remaining <= 0) { \
- break; \
- } \
- } \
- } \
- } while (0)
-
-#define LOOP_PROCESS_EVENTS(loop, multiqueue, timeout) \
- do { \
- if (multiqueue && !multiqueue_empty(multiqueue)) { \
- multiqueue_process_events(multiqueue); \
- } else { \
- loop_poll_events(loop, timeout); \
- } \
- } while (0)
-
-struct signal_watcher;
-
typedef struct signal_watcher SignalWatcher;
typedef void (*signal_cb)(SignalWatcher *watcher, int signum, void *data);
typedef void (*signal_close_cb)(SignalWatcher *watcher, void *data);
@@ -78,8 +32,6 @@ struct signal_watcher {
MultiQueue *events;
};
-struct time_watcher;
-
typedef struct time_watcher TimeWatcher;
typedef void (*time_cb)(TimeWatcher *watcher, void *data);
@@ -91,8 +43,6 @@ struct time_watcher {
bool blockable;
};
-struct wbuffer;
-
typedef struct wbuffer WBuffer;
typedef void (*wbuffer_data_finalizer)(void *data);
@@ -102,8 +52,6 @@ struct wbuffer {
wbuffer_data_finalizer cb;
};
-struct stream;
-
typedef struct stream Stream;
/// Type of function called when the Stream buffer is filled with data
///
@@ -151,8 +99,6 @@ struct stream {
MultiQueue *events;
};
-struct socket_watcher;
-
#define ADDRESS_MAX_SIZE 256
typedef struct socket_watcher SocketWatcher;
diff --git a/src/nvim/event/libuv_process.c b/src/nvim/event/libuv_process.c
index 07c059423a..65132ec2b1 100644
--- a/src/nvim/event/libuv_process.c
+++ b/src/nvim/event/libuv_process.c
@@ -4,8 +4,8 @@
#include <uv.h>
#include "nvim/eval/typval.h"
-#include "nvim/event/defs.h"
#include "nvim/event/libuv_process.h"
+#include "nvim/event/loop.h"
#include "nvim/event/process.h"
#include "nvim/log.h"
#include "nvim/os/os.h"
diff --git a/src/nvim/event/libuv_process.h b/src/nvim/event/libuv_process.h
index e3e2bfeb76..3951bb6802 100644
--- a/src/nvim/event/libuv_process.h
+++ b/src/nvim/event/libuv_process.h
@@ -2,8 +2,8 @@
#include <uv.h>
-#include "nvim/event/loop.h"
#include "nvim/event/process.h"
+#include "nvim/types_defs.h"
typedef struct libuv_process {
Process process;
diff --git a/src/nvim/event/loop.c b/src/nvim/event/loop.c
index a2cb72771c..93948d3eaa 100644
--- a/src/nvim/event/loop.c
+++ b/src/nvim/event/loop.c
@@ -3,12 +3,12 @@
#include <stdlib.h>
#include <uv.h>
-#include "nvim/event/defs.h"
#include "nvim/event/loop.h"
#include "nvim/event/multiqueue.h"
#include "nvim/log.h"
#include "nvim/memory.h"
#include "nvim/os/time.h"
+#include "nvim/types_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/loop.c.generated.h"
diff --git a/src/nvim/event/loop.h b/src/nvim/event/loop.h
index b567df5456..adcde4c909 100644
--- a/src/nvim/event/loop.h
+++ b/src/nvim/event/loop.h
@@ -1,19 +1,18 @@
#pragma once
#include <stdbool.h>
-#include <stdint.h>
#include <uv.h>
#include "klib/klist.h"
-#include "nvim/event/multiqueue.h"
-#include "nvim/os/time.h"
+#include "nvim/event/defs.h" // IWYU pragma: export
+#include "nvim/types_defs.h" // IWYU pragma: keep
typedef void *WatcherPtr;
#define _NOOP(x)
KLIST_INIT(WatcherPtr, WatcherPtr, _NOOP)
-typedef struct loop {
+struct loop {
uv_loop_t uv;
MultiQueue *events;
MultiQueue *thread_events;
@@ -42,7 +41,7 @@ typedef struct loop {
uv_mutex_t mutex;
int recursive;
bool closing; ///< Set to true if loop_close() has been called
-} Loop;
+};
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/loop.h.generated.h"
diff --git a/src/nvim/event/multiqueue.h b/src/nvim/event/multiqueue.h
index 26e3bc1c30..a0cebcea1d 100644
--- a/src/nvim/event/multiqueue.h
+++ b/src/nvim/event/multiqueue.h
@@ -2,8 +2,53 @@
#include <stddef.h> // IWYU pragma: keep
-#include "nvim/event/defs.h" // IWYU pragma: keep
+#include "nvim/event/defs.h" // IWYU pragma: export
+#include "nvim/os/time.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/multiqueue.h.generated.h"
#endif
+
+#define multiqueue_put(q, h, ...) \
+ do { \
+ multiqueue_put_event(q, event_create(h, __VA_ARGS__)); \
+ } while (0)
+
+#define CREATE_EVENT(multiqueue, handler, ...) \
+ do { \
+ if (multiqueue) { \
+ multiqueue_put((multiqueue), (handler), __VA_ARGS__); \
+ } else { \
+ void *argv[] = { __VA_ARGS__ }; \
+ (handler)(argv); \
+ } \
+ } while (0)
+
+// Poll for events until a condition or timeout
+#define LOOP_PROCESS_EVENTS_UNTIL(loop, multiqueue, timeout, condition) \
+ do { \
+ int64_t remaining = timeout; \
+ uint64_t before = (remaining > 0) ? os_hrtime() : 0; \
+ while (!(condition)) { \
+ LOOP_PROCESS_EVENTS(loop, multiqueue, remaining); \
+ if (remaining == 0) { \
+ break; \
+ } else if (remaining > 0) { \
+ uint64_t now = os_hrtime(); \
+ remaining -= (int64_t)((now - before) / 1000000); \
+ before = now; \
+ if (remaining <= 0) { \
+ break; \
+ } \
+ } \
+ } \
+ } while (0)
+
+#define LOOP_PROCESS_EVENTS(loop, multiqueue, timeout) \
+ do { \
+ if (multiqueue && !multiqueue_empty(multiqueue)) { \
+ multiqueue_process_events(multiqueue); \
+ } else { \
+ loop_poll_events(loop, timeout); \
+ } \
+ } while (0)
diff --git a/src/nvim/event/process.h b/src/nvim/event/process.h
index 234fc815af..a18414a86a 100644
--- a/src/nvim/event/process.h
+++ b/src/nvim/event/process.h
@@ -5,13 +5,8 @@
#include <stdint.h>
#include "nvim/eval/typval_defs.h"
-#include "nvim/event/loop.h"
-#include "nvim/event/multiqueue.h"
-#include "nvim/event/rstream.h"
-#include "nvim/event/stream.h"
-#include "nvim/event/wstream.h"
-
-struct process;
+#include "nvim/event/defs.h" // IWYU pragma: export
+#include "nvim/types_defs.h"
typedef enum {
kProcessTypeUv,
diff --git a/src/nvim/event/rstream.c b/src/nvim/event/rstream.c
index df97b592e4..c70ddeefb0 100644
--- a/src/nvim/event/rstream.c
+++ b/src/nvim/event/rstream.c
@@ -2,11 +2,9 @@
#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>
-#include <sys/types.h>
#include <uv.h>
-#include "nvim/event/defs.h"
-#include "nvim/event/loop.h"
+#include "nvim/event/multiqueue.h"
#include "nvim/event/rstream.h"
#include "nvim/event/stream.h"
#include "nvim/log.h"
@@ -14,6 +12,7 @@
#include "nvim/main.h"
#include "nvim/os/os_defs.h"
#include "nvim/rbuffer.h"
+#include "nvim/types_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/rstream.c.generated.h"
diff --git a/src/nvim/event/rstream.h b/src/nvim/event/rstream.h
index b2a62acf83..3b04e5d435 100644
--- a/src/nvim/event/rstream.h
+++ b/src/nvim/event/rstream.h
@@ -1,11 +1,7 @@
#pragma once
-#include <stdbool.h>
-#include <stddef.h>
-#include <uv.h>
-
-#include "nvim/event/loop.h"
-#include "nvim/event/stream.h"
+#include "nvim/event/defs.h" // IWYU pragma: export
+#include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/rstream.h.generated.h"
diff --git a/src/nvim/event/signal.c b/src/nvim/event/signal.c
index 3a100812cf..57241e79b2 100644
--- a/src/nvim/event/signal.c
+++ b/src/nvim/event/signal.c
@@ -3,7 +3,9 @@
#include "nvim/event/defs.h"
#include "nvim/event/loop.h"
+#include "nvim/event/multiqueue.h"
#include "nvim/event/signal.h"
+#include "nvim/types_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/signal.c.generated.h"
diff --git a/src/nvim/event/signal.h b/src/nvim/event/signal.h
index 711797ca71..79784f1226 100644
--- a/src/nvim/event/signal.h
+++ b/src/nvim/event/signal.h
@@ -1,10 +1,7 @@
#pragma once
-#include <uv.h>
-
-#include "nvim/event/defs.h"
-#include "nvim/event/loop.h"
-#include "nvim/event/multiqueue.h"
+#include "nvim/event/defs.h" // IWYU pragma: export
+#include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/signal.h.generated.h"
diff --git a/src/nvim/event/socket.c b/src/nvim/event/socket.c
index 3c7b98bfe7..35db9150b3 100644
--- a/src/nvim/event/socket.c
+++ b/src/nvim/event/socket.c
@@ -9,6 +9,7 @@
#include "nvim/charset.h"
#include "nvim/event/defs.h"
#include "nvim/event/loop.h"
+#include "nvim/event/multiqueue.h"
#include "nvim/event/socket.h"
#include "nvim/event/stream.h"
#include "nvim/gettext.h"
@@ -18,6 +19,7 @@
#include "nvim/os/fs.h"
#include "nvim/os/os.h"
#include "nvim/path.h"
+#include "nvim/types_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/socket.c.generated.h"
diff --git a/src/nvim/event/socket.h b/src/nvim/event/socket.h
index 24ba361efa..8dd72234d2 100644
--- a/src/nvim/event/socket.h
+++ b/src/nvim/event/socket.h
@@ -1,12 +1,7 @@
#pragma once
-#include <uv.h>
-
-#include "nvim/event/defs.h"
-#include "nvim/event/loop.h"
-#include "nvim/event/multiqueue.h"
-#include "nvim/event/rstream.h"
-#include "nvim/event/wstream.h"
+#include "nvim/event/defs.h" // IWYU pragma: export
+#include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/socket.h.generated.h"
diff --git a/src/nvim/event/stream.c b/src/nvim/event/stream.c
index 886e93931b..0b9ed4f25b 100644
--- a/src/nvim/event/stream.c
+++ b/src/nvim/event/stream.c
@@ -9,6 +9,7 @@
#include "nvim/event/stream.h"
#include "nvim/log.h"
#include "nvim/rbuffer.h"
+#include "nvim/types_defs.h"
#ifdef MSWIN
# include "nvim/os/os_win_console.h"
#endif
diff --git a/src/nvim/event/stream.h b/src/nvim/event/stream.h
index 588aab12b0..f79c0ebaa3 100644
--- a/src/nvim/event/stream.h
+++ b/src/nvim/event/stream.h
@@ -1,13 +1,7 @@
#pragma once
-#include <stdbool.h>
-#include <stddef.h>
-#include <uv.h>
-
-#include "nvim/event/defs.h"
-#include "nvim/event/loop.h"
-#include "nvim/event/multiqueue.h"
-#include "nvim/rbuffer_defs.h"
+#include "nvim/event/defs.h" // IWYU pragma: export
+#include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/stream.h.generated.h"
diff --git a/src/nvim/event/time.c b/src/nvim/event/time.c
index de837fd278..861b15f6dd 100644
--- a/src/nvim/event/time.c
+++ b/src/nvim/event/time.c
@@ -6,6 +6,7 @@
#include "nvim/event/loop.h"
#include "nvim/event/multiqueue.h"
#include "nvim/event/time.h"
+#include "nvim/types_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/time.c.generated.h"
diff --git a/src/nvim/event/time.h b/src/nvim/event/time.h
index 85171f315a..0b684db897 100644
--- a/src/nvim/event/time.h
+++ b/src/nvim/event/time.h
@@ -1,11 +1,7 @@
#pragma once
-#include <stdbool.h>
-#include <uv.h>
-
-#include "nvim/event/defs.h"
-#include "nvim/event/loop.h"
-#include "nvim/event/multiqueue.h"
+#include "nvim/event/defs.h" // IWYU pragma: export
+#include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/time.h.generated.h"
diff --git a/src/nvim/event/wstream.c b/src/nvim/event/wstream.c
index 70cc5b6547..406ff1620d 100644
--- a/src/nvim/event/wstream.c
+++ b/src/nvim/event/wstream.c
@@ -4,11 +4,11 @@
#include <uv.h>
#include "nvim/event/defs.h"
-#include "nvim/event/loop.h"
#include "nvim/event/stream.h"
#include "nvim/event/wstream.h"
#include "nvim/macros_defs.h"
#include "nvim/memory.h"
+#include "nvim/types_defs.h"
#define DEFAULT_MAXMEM 1024 * 1024 * 2000
diff --git a/src/nvim/event/wstream.h b/src/nvim/event/wstream.h
index d61ab644f4..5994e6d700 100644
--- a/src/nvim/event/wstream.h
+++ b/src/nvim/event/wstream.h
@@ -1,13 +1,7 @@
#pragma once
-#include <stdbool.h>
-#include <stddef.h>
-#include <stdint.h>
-#include <uv.h>
-
-#include "nvim/event/defs.h"
-#include "nvim/event/loop.h"
-#include "nvim/event/stream.h"
+#include "nvim/event/defs.h" // IWYU pragma: export
+#include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/wstream.h.generated.h"