commit fd3d9d083cdfdb4e6aa06e8587ed58f91bd83d1f
parent 19a24d6df0f66b6327d973751b582a439125a39d
Author: Jake Koroman <jake@jakekoroman.com>
Date: Tue, 5 Aug 2025 14:35:37 -0400
add jrk_sb_read_entire_file.
Diffstat:
1 file changed, 10 insertions(+), 0 deletions(-)
diff --git a/jrk.h b/jrk.h
@@ -62,6 +62,7 @@ i32 jrk_sb_appendf(jrk_StringBuilder*, const char*, ...);
void jrk_sb_fd_read_all(jrk_StringBuilder*, i32);
u64 jrk_sb_fd_write_all(jrk_StringBuilder*, i32);
void jrk_sb_write_file(jrk_StringBuilder*, char*);
+void jrk_sb_read_entire_file(jrk_StringBuilder*, char*);
jrk_StringView jrk_sv_from_parts(char*, u64);
jrk_StringView jrk_sv_trim_right(jrk_StringView);
@@ -148,6 +149,7 @@ jrk_StringView jrk_sv_from_cstr(char*);
#define sb_fd_write_all jrk_sb_fd_write_all
#define sb_to_sv jrk_sb_to_sv
#define sb_write_file jrk_sb_write_file
+ #define sb_read_entire_file jrk_sb_read_entire_file
#define sv_trim_left jrk_sv_trim_left
#define sv_trim_right jrk_sv_trim_right
@@ -312,6 +314,14 @@ jrk_sb_write_file(jrk_StringBuilder *sb, char *path)
jrk_fd_close(fd);
}
+void
+jrk_sb_read_entire_file(jrk_StringBuilder *sb, char *path)
+{
+ i32 fd = jrk_fd_open_read(path);
+ jrk_sb_fd_read_all(sb, fd);
+ jrk_fd_close(fd);
+}
+
i32
jrk_fd_open_read(char *path)
{