From 6c237850e90dce317ede7b0d4e53125df15ab62b Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Wed, 16 Sep 2020 19:35:43 -0700 Subject: WIP --- file_loader.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 file_loader.h (limited to 'file_loader.h') diff --git a/file_loader.h b/file_loader.h new file mode 100644 index 0000000..cb49373 --- /dev/null +++ b/file_loader.h @@ -0,0 +1,22 @@ +/* + * file_loader.h - Definitions of an API for loading files. + */ +#ifndef FILE_LOADER__H +#define FILE_LOADER__H + +#include + +typedef struct { + const char *filename; + char *contents, **lines; + size_t length, nlines; + unsigned int mmapped:1; +} file_t; + +file_t *load_file(const char *filename); +void destroy_file(file_t **f); +size_t get_line_number(file_t *f, const char *p); +const char *get_line(file_t *f, size_t line_number); +void fprint_line(FILE *dest, file_t *f, const char *start, const char *end, const char *msg); + +#endif -- cgit v1.2.3