1/* Proxy classes for svn_io.h
2 * DO NOT EDIT -- AUTOMATICALLY GENERATED
3 * BY build/generator/swig/header_wrappers.py */
4
5/* No default constructors for opaque structs */
6#ifdef SWIGPYTHON
7%nodefault svn_stream_t;
8%nodefault svn_stream_mark_t;
9#endif
10
11/* Callback typemaps */
12#ifdef SWIGPYTHON
13%apply CALLABLE_CALLBACK {
14  svn_read_fn_t,
15  svn_stream_skip_fn_t,
16  svn_write_fn_t,
17  svn_close_fn_t,
18  svn_stream_mark_fn_t,
19  svn_stream_seek_fn_t,
20  svn_stream_data_available_fn_t,
21  svn_stream_readline_fn_t,
22  svn_stream_lazyopen_func_t,
23  svn_io_walk_func_t
24};
25%apply CALLABLE_CALLBACK * {
26  svn_read_fn_t *,
27  svn_stream_skip_fn_t *,
28  svn_write_fn_t *,
29  svn_close_fn_t *,
30  svn_stream_mark_fn_t *,
31  svn_stream_seek_fn_t *,
32  svn_stream_data_available_fn_t *,
33  svn_stream_readline_fn_t *,
34  svn_stream_lazyopen_func_t *,
35  svn_io_walk_func_t *
36};
37#endif
38
39/* Baton typemaps */
40#ifdef SWIGPYTHON
41%apply void *PY_AS_VOID {
42  void *cancel_baton,
43  void *baton,
44  void *open_baton,
45  void *walk_baton
46};
47#endif
48
49/* Includes */
50%{
51#include "svn_io.h"
52%}
53%include svn_io.h
54
55/* Structure definitions */
56#ifdef SWIGPYTHON
57%proxy(svn_io_dirent2_t);
58%proxy(svn_io_dirent_t);
59%opaque_proxy(svn_stream_t);
60%opaque_proxy(svn_stream_mark_t);
61#endif
62
63/* Callbacks */
64
65%inline %{
66static svn_error_t * svn_read_invoke_fn(
67  svn_read_fn_t _obj, void *baton, char *buffer, apr_size_t *len) {
68  return _obj(baton, buffer, len);
69}
70
71static svn_error_t * svn_stream_invoke_skip_fn(
72  svn_stream_skip_fn_t _obj, void *baton, apr_size_t len) {
73  return _obj(baton, len);
74}
75
76static svn_error_t * svn_write_invoke_fn(
77  svn_write_fn_t _obj, void *baton, const char *data, apr_size_t *len) {
78  return _obj(baton, data, len);
79}
80
81static svn_error_t * svn_close_invoke_fn(
82  svn_close_fn_t _obj, void *baton) {
83  return _obj(baton);
84}
85
86static svn_error_t * svn_stream_invoke_mark_fn(
87  svn_stream_mark_fn_t _obj, void *baton, svn_stream_mark_t **mark, apr_pool_t *pool) {
88  return _obj(baton, mark, pool);
89}
90
91static svn_error_t * svn_stream_invoke_seek_fn(
92  svn_stream_seek_fn_t _obj, void *baton, const svn_stream_mark_t *mark) {
93  return _obj(baton, mark);
94}
95
96static svn_error_t * svn_stream_invoke_data_available_fn(
97  svn_stream_data_available_fn_t _obj, void *baton, svn_boolean_t *data_available) {
98  return _obj(baton, data_available);
99}
100
101static svn_error_t * svn_stream_invoke_readline_fn(
102  svn_stream_readline_fn_t _obj, void *baton, svn_stringbuf_t **stringbuf, const char *eol, svn_boolean_t *eof, apr_pool_t *pool) {
103  return _obj(baton, stringbuf, eol, eof, pool);
104}
105
106static svn_error_t * svn_stream_invoke_lazyopen_func(
107  svn_stream_lazyopen_func_t _obj, svn_stream_t **stream, void *baton, apr_pool_t *result_pool, apr_pool_t *scratch_pool) {
108  return _obj(stream, baton, result_pool, scratch_pool);
109}
110
111static svn_error_t * svn_io_invoke_walk_func(
112  svn_io_walk_func_t _obj, void *baton, const char *path, const apr_finfo_t *finfo, apr_pool_t *pool) {
113  return _obj(baton, path, finfo, pool);
114}
115
116%}
117
118#ifdef SWIGPYTHON
119%funcptr_proxy(svn_read_fn_t, svn_read_invoke_fn);
120%funcptr_proxy(svn_stream_skip_fn_t, svn_stream_invoke_skip_fn);
121%funcptr_proxy(svn_write_fn_t, svn_write_invoke_fn);
122%funcptr_proxy(svn_close_fn_t, svn_close_invoke_fn);
123%funcptr_proxy(svn_stream_mark_fn_t, svn_stream_invoke_mark_fn);
124%funcptr_proxy(svn_stream_seek_fn_t, svn_stream_invoke_seek_fn);
125%funcptr_proxy(svn_stream_data_available_fn_t, svn_stream_invoke_data_available_fn);
126%funcptr_proxy(svn_stream_readline_fn_t, svn_stream_invoke_readline_fn);
127%funcptr_proxy(svn_stream_lazyopen_func_t, svn_stream_invoke_lazyopen_func);
128%funcptr_proxy(svn_io_walk_func_t, svn_io_invoke_walk_func);
129
130#endif
131