GME  13
svn_iter.h
Go to the documentation of this file.
00001 
00028 #ifndef SVN_ITER_H
00029 #define SVN_ITER_H
00030 
00031 #include <apr.h>         /* for apr_ssize_t */
00032 #include <apr_pools.h>   /* for apr_pool_t */
00033 #include <apr_hash.h>    /* for apr_hash_t */
00034 #include <apr_tables.h>  /* for apr_array_header_t */
00035 
00036 #include "svn_types.h"
00037 
00038 #ifdef __cplusplus
00039 extern "C" {
00040 #endif /* __cplusplus */
00041 
00042 
00053 typedef svn_error_t *(*svn_iter_apr_hash_cb_t)(void *baton,
00054                                                const void *key,
00055                                                apr_ssize_t klen,
00056                                                void *val, apr_pool_t *pool);
00057 
00073 svn_error_t *
00074 svn_iter_apr_hash(svn_boolean_t *completed,
00075                   apr_hash_t *hash,
00076                   svn_iter_apr_hash_cb_t func,
00077                   void *baton,
00078                   apr_pool_t *pool);
00079 
00090 typedef svn_error_t *(*svn_iter_apr_array_cb_t)(void *baton,
00091                                                 void *item,
00092                                                 apr_pool_t *pool);
00093 
00109 svn_error_t *
00110 svn_iter_apr_array(svn_boolean_t *completed,
00111                    const apr_array_header_t *array,
00112                    svn_iter_apr_array_cb_t func,
00113                    void *baton,
00114                    apr_pool_t *pool);
00115 
00116 
00119 svn_error_t *
00120 svn_iter__break(void);
00121 
00122 
00132 #define svn_iter_break(pool) return svn_iter__break()
00133 
00134 
00135 #ifdef __cplusplus
00136 }
00137 #endif /* __cplusplus */
00138 
00139 #endif /* SVN_ITER_H */