VSN DATE REASON FOR CHANGE
--- ---------- ------------------------------------------------
1 2001-02-17 Initial revision.
2 2004-06-29 Preparing for svn 1.1, which adds new RA vtable funcs.
2005-01-19 Rework the plugin interface and don't provide the vtable
to the client. Separate ABI versions are no longer used.
@deprecated Provided for backward compatibility with the 1.0 API.
Initialize libsvn_ra_neon.
*
* @deprecated Provided for backward compatibility with the 1.1 API.
### we might have a problem if the RA layer ever wants a property * ### that corresponds to a different revision of the file than * ### what is in the WC. we'll cross that bridge one day...
APR_FILEPATH_NATIVE Use native path seperators (e.g. '\' on Win32)
APR_FILEPATH_TRUENAME Tests that the root exists, and makes it proper
@param p the pool to allocate the new path string from
@remark on return, filepath points to the first non-root character in the
given filepath. In the simplest example, given a filepath of "/foo",
returns the rootpath of "/" and filepath points at "foo". This is far
more complex on other platforms, which will canonicalize the root form
to a consistant format, given the APR_FILEPATH_TRUENAME flag, and also
test for the validity of that root (e.g., that a drive d:/ or network
share //machine/foovol/).
The function returns APR_ERELATIVE if filepath isn't rooted (an
error), APR_EINCOMPLETE if the root path is ambigious (but potentially
legitimate, e.g. "/" on Windows is incomplete because it doesn't specify
the drive letter), or APR_EBADPATH if the root is simply invalid.
APR_SUCCESS is returned if filepath is an absolute path.
APR_THREAD_MUTEX_DEFAULT platform-optimal lock behavior.
APR_THREAD_MUTEX_NESTED enable nested (recursive) locks.
APR_THREAD_MUTEX_UNNESTED disable nested locks (non-recursive).
@param pool the pool from which to allocate the mutex.
@warning Be cautious in using APR_THREAD_MUTEX_DEFAULT. While this is the
most optimial mutex based on a given platform's performance charateristics,
it will behave as either a nested or an unnested lock.
APR_POOL_DECLARE_ACCESSOR(file);
becomes:
APR_DECLARE(apr_pool_t *) apr_file_pool_get(apr_file_t *ob);
@remark Doxygen unwraps this macro (via doxygen.conf) to provide
actual help for each specific occurance of apr_foo_pool_get.
@remark the linkage is specified for APR. It would be possible to expand
the macros to support other linkages.
Implementation helper macro to provide apr_foo_pool_get()s.
In the implementation, the APR_POOL_IMPLEMENT_ACCESSOR() is used to
actually define the function. It assumes the field is named "pool".
Pool debug levels
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---------------------------------
| | | | | | | | x | General debug code enabled (useful in
combination with --with-efence).
| | | | | | | x | | Verbose output on stderr (report
CREATE, CLEAR, DESTROY).
| | | | x | | | | | Verbose output on stderr (report
PALLOC, PCALLOC).
| | | | | | x | | | Lifetime checking. On each use of a
pool, check its lifetime. If the pool
is out of scope, abort().
In combination with the verbose flag
above, it will output LIFE in such an
event prior to aborting.
| | | | | x | | | | Pool owner checking. On each use of a
pool, check if the current thread is the
pools owner. If not, abort(). In
combination with the verbose flag above,
it will output OWNER in such an event
prior to aborting. Use the debug
function apr_pool_owner_set() to switch
a pools ownership.
When no debug level was specified, assume general debug mode.
If level 0 was specified, debugging is switched off
the place in the code where the particular function was called
A function that is called when allocation fails.