aboutsummaryrefslogtreecommitdiff
path: root/vcs-svn/line_buffer.h
blob: 4ae1133a92993f6cc205f873adf8a8860f992909 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef LINE_BUFFER_H_
#define LINE_BUFFER_H_

#include "strbuf.h"

#define LINE_BUFFER_LEN 10000

struct line_buffer {
	char line_buffer[LINE_BUFFER_LEN];
	struct strbuf blob_buffer;
	FILE *infile;
};
#define LINE_BUFFER_INIT {"", STRBUF_INIT, NULL}

int buffer_init(const char *filename);
int buffer_deinit(void);
char *buffer_read_line(void);
char *buffer_read_string(uint32_t len);
void buffer_copy_bytes(uint32_t len);
void buffer_skip_bytes(uint32_t len);
void buffer_reset(void);

#endif