aboutsummaryrefslogtreecommitdiff
path: root/src/stream/file.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/stream/file.zig')
-rw-r--r--src/stream/file.zig22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/stream/file.zig b/src/stream/file.zig
new file mode 100644
index 0000000..bb6407b
--- /dev/null
+++ b/src/stream/file.zig
@@ -0,0 +1,22 @@
+const std = @import("std");
+
+const Self = @This();
+
+file: std.fs.File,
+file_reader: ?std.fs.File.Reader,
+
+pub fn init(file: std.fs.File) Self {
+ return .{
+ .file = file,
+ .file_reader = null,
+ };
+}
+
+pub fn reader(self: *Self, buffer: []u8) *std.Io.Reader {
+ self.file_reader = self.file.reader(buffer);
+ return &self.file_reader.?.interface;
+}
+
+pub fn close(self: *Self) void {
+ self.file.close();
+}