Skip to main content

svn_client_proplist4

Function svn_client_proplist4 

Source
pub unsafe extern "C" fn svn_client_proplist4(
    target: *const c_char,
    peg_revision: *const svn_opt_revision_t,
    revision: *const svn_opt_revision_t,
    depth: svn_depth_t,
    changelists: *const apr_array_header_t,
    get_target_inherited_props: svn_boolean_t,
    receiver: svn_proplist_receiver2_t,
    receiver_baton: *mut c_void,
    ctx: *mut svn_client_ctx_t,
    scratch_pool: *mut apr_pool_t,
) -> *mut svn_error_t
Expand description

Invoke @a receiver with @a receiver_baton to return the regular explicit, and possibly the inherited, properties of @a target, a URL or working copy path. @a receiver will be called for each path encountered.

@a target is a WC path or a URL.

If @a revision->kind is #svn_opt_revision_unspecified, then get the explicit (and possibly the inherited) properties from the working copy, if @a target is a working copy path, or from the repository head if @a target is a URL. Else get the properties as of @a revision. The actual node revision selected is determined by the path as it exists in @a peg_revision. If @a peg_revision->kind is #svn_opt_revision_unspecified, then it defaults to #svn_opt_revision_head for URLs or #svn_opt_revision_working for WC targets. Use the authentication baton cached in @a ctx for authentication if contacting the repository.

If @a depth is #svn_depth_empty, list only the properties of @a target itself. If @a depth is #svn_depth_files, and @a target is a directory, list the properties of @a target and its file entries. If #svn_depth_immediates, list the properties of its immediate file and directory entries. If #svn_depth_infinity, list the properties of its file entries and recurse (with #svn_depth_infinity) on directory entries. #svn_depth_unknown is equivalent to #svn_depth_empty. All other values produce undefined results.

@a changelists is an array of const char * changelist names, used as a restrictive filter on items whose properties are listed; that is, don’t list properties on any item unless it’s a member of one of those changelists. If @a changelists is empty (or altogether @c NULL), no changelist filtering occurs.

If @a get_target_inherited_props is true, then also return any inherited properties when @a receiver is called for @a target. If @a target is a working copy path, then properties inherited by @a target as far as the root of the working copy are obtained from the working copy’s actual property values. Properties inherited from above the working copy root come from the inherited properties cache. If @a target is a URL, then the inherited properties come from the repository. If @a get_target_inherited_props is false, then no inherited properties are returned to @a receiver.

If @a target is not found, return the error #SVN_ERR_ENTRY_NOT_FOUND.

@since New in 1.8.