summaryrefslogtreecommitdiff
path: root/subversion/bindings/swig/proxy/svn_iter_h.swg
blob: 04dc6a92d5711c1c9510ae9303edd0ac6c176a6d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
/* Proxy classes for svn_iter.h
 * DO NOT EDIT -- AUTOMATICALLY GENERATED */

/* No default constructors for opaque structs */
#ifdef SWIGPYTHON
#endif

/* Callback typemaps */
#ifdef SWIGPYTHON
%apply CALLABLE_CALLBACK {
  svn_iter_apr_hash_cb_t,
  svn_iter_apr_array_cb_t
};
%apply CALLABLE_CALLBACK * {
  svn_iter_apr_hash_cb_t *,
  svn_iter_apr_array_cb_t *
};
#endif

/* Baton typemaps */
#ifdef SWIGPYTHON
%apply void *PY_AS_VOID {
  void *baton
};
#endif

/* Includes */
%{
#include "svn_iter.h"
%}
%include svn_iter.h

/* Structure definitions */
#ifdef SWIGPYTHON
#endif

/* Callbacks */

%inline %{
static svn_error_t * svn_iter_invoke_apr_hash_cb(
  svn_iter_apr_hash_cb_t _obj, void *baton, const void *key, apr_ssize_t klen, void *val, apr_pool_t *pool) {
  return _obj(baton, key, klen, val, pool);
}

static svn_error_t * svn_iter_invoke_apr_array_cb(
  svn_iter_apr_array_cb_t _obj, void *baton, void *item, apr_pool_t *pool) {
  return _obj(baton, item, pool);
}

%}

#ifdef SWIGPYTHON
%funcptr_proxy(svn_iter_apr_hash_cb_t, svn_iter_invoke_apr_hash_cb);
%funcptr_proxy(svn_iter_apr_array_cb_t, svn_iter_invoke_apr_array_cb);

#endif