Delta generation and handling

## Modules

| Text deltas
| Text deltas.
| Tree deltas
| Traversing tree deltas.
| Path-based delta drivers
| Path-based editor drives.

## Typedefs

typedef svn_error_t *(* | svn_file_rev_handler_t) (void *baton, const char *path, svn_revnum_t rev, apr_hash_t *rev_props, svn_boolean_t result_of_merge, svn_txdelta_window_handler_t *delta_handler, void **delta_baton, apr_array_header_t *prop_diffs, apr_pool_t *pool)
| The callback invoked by file rev loopers, such as svn_ra_plugin_t.get_file_revs2() and svn_repos_get_file_revs2(). More...
typedef svn_error_t *(* | svn_file_rev_handler_old_t) (void *baton, const char *path, svn_revnum_t rev, apr_hash_t *rev_props, svn_txdelta_window_handler_t *delta_handler, void **delta_baton, apr_array_header_t *prop_diffs, apr_pool_t *pool)
| The old file rev handler interface. More...

## Functions

void | svn_compat_wrap_file_rev_handler (svn_file_rev_handler_t *handler2, void **handler2_baton, svn_file_rev_handler_old_t handler, void *handler_baton, apr_pool_t *pool)
| Return, in *handler2 and *handler2_baton a function/baton that will call handler/handler_baton, allocating the *handler2_baton in pool. More...

## Detailed Description

## Typedef Documentation

## svn_file_rev_handler_old_t

typedef svn_error_t*(* svn_file_rev_handler_old_t) (void *baton, const char *path, svn_revnum_t rev, apr_hash_t *rev_props, svn_txdelta_window_handler_t *delta_handler, void **delta_baton, apr_array_header_t *prop_diffs, apr_pool_t *pool)

The old file rev handler interface.

Note
  svn_file_rev_handler_old_t is a placeholder type for both svn_repos_file_rev_handler_t and svn_ra_file_rev_handler_t. It is reproduced here for dependency reasons.

Deprecated:
  This type is provided for the svn_compat_wrap_file_rev_handler() compatibility wrapper, and should not be used for new development.

Since
  New in 1.5.

Definition at line 1541 of file svn_delta.h.

## svn_file_rev_handler_t

typedef svn_error_t*(* svn_file_rev_handler_t) (void *baton, const char *path, svn_revnum_t rev, apr_hash_t *rev_props, svn_boolean_t result_of_merge, svn_txdelta_window_handler_t *delta_handler, void **delta_baton, apr_array_header_t *prop_diffs, apr_pool_t *pool)

The callback invoked by file rev loopers, such as svn_ra_plugin_t.get_file_revs2() and svn_repos_get_file_revs2().

baton is provided by the caller, path is the pathname of the file in revision rev and rev_props are the revision properties.

If delta_handler and delta_baton are non-NULL, they may be set to a handler/baton which will be called with the delta between the previous revision and this one after the return of this callback. They may be left as NULL/NULL.

result_of_merge will be `TRUE` if the revision being returned was included as the result of a merge.

prop_diffs is an array of svn_prop_t elements indicating the property delta for this and the previous revision.

pool may be used for temporary allocations, but you can't rely on objects allocated to live outside of this particular call and the immediately following calls to *delta_handler if any. (Pass in a pool via baton if need be.)

Since
  New in 1.5.

Definition at line 1519 of file svn_delta.h.

## Function Documentation

## svn_compat_wrap_file_rev_handler()

void svn_compat_wrap_file_rev_handler | ( | svn_file_rev_handler_t * | handler2,
|  | void ** | handler2_baton,
|  | svn_file_rev_handler_old_t | handler,
|  | void * | handler_baton,
|  | apr_pool_t * | pool
| ) |  |

Return, in *handler2 and *handler2_baton a function/baton that will call handler/handler_baton, allocating the *handler2_baton in pool.

Note
  This is used by compatibility wrappers, which exist in more than Subversion core library.
  svn_file_rev_handler_old_t is a placeholder type for both svn_repos_file_rev_handler_t and svn_ra_file_rev_handler_t. It is reproduced here for dependency reasons.

Since
  New in 1.5.