Skip to main content

svn_rangelist_intersect

Function svn_rangelist_intersect 

Source
pub unsafe extern "C" fn svn_rangelist_intersect(
    rangelist: *mut *mut svn_rangelist_t,
    rangelist1: *const svn_rangelist_t,
    rangelist2: *const svn_rangelist_t,
    consider_inheritance: svn_boolean_t,
    pool: *mut apr_pool_t,
) -> *mut svn_error_t
Expand description

Find the intersection of two rangelists consisting of @c svn_merge_range_t * elements, @a rangelist1 and @a rangelist2, and place the result in @a *rangelist (which is never @c NULL).

@a consider_inheritance determines how to account for the inheritability of the two rangelist’s ranges when calculating the intersection, @see svn_mergeinfo_diff(). If @a consider_inheritance is FALSE then ranges with different inheritance can intersect, but the resulting @a *rangelist is non-inheritable only if the corresponding ranges from both @a rangelist1 and @a rangelist2 are non-inheritable. If @a consider_inheritance is TRUE, then ranges with different inheritance can never intersect.

Note: @a rangelist1 and @a rangelist2 must be sorted as said by @c svn_sort_compare_ranges(). @a *rangelist is guaranteed to be in sorted order.

Allocate the entire output in @a pool.

@since New in 1.5.