refactor(IWYU): fix headers

Remove `export` pramgas from defs headers as it causes IWYU to believe
that the definitions from the defs headers comes from main header, which
is not what we really want.
This commit is contained in:
dundargoc 2024-01-04 15:38:16 +01:00 committed by dundargoc
parent 1514982484
commit 1813661a61
246 changed files with 1136 additions and 635 deletions

View File

@ -14,13 +14,13 @@
{ include: [ '<bits/termios-c_iflag.h>', private, '<termios.h>', public ] }, { include: [ '<bits/termios-c_iflag.h>', private, '<termios.h>', public ] },
{ include: [ '<bits/termios-c_oflag.h>', private, '<termios.h>', public ] }, { include: [ '<bits/termios-c_oflag.h>', private, '<termios.h>', public ] },
{ include: [ '<sys/ttycom.h>', private, '<sys/ioctl.h>', public ] }, { include: [ '<sys/ttycom.h>', private, '<sys/ioctl.h>', public ] },
{ include: [ '<sys/unistd.h>', private, '<unistd.h>', public ] }, { include: [ '<sys/unistd.h>', private, '<unistd.h>', private ] },
{ symbol: ["SOCK_STREAM", private, "<sys/socket.h>", public ] }, { symbol: ["SOCK_STREAM", private, "<sys/socket.h>", public ] },
{ symbol: ["SSIZE_MAX", private, "<limits.h>", public ] }, { symbol: ["SSIZE_MAX", private, "<limits.h>", public ] },
{ symbol: ["S_IREAD", private, "<sys/stat.h>", public ] }, { symbol: ["S_IREAD", private, "<sys/stat.h>", public ] },
{ symbol: ["S_IWRITE", private, "<sys/stat.h>", public ] }, { symbol: ["S_IWRITE", private, "<sys/stat.h>", public ] },
{ symbol: ["_POSIX_VDISABLE", private, "<unistd.h>", public ] }, { symbol: ["_POSIX_VDISABLE", private, "<unistd.h>", private ] },
{ symbol: ["flock", private, "<sys/file.h>", public ] }, { symbol: ["flock", private, "<sys/file.h>", public ] },
{ symbol: ["iovec", private, "<sys/uio.h>", public ] }, { symbol: ["iovec", private, "<sys/uio.h>", public ] },
{ symbol: ["mode_t", private, "<sys/types.h>", public ] }, { symbol: ["mode_t", private, "<sys/types.h>", public ] },

View File

@ -853,17 +853,12 @@ def CheckIncludes(filename, lines, error):
check_includes_ignore = [ check_includes_ignore = [
"src/nvim/api/private/validate.h", "src/nvim/api/private/validate.h",
"src/nvim/assert_defs.h", "src/nvim/assert_defs.h",
"src/nvim/buffer.h",
"src/nvim/channel.h", "src/nvim/channel.h",
"src/nvim/charset.h", "src/nvim/charset.h",
"src/nvim/eval/encode.h",
"src/nvim/eval/typval.h", "src/nvim/eval/typval.h",
"src/nvim/eval/typval_defs.h",
"src/nvim/event/libuv_process.h",
"src/nvim/event/multiqueue.h", "src/nvim/event/multiqueue.h",
"src/nvim/garray.h", "src/nvim/garray.h",
"src/nvim/globals.h", "src/nvim/globals.h",
"src/nvim/grid.h",
"src/nvim/highlight.h", "src/nvim/highlight.h",
"src/nvim/lua/executor.h", "src/nvim/lua/executor.h",
"src/nvim/main.h", "src/nvim/main.h",
@ -872,18 +867,17 @@ def CheckIncludes(filename, lines, error):
"src/nvim/msgpack_rpc/unpacker.h", "src/nvim/msgpack_rpc/unpacker.h",
"src/nvim/option.h", "src/nvim/option.h",
"src/nvim/os/pty_conpty_win.h", "src/nvim/os/pty_conpty_win.h",
"src/nvim/os/pty_process_unix.h",
"src/nvim/os/pty_process_win.h", "src/nvim/os/pty_process_win.h",
"src/nvim/tui/input.h",
"src/nvim/viml/parser/expressions.h",
"src/nvim/viml/parser/parser.h",
] ]
skip_headers = [ skip_headers = [
"auto/config.h", "auto/config.h",
"klib/klist.h", "klib/klist.h",
"klib/kvec.h", "klib/kvec.h",
"mpack/mpack_core.h",
"mpack/object.h",
"nvim/func_attr.h", "nvim/func_attr.h",
"termkey/termkey.h",
] ]
for i in check_includes_ignore: for i in check_includes_ignore:

View File

@ -14,8 +14,11 @@
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/api/private/validate.h" #include "nvim/api/private/validate.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"

View File

@ -17,25 +17,32 @@
#include "nvim/api/private/validate.h" #include "nvim/api/private/validate.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/buffer_updates.h" #include "nvim/buffer_updates.h"
#include "nvim/change.h" #include "nvim/change.h"
#include "nvim/cursor.h" #include "nvim/cursor.h"
#include "nvim/drawscreen.h" #include "nvim/drawscreen.h"
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/extmark_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"
#include "nvim/mapping.h" #include "nvim/mapping.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memline_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/memory_defs.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/ops.h" #include "nvim/ops.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/state_defs.h" #include "nvim/state_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/undo.h" #include "nvim/undo.h"
#include "nvim/undo_defs.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -13,12 +13,14 @@
#include "nvim/api/private/validate.h" #include "nvim/api/private/validate.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/cmdexpand_defs.h" #include "nvim/cmdexpand_defs.h"
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"

View File

@ -6,20 +6,22 @@
#include "nvim/api/deprecated.h" #include "nvim/api/deprecated.h"
#include "nvim/api/extmark.h" #include "nvim/api/extmark.h"
#include "nvim/api/keysets_defs.h" #include "nvim/api/keysets_defs.h"
#include "nvim/api/options.h"
#include "nvim/api/private/defs.h" #include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/api/private/validate.h" #include "nvim/api/private/validate.h"
#include "nvim/api/vimscript.h" #include "nvim/api/vimscript.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/decoration.h" #include "nvim/decoration.h"
#include "nvim/decoration_defs.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/memory_defs.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"

View File

@ -20,6 +20,7 @@
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/marktree.h" #include "nvim/marktree.h"
#include "nvim/marktree_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memory.h" #include "nvim/memory.h"

View File

@ -9,14 +9,14 @@
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/api/private/validate.h" #include "nvim/api/private/validate.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/macros_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#include "nvim/window.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS
# include "api/options.c.generated.h" # include "api/options.c.generated.h"

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/api/private/defs.h" // IWYU pragma: export #include "nvim/api/private/defs.h" // IWYU pragma: keep
#include "nvim/eval/typval_defs.h" // IWYU pragma: keep #include "nvim/eval/typval_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -3,7 +3,7 @@
#include <stdbool.h> #include <stdbool.h>
#include <stdint.h> #include <stdint.h>
#include "nvim/api/private/defs.h" // IWYU pragma: export #include "nvim/api/private/defs.h" // IWYU pragma: keep
#include "nvim/memory_defs.h" #include "nvim/memory_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"

View File

@ -19,7 +19,7 @@
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/vars.h" #include "nvim/eval/vars.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/garray.h" #include "nvim/garray_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"
@ -27,11 +27,13 @@
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/memory_defs.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/msgpack_rpc/helpers.h" #include "nvim/msgpack_rpc/helpers.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_defs.h"
#include "nvim/version.h" #include "nvim/version.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -4,7 +4,7 @@
#include <stddef.h> #include <stddef.h>
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/api/private/defs.h" // IWYU pragma: export #include "nvim/api/private/defs.h" // IWYU pragma: keep
#include "nvim/buffer_defs.h" // IWYU pragma: keep #include "nvim/buffer_defs.h" // IWYU pragma: keep
#include "nvim/eval/typval_defs.h" // IWYU pragma: keep #include "nvim/eval/typval_defs.h" // IWYU pragma: keep
#include "nvim/ex_eval_defs.h" #include "nvim/ex_eval_defs.h"

View File

@ -3,7 +3,7 @@
#include <stdbool.h> #include <stdbool.h>
#include <stddef.h> #include <stddef.h>
#include "nvim/api/private/defs.h" // IWYU pragma: export #include "nvim/api/private/defs.h" // IWYU pragma: keep
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/assert_defs.h" #include "nvim/assert_defs.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"

View File

@ -13,20 +13,26 @@
#include "nvim/api/private/validate.h" #include "nvim/api/private/validate.h"
#include "nvim/api/ui.h" #include "nvim/api/ui.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/channel.h" #include "nvim/channel.h"
#include "nvim/channel_defs.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/event/defs.h"
#include "nvim/event/loop.h" #include "nvim/event/loop.h"
#include "nvim/event/multiqueue.h" #include "nvim/event/multiqueue.h"
#include "nvim/event/wstream.h" #include "nvim/event/wstream.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/grid_defs.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/main.h" #include "nvim/main.h"
#include "nvim/map_defs.h" #include "nvim/map_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/memory_defs.h"
#include "nvim/msgpack_rpc/channel.h" #include "nvim/msgpack_rpc/channel.h"
#include "nvim/msgpack_rpc/channel_defs.h"
#include "nvim/msgpack_rpc/helpers.h" #include "nvim/msgpack_rpc/helpers.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"

View File

@ -21,20 +21,26 @@
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/channel.h" #include "nvim/channel.h"
#include "nvim/channel_defs.h"
#include "nvim/context.h" #include "nvim/context.h"
#include "nvim/cursor.h" #include "nvim/cursor.h"
#include "nvim/decoration.h" #include "nvim/decoration.h"
#include "nvim/drawscreen.h" #include "nvim/drawscreen.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/getchar_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/grid_defs.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/keycodes.h" #include "nvim/keycodes.h"
#include "nvim/log.h" #include "nvim/log.h"
@ -42,15 +48,20 @@
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mapping.h" #include "nvim/mapping.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/memory_defs.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/message_defs.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/msgpack_rpc/channel.h" #include "nvim/msgpack_rpc/channel.h"
#include "nvim/msgpack_rpc/channel_defs.h"
#include "nvim/msgpack_rpc/unpacker.h" #include "nvim/msgpack_rpc/unpacker.h"
#include "nvim/ops.h" #include "nvim/ops.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/optionstr.h" #include "nvim/optionstr.h"
#include "nvim/os/input.h" #include "nvim/os/input.h"
@ -59,9 +70,11 @@
#include "nvim/popupmenu.h" #include "nvim/popupmenu.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/sign.h" #include "nvim/sign_defs.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/statusline.h" #include "nvim/statusline.h"
#include "nvim/statusline_defs.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/terminal.h" #include "nvim/terminal.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"

View File

@ -14,15 +14,18 @@
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/eval/userfunc.h" #include "nvim/eval/userfunc.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#include "nvim/viml/parser/expressions.h" #include "nvim/viml/parser/expressions.h"
#include "nvim/viml/parser/parser.h" #include "nvim/viml/parser/parser.h"
#include "nvim/viml/parser/parser_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS
# include "api/vimscript.c.generated.h" # include "api/vimscript.c.generated.h"

View File

@ -10,11 +10,13 @@
#include "nvim/api/win_config.h" #include "nvim/api/win_config.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/decoration.h" #include "nvim/decoration.h"
#include "nvim/decoration_defs.h"
#include "nvim/drawscreen.h" #include "nvim/drawscreen.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid.h" #include "nvim/grid_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
@ -25,6 +27,7 @@
#include "nvim/syntax.h" #include "nvim/syntax.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_defs.h"
#include "nvim/window.h" #include "nvim/window.h"
#include "nvim/winfloat.h" #include "nvim/winfloat.h"

View File

@ -15,10 +15,10 @@
#include "nvim/drawscreen.h" #include "nvim/drawscreen.h"
#include "nvim/eval/window.h" #include "nvim/eval/window.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"
#include "nvim/memory.h" #include "nvim/memory_defs.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/plines.h" #include "nvim/plines.h"

View File

@ -10,9 +10,11 @@
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cmdexpand_defs.h" #include "nvim/cmdexpand_defs.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/eval/window.h" #include "nvim/eval/window.h"
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds.h"
#include "nvim/ex_cmds2.h" #include "nvim/ex_cmds2.h"
@ -20,7 +22,8 @@
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/gettext.h" #include "nvim/garray_defs.h"
#include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mark.h" #include "nvim/mark.h"
@ -33,6 +36,7 @@
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/undo.h" #include "nvim/undo.h"
#include "nvim/version.h" #include "nvim/version.h"

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/arglist_defs.h" // IWYU pragma: export #include "nvim/arglist_defs.h" // IWYU pragma: keep
#include "nvim/cmdexpand_defs.h" // IWYU pragma: keep #include "nvim/cmdexpand_defs.h" // IWYU pragma: keep
#include "nvim/ex_cmds_defs.h" // IWYU pragma: keep #include "nvim/ex_cmds_defs.h" // IWYU pragma: keep

View File

@ -3,7 +3,6 @@
#include <stdbool.h> #include <stdbool.h>
#include "nvim/func_attr.h" #include "nvim/func_attr.h"
#include "nvim/macros_defs.h"
#include "nvim/os/os_defs.h" #include "nvim/os/os_defs.h"
// Definitions of various common control characters. // Definitions of various common control characters.

View File

@ -25,11 +25,13 @@
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/getchar_defs.h"
#include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/insexpand.h" #include "nvim/insexpand.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"
#include "nvim/main.h" #include "nvim/main.h"
@ -37,17 +39,22 @@
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/optionstr.h" #include "nvim/optionstr.h"
#include "nvim/os/input.h" #include "nvim/os/input.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/os/time.h" #include "nvim/os/time.h"
#include "nvim/os/time_defs.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/profile.h" #include "nvim/profile.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/runtime_defs.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"

View File

@ -6,7 +6,7 @@
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/api/private/defs.h" // IWYU pragma: keep #include "nvim/api/private/defs.h" // IWYU pragma: keep
#include "nvim/autocmd_defs.h" // IWYU pragma: export #include "nvim/autocmd_defs.h" // IWYU pragma: keep
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/cmdexpand_defs.h" // IWYU pragma: keep #include "nvim/cmdexpand_defs.h" // IWYU pragma: keep
#include "nvim/eval/typval_defs.h" // IWYU pragma: keep #include "nvim/eval/typval_defs.h" // IWYU pragma: keep

View File

@ -4,13 +4,8 @@
#include <stddef.h> #include <stddef.h>
#include <stdint.h> #include <stdint.h>
#include "klib/kvec.h"
#include "nvim/api/private/defs.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/regexp_defs.h"
#include "nvim/types_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS
# include "auevents_enum.generated.h" # include "auevents_enum.generated.h"

View File

@ -32,6 +32,7 @@
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/assert_defs.h" #include "nvim/assert_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_updates.h" #include "nvim/buffer_updates.h"
#include "nvim/change.h" #include "nvim/change.h"
@ -43,21 +44,26 @@
#include "nvim/digraph.h" #include "nvim/digraph.h"
#include "nvim/drawscreen.h" #include "nvim/drawscreen.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h"
#include "nvim/eval/vars.h" #include "nvim/eval/vars.h"
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds.h"
#include "nvim/ex_cmds2.h" #include "nvim/ex_cmds2.h"
#include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/ex_eval_defs.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/file_search.h" #include "nvim/file_search.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/hashtab_defs.h"
#include "nvim/help.h" #include "nvim/help.h"
#include "nvim/indent.h" #include "nvim/indent.h"
#include "nvim/indent_c.h" #include "nvim/indent_c.h"
@ -65,25 +71,33 @@
#include "nvim/map_defs.h" #include "nvim/map_defs.h"
#include "nvim/mapping.h" #include "nvim/mapping.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memfile_defs.h" #include "nvim/memfile_defs.h"
#include "nvim/memline.h"
#include "nvim/memline_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/normal.h" #include "nvim/normal.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/optionstr.h" #include "nvim/optionstr.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/fs_defs.h"
#include "nvim/os/input.h" #include "nvim/os/input.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/os/time.h" #include "nvim/os/time.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/plines.h" #include "nvim/plines.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/quickfix.h" #include "nvim/quickfix.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/runtime_defs.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/spell.h" #include "nvim/spell.h"
#include "nvim/state_defs.h" #include "nvim/state_defs.h"
@ -4137,3 +4151,49 @@ int buf_open_scratch(handle_T bufnr, char *bufname)
RESET_BINDING(curwin); RESET_BINDING(curwin);
return OK; return OK;
} }
bool buf_is_empty(buf_T *buf)
{
return buf->b_ml.ml_line_count == 1 && *ml_get_buf(buf, 1) == '\0';
}
/// Increment b:changedtick value
///
/// Also checks b: for consistency in case of debug build.
///
/// @param[in,out] buf Buffer to increment value in.
void buf_inc_changedtick(buf_T *const buf)
FUNC_ATTR_NONNULL_ALL
{
buf_set_changedtick(buf, buf_get_changedtick(buf) + 1);
}
/// Set b:changedtick, also checking b: for consistency in debug build
///
/// @param[out] buf Buffer to set changedtick in.
/// @param[in] changedtick New value.
void buf_set_changedtick(buf_T *const buf, const varnumber_T changedtick)
FUNC_ATTR_NONNULL_ALL
{
typval_T old_val = buf->changedtick_di.di_tv;
#ifndef NDEBUG
dictitem_T *const changedtick_di = tv_dict_find(buf->b_vars, S_LEN("changedtick"));
assert(changedtick_di != NULL);
assert(changedtick_di->di_tv.v_type == VAR_NUMBER);
assert(changedtick_di->di_tv.v_lock == VAR_FIXED);
// For some reason formatc does not like the below.
# ifndef UNIT_TESTING_LUA_PREPROCESSING
assert(changedtick_di->di_flags == (DI_FLAGS_RO|DI_FLAGS_FIX));
# endif
assert(changedtick_di == (dictitem_T *)&buf->changedtick_di);
#endif
buf->changedtick_di.di_tv.vval.v_number = changedtick;
if (tv_dict_is_watched(buf->b_vars)) {
tv_dict_watcher_notify(buf->b_vars,
(char *)buf->changedtick_di.di_key,
&buf->changedtick_di.di_tv,
&old_val);
}
}

View File

@ -1,14 +1,11 @@
#pragma once #pragma once
#include <assert.h> #include "nvim/buffer_defs.h" // IWYU pragma: keep
#include <stdbool.h> #include "nvim/eval/typval_defs.h"
#include <stddef.h> #include "nvim/ex_cmds_defs.h" // IWYU pragma: keep
#include "nvim/buffer_defs.h" // IWYU pragma: export
#include "nvim/eval/typval.h"
#include "nvim/func_attr.h" #include "nvim/func_attr.h"
#include "nvim/gettext_defs.h" // IWYU pragma: keep
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/memline.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
/// Values for buflist_getfile() /// Values for buflist_getfile()
@ -71,38 +68,6 @@ EXTERN char *msg_qflist INIT( = N_("[Quickfix List]"));
# include "buffer.h.generated.h" # include "buffer.h.generated.h"
#endif #endif
static inline void buf_set_changedtick(buf_T *buf, varnumber_T changedtick)
REAL_FATTR_NONNULL_ALL REAL_FATTR_ALWAYS_INLINE;
/// Set b:changedtick, also checking b: for consistency in debug build
///
/// @param[out] buf Buffer to set changedtick in.
/// @param[in] changedtick New value.
static inline void buf_set_changedtick(buf_T *const buf, const varnumber_T changedtick)
{
typval_T old_val = buf->changedtick_di.di_tv;
#ifndef NDEBUG
dictitem_T *const changedtick_di = tv_dict_find(buf->b_vars, S_LEN("changedtick"));
assert(changedtick_di != NULL);
assert(changedtick_di->di_tv.v_type == VAR_NUMBER);
assert(changedtick_di->di_tv.v_lock == VAR_FIXED);
// For some reason formatc does not like the below.
# ifndef UNIT_TESTING_LUA_PREPROCESSING
assert(changedtick_di->di_flags == (DI_FLAGS_RO|DI_FLAGS_FIX));
# endif
assert(changedtick_di == (dictitem_T *)&buf->changedtick_di);
#endif
buf->changedtick_di.di_tv.vval.v_number = changedtick;
if (tv_dict_is_watched(buf->b_vars)) {
tv_dict_watcher_notify(buf->b_vars,
(char *)buf->changedtick_di.di_key,
&buf->changedtick_di.di_tv,
&old_val);
}
}
static inline varnumber_T buf_get_changedtick(const buf_T *buf) static inline varnumber_T buf_get_changedtick(const buf_T *buf)
REAL_FATTR_NONNULL_ALL REAL_FATTR_ALWAYS_INLINE REAL_FATTR_PURE REAL_FATTR_NONNULL_ALL REAL_FATTR_ALWAYS_INLINE REAL_FATTR_PURE
REAL_FATTR_WARN_UNUSED_RESULT; REAL_FATTR_WARN_UNUSED_RESULT;
@ -116,21 +81,3 @@ static inline varnumber_T buf_get_changedtick(const buf_T *const buf)
{ {
return buf->changedtick_di.di_tv.vval.v_number; return buf->changedtick_di.di_tv.vval.v_number;
} }
static inline void buf_inc_changedtick(buf_T *buf)
REAL_FATTR_NONNULL_ALL REAL_FATTR_ALWAYS_INLINE;
/// Increment b:changedtick value
///
/// Also checks b: for consistency in case of debug build.
///
/// @param[in,out] buf Buffer to increment value in.
static inline void buf_inc_changedtick(buf_T *const buf)
{
buf_set_changedtick(buf, buf_get_changedtick(buf) + 1);
}
static inline bool buf_is_empty(buf_T *buf)
{
return buf->b_ml.ml_line_count == 1 && *ml_get_buf(buf, 1) == '\0';
}

View File

@ -4,27 +4,14 @@
#include <stdint.h> #include <stdint.h>
#include <stdio.h> #include <stdio.h>
#include "klib/kvec.h"
#include "nvim/api/private/defs.h"
#include "nvim/arglist_defs.h" #include "nvim/arglist_defs.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/extmark_defs.h"
#include "nvim/garray_defs.h"
#include "nvim/grid_defs.h" #include "nvim/grid_defs.h"
#include "nvim/hashtab_defs.h"
#include "nvim/highlight_defs.h"
#include "nvim/map_defs.h"
#include "nvim/mapping_defs.h" #include "nvim/mapping_defs.h"
#include "nvim/mark_defs.h"
#include "nvim/marktree_defs.h" #include "nvim/marktree_defs.h"
#include "nvim/memline_defs.h" #include "nvim/memline_defs.h"
#include "nvim/option_defs.h" #include "nvim/option_defs.h"
#include "nvim/os/fs_defs.h" #include "nvim/os/fs_defs.h"
#include "nvim/pos_defs.h"
#include "nvim/regexp_defs.h"
#include "nvim/sign_defs.h"
#include "nvim/statusline_defs.h" #include "nvim/statusline_defs.h"
#include "nvim/types_defs.h"
#include "nvim/undo_defs.h" #include "nvim/undo_defs.h"
/// Reference to a buffer that stores the value of buf_free_count. /// Reference to a buffer that stores the value of buf_free_count.

View File

@ -5,6 +5,7 @@
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/api/buffer.h" #include "nvim/api/buffer.h"
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/assert_defs.h" #include "nvim/assert_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"

View File

@ -12,7 +12,9 @@
#include "auto/config.h" #include "auto/config.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/bufwrite.h" #include "nvim/bufwrite.h"
#include "nvim/change.h" #include "nvim/change.h"
#include "nvim/drawscreen.h" #include "nvim/drawscreen.h"
@ -22,19 +24,22 @@
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/iconv_defs.h" #include "nvim/iconv_defs.h"
#include "nvim/input.h" #include "nvim/input.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memline_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/fs_defs.h"
#include "nvim/os/input.h" #include "nvim/os/input.h"
#include "nvim/os/os_defs.h" #include "nvim/os/os_defs.h"
#include "nvim/path.h" #include "nvim/path.h"
@ -44,6 +49,7 @@
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/undo.h" #include "nvim/undo.h"
#include "nvim/undo_defs.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
static const char *err_readonly = "is read-only (cannot override: \"W\" in 'cpoptions')"; static const char *err_readonly = "is read-only (cannot override: \"W\" in 'cpoptions')";

View File

@ -8,7 +8,9 @@
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/assert_defs.h" #include "nvim/assert_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/buffer_updates.h" #include "nvim/buffer_updates.h"
#include "nvim/change.h" #include "nvim/change.h"
#include "nvim/charset.h" #include "nvim/charset.h"
@ -19,17 +21,22 @@
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/extmark_defs.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/indent.h" #include "nvim/indent.h"
#include "nvim/indent_c.h" #include "nvim/indent_c.h"
#include "nvim/insexpand.h" #include "nvim/insexpand.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/mbyte_defs.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memline_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/move.h" #include "nvim/move.h"
@ -41,6 +48,7 @@
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/spell.h" #include "nvim/spell.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/textformat.h" #include "nvim/textformat.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"

View File

@ -7,8 +7,10 @@
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/api/private/converter.h" #include "nvim/api/private/converter.h"
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/channel.h" #include "nvim/channel.h"
#include "nvim/eval.h" #include "nvim/eval.h"
@ -16,12 +18,13 @@
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/event/loop.h" #include "nvim/event/loop.h"
#include "nvim/event/multiqueue.h" #include "nvim/event/multiqueue.h"
#include "nvim/event/process.h"
#include "nvim/event/rstream.h" #include "nvim/event/rstream.h"
#include "nvim/event/socket.h" #include "nvim/event/socket.h"
#include "nvim/event/stream.h" #include "nvim/event/stream.h"
#include "nvim/event/wstream.h" #include "nvim/event/wstream.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/log.h" #include "nvim/log.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"
@ -35,6 +38,7 @@
#include "nvim/os/shell.h" #include "nvim/os/shell.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/rbuffer.h" #include "nvim/rbuffer.h"
#include "nvim/rbuffer_defs.h"
#include "nvim/terminal.h" #include "nvim/terminal.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"

View File

@ -4,10 +4,10 @@
#include <stdint.h> #include <stdint.h>
#include <stdlib.h> #include <stdlib.h>
#include "nvim/channel_defs.h" // IWYU pragma: export #include "nvim/channel_defs.h" // IWYU pragma: keep
#include "nvim/eval/typval_defs.h" #include "nvim/eval/typval_defs.h"
#include "nvim/event/defs.h"
#include "nvim/event/libuv_process.h" #include "nvim/event/libuv_process.h"
#include "nvim/event/process.h"
#include "nvim/func_attr.h" #include "nvim/func_attr.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/map_defs.h" #include "nvim/map_defs.h"

View File

@ -3,13 +3,7 @@
#include <stdint.h> #include <stdint.h>
#include <stdlib.h> #include <stdlib.h>
#include "nvim/eval/typval_defs.h"
#include "nvim/event/defs.h" #include "nvim/event/defs.h"
#include "nvim/garray_defs.h"
#include "nvim/macros_defs.h"
#include "nvim/map_defs.h"
#include "nvim/msgpack_rpc/channel_defs.h"
#include "nvim/types_defs.h"
#define CHAN_STDIO 1 #define CHAN_STDIO 1
#define CHAN_STDERR 2 #define CHAN_STDERR 2

View File

@ -18,6 +18,7 @@
#include "nvim/cursor.h" #include "nvim/cursor.h"
#include "nvim/eval/typval_defs.h" #include "nvim/eval/typval_defs.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/keycodes.h" #include "nvim/keycodes.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"

View File

@ -8,11 +8,13 @@
#include <string.h> #include <string.h>
#include <uv.h> #include <uv.h>
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/arglist.h" #include "nvim/arglist.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cmdexpand.h" #include "nvim/cmdexpand.h"
#include "nvim/cmdhist.h" #include "nvim/cmdhist.h"
@ -23,17 +25,20 @@
#include "nvim/eval/typval_defs.h" #include "nvim/eval/typval_defs.h"
#include "nvim/eval/userfunc.h" #include "nvim/eval/userfunc.h"
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds.h"
#include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h" #include "nvim/garray_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/hashtab_defs.h"
#include "nvim/help.h" #include "nvim/help.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/keycodes.h" #include "nvim/keycodes.h"
#include "nvim/log.h" #include "nvim/log.h"
@ -41,6 +46,7 @@
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mapping.h" #include "nvim/mapping.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/mbyte_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/menu.h" #include "nvim/menu.h"
#include "nvim/message.h" #include "nvim/message.h"
@ -49,11 +55,13 @@
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/lang.h" #include "nvim/os/lang.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/popupmenu.h" #include "nvim/popupmenu.h"
#include "nvim/profile.h" #include "nvim/profile.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/runtime_defs.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/sign.h" #include "nvim/sign.h"
#include "nvim/statusline.h" #include "nvim/statusline.h"
@ -62,6 +70,7 @@
#include "nvim/tag.h" #include "nvim/tag.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_defs.h"
#include "nvim/usercmd.h" #include "nvim/usercmd.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#include "nvim/window.h" #include "nvim/window.h"

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/cmdexpand_defs.h" // IWYU pragma: export #include "nvim/cmdexpand_defs.h" // IWYU pragma: keep
#include "nvim/eval/typval_defs.h" // IWYU pragma: keep #include "nvim/eval/typval_defs.h" // IWYU pragma: keep
#include "nvim/ex_getln_defs.h" // IWYU pragma: keep #include "nvim/ex_getln_defs.h" // IWYU pragma: keep
#include "nvim/garray_defs.h" // IWYU pragma: keep #include "nvim/garray_defs.h" // IWYU pragma: keep

View File

@ -4,7 +4,6 @@
#include <stddef.h> #include <stddef.h>
#include "nvim/eval/typval_defs.h" #include "nvim/eval/typval_defs.h"
#include "nvim/types_defs.h"
typedef enum { typedef enum {
XP_PREFIX_NONE, ///< prefix not used XP_PREFIX_NONE, ///< prefix not used

View File

@ -15,7 +15,7 @@
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds.h"
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
@ -23,6 +23,7 @@
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/os/time.h" #include "nvim/os/time.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"

View File

@ -14,12 +14,14 @@
#include "nvim/context.h" #include "nvim/context.h"
#include "nvim/eval/encode.h" #include "nvim/eval/encode.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/eval/userfunc.h" #include "nvim/eval/userfunc.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/keycodes.h" #include "nvim/keycodes.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/shada.h" #include "nvim/shada.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -21,6 +21,7 @@
#include "nvim/plines.h" #include "nvim/plines.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"

View File

@ -8,7 +8,7 @@
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cursor_shape.h" #include "nvim/cursor_shape.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/log.h" #include "nvim/log.h"

View File

@ -15,23 +15,28 @@
#include "nvim/drawscreen.h" #include "nvim/drawscreen.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/getchar_defs.h"
#include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/keycodes.h" #include "nvim/keycodes.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/runtime_defs.h"
#include "nvim/state_defs.h" #include "nvim/state_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"

View File

@ -5,6 +5,7 @@
#include <string.h> #include <string.h>
#include "nvim/api/extmark.h" #include "nvim/api/extmark.h"
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
@ -13,6 +14,7 @@
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/grid_defs.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/map_defs.h" #include "nvim/map_defs.h"

View File

@ -5,7 +5,7 @@
#include <stdint.h> #include <stdint.h>
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/decoration_defs.h" // IWYU pragma: export #include "nvim/decoration_defs.h" // IWYU pragma: keep
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/marktree_defs.h" #include "nvim/marktree_defs.h"
#include "nvim/pos_defs.h" // IWYU pragma: keep #include "nvim/pos_defs.h" // IWYU pragma: keep

View File

@ -5,6 +5,7 @@
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/api/extmark.h" #include "nvim/api/extmark.h"
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/decoration.h" #include "nvim/decoration.h"

View File

@ -18,6 +18,7 @@
#include "auto/config.h" #include "auto/config.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/bufwrite.h" #include "nvim/bufwrite.h"
#include "nvim/change.h" #include "nvim/change.h"
@ -30,24 +31,30 @@
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/extmark_defs.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/gettext.h" #include "nvim/garray_defs.h"
#include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/linematch.h" #include "nvim/linematch.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/mbyte_defs.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/normal.h" #include "nvim/normal.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/optionstr.h" #include "nvim/optionstr.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/fs_defs.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/os/shell.h" #include "nvim/os/shell.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"

View File

@ -19,12 +19,14 @@
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/keycodes.h" #include "nvim/keycodes.h"
#include "nvim/mapping.h" #include "nvim/mapping.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/mbyte_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/normal.h" #include "nvim/normal.h"

View File

@ -11,6 +11,7 @@
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cursor.h" #include "nvim/cursor.h"
#include "nvim/cursor_shape.h" #include "nvim/cursor_shape.h"
@ -25,10 +26,12 @@
#include "nvim/fold_defs.h" #include "nvim/fold_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/grid_defs.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/indent.h" #include "nvim/indent.h"
#include "nvim/mark.h" #include "nvim/mark_defs.h"
#include "nvim/match.h" #include "nvim/match.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memline.h" #include "nvim/memline.h"
@ -40,15 +43,18 @@
#include "nvim/plines.h" #include "nvim/plines.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/quickfix.h" #include "nvim/quickfix.h"
#include "nvim/sign.h" #include "nvim/sign_defs.h"
#include "nvim/spell.h" #include "nvim/spell.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/statusline.h" #include "nvim/statusline.h"
#include "nvim/statusline_defs.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/syntax.h" #include "nvim/syntax.h"
#include "nvim/terminal.h" #include "nvim/terminal.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_defs.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#define MB_FILLER_CHAR '<' // character used when a double-width character doesn't fit. #define MB_FILLER_CHAR '<' // character used when a double-width character doesn't fit.

View File

@ -63,11 +63,13 @@
#include "nvim/api/private/defs.h" #include "nvim/api/private/defs.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cmdexpand.h" #include "nvim/cmdexpand.h"
#include "nvim/cursor.h" #include "nvim/cursor.h"
#include "nvim/decoration.h" #include "nvim/decoration.h"
#include "nvim/decoration_defs.h"
#include "nvim/decoration_provider.h" #include "nvim/decoration_provider.h"
#include "nvim/diff.h" #include "nvim/diff.h"
#include "nvim/digraph.h" #include "nvim/digraph.h"
@ -76,11 +78,14 @@
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/fold_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/grid_defs.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/insexpand.h" #include "nvim/insexpand.h"
#include "nvim/match.h" #include "nvim/match.h"
@ -89,6 +94,7 @@
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/normal.h" #include "nvim/normal.h"
#include "nvim/normal_defs.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/os/os_defs.h" #include "nvim/os/os_defs.h"
@ -100,6 +106,7 @@
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/spell.h" #include "nvim/spell.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/statusline.h" #include "nvim/statusline.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/syntax.h" #include "nvim/syntax.h"
@ -107,6 +114,7 @@
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_compositor.h" #include "nvim/ui_compositor.h"
#include "nvim/ui_defs.h"
#include "nvim/version.h" #include "nvim/version.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#include "nvim/window.h" #include "nvim/window.h"

View File

@ -11,6 +11,7 @@
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h" #include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/change.h" #include "nvim/change.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cursor.h" #include "nvim/cursor.h"
@ -22,13 +23,15 @@
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/extmark_defs.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/indent.h" #include "nvim/indent.h"
#include "nvim/indent_c.h" #include "nvim/indent_c.h"
@ -37,13 +40,16 @@
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mapping.h" #include "nvim/mapping.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/mbyte_defs.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/mouse.h" #include "nvim/mouse.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/normal.h" #include "nvim/normal.h"
#include "nvim/normal_defs.h"
#include "nvim/ops.h" #include "nvim/ops.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
@ -53,6 +59,7 @@
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/syntax.h" #include "nvim/syntax.h"
#include "nvim/terminal.h" #include "nvim/terminal.h"
@ -60,6 +67,7 @@
#include "nvim/textobject.h" #include "nvim/textobject.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_defs.h"
#include "nvim/undo.h" #include "nvim/undo.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#include "nvim/window.h" #include "nvim/window.h"

View File

@ -11,10 +11,12 @@
#include "auto/config.h" #include "auto/config.h"
#include "nvim/api/private/converter.h" #include "nvim/api/private/converter.h"
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/channel.h" #include "nvim/channel.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cmdexpand_defs.h" #include "nvim/cmdexpand_defs.h"
@ -37,20 +39,22 @@
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid_defs.h" #include "nvim/grid_defs.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/insexpand.h" #include "nvim/insexpand.h"
#include "nvim/keycodes.h" #include "nvim/keycodes.h"
#include "nvim/lib/queue.h" #include "nvim/lib/queue_defs.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/main.h" #include "nvim/main.h"
#include "nvim/map_defs.h" #include "nvim/map_defs.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memory.h" #include "nvim/memory.h"
@ -63,8 +67,10 @@
#include "nvim/optionstr.h" #include "nvim/optionstr.h"
#include "nvim/os/fileio.h" #include "nvim/os/fileio.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/fs_defs.h"
#include "nvim/os/lang.h" #include "nvim/os/lang.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/os/shell.h" #include "nvim/os/shell.h"
#include "nvim/os/stdpaths_defs.h" #include "nvim/os/stdpaths_defs.h"
#include "nvim/path.h" #include "nvim/path.h"
@ -72,13 +78,16 @@
#include "nvim/profile.h" #include "nvim/profile.h"
#include "nvim/quickfix.h" #include "nvim/quickfix.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/runtime_defs.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/tag.h" #include "nvim/tag.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_compositor.h" #include "nvim/ui_compositor.h"
#include "nvim/ui_defs.h"
#include "nvim/usercmd.h" #include "nvim/usercmd.h"
#include "nvim/version.h" #include "nvim/version.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"

View File

@ -7,7 +7,7 @@
#include "nvim/channel_defs.h" // IWYU pragma: keep #include "nvim/channel_defs.h" // IWYU pragma: keep
#include "nvim/cmdexpand_defs.h" // IWYU pragma: keep #include "nvim/cmdexpand_defs.h" // IWYU pragma: keep
#include "nvim/eval/typval_defs.h" #include "nvim/eval/typval_defs.h"
#include "nvim/eval_defs.h" // IWYU pragma: export #include "nvim/eval_defs.h" // IWYU pragma: keep
#include "nvim/event/defs.h" #include "nvim/event/defs.h"
#include "nvim/ex_cmds_defs.h" // IWYU pragma: keep #include "nvim/ex_cmds_defs.h" // IWYU pragma: keep
#include "nvim/grid_defs.h" // IWYU pragma: keep #include "nvim/grid_defs.h" // IWYU pragma: keep

View File

@ -5,6 +5,7 @@
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/change.h" #include "nvim/change.h"

View File

@ -14,8 +14,9 @@
#include "nvim/eval/encode.h" #include "nvim/eval/encode.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h" #include "nvim/eval/typval_defs.h"
#include "nvim/eval_defs.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memory.h" #include "nvim/memory.h"

View File

@ -20,7 +20,7 @@
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_encode.h" #include "nvim/eval/typval_encode.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
@ -1056,3 +1056,17 @@ char *encode_tv2json(typval_T *tv, size_t *len)
#undef TYPVAL_ENCODE_CONV_LIST_BETWEEN_ITEMS #undef TYPVAL_ENCODE_CONV_LIST_BETWEEN_ITEMS
#undef TYPVAL_ENCODE_CONV_RECURSE #undef TYPVAL_ENCODE_CONV_RECURSE
#undef TYPVAL_ENCODE_ALLOW_SPECIALS #undef TYPVAL_ENCODE_ALLOW_SPECIALS
/// Initialize ListReaderState structure
ListReaderState encode_init_lrstate(const list_T *const list)
FUNC_ATTR_NONNULL_ALL
{
return (ListReaderState) {
.list = list,
.li = tv_list_first(list),
.offset = 0,
.li_length = (TV_LIST_ITEM_TV(tv_list_first(list))->vval.v_string == NULL
? 0
: strlen(TV_LIST_ITEM_TV(tv_list_first(list))->vval.v_string)),
};
}

View File

@ -3,8 +3,7 @@
#include <msgpack/pack.h> #include <msgpack/pack.h>
#include <string.h> #include <string.h>
#include "nvim/eval/typval.h" #include "nvim/eval/typval_defs.h"
#include "nvim/func_attr.h"
#include "nvim/garray_defs.h" #include "nvim/garray_defs.h"
/// Convert Vimscript value to msgpack string /// Convert Vimscript value to msgpack string
@ -33,22 +32,6 @@ typedef struct {
size_t li_length; ///< Length of the string inside the read item. size_t li_length; ///< Length of the string inside the read item.
} ListReaderState; } ListReaderState;
static inline ListReaderState encode_init_lrstate(const list_T *list)
REAL_FATTR_NONNULL_ALL;
/// Initialize ListReaderState structure
static inline ListReaderState encode_init_lrstate(const list_T *const list)
{
return (ListReaderState) {
.list = list,
.li = tv_list_first(list),
.offset = 0,
.li_length = (TV_LIST_ITEM_TV(tv_list_first(list))->vval.v_string == NULL
? 0
: strlen(TV_LIST_ITEM_TV(tv_list_first(list))->vval.v_string)),
};
}
/// Array mapping values from SpecialVarValue enum to names /// Array mapping values from SpecialVarValue enum to names
extern const char *const encode_bool_var_names[]; extern const char *const encode_bool_var_names[];
extern const char *const encode_special_var_names[]; extern const char *const encode_special_var_names[];

View File

@ -6,7 +6,7 @@
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h" #include "nvim/eval/typval_defs.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/strings.h" #include "nvim/strings.h"

View File

@ -19,14 +19,18 @@
#include "auto/config.h" #include "auto/config.h"
#include "nvim/api/private/converter.h" #include "nvim/api/private/converter.h"
#include "nvim/api/private/defs.h"
#include "nvim/api/private/dispatch.h" #include "nvim/api/private/dispatch.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/api/vim.h" #include "nvim/api/vim.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/assert_defs.h" #include "nvim/assert_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/channel.h" #include "nvim/channel.h"
#include "nvim/channel_defs.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cmdexpand.h" #include "nvim/cmdexpand.h"
#include "nvim/cmdexpand_defs.h" #include "nvim/cmdexpand_defs.h"
@ -45,21 +49,26 @@
#include "nvim/eval/userfunc.h" #include "nvim/eval/userfunc.h"
#include "nvim/eval/vars.h" #include "nvim/eval/vars.h"
#include "nvim/eval/window.h" #include "nvim/eval/window.h"
#include "nvim/event/defs.h"
#include "nvim/event/loop.h" #include "nvim/event/loop.h"
#include "nvim/event/multiqueue.h" #include "nvim/event/multiqueue.h"
#include "nvim/event/process.h" #include "nvim/event/process.h"
#include "nvim/event/time.h" #include "nvim/event/time.h"
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds.h"
#include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/file_search.h" #include "nvim/file_search.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/getchar_defs.h"
#include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/grid.h" #include "nvim/grid.h"
#include "nvim/grid_defs.h"
#include "nvim/highlight_defs.h" #include "nvim/highlight_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/indent.h" #include "nvim/indent.h"
@ -71,24 +80,34 @@
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/main.h" #include "nvim/main.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/math.h" #include "nvim/math.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/mbyte_defs.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/memory_defs.h"
#include "nvim/menu.h" #include "nvim/menu.h"
#include "nvim/menu_defs.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/msgpack_rpc/channel.h" #include "nvim/msgpack_rpc/channel.h"
#include "nvim/msgpack_rpc/channel_defs.h"
#include "nvim/msgpack_rpc/server.h" #include "nvim/msgpack_rpc/server.h"
#include "nvim/normal.h" #include "nvim/normal.h"
#include "nvim/normal_defs.h"
#include "nvim/ops.h" #include "nvim/ops.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/optionstr.h" #include "nvim/optionstr.h"
#include "nvim/os/dl.h" #include "nvim/os/dl.h"
#include "nvim/os/fileio.h" #include "nvim/os/fileio.h"
#include "nvim/os/fileio_defs.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/fs_defs.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/os/pty_process.h" #include "nvim/os/pty_process.h"
#include "nvim/os/shell.h" #include "nvim/os/shell.h"
#include "nvim/os/stdpaths_defs.h" #include "nvim/os/stdpaths_defs.h"
@ -99,12 +118,15 @@
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/profile.h" #include "nvim/profile.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/runtime_defs.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/sha256.h" #include "nvim/sha256.h"
#include "nvim/spell.h" #include "nvim/spell.h"
#include "nvim/spellsuggest.h" #include "nvim/spellsuggest.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/syntax.h" #include "nvim/syntax.h"
#include "nvim/tag.h" #include "nvim/tag.h"

View File

@ -19,10 +19,12 @@
#include "nvim/eval/userfunc.h" #include "nvim/eval/userfunc.h"
#include "nvim/eval/vars.h" #include "nvim/eval/vars.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/gettext.h" #include "nvim/garray_defs.h"
#include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/lib/queue.h" #include "nvim/hashtab_defs.h"
#include "nvim/lib/queue_defs.h"
#include "nvim/lua/executor.h" #include "nvim/lua/executor.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"

View File

@ -6,11 +6,11 @@
#include <stdint.h> #include <stdint.h>
#include <string.h> #include <string.h>
#include "nvim/eval/typval_defs.h" // IWYU pragma: export #include "nvim/eval/typval_defs.h" // IWYU pragma: keep
#include "nvim/func_attr.h" #include "nvim/func_attr.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/lib/queue.h" #include "nvim/lib/queue_defs.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mbyte_defs.h" // IWYU pragma: keep #include "nvim/mbyte_defs.h" // IWYU pragma: keep
#include "nvim/message.h" #include "nvim/message.h"

View File

@ -2,10 +2,11 @@
#include <inttypes.h> #include <inttypes.h>
#include <limits.h> #include <limits.h>
#include <stdbool.h>
#include "nvim/garray_defs.h" #include "nvim/garray_defs.h"
#include "nvim/hashtab_defs.h" #include "nvim/hashtab_defs.h"
#include "nvim/lib/queue.h" #include "nvim/lib/queue_defs.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"

View File

@ -10,6 +10,7 @@
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cmdexpand_defs.h" #include "nvim/cmdexpand_defs.h"
@ -23,10 +24,13 @@
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/ex_eval_defs.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/getchar_defs.h"
#include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/insexpand.h" #include "nvim/insexpand.h"
@ -41,11 +45,13 @@
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/profile.h" #include "nvim/profile.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_defs.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -11,6 +11,7 @@
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/drawscreen.h" #include "nvim/drawscreen.h"
@ -18,15 +19,17 @@
#include "nvim/eval/encode.h" #include "nvim/eval/encode.h"
#include "nvim/eval/funcs.h" #include "nvim/eval/funcs.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/eval/userfunc.h" #include "nvim/eval/userfunc.h"
#include "nvim/eval/vars.h" #include "nvim/eval/vars.h"
#include "nvim/eval/window.h" #include "nvim/eval/window.h"
#include "nvim/eval_defs.h"
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds.h"
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/hashtab.h" #include "nvim/hashtab.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"

View File

@ -15,10 +15,11 @@
#include "nvim/eval/typval_defs.h" #include "nvim/eval/typval_defs.h"
#include "nvim/eval/window.h" #include "nvim/eval/window.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/gettext.h" #include "nvim/garray_defs.h"
#include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mark.h" #include "nvim/mark_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/move.h" #include "nvim/move.h"

View File

@ -6,7 +6,7 @@
#include "nvim/eval/typval_defs.h" // IWYU pragma: keep #include "nvim/eval/typval_defs.h" // IWYU pragma: keep
#include "nvim/os/os_defs.h" #include "nvim/os/os_defs.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h"
/// Structure used by switch_win() to pass values to restore_win() /// Structure used by switch_win() to pass values to restore_win()
typedef struct { typedef struct {

View File

@ -5,7 +5,9 @@
#include <stdbool.h> #include <stdbool.h>
#include <uv.h> #include <uv.h>
#include "nvim/eval/typval_defs.h"
#include "nvim/rbuffer_defs.h" #include "nvim/rbuffer_defs.h"
#include "nvim/types_defs.h"
enum { EVENT_HANDLER_MAX_ARGC = 10, }; enum { EVENT_HANDLER_MAX_ARGC = 10, };
@ -124,3 +126,31 @@ struct socket_watcher {
socket_close_cb close_cb; socket_close_cb close_cb;
MultiQueue *events; MultiQueue *events;
}; };
typedef enum {
kProcessTypeUv,
kProcessTypePty,
} ProcessType;
typedef struct process Process;
typedef void (*process_exit_cb)(Process *proc, int status, void *data);
typedef void (*internal_process_cb)(Process *proc);
struct process {
ProcessType type;
Loop *loop;
void *data;
int pid, status, refcount;
uint8_t exit_signal; // Signal used when killing (on Windows).
uint64_t stopped_time; // process_stop() timestamp
const char *cwd;
char **argv;
const char *exepath;
dict_T *env;
Stream in, out, err;
/// Exit handler. If set, user must call process_free().
process_exit_cb cb;
internal_process_cb internal_exit_cb, internal_close_cb;
bool closed, detach, overlapped, fwd_err;
MultiQueue *events;
};

View File

@ -4,11 +4,14 @@
#include <uv.h> #include <uv.h>
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/event/defs.h"
#include "nvim/event/libuv_process.h" #include "nvim/event/libuv_process.h"
#include "nvim/event/loop.h" #include "nvim/event/loop.h"
#include "nvim/event/process.h" #include "nvim/event/process.h"
#include "nvim/log.h" #include "nvim/log.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/types_defs.h"
#include "nvim/ui_client.h" #include "nvim/ui_client.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS
@ -126,3 +129,11 @@ static void exit_cb(uv_process_t *handle, int64_t status, int term_signal)
proc->status = term_signal ? 128 + term_signal : (int)status; proc->status = term_signal ? 128 + term_signal : (int)status;
proc->internal_exit_cb(proc); proc->internal_exit_cb(proc);
} }
LibuvProcess libuv_process_init(Loop *loop, void *data)
{
LibuvProcess rv = {
.process = process_init(loop, kProcessTypeUv, data)
};
return rv;
}

View File

@ -2,8 +2,7 @@
#include <uv.h> #include <uv.h>
#include "nvim/event/process.h" #include "nvim/event/defs.h"
#include "nvim/types_defs.h"
typedef struct { typedef struct {
Process process; Process process;
@ -12,14 +11,6 @@ typedef struct {
uv_stdio_container_t uvstdio[4]; uv_stdio_container_t uvstdio[4];
} LibuvProcess; } LibuvProcess;
static inline LibuvProcess libuv_process_init(Loop *loop, void *data)
{
LibuvProcess rv = {
.process = process_init(loop, kProcessTypeUv, data)
};
return rv;
}
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS
# include "event/libuv_process.h.generated.h" # include "event/libuv_process.h.generated.h"
#endif #endif

View File

@ -4,7 +4,7 @@
#include <uv.h> #include <uv.h>
#include "klib/klist.h" #include "klib/klist.h"
#include "nvim/event/defs.h" // IWYU pragma: export #include "nvim/event/defs.h" // IWYU pragma: keep
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h" // IWYU pragma: keep
typedef void *WatcherPtr; typedef void *WatcherPtr;

View File

@ -48,7 +48,7 @@
#include "nvim/event/defs.h" #include "nvim/event/defs.h"
#include "nvim/event/multiqueue.h" #include "nvim/event/multiqueue.h"
#include "nvim/lib/queue.h" #include "nvim/lib/queue_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
typedef struct multiqueue_item MultiQueueItem; typedef struct multiqueue_item MultiQueueItem;

View File

@ -2,7 +2,7 @@
#include <stddef.h> // IWYU pragma: keep #include <stddef.h> // IWYU pragma: keep
#include "nvim/event/defs.h" // IWYU pragma: export #include "nvim/event/defs.h" // IWYU pragma: keep
#include "nvim/os/time.h" // IWYU pragma: keep #include "nvim/os/time.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -16,7 +16,7 @@
#include "nvim/os/pty_process.h" #include "nvim/os/pty_process.h"
#include "nvim/os/shell.h" #include "nvim/os/shell.h"
#include "nvim/os/time.h" #include "nvim/os/time.h"
#include "nvim/rbuffer.h" #include "nvim/rbuffer_defs.h"
#include "nvim/ui_client.h" #include "nvim/ui_client.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -2,40 +2,10 @@
#include <stdbool.h> #include <stdbool.h>
#include <stddef.h> #include <stddef.h>
#include <stdint.h>
#include "nvim/eval/typval_defs.h" #include "nvim/event/defs.h" // IWYU pragma: keep
#include "nvim/event/defs.h" // IWYU pragma: export
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
typedef enum {
kProcessTypeUv,
kProcessTypePty,
} ProcessType;
typedef struct process Process;
typedef void (*process_exit_cb)(Process *proc, int status, void *data);
typedef void (*internal_process_cb)(Process *proc);
struct process {
ProcessType type;
Loop *loop;
void *data;
int pid, status, refcount;
uint8_t exit_signal; // Signal used when killing (on Windows).
uint64_t stopped_time; // process_stop() timestamp
const char *cwd;
char **argv;
const char *exepath;
dict_T *env;
Stream in, out, err;
/// Exit handler. If set, user must call process_free().
process_exit_cb cb;
internal_process_cb internal_exit_cb, internal_close_cb;
bool closed, detach, overlapped, fwd_err;
MultiQueue *events;
};
static inline Process process_init(Loop *loop, ProcessType type, void *data) static inline Process process_init(Loop *loop, ProcessType type, void *data)
{ {
return (Process) { return (Process) {

View File

@ -12,6 +12,7 @@
#include "nvim/main.h" #include "nvim/main.h"
#include "nvim/os/os_defs.h" #include "nvim/os/os_defs.h"
#include "nvim/rbuffer.h" #include "nvim/rbuffer.h"
#include "nvim/rbuffer_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/event/defs.h" // IWYU pragma: export #include "nvim/event/defs.h" // IWYU pragma: keep
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/event/defs.h" // IWYU pragma: export #include "nvim/event/defs.h" // IWYU pragma: keep
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -12,12 +12,12 @@
#include "nvim/event/multiqueue.h" #include "nvim/event/multiqueue.h"
#include "nvim/event/socket.h" #include "nvim/event/socket.h"
#include "nvim/event/stream.h" #include "nvim/event/stream.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/log.h" #include "nvim/log.h"
#include "nvim/main.h" #include "nvim/main.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/os.h" #include "nvim/os/os_defs.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/event/defs.h" // IWYU pragma: export #include "nvim/event/defs.h" // IWYU pragma: keep
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/event/defs.h" // IWYU pragma: export #include "nvim/event/defs.h" // IWYU pragma: keep
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/event/defs.h" // IWYU pragma: export #include "nvim/event/defs.h" // IWYU pragma: keep
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/event/defs.h" // IWYU pragma: export #include "nvim/event/defs.h" // IWYU pragma: keep
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -18,7 +18,9 @@
#include "nvim/arglist.h" #include "nvim/arglist.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/buffer_updates.h" #include "nvim/buffer_updates.h"
#include "nvim/bufwrite.h" #include "nvim/bufwrite.h"
#include "nvim/change.h" #include "nvim/change.h"
@ -34,6 +36,7 @@
#include "nvim/edit.h" #include "nvim/edit.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds.h"
#include "nvim/ex_cmds2.h" #include "nvim/ex_cmds2.h"
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
@ -41,21 +44,25 @@
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/extmark_defs.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/help.h" #include "nvim/help.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/indent.h" #include "nvim/indent.h"
#include "nvim/input.h" #include "nvim/input.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/main.h" #include "nvim/main.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memline_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/mouse.h" #include "nvim/mouse.h"
@ -63,11 +70,14 @@
#include "nvim/normal.h" #include "nvim/normal.h"
#include "nvim/ops.h" #include "nvim/ops.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/optionstr.h" #include "nvim/optionstr.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/fs_defs.h"
#include "nvim/os/input.h" #include "nvim/os/input.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/os/shell.h" #include "nvim/os/shell.h"
#include "nvim/os/time.h" #include "nvim/os/time.h"
#include "nvim/path.h" #include "nvim/path.h"
@ -76,6 +86,7 @@
#include "nvim/profile.h" #include "nvim/profile.h"
#include "nvim/quickfix.h" #include "nvim/quickfix.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/spell.h" #include "nvim/spell.h"
#include "nvim/state_defs.h" #include "nvim/state_defs.h"
@ -83,6 +94,7 @@
#include "nvim/terminal.h" #include "nvim/terminal.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_defs.h"
#include "nvim/undo.h" #include "nvim/undo.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#include "nvim/window.h" #include "nvim/window.h"

View File

@ -1,6 +1,6 @@
#pragma once #pragma once
#include "nvim/ex_cmds_defs.h" // IWYU pragma: export #include "nvim/ex_cmds_defs.h" // IWYU pragma: keep
/// flags for do_ecmd() /// flags for do_ecmd()
enum { enum {

View File

@ -11,12 +11,15 @@
#include "nvim/arglist.h" #include "nvim/arglist.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/bufwrite.h" #include "nvim/bufwrite.h"
#include "nvim/change.h" #include "nvim/change.h"
#include "nvim/channel.h" #include "nvim/channel.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/eval/vars.h" #include "nvim/eval/vars.h"
#include "nvim/ex_cmds.h" #include "nvim/ex_cmds.h"
#include "nvim/ex_cmds2.h" #include "nvim/ex_cmds2.h"
@ -24,9 +27,10 @@
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/memory.h" #include "nvim/memory.h"

View File

@ -5,9 +5,7 @@
#include "nvim/eval/typval_defs.h" #include "nvim/eval/typval_defs.h"
#include "nvim/ex_eval_defs.h" #include "nvim/ex_eval_defs.h"
#include "nvim/normal_defs.h"
#include "nvim/os/time_defs.h" #include "nvim/os/time_defs.h"
#include "nvim/pos_defs.h"
#include "nvim/regexp_defs.h" #include "nvim/regexp_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS

View File

@ -12,9 +12,12 @@
#include <uv.h> #include <uv.h>
#include "auto/config.h" #include "auto/config.h"
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h"
#include "nvim/arglist.h" #include "nvim/arglist.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/change.h" #include "nvim/change.h"
@ -28,6 +31,7 @@
#include "nvim/edit.h" #include "nvim/edit.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/eval/userfunc.h" #include "nvim/eval/userfunc.h"
#include "nvim/event/loop.h" #include "nvim/event/loop.h"
#include "nvim/event/multiqueue.h" #include "nvim/event/multiqueue.h"
@ -36,15 +40,18 @@
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/ex_eval_defs.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/file_search.h" #include "nvim/file_search.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/input.h" #include "nvim/input.h"
#include "nvim/keycodes.h" #include "nvim/keycodes.h"
@ -52,20 +59,25 @@
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/main.h" #include "nvim/main.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memline_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/mouse.h" #include "nvim/mouse.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/normal.h" #include "nvim/normal.h"
#include "nvim/normal_defs.h"
#include "nvim/ops.h" #include "nvim/ops.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/optionstr.h" #include "nvim/optionstr.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/input.h" #include "nvim/os/input.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/os/shell.h" #include "nvim/os/shell.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/popupmenu.h" #include "nvim/popupmenu.h"
@ -73,16 +85,20 @@
#include "nvim/profile.h" #include "nvim/profile.h"
#include "nvim/quickfix.h" #include "nvim/quickfix.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/runtime_defs.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/shada.h" #include "nvim/shada.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/statusline.h" #include "nvim/statusline.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/tag.h" #include "nvim/tag.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/undo.h" #include "nvim/undo.h"
#include "nvim/undo_defs.h"
#include "nvim/usercmd.h" #include "nvim/usercmd.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#include "nvim/window.h" #include "nvim/window.h"

View File

@ -13,18 +13,22 @@
#include "nvim/debugger.h" #include "nvim/debugger.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/eval/userfunc.h" #include "nvim/eval/userfunc.h"
#include "nvim/eval_defs.h"
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_eval.h" #include "nvim/ex_eval.h"
#include "nvim/ex_eval_defs.h" #include "nvim/ex_eval_defs.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"
#include "nvim/runtime_defs.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"

View File

@ -1,7 +1,7 @@
#pragma once #pragma once
#include "nvim/ex_cmds_defs.h" // IWYU pragma: keep #include "nvim/ex_cmds_defs.h" // IWYU pragma: keep
#include "nvim/ex_eval_defs.h" // IWYU pragma: export #include "nvim/ex_eval_defs.h" // IWYU pragma: keep
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS
# include "ex_eval.h.generated.h" # include "ex_eval.h.generated.h"

View File

@ -11,14 +11,18 @@
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/api/extmark.h" #include "nvim/api/extmark.h"
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/api/vim.h" #include "nvim/api/vim.h"
#include "nvim/arabic.h" #include "nvim/arabic.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/charset.h" #include "nvim/charset.h"
#include "nvim/cmdexpand.h" #include "nvim/cmdexpand.h"
#include "nvim/cmdexpand_defs.h"
#include "nvim/cmdhist.h" #include "nvim/cmdhist.h"
#include "nvim/cursor.h" #include "nvim/cursor.h"
#include "nvim/digraph.h" #include "nvim/digraph.h"
@ -34,19 +38,23 @@
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/highlight_group.h" #include "nvim/highlight_group.h"
#include "nvim/keycodes.h" #include "nvim/keycodes.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/map_defs.h" #include "nvim/map_defs.h"
#include "nvim/mapping.h" #include "nvim/mapping.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/memory_defs.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/mouse.h" #include "nvim/mouse.h"
#include "nvim/move.h" #include "nvim/move.h"
@ -63,16 +71,21 @@
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/profile.h" #include "nvim/profile.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/search.h" #include "nvim/search.h"
#include "nvim/state.h" #include "nvim/state.h"
#include "nvim/state_defs.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/ui_defs.h"
#include "nvim/undo.h" #include "nvim/undo.h"
#include "nvim/undo_defs.h"
#include "nvim/usercmd.h" #include "nvim/usercmd.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#include "nvim/viml/parser/expressions.h" #include "nvim/viml/parser/expressions.h"
#include "nvim/viml/parser/parser.h" #include "nvim/viml/parser/parser.h"
#include "nvim/viml/parser/parser_defs.h"
#include "nvim/window.h" #include "nvim/window.h"
/// Last value of prompt_id, incremented when doing new prompt /// Last value of prompt_id, incremented when doing new prompt

View File

@ -4,7 +4,7 @@
#include "nvim/eval/typval_defs.h" // IWYU pragma: keep #include "nvim/eval/typval_defs.h" // IWYU pragma: keep
#include "nvim/ex_cmds_defs.h" // IWYU pragma: keep #include "nvim/ex_cmds_defs.h" // IWYU pragma: keep
#include "nvim/ex_getln_defs.h" // IWYU pragma: export #include "nvim/ex_getln_defs.h" // IWYU pragma: keep
#include "nvim/option_defs.h" // IWYU pragma: keep #include "nvim/option_defs.h" // IWYU pragma: keep
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h" // IWYU pragma: keep

View File

@ -10,10 +10,13 @@
#include <string.h> #include <string.h>
#include "nvim/arglist.h" #include "nvim/arglist.h"
#include "nvim/arglist_defs.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/ex_cmds_defs.h" #include "nvim/ex_cmds_defs.h"
#include "nvim/ex_docmd.h" #include "nvim/ex_docmd.h"
#include "nvim/ex_getln.h" #include "nvim/ex_getln.h"
@ -21,8 +24,8 @@
#include "nvim/file_search.h" #include "nvim/file_search.h"
#include "nvim/fileio.h" #include "nvim/fileio.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/garray.h" #include "nvim/garray_defs.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mapping.h" #include "nvim/mapping.h"
@ -33,6 +36,7 @@
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/runtime.h" #include "nvim/runtime.h"

View File

@ -32,6 +32,7 @@
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/buffer_updates.h" #include "nvim/buffer_updates.h"
#include "nvim/decoration.h" #include "nvim/decoration.h"
#include "nvim/decoration_defs.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/extmark_defs.h" #include "nvim/extmark_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
@ -41,6 +42,7 @@
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/undo.h" #include "nvim/undo.h"
#include "nvim/undo_defs.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS #ifdef INCLUDE_GENERATED_DECLARATIONS
# include "extmark.c.generated.h" # include "extmark.c.generated.h"

View File

@ -4,7 +4,7 @@
#include <stdint.h> #include <stdint.h>
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/extmark_defs.h" // IWYU pragma: export #include "nvim/extmark_defs.h" // IWYU pragma: keep
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/marktree_defs.h" #include "nvim/marktree_defs.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"

View File

@ -1,7 +1,6 @@
#pragma once #pragma once
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/types_defs.h"
// TODO(bfredl): good enough name for now. // TODO(bfredl): good enough name for now.
typedef ptrdiff_t bcount_t; typedef ptrdiff_t bcount_t;

View File

@ -51,11 +51,13 @@
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
#include "nvim/eval.h" #include "nvim/eval.h"
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/eval/typval_defs.h"
#include "nvim/file_search.h" #include "nvim/file_search.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
@ -64,8 +66,10 @@
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
#include "nvim/os/fs_defs.h"
#include "nvim/os/input.h" #include "nvim/os/input.h"
#include "nvim/os/os.h" #include "nvim/os/os.h"
#include "nvim/os/os_defs.h"
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/strings.h" #include "nvim/strings.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"

View File

@ -1,5 +1,7 @@
#pragma once #pragma once
#include <stddef.h> // IWYU pragma: keep
#include "nvim/types_defs.h" // IWYU pragma: keep #include "nvim/types_defs.h" // IWYU pragma: keep
#include "nvim/vim_defs.h" // IWYU pragma: keep #include "nvim/vim_defs.h" // IWYU pragma: keep

View File

@ -18,7 +18,9 @@
#include "auto/config.h" #include "auto/config.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/autocmd.h" #include "nvim/autocmd.h"
#include "nvim/autocmd_defs.h"
#include "nvim/buffer.h" #include "nvim/buffer.h"
#include "nvim/buffer_defs.h"
#include "nvim/buffer_updates.h" #include "nvim/buffer_updates.h"
#include "nvim/change.h" #include "nvim/change.h"
#include "nvim/cursor.h" #include "nvim/cursor.h"
@ -33,19 +35,24 @@
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h" #include "nvim/garray_defs.h"
#include "nvim/getchar.h" #include "nvim/getchar.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/highlight.h" #include "nvim/highlight.h"
#include "nvim/highlight_defs.h"
#include "nvim/iconv_defs.h" #include "nvim/iconv_defs.h"
#include "nvim/log.h" #include "nvim/log.h"
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/mbyte_defs.h"
#include "nvim/memfile.h" #include "nvim/memfile.h"
#include "nvim/memfile_defs.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memline_defs.h"
#include "nvim/memory.h" #include "nvim/memory.h"
#include "nvim/message.h" #include "nvim/message.h"
#include "nvim/move.h" #include "nvim/move.h"
#include "nvim/option.h" #include "nvim/option.h"
#include "nvim/option_defs.h"
#include "nvim/option_vars.h" #include "nvim/option_vars.h"
#include "nvim/optionstr.h" #include "nvim/optionstr.h"
#include "nvim/os/fs.h" #include "nvim/os/fs.h"
@ -56,6 +63,7 @@
#include "nvim/path.h" #include "nvim/path.h"
#include "nvim/pos_defs.h" #include "nvim/pos_defs.h"
#include "nvim/regexp.h" #include "nvim/regexp.h"
#include "nvim/regexp_defs.h"
#include "nvim/sha256.h" #include "nvim/sha256.h"
#include "nvim/shada.h" #include "nvim/shada.h"
#include "nvim/state_defs.h" #include "nvim/state_defs.h"
@ -63,6 +71,7 @@
#include "nvim/types_defs.h" #include "nvim/types_defs.h"
#include "nvim/ui.h" #include "nvim/ui.h"
#include "nvim/undo.h" #include "nvim/undo.h"
#include "nvim/undo_defs.h"
#include "nvim/vim_defs.h" #include "nvim/vim_defs.h"
#ifdef BACKSLASH_IN_FILENAME #ifdef BACKSLASH_IN_FILENAME

View File

@ -11,6 +11,7 @@
#include "klib/kvec.h" #include "klib/kvec.h"
#include "nvim/api/extmark.h" #include "nvim/api/extmark.h"
#include "nvim/api/private/defs.h"
#include "nvim/api/private/helpers.h" #include "nvim/api/private/helpers.h"
#include "nvim/ascii_defs.h" #include "nvim/ascii_defs.h"
#include "nvim/buffer_defs.h" #include "nvim/buffer_defs.h"
@ -25,13 +26,15 @@
#include "nvim/eval/typval.h" #include "nvim/eval/typval.h"
#include "nvim/ex_session.h" #include "nvim/ex_session.h"
#include "nvim/extmark.h" #include "nvim/extmark.h"
#include "nvim/extmark_defs.h"
#include "nvim/fold.h" #include "nvim/fold.h"
#include "nvim/garray.h" #include "nvim/garray.h"
#include "nvim/garray_defs.h" #include "nvim/garray_defs.h"
#include "nvim/gettext.h" #include "nvim/gettext_defs.h"
#include "nvim/globals.h" #include "nvim/globals.h"
#include "nvim/indent.h" #include "nvim/indent.h"
#include "nvim/mark.h" #include "nvim/mark.h"
#include "nvim/mark_defs.h"
#include "nvim/mbyte.h" #include "nvim/mbyte.h"
#include "nvim/memline.h" #include "nvim/memline.h"
#include "nvim/memory.h" #include "nvim/memory.h"

View File

@ -4,7 +4,7 @@
#include "nvim/decoration_defs.h" // IWYU pragma: keep #include "nvim/decoration_defs.h" // IWYU pragma: keep
#include "nvim/eval/typval_defs.h" // IWYU pragma: keep #include "nvim/eval/typval_defs.h" // IWYU pragma: keep
#include "nvim/fold_defs.h" // IWYU pragma: export #include "nvim/fold_defs.h" // IWYU pragma: keep
#include "nvim/garray_defs.h" // IWYU pragma: keep #include "nvim/garray_defs.h" // IWYU pragma: keep
#include "nvim/macros_defs.h" #include "nvim/macros_defs.h"
#include "nvim/pos_defs.h" // IWYU pragma: keep #include "nvim/pos_defs.h" // IWYU pragma: keep

View File

@ -217,3 +217,12 @@ void ga_append(garray_T *gap, uint8_t c)
{ {
GA_APPEND(uint8_t, gap, c); GA_APPEND(uint8_t, gap, c);
} }
void *ga_append_via_ptr(garray_T *gap, size_t item_size)
{
if ((int)item_size != gap->ga_itemsize) {
WLOG("wrong item size (%zu), should be %d", item_size, gap->ga_itemsize);
}
ga_grow(gap, 1);
return ((char *)gap->ga_data) + (item_size * (size_t)gap->ga_len++);
}

Some files were not shown because too many files have changed in this diff Show More