From eb7d34333b0698e8e1a8af4f2be908ab08cb2089 Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Wed, 19 Feb 2025 20:58:49 +1100 Subject: 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. --- src/buffer_utils.hh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/buffer_utils.hh') 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) { 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 history_as_strings(const Vector& history); -- cgit v1.2.3