diff --git a/src/os/file/file.c b/src/os/file/file.c index 555d8ab..1c2d614 100644 --- a/src/os/file/file.c +++ b/src/os/file/file.c @@ -56,6 +56,16 @@ i64 wapp_file_write(const void *src_buf, WFile *file, u64 byte_count) { return _file_write(src_buf, file, byte_count); } +u64 wapp_file_read_str8(Str8 *str, WFile *file) { + wapp_debug_assert(str != NULL, "`str` should not be NULL."); + return wapp_file_read((void *)(str->buf), file, str->size); +} + +i64 wapp_file_write_str8(Str8RO *str, WFile *file) { + wapp_debug_assert(str != NULL, "`str` should not be NULL."); + return wapp_file_write((void *)(str->buf), file, str->size); +} + u64 wapp_file_read_array(GenericArray dst_buf, WFile *file, u64 item_count) { wapp_debug_assert(dst_buf != NULL && file != NULL, "`dst_buf` and `file` should not be NULL."); diff --git a/src/os/file/file.h b/src/os/file/file.h index 48ee7e3..888ab99 100644 --- a/src/os/file/file.h +++ b/src/os/file/file.h @@ -52,6 +52,8 @@ i64 wapp_file_seek(WFile *file, i64 offset, FileSeekOrigin origin); i64 wapp_file_get_length(WFile *file); u64 wapp_file_read(void *dst_buf, WFile *file, u64 byte_count); i64 wapp_file_write(const void *src_buf, WFile *file, u64 byte_count); +u64 wapp_file_read_str8(Str8 *str, WFile *file); +i64 wapp_file_write_str8(Str8RO *str, WFile *file); u64 wapp_file_read_array(GenericArray dst_buf, WFile *file, u64 item_count); i64 wapp_file_write_array(const GenericArray src_buf, WFile *file, u64 item_count); i32 wapp_file_flush(WFile *file);