diff options
| author | Maxime Coste <mawww@kakoune.org> | 2025-02-19 20:58:49 +1100 |
|---|---|---|
| committer | Maxime Coste <mawww@kakoune.org> | 2025-02-19 21:25:39 +1100 |
| commit | eb7d34333b0698e8e1a8af4f2be908ab08cb2089 (patch) | |
| tree | 4b53ba24111ce88901669c3e7651b5ec4edb4f87 /src/buffer_utils.hh | |
| parent | 9eda509282ebc881207c2d8278085cb53835641c (diff) | |
Cleanup file.cc/hh dependencies
file.cc/hh should not know about Context, Buffer, etc... It should
be a pretty low level set of helper functions. Move buffer related
functions to buffer_utils and extract busy indicators to callers.
Diffstat (limited to 'src/buffer_utils.hh')
| -rw-r--r-- | src/buffer_utils.hh | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/buffer_utils.hh b/src/buffer_utils.hh index bc0dab68..96e89743 100644 --- a/src/buffer_utils.hh +++ b/src/buffer_utils.hh @@ -81,6 +81,20 @@ Buffer* open_or_create_file_buffer(StringView filename, Buffer::Flags flags = Buffer::Flags::None); void reload_file_buffer(Buffer& buffer); +enum class WriteFlags +{ + None = 0, + Force = 0b01, + Sync = 0b10 +}; +constexpr bool with_bit_ops(Meta::Type<WriteFlags>) { return true; } + +void write_buffer_to_file(Buffer& buffer, StringView filename, + WriteMethod method, WriteFlags flags); +void write_buffer_to_fd(Buffer& buffer, int fd); +void write_buffer_to_backup_file(Buffer& buffer); + + void write_to_debug_buffer(StringView str); Vector<String> history_as_strings(const Vector<Buffer::HistoryNode>& history); |
