xref: /netbsd-src/external/bsd/less/dist/xbuf.h (revision e4a6e799a67c2028562d75b4e61407b22434aa36)
1*e4a6e799Ssimonb #ifndef XBUF_H_
2*e4a6e799Ssimonb #define XBUF_H_
3*e4a6e799Ssimonb 
4*e4a6e799Ssimonb struct xbuffer
5*e4a6e799Ssimonb {
6*e4a6e799Ssimonb 	unsigned char *data;
7*e4a6e799Ssimonb 	int end;
8*e4a6e799Ssimonb 	int size;
9*e4a6e799Ssimonb };
10*e4a6e799Ssimonb 
11*e4a6e799Ssimonb void xbuf_init(struct xbuffer *xbuf);
12*e4a6e799Ssimonb void xbuf_deinit(struct xbuffer *xbuf);
13*e4a6e799Ssimonb void xbuf_reset(struct xbuffer *xbuf);
14*e4a6e799Ssimonb void xbuf_add_byte(struct xbuffer *xbuf, unsigned char b);
15*e4a6e799Ssimonb void xbuf_add_data(struct xbuffer *xbuf, unsigned char *data, int len);
16*e4a6e799Ssimonb int xbuf_pop(struct xbuffer *xbuf);
17*e4a6e799Ssimonb char *xbuf_char_data(struct xbuffer *xbuf);
18*e4a6e799Ssimonb 
19*e4a6e799Ssimonb #endif
20