From aa113b17449e67dbd808587b411aeb21ea869974 Mon Sep 17 00:00:00 2001 From: andromeda Date: Mon, 19 Oct 2026 18:54:26 -0400 Subject: minimal running stub --- lib/uefi.c3l/extension/file.c3 | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 lib/uefi.c3l/extension/file.c3 (limited to 'lib/uefi.c3l/extension/file.c3') diff --git a/lib/uefi.c3l/extension/file.c3 b/lib/uefi.c3l/extension/file.c3 new file mode 100644 index 0000000..1e40e83 --- /dev/null +++ b/lib/uefi.c3l/extension/file.c3 @@ -0,0 +1,22 @@ +module uefi::protocol::file; + +macro FileProtocol.open(&self, FileProtocol** newHandle, WChar* fileName, FileOpenMode openMode, ulong attributes) + => self._open(self, newHandle, fileName, openMode, attributes); + +macro FileProtocol.close(&self) => self._close(self); +macro FileProtocol.delete(&self) => self._delete(self); +macro FileProtocol.read(&self, usz* bufSize, void* buf) => self._read(self, bufSize, buf); +macro FileProtocol.write(&self, usz* bufSize, void* buf) => self._write(self, bufSize, buf); +macro FileProtocol.get_position(&self, ulong* pos) => self._get_position(self, pos); +macro FileProtocol.set_position(&self, ulong pos) => self._set_position(self, pos); +macro FileProtocol.get_info(&self, EfiGuid* infoType, usz* bufSize, void* buf) => self._get_info(self, infoType, bufSize, buf); +macro FileProtocol.set_info(&self, EfiGuid* infoType, usz bufSize, void* buf) => self._set_info(self, infoType, bufSize, buf); +macro FileProtocol.flush(&self) => self._flush(self); + +macro FileSystemProtocol.open_volume(&self, FileProtocol** fileProt) => self._open_volume(self, fileProt); + +constdef FileOpenMode : inline ulong { + CREATE = 0, + READ = 1, + WRITE = 2, +} -- cgit v1.3.1