]> git.lizzy.rs Git - nothing.git/blob - src/system/line_stream.h
Migrate level parsing to linestream-less mechanism
[nothing.git] / src / system / line_stream.h
1 #ifndef LINE_STREAM_H_
2 #define LINE_STREAM_H_
3
4 #include <stdlib.h>
5
6 typedef struct LineStream LineStream;
7
8 LineStream *create_line_stream(const char *filename,
9                                const char *mode,
10                                size_t capacity);
11 void destroy_line_stream(LineStream *line_stream);
12
13 const char *line_stream_next_chunk(LineStream *line_stream);
14 const char *line_stream_next(LineStream *line_stream);
15 char *line_stream_collect_n_lines(LineStream *line_stream, size_t n);
16 char *line_stream_collect_until_end(LineStream *line_stream);
17
18 #endif  // LINE_STREAM_H_