diff options
Diffstat (limited to 'src/io.h')
| -rw-r--r-- | src/io.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/io.h b/src/io.h new file mode 100644 index 0000000..8a96b59 --- /dev/null +++ b/src/io.h @@ -0,0 +1,25 @@ +#ifndef DUCC_IO_H +#define DUCC_IO_H + +#include "std.h" + +struct SourceLocation { + const char* filename; + int line; +}; +typedef struct SourceLocation SourceLocation; + +struct InFile { + const char* buf; + int pos; + SourceLocation loc; +}; +typedef struct InFile InFile; + +InFile* infile_open(const char* filename); +BOOL infile_eof(InFile* f); +char infile_peek_char(InFile* f); +char infile_next_char(InFile* f); +BOOL infile_consume_if(InFile* f, char expected); + +#endif |
