diff options
author | Benji Dial <benji@benjidial.net> | 2024-07-27 16:57:39 -0400 |
---|---|---|
committer | Benji Dial <benji@benjidial.net> | 2024-07-27 16:57:39 -0400 |
commit | fbfc078e9f44c1c1e95c9c484f1d5650bcf631b7 (patch) | |
tree | cab539c8cbbac81d895b6f8be695f3f53bf8f4d5 /euler/source/io | |
parent | 9af5588c30c4126a2800aae1afcb0de2c373dc6c (diff) | |
download | hilbert-os-fbfc078e9f44c1c1e95c9c484f1d5650bcf631b7.tar.gz |
lots and lots of userspace stuff
Diffstat (limited to 'euler/source/io')
-rw-r--r-- | euler/source/io/fclose.cpp | 10 | ||||
-rw-r--r-- | euler/source/io/fopen.cpp | 54 | ||||
-rw-r--r-- | euler/source/io/fread.cpp | 9 | ||||
-rw-r--r-- | euler/source/io/fseek.cpp | 11 |
4 files changed, 0 insertions, 84 deletions
diff --git a/euler/source/io/fclose.cpp b/euler/source/io/fclose.cpp deleted file mode 100644 index 6f43f85..0000000 --- a/euler/source/io/fclose.cpp +++ /dev/null @@ -1,10 +0,0 @@ -#include <cstdio> - -namespace std { - - int fclose(FILE *stream) { - delete stream; - return 0; - } - -} diff --git a/euler/source/io/fopen.cpp b/euler/source/io/fopen.cpp deleted file mode 100644 index 8d47bf0..0000000 --- a/euler/source/io/fopen.cpp +++ /dev/null @@ -1,54 +0,0 @@ -#include <stdint.h> -#include <cstring> -#include <cstdio> - -namespace std { - - FILE *fopen(const char *filename, const char *mode) { - - bool read = false; - bool write = false; - bool append = false; - bool extended = false; - bool create = false; - - for (const char *p = mode; *p; ++p) - switch (*p) { - case 'r': - read = true; - continue; - case 'w': - write = true; - continue; - case 'a': - append = true; - continue; - case '+': - extended = true; - continue; - case 'x': - create = true; - continue; - default: - continue; - } - - __euler_stream_handle handle; - __euler_stream_result res = __euler_open_file( - filename, strlen(filename), handle, write || append, create); - - if (res != __EULER_SR_SUCCESS) - return 0; - - euler::file_stream *f = new euler::file_stream(handle, read || extended, - write || extended, write && !append, append); - - if (f->good) - return f; - - delete f; - return 0; - - } - -} diff --git a/euler/source/io/fread.cpp b/euler/source/io/fread.cpp deleted file mode 100644 index e2d05b6..0000000 --- a/euler/source/io/fread.cpp +++ /dev/null @@ -1,9 +0,0 @@ -#include <cstdio> - -namespace std { - - size_t fread(void *buffer, size_t size, size_t count, FILE *stream) { - return stream->try_read(buffer, size * count) ? count : 0; - } - -} diff --git a/euler/source/io/fseek.cpp b/euler/source/io/fseek.cpp deleted file mode 100644 index 3254468..0000000 --- a/euler/source/io/fseek.cpp +++ /dev/null @@ -1,11 +0,0 @@ -#include <cstdio> - -namespace std { - - int fseek(FILE *stream, long offset, int origin) { - if (origin < 0 || origin > 2) - return 1; - return stream->try_seek((__euler_seek_from)origin, offset) ? 0 : 2; - } - -} |