| /* tree.h : internal interface to tree node functions |
| * |
| * ==================================================================== |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * ==================================================================== |
| */ |
| |
| #ifndef SVN_LIBSVN_FS_TREE_H |
| #define SVN_LIBSVN_FS_TREE_H |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif /* __cplusplus */ |
| |
| #include "svn_props.h" |
| |
| |
| |
| /* These functions implement some of the calls in the FS loader |
| library's fs and txn vtables. */ |
| |
| svn_error_t *svn_fs_base__revision_root(svn_fs_root_t **root_p, svn_fs_t *fs, |
| svn_revnum_t rev, apr_pool_t *pool); |
| |
| svn_error_t *svn_fs_base__deltify(svn_fs_t *fs, svn_revnum_t rev, |
| apr_pool_t *pool); |
| |
| svn_error_t *svn_fs_base__commit_txn(const char **conflict_p, |
| svn_revnum_t *new_rev, svn_fs_txn_t *txn, |
| apr_pool_t *pool); |
| |
| svn_error_t *svn_fs_base__txn_root(svn_fs_root_t **root_p, svn_fs_txn_t *txn, |
| apr_pool_t *pool); |
| |
| |
| |
| /* Inserting and retrieving miscellany records in the fs */ |
| |
| /* Set the value of miscellaneous records KEY to VAL in FS. To remove |
| a value altogether, pass NULL for VAL. |
| |
| KEY and VAL should be NULL-terminated strings. */ |
| svn_error_t * |
| svn_fs_base__miscellaneous_set(svn_fs_t *fs, |
| const char *key, |
| const char *val, |
| apr_pool_t *pool); |
| |
| /* Retrieve the miscellany records for KEY into *VAL for FS, allocated |
| in POOL. If the fs doesn't support miscellany storage, or the value |
| does not exist, *VAL is set to NULL. |
| |
| KEY should be a NULL-terminated string. */ |
| svn_error_t * |
| svn_fs_base__miscellaneous_get(const char **val, |
| svn_fs_t *fs, |
| const char *key, |
| apr_pool_t *pool); |
| |
| |
| |
| |
| |
| /* Helper func: in the context of TRAIL, return the KIND of PATH in |
| head revision. If PATH doesn't exist, set *KIND to svn_node_none.*/ |
| svn_error_t *svn_fs_base__get_path_kind(svn_node_kind_t *kind, |
| const char *path, |
| trail_t *trail, |
| apr_pool_t *pool); |
| |
| /* Helper func: in the context of TRAIL, set *REV to the created-rev |
| of PATH in head revision. If PATH doesn't exist, set *REV to |
| SVN_INVALID_REVNUM. */ |
| svn_error_t *svn_fs_base__get_path_created_rev(svn_revnum_t *rev, |
| const char *path, |
| trail_t *trail, |
| apr_pool_t *pool); |
| |
| |
| #ifdef __cplusplus |
| } |
| #endif /* __cplusplus */ |
| |
| #endif /* SVN_LIBSVN_FS_TREE_H */ |