diff options
Diffstat (limited to 'file_loader.h')
| -rw-r--r-- | file_loader.h | 22 |
1 files changed, 22 insertions, 0 deletions
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 <stdio.h> + +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 |
