Subversion
Data Structures | Defines | Typedefs | Enumerations | Functions
svn_props.h File Reference

Subversion properties. More...

#include <apr_pools.h>
#include <apr_tables.h>
#include <apr_hash.h>
#include "svn_types.h"
#include "svn_string.h"

Go to the source code of this file.

Data Structures

struct  svn_prop_t
 A general in-memory representation of a single property. More...

Defines

#define SVN_PROP_PREFIX   "svn:"
 All Subversion property names start with this.
#define SVN_PROP_BOOLEAN_TRUE   "*"
 Properties whose values are interpreted as booleans (such as svn:executable, svn:needs_lock, and svn:special) always fold their value to this.
#define SVN_PROP_MIME_TYPE   SVN_PROP_PREFIX "mime-type"
 The mime-type of a given file.
#define SVN_PROP_IGNORE   SVN_PROP_PREFIX "ignore"
 The ignore patterns for a given directory.
#define SVN_PROP_EOL_STYLE   SVN_PROP_PREFIX "eol-style"
 The line ending style for a given file.
#define SVN_PROP_KEYWORDS   SVN_PROP_PREFIX "keywords"
 The "activated" keywords (for keyword substitution) for a given file.
#define SVN_PROP_EXECUTABLE   SVN_PROP_PREFIX "executable"
 Set to either TRUE or FALSE if we want a file to be executable or not.
#define SVN_PROP_EXECUTABLE_VALUE   SVN_PROP_BOOLEAN_TRUE
 The value to force the executable property to when set.
#define SVN_PROP_NEEDS_LOCK   SVN_PROP_PREFIX "needs-lock"
 Set to TRUE ('*') if we want a file to be set to read-only when not locked.
#define SVN_PROP_NEEDS_LOCK_VALUE   SVN_PROP_BOOLEAN_TRUE
 The value to force the needs-lock property to when set.
#define SVN_PROP_SPECIAL   SVN_PROP_PREFIX "special"
 Set if the file should be treated as a special file.
#define SVN_PROP_SPECIAL_VALUE   SVN_PROP_BOOLEAN_TRUE
 The value to force the special property to when set.
#define SVN_PROP_EXTERNALS   SVN_PROP_PREFIX "externals"
 Describes external items to check out into this directory.
#define SVN_PROP_MERGEINFO   SVN_PROP_PREFIX "mergeinfo"
 Merge info property used to record a resource's merge history.
#define SVN_PROP_TEXT_TIME   SVN_PROP_PREFIX "text-time"
 The files' last modification time.
#define SVN_PROP_OWNER   SVN_PROP_PREFIX "owner"
 The files' owner.
#define SVN_PROP_GROUP   SVN_PROP_PREFIX "group"
 The files' group.
#define SVN_PROP_UNIX_MODE   SVN_PROP_PREFIX "unix-mode"
 The files' unix-mode.
#define SVN_PROP_WC_PREFIX   SVN_PROP_PREFIX "wc:"
 The property name *prefix* that makes a property a "WC property".
#define SVN_PROP_ENTRY_PREFIX   SVN_PROP_PREFIX "entry:"
 Another type of non-user-visible property.
#define SVN_PROP_ENTRY_COMMITTED_REV   SVN_PROP_ENTRY_PREFIX "committed-rev"
 The revision this entry was last committed to on.
#define SVN_PROP_ENTRY_COMMITTED_DATE   SVN_PROP_ENTRY_PREFIX "committed-date"
 The date this entry was last committed to on.
#define SVN_PROP_ENTRY_LAST_AUTHOR   SVN_PROP_ENTRY_PREFIX "last-author"
 The author who last committed to this entry.
#define SVN_PROP_ENTRY_UUID   SVN_PROP_ENTRY_PREFIX "uuid"
 The UUID of this entry's repository.
#define SVN_PROP_ENTRY_LOCK_TOKEN   SVN_PROP_ENTRY_PREFIX "lock-token"
 The lock token for this entry.
#define SVN_PROP_CUSTOM_PREFIX   SVN_PROP_PREFIX "custom:"
 When custom, user-defined properties are passed over the wire, they will have this prefix added to their name.
#define SVN_PROP_REVISION_AUTHOR   SVN_PROP_PREFIX "author"
 The fs revision property that stores a commit's author.
#define SVN_PROP_REVISION_LOG   SVN_PROP_PREFIX "log"
 The fs revision property that stores a commit's log message.
#define SVN_PROP_REVISION_DATE   SVN_PROP_PREFIX "date"
 The fs revision property that stores a commit's date.
#define SVN_PROP_REVISION_ORIG_DATE   SVN_PROP_PREFIX "original-date"
 The fs revision property that stores a commit's "original" date.
#define SVN_PROP_REVISION_AUTOVERSIONED   SVN_PROP_PREFIX "autoversioned"
 The presence of this fs revision property indicates that the revision was automatically generated by the mod_dav_svn autoversioning feature.
#define SVNSYNC_PROP_PREFIX   SVN_PROP_PREFIX "sync-"
 Prefix for all svnsync custom properties.
#define SVNSYNC_PROP_LOCK   SVNSYNC_PROP_PREFIX "lock"
 Used to enforce mutually exclusive destination repository access.
#define SVNSYNC_PROP_FROM_URL   SVNSYNC_PROP_PREFIX "from-url"
 Identifies the repository's source URL.
#define SVNSYNC_PROP_FROM_UUID   SVNSYNC_PROP_PREFIX "from-uuid"
 Identifies the repository's source UUID.
#define SVNSYNC_PROP_LAST_MERGED_REV   SVNSYNC_PROP_PREFIX "last-merged-rev"
 Identifies the last completely mirrored revision.
#define SVNSYNC_PROP_CURRENTLY_COPYING   SVNSYNC_PROP_PREFIX "currently-copying"
 Identifies the revision currently being copied.
#define SVN_PROP_REVISION_ALL_PROPS
 This is a list of all revision properties.

Typedefs

typedef struct svn_prop_t svn_prop_t
 A general in-memory representation of a single property.
typedef enum svn_prop_kind svn_prop_kind_t
 Subversion distinguishes among several kinds of properties, particularly on the client-side.

Enumerations

enum  svn_prop_kind {
  svn_prop_entry_kind,
  svn_prop_wc_kind,
  svn_prop_regular_kind
}
 Subversion distinguishes among several kinds of properties, particularly on the client-side. More...

Functions

svn_prop_tsvn_prop_dup (const svn_prop_t *prop, apr_pool_t *pool)
 Return a duplicate of prop, allocated in pool.
apr_array_header_t * svn_prop_array_dup (const apr_array_header_t *array, apr_pool_t *pool)
 Duplicate an array of svn_prop_t items using pool.
apr_array_header_t * svn_prop_hash_to_array (apr_hash_t *hash, apr_pool_t *pool)
 Given a hash (keys const char * and values const svn_string_t) of properties, returns an array of svn_prop_t items using pool.
apr_hash_t * svn_prop_array_to_hash (const apr_array_header_t *properties, apr_pool_t *result)
 Given an array of svn_prop_t items, return a hash mapping const char * property names to const svn_string_t * values.
apr_hash_t * svn_prop_hash_dup (apr_hash_t *hash, apr_pool_t *pool)
 Creates a deep copy of hash (keys const char * and values const svn_string_t) in pool.
const char * svn_prop_get_value (apr_hash_t *properties, const char *prop_name)
 Return the value of property prop_name as it is in properties, with values const svn_string_t.
svn_prop_kind_t svn_property_kind (int *prefix_len, const char *prop_name)
 Return the prop kind of a property named prop_name, and (if prefix_len is non-NULL) set *prefix_len to the length of the prefix of prop_name that was sufficient to distinguish its kind.
svn_boolean_t svn_prop_is_svn_prop (const char *prop_name)
 Return TRUE iff prop_name represents the name of a Subversion property.
svn_boolean_t svn_prop_has_svn_prop (const apr_hash_t *props, apr_pool_t *pool)
 Return TRUE iff props has at least one property whose name represents the name of a Subversion property.
svn_boolean_t svn_prop_is_boolean (const char *prop_name)
 Return TRUE iff prop_name is a Subversion property whose value is interpreted as a boolean.
svn_boolean_t svn_prop_needs_translation (const char *prop_name)
 If prop_name requires that its value be stored as UTF8/LF in the repository, then return TRUE.
svn_error_tsvn_categorize_props (const apr_array_header_t *proplist, apr_array_header_t **entry_props, apr_array_header_t **wc_props, apr_array_header_t **regular_props, apr_pool_t *pool)
 Given a proplist array of svn_prop_t structures, allocate three new arrays in pool.
svn_error_tsvn_prop_diffs (apr_array_header_t **propdiffs, apr_hash_t *target_props, apr_hash_t *source_props, apr_pool_t *pool)
 Given two property hashes (const char *name -> const svn_string_t *value), deduce the differences between them (from source_props -> target_props).
svn_boolean_t svn_prop_name_is_valid (const char *prop_name)
 Return TRUE iff prop_name is a valid property name.

Detailed Description

Subversion properties.

Definition in file svn_props.h.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines