| Top |
| CamelFolderSearch * | camel_folder_search_new () |
| void | camel_folder_search_set_only_cached_messages () |
| gboolean | camel_folder_search_get_only_cached_messages () |
| void | camel_folder_search_set_current_message_info () |
| void | camel_folder_search_take_current_message_info () |
| CamelMessageInfo * | camel_folder_search_get_current_message_info () |
| GPtrArray * | camel_folder_search_get_current_summary () |
| void | camel_folder_search_set_folder () |
| CamelFolder * | camel_folder_search_get_folder () |
| void | camel_folder_search_set_summary () |
| GPtrArray * | camel_folder_search_get_summary () |
| gboolean | camel_folder_search_get_summary_empty () |
| void | camel_folder_search_set_body_index () |
| GPtrArray * | camel_folder_search_search () |
| guint32 | camel_folder_search_count () |
| void | camel_folder_search_free_result () |
| time_t | camel_folder_search_util_add_months () |
| time_t | camel_folder_search_util_make_time () |
| gint | camel_folder_search_util_compare_date () |
CamelFolderSearch *
camel_folder_search_new (void);
Create a new CamelFolderSearch object.
A CamelFolderSearch is a subclassable, extensible s-exp evaluator which enforces a particular set of s-expressions. Particular methods may be overriden by an implementation to implement a search for any sort of backend.
void camel_folder_search_set_only_cached_messages (CamelFolderSearch *search,gboolean only_cached_messages);
Sets whether only locally cached messages can be searched. The default
value is FALSE, which means that when a message is required and it is
not available locally, then it is downloaded from the server, if possible.
Since: 3.24
gboolean
camel_folder_search_get_only_cached_messages
(CamelFolderSearch *search);
Whether only cached messages can be searched. See
camel_folder_search_set_only_cached_messages() for more
information what it means.
Since: 3.24
void camel_folder_search_set_current_message_info (CamelFolderSearch *search,CamelMessageInfo *info);
Sets, or unsets, the info
as the currently processing CamelMessageInfo.
The function adds its own reference to info
, if not NULL.
Since: 3.24
void camel_folder_search_take_current_message_info (CamelFolderSearch *search,CamelMessageInfo *info);
Sets, or unsets, the info
as the currently processing CamelMessageInfo.
Unlike camel_folder_search_set_current_message_info(), this function
assumes ownership of the info
, if not NULL.
Since: 3.24
CamelMessageInfo *
camel_folder_search_get_current_message_info
(CamelFolderSearch *search);
Since: 3.24
GPtrArray *
camel_folder_search_get_current_summary
(CamelFolderSearch *search);
the current summary, and array of message info UID-s to use.
[transfer none][element-type utf8]
Since: 3.24
void camel_folder_search_set_folder (CamelFolderSearch *search,CamelFolder *folder);
Set the folder attribute of the search. This can be used to perform a slow-search when indexes and so forth are not available. Or for use by subclasses.
CamelFolder *
camel_folder_search_get_folder (CamelFolderSearch *search);
Since: 3.24
void camel_folder_search_set_summary (CamelFolderSearch *search,GPtrArray *summary);
Set the array of summary objects representing the span of the search.
If this is not set, then a subclass must provide the functions for searching headers and for the match-all operator.
GPtrArray *
camel_folder_search_get_summary (CamelFolderSearch *search);
A summary of UID-s of CamelMessageInfo
previously set by camel_folder_search_set_summary().
[element-type utf8][transfer none]
Since: 3.24
gboolean
camel_folder_search_get_summary_empty (CamelFolderSearch *search);
Whether the summary (as returned by camel_folder_search_get_summary()) is empty.
It returns FALSE when the summary is set and contains at least one item.
void camel_folder_search_set_body_index (CamelFolderSearch *search,CamelIndex *body_index);
Set the index representing the contents of all messages in this folder. If this is not set, then the folder implementation should sub-class the CamelFolderSearch and provide its own body-contains function.
GPtrArray * camel_folder_search_search (CamelFolderSearch *search,const gchar *expr,GPtrArray *uids,GCancellable *cancellable,GError **error);
Run a search. Search must have had Folder already set on it, and it must implement summaries.
search |
a CamelFolderSearch |
|
expr |
a search expression to run |
|
uids |
to search against, NULL for all uid's. |
[element-type utf8] |
cancellable |
||
error |
a GPtrArray with matching UIDs,
or NULL on error. Use camel_folder_search_free_result() to free it when
no longer needed.
[element-type utf8][transfer full]
guint32 camel_folder_search_count (CamelFolderSearch *search,const gchar *expr,GCancellable *cancellable,GError **error);
Run a search. Search must have had Folder already set on it, and it must implement summaries.
Since: 2.26
void camel_folder_search_free_result (CamelFolderSearch *search,GPtrArray *result);
Frees result of camel_folder_search_search() call.
time_t camel_folder_search_util_add_months (time_t t,gint months);
Increases time t
by the given number of months (or decreases, if
months
is negative).
Since: 3.2
time_t camel_folder_search_util_make_time (gint argc,CamelSExpResult **argv);
Implementation of 'make-time' function, which expects one argument, a string or an integer, to be converted into time_t.
Since: 3.30
gint camel_folder_search_util_compare_date (gint64 datetime1,gint64 datetime2);
Compares date portion of the two date-time values, first converted
into the local time zone. The returned value is like with strcmp().
datetime1 |
a time_t-like value of the first date-time |
|
datetime2 |
a time_t-like value of the second date-time |
0 when the dates are equal, < 0 when first is before second and > 0 when the first is after the second date
Since: 3.30