aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-sorter-array.h
diff options
context:
space:
mode:
Diffstat (limited to 'e-util/e-sorter-array.h')
-rw-r--r--e-util/e-sorter-array.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/e-util/e-sorter-array.h b/e-util/e-sorter-array.h
index 9a1d3fcfef..94ca51872f 100644
--- a/e-util/e-sorter-array.h
+++ b/e-util/e-sorter-array.h
@@ -39,12 +39,17 @@ G_BEGIN_DECLS
#define _E_COMPARE_ROWS_FUNC_H_
typedef gint (*ECompareRowsFunc) (gint row1,
gint row2,
+ GHashTable *cmp_cache,
gpointer closure);
#endif
+typedef GHashTable * (*ECreateCmpCacheFunc) (gpointer closure);
+
typedef struct {
ESorter base;
+ GHashTable *cmp_cache;
+ ECreateCmpCacheFunc create_cmp_cache;
ECompareRowsFunc compare;
gpointer closure;
@@ -61,9 +66,11 @@ typedef struct {
GType e_sorter_array_get_type (void);
ESorterArray *e_sorter_array_construct (ESorterArray *sorter,
+ ECreateCmpCacheFunc create_cmp_cache,
ECompareRowsFunc compare,
gpointer closure);
-ESorterArray *e_sorter_array_new (ECompareRowsFunc compare,
+ESorterArray *e_sorter_array_new (ECreateCmpCacheFunc create_cmp_cache,
+ ECompareRowsFunc compare,
gpointer closure);
void e_sorter_array_clean (ESorterArray *esa);
void e_sorter_array_set_count (ESorterArray *esa,