Mercurial > dovecot > core-2.2
annotate src/lib/istream-chain.h @ 22955:812e5c961328
fts: Indexing virtual mailbox didn't always index the last mails
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Thu, 03 May 2018 18:33:00 +0300 |
parents | c93ca5e46a8a |
children |
rev | line source |
---|---|
14588 | 1 #ifndef ISTREAM_CHAIN_H |
2 #define ISTREAM_CHAIN_H | |
3 | |
4 struct istream_chain; | |
5 | |
6 /* Flexibly couple input streams into a single chain stream. Input streams can | |
7 be added after creation of the chain stream, and the chain stream will not | |
8 signal EOF until all streams are read to EOF and the last stream added was | |
9 NULL. Streams that were finished to EOF are unreferenced. The chain stream | |
10 is obviously not seekable and it has no determinable size. The chain_r | |
11 argument returns a pointer to the chain object. */ | |
12 struct istream *i_stream_create_chain(struct istream_chain **chain_r); | |
13 | |
14629
c93ca5e46a8a
Marked functions parameters that are allowed to be NULL. Some APIs were also changed.
Timo Sirainen <tss@iki.fi>
parents:
14588
diff
changeset
|
14 /* Append an input stream to the chain. */ |
14588 | 15 void i_stream_chain_append(struct istream_chain *chain, struct istream *stream); |
14629
c93ca5e46a8a
Marked functions parameters that are allowed to be NULL. Some APIs were also changed.
Timo Sirainen <tss@iki.fi>
parents:
14588
diff
changeset
|
16 /* Mark the end of the chain. Only then reads from the chain stream can |
c93ca5e46a8a
Marked functions parameters that are allowed to be NULL. Some APIs were also changed.
Timo Sirainen <tss@iki.fi>
parents:
14588
diff
changeset
|
17 return EOF. */ |
c93ca5e46a8a
Marked functions parameters that are allowed to be NULL. Some APIs were also changed.
Timo Sirainen <tss@iki.fi>
parents:
14588
diff
changeset
|
18 void i_stream_chain_append_eof(struct istream_chain *chain); |
14588 | 19 |
20 #endif |