/src/pigeonhole/src/lib-sieve/sieve-stringlist.h
Line | Count | Source |
1 | | #ifndef SIEVE_STRINGLIST_H |
2 | | #define SIEVE_STRINGLIST_H |
3 | | |
4 | | /* |
5 | | * Stringlist API |
6 | | */ |
7 | | |
8 | | struct sieve_stringlist { |
9 | | int (*next_item)(struct sieve_stringlist *strlist, string_t **str_r); |
10 | | void (*reset)(struct sieve_stringlist *strlist); |
11 | | int (*get_length)(struct sieve_stringlist *strlist); |
12 | | |
13 | | int (*read_all)(struct sieve_stringlist *strlist, pool_t pool, |
14 | | const char *const **list_r); |
15 | | |
16 | | void (*set_trace)(struct sieve_stringlist *strlist, bool trace); |
17 | | |
18 | | const struct sieve_runtime_env *runenv; |
19 | | int exec_status; |
20 | | |
21 | | bool trace:1; |
22 | | }; |
23 | | |
24 | | static inline void |
25 | | sieve_stringlist_set_trace(struct sieve_stringlist *strlist, bool trace) |
26 | 0 | { |
27 | 0 | strlist->trace = trace; |
28 | |
|
29 | 0 | if (strlist->set_trace != NULL) |
30 | 0 | strlist->set_trace(strlist, trace); |
31 | 0 | } Unexecuted instantiation: testsuite-common.c:sieve_stringlist_set_trace Unexecuted instantiation: testsuite-message.c:sieve_stringlist_set_trace Unexecuted instantiation: testsuite-log.c:sieve_stringlist_set_trace Unexecuted instantiation: testsuite-result.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-test-message.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-test-multiscript.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-message.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-interpreter.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-result.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-address-parts.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-address-source.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-match.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-code.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-actions.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-address.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-header.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-exists.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-size.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-keep.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-redirect.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-fileinto.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-reject.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-envelope.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-subaddress.c:sieve_stringlist_set_trace Unexecuted instantiation: mcht-count.c:sieve_stringlist_set_trace Unexecuted instantiation: mcht-regex.c:sieve_stringlist_set_trace Unexecuted instantiation: tag-flags.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-hasflag.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-body.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-string.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-notify-method-capability.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-valid-notify-method.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-environment.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-mailboxexists.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-date.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-spamvirustest.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-ihave.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-index.c:sieve_stringlist_set_trace Unexecuted instantiation: tag-index.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-metadata.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-metadataexists.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-extracttext.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-foreverypart.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-mime.c:sieve_stringlist_set_trace Unexecuted instantiation: tag-mime.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-specialuse-exists.c:sieve_stringlist_set_trace Unexecuted instantiation: mcht-list.c:sieve_stringlist_set_trace Unexecuted instantiation: tst-valid-ext-list.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-address.c:sieve_stringlist_set_trace Unexecuted instantiation: sieve-stringlist.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-vacation.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-flag.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-imap4flags-common.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-body-common.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-enotify-common.c:sieve_stringlist_set_trace Unexecuted instantiation: ntfy-mailto.c:sieve_stringlist_set_trace Unexecuted instantiation: uri-mailto.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-date-common.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-spamvirustest-common.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-addheader.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-deleteheader.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-duplicate-common.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-break.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-extracttext.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-foreverypart.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-mime-common.c:sieve_stringlist_set_trace Unexecuted instantiation: ext-extlists-common.c:sieve_stringlist_set_trace Unexecuted instantiation: cmd-report.c:sieve_stringlist_set_trace |
32 | | |
33 | | static inline int |
34 | | sieve_stringlist_next_item(struct sieve_stringlist *strlist, string_t **str_r) |
35 | 0 | { |
36 | 0 | return strlist->next_item(strlist, str_r); |
37 | 0 | } Unexecuted instantiation: testsuite-common.c:sieve_stringlist_next_item Unexecuted instantiation: testsuite-message.c:sieve_stringlist_next_item Unexecuted instantiation: testsuite-log.c:sieve_stringlist_next_item Unexecuted instantiation: testsuite-result.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-test-message.c:sieve_stringlist_next_item Unexecuted instantiation: tst-test-multiscript.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-message.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-interpreter.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-result.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-address-parts.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-address-source.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-match.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-code.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-actions.c:sieve_stringlist_next_item Unexecuted instantiation: tst-address.c:sieve_stringlist_next_item Unexecuted instantiation: tst-header.c:sieve_stringlist_next_item Unexecuted instantiation: tst-exists.c:sieve_stringlist_next_item Unexecuted instantiation: tst-size.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-keep.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-redirect.c:sieve_stringlist_next_item Unexecuted instantiation: ext-fileinto.c:sieve_stringlist_next_item Unexecuted instantiation: ext-reject.c:sieve_stringlist_next_item Unexecuted instantiation: ext-envelope.c:sieve_stringlist_next_item Unexecuted instantiation: sieve.c:sieve_stringlist_next_item Unexecuted instantiation: ext-subaddress.c:sieve_stringlist_next_item Unexecuted instantiation: mcht-count.c:sieve_stringlist_next_item Unexecuted instantiation: mcht-regex.c:sieve_stringlist_next_item Unexecuted instantiation: tag-flags.c:sieve_stringlist_next_item Unexecuted instantiation: tst-hasflag.c:sieve_stringlist_next_item Unexecuted instantiation: tst-body.c:sieve_stringlist_next_item Unexecuted instantiation: tst-string.c:sieve_stringlist_next_item Unexecuted instantiation: tst-notify-method-capability.c:sieve_stringlist_next_item Unexecuted instantiation: tst-valid-notify-method.c:sieve_stringlist_next_item Unexecuted instantiation: tst-environment.c:sieve_stringlist_next_item Unexecuted instantiation: tst-mailboxexists.c:sieve_stringlist_next_item Unexecuted instantiation: tst-date.c:sieve_stringlist_next_item Unexecuted instantiation: tst-spamvirustest.c:sieve_stringlist_next_item Unexecuted instantiation: tst-ihave.c:sieve_stringlist_next_item Unexecuted instantiation: ext-index.c:sieve_stringlist_next_item Unexecuted instantiation: tag-index.c:sieve_stringlist_next_item Unexecuted instantiation: tst-metadata.c:sieve_stringlist_next_item Unexecuted instantiation: tst-metadataexists.c:sieve_stringlist_next_item Unexecuted instantiation: ext-extracttext.c:sieve_stringlist_next_item Unexecuted instantiation: ext-foreverypart.c:sieve_stringlist_next_item Unexecuted instantiation: ext-mime.c:sieve_stringlist_next_item Unexecuted instantiation: tag-mime.c:sieve_stringlist_next_item Unexecuted instantiation: tst-specialuse-exists.c:sieve_stringlist_next_item Unexecuted instantiation: mcht-list.c:sieve_stringlist_next_item Unexecuted instantiation: tst-valid-ext-list.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-address.c:sieve_stringlist_next_item Unexecuted instantiation: sieve-stringlist.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-vacation.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-flag.c:sieve_stringlist_next_item Unexecuted instantiation: ext-imap4flags-common.c:sieve_stringlist_next_item Unexecuted instantiation: ext-body-common.c:sieve_stringlist_next_item Unexecuted instantiation: ext-enotify-common.c:sieve_stringlist_next_item Unexecuted instantiation: ntfy-mailto.c:sieve_stringlist_next_item Unexecuted instantiation: uri-mailto.c:sieve_stringlist_next_item Unexecuted instantiation: ext-date-common.c:sieve_stringlist_next_item Unexecuted instantiation: ext-spamvirustest-common.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-addheader.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-deleteheader.c:sieve_stringlist_next_item Unexecuted instantiation: ext-duplicate-common.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-break.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-extracttext.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-foreverypart.c:sieve_stringlist_next_item Unexecuted instantiation: ext-mime-common.c:sieve_stringlist_next_item Unexecuted instantiation: ext-extlists-common.c:sieve_stringlist_next_item Unexecuted instantiation: cmd-report.c:sieve_stringlist_next_item |
38 | | |
39 | | static inline void |
40 | | sieve_stringlist_reset(struct sieve_stringlist *strlist) |
41 | 0 | { |
42 | 0 | strlist->reset(strlist); |
43 | 0 | } Unexecuted instantiation: testsuite-common.c:sieve_stringlist_reset Unexecuted instantiation: testsuite-message.c:sieve_stringlist_reset Unexecuted instantiation: testsuite-log.c:sieve_stringlist_reset Unexecuted instantiation: testsuite-result.c:sieve_stringlist_reset Unexecuted instantiation: cmd-test-message.c:sieve_stringlist_reset Unexecuted instantiation: tst-test-multiscript.c:sieve_stringlist_reset Unexecuted instantiation: sieve-message.c:sieve_stringlist_reset Unexecuted instantiation: sieve-interpreter.c:sieve_stringlist_reset Unexecuted instantiation: sieve-result.c:sieve_stringlist_reset Unexecuted instantiation: sieve-address-parts.c:sieve_stringlist_reset Unexecuted instantiation: sieve-address-source.c:sieve_stringlist_reset Unexecuted instantiation: sieve-match.c:sieve_stringlist_reset Unexecuted instantiation: sieve-code.c:sieve_stringlist_reset Unexecuted instantiation: sieve-actions.c:sieve_stringlist_reset Unexecuted instantiation: tst-address.c:sieve_stringlist_reset Unexecuted instantiation: tst-header.c:sieve_stringlist_reset Unexecuted instantiation: tst-exists.c:sieve_stringlist_reset Unexecuted instantiation: tst-size.c:sieve_stringlist_reset Unexecuted instantiation: cmd-keep.c:sieve_stringlist_reset Unexecuted instantiation: cmd-redirect.c:sieve_stringlist_reset Unexecuted instantiation: ext-fileinto.c:sieve_stringlist_reset Unexecuted instantiation: ext-reject.c:sieve_stringlist_reset Unexecuted instantiation: ext-envelope.c:sieve_stringlist_reset Unexecuted instantiation: sieve.c:sieve_stringlist_reset Unexecuted instantiation: ext-subaddress.c:sieve_stringlist_reset Unexecuted instantiation: mcht-count.c:sieve_stringlist_reset Unexecuted instantiation: mcht-regex.c:sieve_stringlist_reset Unexecuted instantiation: tag-flags.c:sieve_stringlist_reset Unexecuted instantiation: tst-hasflag.c:sieve_stringlist_reset Unexecuted instantiation: tst-body.c:sieve_stringlist_reset Unexecuted instantiation: tst-string.c:sieve_stringlist_reset Unexecuted instantiation: tst-notify-method-capability.c:sieve_stringlist_reset Unexecuted instantiation: tst-valid-notify-method.c:sieve_stringlist_reset Unexecuted instantiation: tst-environment.c:sieve_stringlist_reset Unexecuted instantiation: tst-mailboxexists.c:sieve_stringlist_reset Unexecuted instantiation: tst-date.c:sieve_stringlist_reset Unexecuted instantiation: tst-spamvirustest.c:sieve_stringlist_reset Unexecuted instantiation: tst-ihave.c:sieve_stringlist_reset Unexecuted instantiation: ext-index.c:sieve_stringlist_reset Unexecuted instantiation: tag-index.c:sieve_stringlist_reset Unexecuted instantiation: tst-metadata.c:sieve_stringlist_reset Unexecuted instantiation: tst-metadataexists.c:sieve_stringlist_reset Unexecuted instantiation: ext-extracttext.c:sieve_stringlist_reset Unexecuted instantiation: ext-foreverypart.c:sieve_stringlist_reset Unexecuted instantiation: ext-mime.c:sieve_stringlist_reset Unexecuted instantiation: tag-mime.c:sieve_stringlist_reset Unexecuted instantiation: tst-specialuse-exists.c:sieve_stringlist_reset Unexecuted instantiation: mcht-list.c:sieve_stringlist_reset Unexecuted instantiation: tst-valid-ext-list.c:sieve_stringlist_reset Unexecuted instantiation: sieve-address.c:sieve_stringlist_reset Unexecuted instantiation: sieve-stringlist.c:sieve_stringlist_reset Unexecuted instantiation: cmd-vacation.c:sieve_stringlist_reset Unexecuted instantiation: cmd-flag.c:sieve_stringlist_reset Unexecuted instantiation: ext-imap4flags-common.c:sieve_stringlist_reset Unexecuted instantiation: ext-body-common.c:sieve_stringlist_reset Unexecuted instantiation: ext-enotify-common.c:sieve_stringlist_reset Unexecuted instantiation: ntfy-mailto.c:sieve_stringlist_reset Unexecuted instantiation: uri-mailto.c:sieve_stringlist_reset Unexecuted instantiation: ext-date-common.c:sieve_stringlist_reset Unexecuted instantiation: ext-spamvirustest-common.c:sieve_stringlist_reset Unexecuted instantiation: cmd-addheader.c:sieve_stringlist_reset Unexecuted instantiation: cmd-deleteheader.c:sieve_stringlist_reset Unexecuted instantiation: ext-duplicate-common.c:sieve_stringlist_reset Unexecuted instantiation: cmd-break.c:sieve_stringlist_reset Unexecuted instantiation: cmd-extracttext.c:sieve_stringlist_reset Unexecuted instantiation: cmd-foreverypart.c:sieve_stringlist_reset Unexecuted instantiation: ext-mime-common.c:sieve_stringlist_reset Unexecuted instantiation: ext-extlists-common.c:sieve_stringlist_reset Unexecuted instantiation: cmd-report.c:sieve_stringlist_reset |
44 | | |
45 | | int sieve_stringlist_get_length(struct sieve_stringlist *strlist); |
46 | | |
47 | | int sieve_stringlist_read_all(struct sieve_stringlist *strlist, pool_t pool, |
48 | | const char *const **list_r); |
49 | | |
50 | | /* |
51 | | * Single Stringlist |
52 | | */ |
53 | | |
54 | | struct sieve_stringlist * |
55 | | sieve_single_stringlist_create(const struct sieve_runtime_env *renv, |
56 | | string_t *str, bool count_empty); |
57 | | struct sieve_stringlist * |
58 | | sieve_single_stringlist_create_cstr(const struct sieve_runtime_env *renv, |
59 | | const char *cstr, bool count_empty); |
60 | | |
61 | | /* |
62 | | * Index Stringlist |
63 | | */ |
64 | | |
65 | | struct sieve_stringlist * |
66 | | sieve_index_stringlist_create(const struct sieve_runtime_env *renv, |
67 | | struct sieve_stringlist *source, int index); |
68 | | |
69 | | #endif |