⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fs_fs.h

📁 subversion-1.4.3-1.tar.gz 配置svn的源码
💻 H
📖 第 1 页 / 共 2 页
字号:
/* fs_fs.h : interface to the native filesystem layer * * ==================================================================== * Copyright (c) 2000-2006 CollabNet.  All rights reserved. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution.  The terms * are also available at http://subversion.tigris.org/license-1.html. * If newer versions of this license are posted there, you may use a * newer version instead, at your option. * * This software consists of voluntary contributions made by many * individuals.  For exact contribution history, see the revision * history and logs, available at http://subversion.tigris.org/. * ==================================================================== */#ifndef SVN_LIBSVN_FS__FS_FS_H#define SVN_LIBSVN_FS__FS_FS_H#include "revs-txns.h"/* Open the fsfs filesystem pointed to by PATH and associate it with   filesystem object FS.  Use POOL for temporary allocations. */svn_error_t *svn_fs_fs__open(svn_fs_t *fs,                             const char *path,                             apr_pool_t *pool);/* Copy the fsfs filesystem at SRC_PATH into a new copy at DST_PATH.   Use POOL for temporary allocations. */svn_error_t *svn_fs_fs__hotcopy(const char *src_path,                                const char *dst_path,                                apr_pool_t *pool);/* Set *NODEREV_P to the node-revision for the node ID in FS.  Do any   allocations in POOL. */svn_error_t *svn_fs_fs__get_node_revision(node_revision_t **noderev_p,                                          svn_fs_t *fs,                                          const svn_fs_id_t *id,                                          apr_pool_t *pool);/* Store NODEREV as the node-revision for the node whose id is ID in   FS.  Do any necessary temporary allocation in POOL. */svn_error_t *svn_fs_fs__put_node_revision(svn_fs_t *fs,                                          const svn_fs_id_t *id,                                          node_revision_t *noderev,                                          apr_pool_t *pool);/* Set *YOUNGEST to the youngest revision in filesystem FS.  Do any   temporary allocation in POOL. */svn_error_t *svn_fs_fs__youngest_rev(svn_revnum_t *youngest,                                     svn_fs_t *fs,                                     apr_pool_t *pool);/* Set *ROOT_ID to the node-id for the root of revision REV in   filesystem FS.  Do any allocations in POOL. */svn_error_t *svn_fs_fs__rev_get_root(svn_fs_id_t **root_id,                                     svn_fs_t *fs,                                     svn_revnum_t rev,                                     apr_pool_t *pool);/* Set *ENTRIES to an apr_hash_t of dirent structs that contain the   directory entries of node-revision NODEREV in filesystem FS.  Use   POOL for temporary allocations.  The returned hash does *not* live   in POOL, and becomes invalid on the next call to this function.  If   you need it to live longer, copy it with   svn_fs_fs__copy_dir_entries. */svn_error_t *svn_fs_fs__rep_contents_dir(apr_hash_t **entries,                                         svn_fs_t *fs,                                         node_revision_t *noderev,                                         apr_pool_t *pool);/* Return a copy of the directory hash ENTRIES in POOL.  Use this to   copy the result of svn_fs_fs__rep_contents_dir into a predictable   place so that doesn't become invalid before it's no longer   needed. */apr_hash_t *svn_fs_fs__copy_dir_entries(apr_hash_t *entries,                                        apr_pool_t *pool);/* Set *CONTENTS to be a readable svn_stream_t that receives the text   representation of node-revision NODEREV as seen in filesystem FS.   Use POOL for temporary allocations. */svn_error_t *svn_fs_fs__get_contents(svn_stream_t **contents,                                     svn_fs_t *fs,                                     node_revision_t *noderev,                                     apr_pool_t *pool);/* Set *STREAM_P to a delta stream turning the contents of the file SOURCE into   the contents of the file TARGET, allocated in POOL.   If SOURCE is null, the empty string will be used. */svn_error_t *svn_fs_fs__get_file_delta_stream(svn_txdelta_stream_t **stream_p,                                              svn_fs_t *fs,                                              node_revision_t *source,                                              node_revision_t *target,                                              apr_pool_t *pool);/* Set *PROPLIST to be an apr_hash_t containing the property list of   node-revision NODEREV as seen in filesystem FS.  Use POOL for   temporary allocations. */svn_error_t *svn_fs_fs__get_proplist(apr_hash_t **proplist,                                     svn_fs_t *fs,                                     node_revision_t *noderev,                                     apr_pool_t *pool);/* Set the revision property list of revision REV in filesystem FS to   PROPLIST.  Use POOL for temporary allocations. */svn_error_t *svn_fs_fs__set_revision_proplist(svn_fs_t *fs,                                              svn_revnum_t rev,                                              apr_hash_t *proplist,                                              apr_pool_t *pool);/* Set *PROPLIST to be an apr_hash_t containing the property list of   revision REV as seen in filesystem FS.  Use POOL for temporary   allocations. */svn_error_t *svn_fs_fs__revision_proplist(apr_hash_t **proplist,                                          svn_fs_t *fs,                                          svn_revnum_t rev,                                          apr_pool_t *pool);/* Set *LENGTH to the be fulltext length of the node revision   specified by NODEREV.  Use POOL for temporary allocations. */svn_error_t *svn_fs_fs__file_length(svn_filesize_t *length,                                    node_revision_t *noderev,                                    apr_pool_t *pool);/* Return TRUE if the representation keys in A and B both point to the   same representation, else return FALSE. */svn_boolean_t svn_fs_fs__noderev_same_rep_key(representation_t *a,                                              representation_t *b);/* Return a copy of the representation REP allocated from POOL. */representation_t *svn_fs_fs__rep_copy(representation_t *rep,                                      apr_pool_t *pool);/* Return the record MD5 checksum of the text representation of NODREV   into DIGEST, allocating from POOL.  If no stored checksum is   available, put all 0's into DIGEST. */svn_error_t *svn_fs_fs__file_checksum(unsigned char digest[],                                      node_revision_t *noderev,                                      apr_pool_t *pool);/* Find the paths which were changed in revision REV of filesystem FS   and store them in *CHANGED_PATHS_P.  Cached copyfrom information   will be stored in *COPYFROM_CACHE.  Get any temporary allocations   from POOL. */svn_error_t *svn_fs_fs__paths_changed(apr_hash_t **changed_paths_p,                                      svn_fs_t *fs,                                      svn_revnum_t rev,                                      apr_hash_t *copyfrom_cache,                                      apr_pool_t *pool);/* Create a new transaction in filesystem FS, based on revision REV,   and store it in *TXN_P.  Allocate all necessary variables from   POOL. */svn_error_t *svn_fs_fs__create_txn  (svn_fs_txn_t **txn_p,                                     svn_fs_t *fs,                                     svn_revnum_t rev,                                     apr_pool_t *pool);/* Set the transaction property NAME to the value VALUE in transaction   TXN.  Perform temporary allocations from POOL. */svn_error_t *svn_fs_fs__change_txn_prop(svn_fs_txn_t *txn,                                        const char *name,                                        const svn_string_t *value,                                        apr_pool_t *pool);/* Store a transaction record in *TXN_P for the transaction identified   by TXN_ID in filesystem FS.  Allocate everything from POOL. */svn_error_t *svn_fs_fs__get_txn(transaction_t **txn_p,                                svn_fs_t *fs,                                const char *txn_id,                                apr_pool_t *pool);/* Create an entirely new mutable node in the filesystem FS, whose   node-revision is NODEREV.  Set *ID_P to the new node revision's ID.   Use POOL for any temporary allocation.  COPY_ID is the copy_id to   use in the node revision ID.  TXN_ID is the Subversion transaction   under which this occurs. */svn_error_t *svn_fs_fs__create_node(const svn_fs_id_t **id_p,                                    svn_fs_t *fs,                                    node_revision_t *noderev,                                    const char *copy_id,                                    const char *txn_id,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -