summaryrefslogtreecommitdiff
path: root/subversion/libsvn_fs_x/changes.h
diff options
context:
space:
mode:
Diffstat (limited to 'subversion/libsvn_fs_x/changes.h')
-rw-r--r--subversion/libsvn_fs_x/changes.h34
1 files changed, 25 insertions, 9 deletions
diff --git a/subversion/libsvn_fs_x/changes.h b/subversion/libsvn_fs_x/changes.h
index ccb264761c449..9ba164b3e836e 100644
--- a/subversion/libsvn_fs_x/changes.h
+++ b/subversion/libsvn_fs_x/changes.h
@@ -20,8 +20,8 @@
* ====================================================================
*/
-#ifndef SVN_LIBSVN_FS__CHANGES_H
-#define SVN_LIBSVN_FS__CHANGES_H
+#ifndef SVN_LIBSVN_FS_X_CHANGES_H
+#define SVN_LIBSVN_FS_X_CHANGES_H
#include "svn_io.h"
#include "fs.h"
@@ -71,14 +71,16 @@ svn_fs_x__changes_estimate_size(const svn_fs_x__changes_t *changes);
/* Read changes containers. */
-/* From CHANGES, extract the change list with the given IDX. Allocate
- * the result in POOL and return it in *LIST.
+/* From CHANGES, access the change list with the given IDX and extract the
+ * next entries according to CONTEXT. Allocate the result in RESULT_POOL
+ * and return it in *LIST.
*/
svn_error_t *
svn_fs_x__changes_get_list(apr_array_header_t **list,
const svn_fs_x__changes_t *changes,
apr_size_t idx,
- apr_pool_t *pool);
+ svn_fs_x__changes_context_t *context,
+ apr_pool_t *result_pool);
/* I/O interface. */
@@ -114,13 +116,27 @@ svn_error_t *
svn_fs_x__deserialize_changes_container(void **out,
void *data,
apr_size_t data_len,
- apr_pool_t *pool);
+ apr_pool_t *result_pool);
+
+/* Baton type to be used with svn_fs_x__changes_get_list_func. */
+typedef struct svn_fs_x__changes_get_list_baton_t
+{
+ /* Sub-item to query */
+ apr_uint32_t sub_item;
+
+ /* Deliver data starting from this index within the changes list. */
+ int start;
+
+ /* To be set by svn_fs_x__changes_get_list_func:
+ Did we deliver the last change in that list? */
+ svn_boolean_t *eol;
+} svn_fs_x__changes_get_list_baton_t;
/* Implements svn_cache__partial_getter_func_t for svn_fs_x__changes_t,
* setting *OUT to the change list (apr_array_header_t *) selected by
- * the apr_uint32_t index passed in as *BATON. This function is similar
- * to svn_fs_x__changes_get_list but operates on the cache serialized
- * representation of the container.
+ * the svn_fs_x__changes_get_list_baton_t passed in as *BATON. This
+ * function is similar to svn_fs_x__changes_get_list but operates on
+ * the cache serialized representation of the container.
*/
svn_error_t *
svn_fs_x__changes_get_list_func(void **out,