/*
- * Copyright (c) 1995, Index Data.
+ * Copyright (c) 1995-1997, Index Data.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation, in whole or in part, for any purpose, is hereby granted,
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*
+ * $Log: wrbuf.h,v $
+ * Revision 1.5 1997-09-17 12:10:32 adam
+ * YAZ version 1.4.
+ *
*/
#ifndef WRBUF_H
#define WRBUF_H
+#include <xmalloc.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
typedef struct wrbuf
{
char *buf;
int wrbuf_grow(WRBUF b, int minsize);
int wrbuf_write(WRBUF b, char *buf, int size);
+#define wrbuf_len(b) ((b)->pos)
+#define wrbuf_buf(b) ((b)->buf)
+
#define wrbuf_putc(b, c) \
(((b)->pos >= (b)->size ? wrbuf_grow(b, 1) : 0), \
(b)->buf[(b)->pos++] = (c), 0)
+#ifdef __cplusplus
+}
+#endif
+
#endif