view src/lib/ostream-internal.h @ 896:21ffcce83c70 HEAD

Rewrote rfc822-tokenize.c to work one token at a time so it won't uselessly take memory, maybe also a bit faster. This caused pretty large changes all around. Also moved all string (un)escaping code to lib/strescape.c.
author Timo Sirainen <tss@iki.fi>
date Fri, 03 Jan 2003 17:57:12 +0200
parents f57c52738f90
children fd8888f6f037
line wrap: on
line source

#ifndef __OSTREAM_INTERNAL_H
#define __OSTREAM_INTERNAL_H

#include "ostream.h"
#include "iostream-internal.h"

typedef struct __OStream _OStream;

struct __OStream {
/* inheritance: */
	_IOStream iostream;

/* methods: */
	void (*cork)(_OStream *stream);
	int (*flush)(_OStream *stream);
	int (*have_space)(_OStream *stream, size_t size);
	int (*seek)(_OStream *stream, uoff_t offset);
	ssize_t (*send)(_OStream *stream, const void *data, size_t size);
	off_t (*send_istream)(_OStream *outstream, IStream *instream);

/* data: */
	OStream ostream;
};

OStream *_o_stream_create(_OStream *_stream, Pool pool);

#endif