diff options
author | Nicholas Noll <nbnoll@eml.cc> | 2020-04-18 13:40:53 -0700 |
---|---|---|
committer | Nicholas Noll <nbnoll@eml.cc> | 2020-04-18 13:40:53 -0700 |
commit | 21055a1e5d34dda1b8151dd46a6bedca22bd73d9 (patch) | |
tree | 721044b20eb1c6f00d63a70f59a07f8b40e45ee1 /include/io.h | |
parent | 392c9aff947a41e7e0da0b1a9612e174cfa956a7 (diff) |
feat: added prototype of io/buffered io
Diffstat (limited to 'include/io.h')
-rw-r--r-- | include/io.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/include/io.h b/include/io.h new file mode 100644 index 0000000..9813b85 --- /dev/null +++ b/include/io.h @@ -0,0 +1,34 @@ +#pragma once + +typedef struct io·Reader +{ + Iface impl; + int (*read)(void*, byte *buf, int n); +} io·Reader; + +typedef struct io·ByteReader +{ + Iface impl; + int (*read)(void*, byte *buf, int n); + byte (*get)(void*); +} io·ByteReader; + +typedef struct io·Writer +{ + Iface impl; + int (*write)(void*, byte *buf, int n); +} io·Writer; + +typedef struct io·ReadWriter +{ + Iface impl; + int (*read)(void*, byte *buf, int n); + int (*write)(void*, byte *buf, int n); +} io·ReadWriter; + +typedef enum io·SeekPos +{ + SEEK·set, + SEEK·cur, + SEEK·end, +} io·SeekPos; |