]> git.wh0rd.org - ICEs.git/blame - 360229/xapian_wrap.i.0
more
[ICEs.git] / 360229 / xapian_wrap.i.0
CommitLineData
bd3239d2
MF
1template<typename T> class SwigValueWrapper {
2 struct SwigMovePointer {
3 T *ptr;
4 SwigMovePointer(T *p) : ptr(p) { }
5 ~SwigMovePointer() { delete ptr; }
6 SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
7 } pointer;
8 SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
9 SwigValueWrapper(const SwigValueWrapper<T>& rhs);
10public:
11 SwigValueWrapper() : pointer(0) { }
12 SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
13 operator T&() const { return *pointer.ptr; }
14 T *operator&() { return pointer.ptr; }
15};
16template <typename T> T SwigValueInit() {
17 return T();
18}
19extern "C" {
20typedef long unsigned int size_t;
21typedef unsigned char __u_char;
22typedef unsigned short int __u_short;
23typedef unsigned int __u_int;
24typedef unsigned long int __u_long;
25typedef signed char __int8_t;
26typedef unsigned char __uint8_t;
27typedef signed short int __int16_t;
28typedef unsigned short int __uint16_t;
29typedef signed int __int32_t;
30typedef unsigned int __uint32_t;
31typedef signed long int __int64_t;
32typedef unsigned long int __uint64_t;
33typedef long int __quad_t;
34typedef unsigned long int __u_quad_t;
35typedef unsigned long int __dev_t;
36typedef unsigned int __uid_t;
37typedef unsigned int __gid_t;
38typedef unsigned long int __ino_t;
39typedef unsigned long int __ino64_t;
40typedef unsigned int __mode_t;
41typedef unsigned long int __nlink_t;
42typedef long int __off_t;
43typedef long int __off64_t;
44typedef int __pid_t;
45typedef struct { int __val[2]; } __fsid_t;
46typedef long int __clock_t;
47typedef unsigned long int __rlim_t;
48typedef unsigned long int __rlim64_t;
49typedef unsigned int __id_t;
50typedef long int __time_t;
51typedef unsigned int __useconds_t;
52typedef long int __suseconds_t;
53typedef int __daddr_t;
54typedef long int __swblk_t;
55typedef int __key_t;
56typedef int __clockid_t;
57typedef void * __timer_t;
58typedef long int __blksize_t;
59typedef long int __blkcnt_t;
60typedef long int __blkcnt64_t;
61typedef unsigned long int __fsblkcnt_t;
62typedef unsigned long int __fsblkcnt64_t;
63typedef unsigned long int __fsfilcnt_t;
64typedef unsigned long int __fsfilcnt64_t;
65typedef long int __ssize_t;
66typedef __off64_t __loff_t;
67typedef __quad_t *__qaddr_t;
68typedef char *__caddr_t;
69typedef long int __intptr_t;
70typedef unsigned int __socklen_t;
71struct _IO_FILE;
72typedef struct _IO_FILE FILE;
73typedef struct _IO_FILE __FILE;
74typedef struct
75{
76 int __count;
77 union
78 {
79 unsigned int __wch;
80 char __wchb[4];
81 } __value;
82} __mbstate_t;
83typedef struct
84{
85 __off_t __pos;
86 __mbstate_t __state;
87} _G_fpos_t;
88typedef struct
89{
90 __off64_t __pos;
91 __mbstate_t __state;
92} _G_fpos64_t;
93typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
94typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
95typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
96typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
97typedef __builtin_va_list __gnuc_va_list;
98struct _IO_jump_t; struct _IO_FILE;
99typedef void _IO_lock_t;
100struct _IO_marker {
101 struct _IO_marker *_next;
102 struct _IO_FILE *_sbuf;
103 int _pos;
104};
105enum __codecvt_result
106{
107 __codecvt_ok,
108 __codecvt_partial,
109 __codecvt_error,
110 __codecvt_noconv
111};
112struct _IO_FILE {
113 int _flags;
114 char* _IO_read_ptr;
115 char* _IO_read_end;
116 char* _IO_read_base;
117 char* _IO_write_base;
118 char* _IO_write_ptr;
119 char* _IO_write_end;
120 char* _IO_buf_base;
121 char* _IO_buf_end;
122 char *_IO_save_base;
123 char *_IO_backup_base;
124 char *_IO_save_end;
125 struct _IO_marker *_markers;
126 struct _IO_FILE *_chain;
127 int _fileno;
128 int _flags2;
129 __off_t _old_offset;
130 unsigned short _cur_column;
131 signed char _vtable_offset;
132 char _shortbuf[1];
133 _IO_lock_t *_lock;
134 __off64_t _offset;
135 void *__pad1;
136 void *__pad2;
137 void *__pad3;
138 void *__pad4;
139 size_t __pad5;
140 int _mode;
141 char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
142};
143struct _IO_FILE_plus;
144extern struct _IO_FILE_plus _IO_2_1_stdin_;
145extern struct _IO_FILE_plus _IO_2_1_stdout_;
146extern struct _IO_FILE_plus _IO_2_1_stderr_;
147typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes);
148typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf,
149 size_t __n);
150typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w);
151typedef int __io_close_fn (void *__cookie);
152typedef __io_read_fn cookie_read_function_t;
153typedef __io_write_fn cookie_write_function_t;
154typedef __io_seek_fn cookie_seek_function_t;
155typedef __io_close_fn cookie_close_function_t;
156typedef struct
157{
158 __io_read_fn *read;
159 __io_write_fn *write;
160 __io_seek_fn *seek;
161 __io_close_fn *close;
162} _IO_cookie_io_functions_t;
163typedef _IO_cookie_io_functions_t cookie_io_functions_t;
164struct _IO_cookie_file;
165extern void _IO_cookie_init (struct _IO_cookie_file *__cfile, int __read_write,
166 void *__cookie, _IO_cookie_io_functions_t __fns);
167extern "C" {
168extern int __underflow (_IO_FILE *);
169extern int __uflow (_IO_FILE *);
170extern int __overflow (_IO_FILE *, int);
171extern int _IO_getc (_IO_FILE *__fp);
172extern int _IO_putc (int __c, _IO_FILE *__fp);
173extern int _IO_feof (_IO_FILE *__fp) throw ();
174extern int _IO_ferror (_IO_FILE *__fp) throw ();
175extern int _IO_peekc_locked (_IO_FILE *__fp);
176extern void _IO_flockfile (_IO_FILE *) throw ();
177extern void _IO_funlockfile (_IO_FILE *) throw ();
178extern int _IO_ftrylockfile (_IO_FILE *) throw ();
179extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict,
180 __gnuc_va_list, int *__restrict);
181extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict,
182 __gnuc_va_list);
183extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t);
184extern size_t _IO_sgetn (_IO_FILE *, void *, size_t);
185extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int);
186extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int);
187extern void _IO_free_backup_area (_IO_FILE *) throw ();
188}
189typedef __gnuc_va_list va_list;
190typedef _G_fpos64_t fpos_t;
191typedef _G_fpos64_t fpos64_t;
192extern struct _IO_FILE *stdin;
193extern struct _IO_FILE *stdout;
194extern struct _IO_FILE *stderr;
195extern int remove (__const char *__filename) throw ();
196extern int rename (__const char *__old, __const char *__new) throw ();
197extern int renameat (int __oldfd, __const char *__old, int __newfd,
198 __const char *__new) throw ();
199extern FILE *tmpfile (void) __asm__ ("" "tmpfile64") ;
200extern FILE *tmpfile64 (void) ;
201extern char *tmpnam (char *__s) throw () ;
202extern char *tmpnam_r (char *__s) throw () ;
203extern char *tempnam (__const char *__dir, __const char *__pfx)
204 throw () __attribute__ ((__malloc__)) ;
205extern int fclose (FILE *__stream);
206extern int fflush (FILE *__stream);
207extern int fflush_unlocked (FILE *__stream);
208extern int fcloseall (void);
209extern FILE *fopen (__const char *__restrict __filename, __const char *__restrict __modes) __asm__ ("" "fopen64")
210 ;
211extern FILE *freopen (__const char *__restrict __filename, __const char *__restrict __modes, FILE *__restrict __stream) __asm__ ("" "freopen64")
212 ;
213extern FILE *fopen64 (__const char *__restrict __filename,
214 __const char *__restrict __modes) ;
215extern FILE *freopen64 (__const char *__restrict __filename,
216 __const char *__restrict __modes,
217 FILE *__restrict __stream) ;
218extern FILE *fdopen (int __fd, __const char *__modes) throw () ;
219extern FILE *fopencookie (void *__restrict __magic_cookie,
220 __const char *__restrict __modes,
221 _IO_cookie_io_functions_t __io_funcs) throw () ;
222extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes)
223 throw () ;
224extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) throw () ;
225extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) throw ();
226extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
227 int __modes, size_t __n) throw ();
228extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
229 size_t __size) throw ();
230extern void setlinebuf (FILE *__stream) throw ();
231extern int fprintf (FILE *__restrict __stream,
232 __const char *__restrict __format, ...);
233extern int printf (__const char *__restrict __format, ...);
234extern int sprintf (char *__restrict __s,
235 __const char *__restrict __format, ...) throw ();
236extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format,
237 __gnuc_va_list __arg);
238extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg);
239extern int vsprintf (char *__restrict __s, __const char *__restrict __format,
240 __gnuc_va_list __arg) throw ();
241extern int snprintf (char *__restrict __s, size_t __maxlen,
242 __const char *__restrict __format, ...)
243 throw () __attribute__ ((__format__ (__printf__, 3, 4)));
244extern int vsnprintf (char *__restrict __s, size_t __maxlen,
245 __const char *__restrict __format, __gnuc_va_list __arg)
246 throw () __attribute__ ((__format__ (__printf__, 3, 0)));
247extern int vasprintf (char **__restrict __ptr, __const char *__restrict __f,
248 __gnuc_va_list __arg)
249 throw () __attribute__ ((__format__ (__printf__, 2, 0))) ;
250extern int __asprintf (char **__restrict __ptr,
251 __const char *__restrict __fmt, ...)
252 throw () __attribute__ ((__format__ (__printf__, 2, 3))) ;
253extern int asprintf (char **__restrict __ptr,
254 __const char *__restrict __fmt, ...)
255 throw () __attribute__ ((__format__ (__printf__, 2, 3))) ;
256extern int vdprintf (int __fd, __const char *__restrict __fmt,
257 __gnuc_va_list __arg)
258 __attribute__ ((__format__ (__printf__, 2, 0)));
259extern int dprintf (int __fd, __const char *__restrict __fmt, ...)
260 __attribute__ ((__format__ (__printf__, 2, 3)));
261extern int fscanf (FILE *__restrict __stream,
262 __const char *__restrict __format, ...) ;
263extern int scanf (__const char *__restrict __format, ...) ;
264extern int sscanf (__const char *__restrict __s,
265 __const char *__restrict __format, ...) throw ();
266extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format,
267 __gnuc_va_list __arg)
268 __attribute__ ((__format__ (__scanf__, 2, 0))) ;
269extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg)
270 __attribute__ ((__format__ (__scanf__, 1, 0))) ;
271extern int vsscanf (__const char *__restrict __s,
272 __const char *__restrict __format, __gnuc_va_list __arg)
273 throw () __attribute__ ((__format__ (__scanf__, 2, 0)));
274extern int fgetc (FILE *__stream);
275extern int getc (FILE *__stream);
276extern int getchar (void);
277extern int getc_unlocked (FILE *__stream);
278extern int getchar_unlocked (void);
279extern int fgetc_unlocked (FILE *__stream);
280extern int fputc (int __c, FILE *__stream);
281extern int putc (int __c, FILE *__stream);
282extern int putchar (int __c);
283extern int fputc_unlocked (int __c, FILE *__stream);
284extern int putc_unlocked (int __c, FILE *__stream);
285extern int putchar_unlocked (int __c);
286extern int getw (FILE *__stream);
287extern int putw (int __w, FILE *__stream);
288extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
289 ;
290extern char *gets (char *__s) ;
291extern char *fgets_unlocked (char *__restrict __s, int __n,
292 FILE *__restrict __stream) ;
293extern __ssize_t __getdelim (char **__restrict __lineptr,
294 size_t *__restrict __n, int __delimiter,
295 FILE *__restrict __stream) ;
296extern __ssize_t getdelim (char **__restrict __lineptr,
297 size_t *__restrict __n, int __delimiter,
298 FILE *__restrict __stream) ;
299extern __ssize_t getline (char **__restrict __lineptr,
300 size_t *__restrict __n,
301 FILE *__restrict __stream) ;
302extern int fputs (__const char *__restrict __s, FILE *__restrict __stream);
303extern int puts (__const char *__s);
304extern int ungetc (int __c, FILE *__stream);
305extern size_t fread (void *__restrict __ptr, size_t __size,
306 size_t __n, FILE *__restrict __stream) ;
307extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
308 size_t __n, FILE *__restrict __s) ;
309extern int fputs_unlocked (__const char *__restrict __s,
310 FILE *__restrict __stream);
311extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
312 size_t __n, FILE *__restrict __stream) ;
313extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size,
314 size_t __n, FILE *__restrict __stream) ;
315extern int fseek (FILE *__stream, long int __off, int __whence);
316extern long int ftell (FILE *__stream) ;
317extern void rewind (FILE *__stream);
318extern int fseeko (FILE *__stream, __off64_t __off, int __whence) __asm__ ("" "fseeko64");
319extern __off64_t ftello (FILE *__stream) __asm__ ("" "ftello64");
320extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos) __asm__ ("" "fgetpos64");
321extern int fsetpos (FILE *__stream, __const fpos_t *__pos) __asm__ ("" "fsetpos64");
322extern int fseeko64 (FILE *__stream, __off64_t __off, int __whence);
323extern __off64_t ftello64 (FILE *__stream) ;
324extern int fgetpos64 (FILE *__restrict __stream, fpos64_t *__restrict __pos);
325extern int fsetpos64 (FILE *__stream, __const fpos64_t *__pos);
326extern void clearerr (FILE *__stream) throw ();
327extern int feof (FILE *__stream) throw () ;
328extern int ferror (FILE *__stream) throw () ;
329extern void clearerr_unlocked (FILE *__stream) throw ();
330extern int feof_unlocked (FILE *__stream) throw () ;
331extern int ferror_unlocked (FILE *__stream) throw () ;
332extern void perror (__const char *__s);
333extern int sys_nerr;
334extern __const char *__const sys_errlist[];
335extern int _sys_nerr;
336extern __const char *__const _sys_errlist[];
337extern int fileno (FILE *__stream) throw () ;
338extern int fileno_unlocked (FILE *__stream) throw () ;
339extern FILE *popen (__const char *__command, __const char *__modes) ;
340extern int pclose (FILE *__stream);
341extern char *ctermid (char *__s) throw ();
342extern char *cuserid (char *__s);
343struct obstack;
344extern int obstack_printf (struct obstack *__restrict __obstack,
345 __const char *__restrict __format, ...)
346 throw () __attribute__ ((__format__ (__printf__, 2, 3)));
347extern int obstack_vprintf (struct obstack *__restrict __obstack,
348 __const char *__restrict __format,
349 __gnuc_va_list __args)
350 throw () __attribute__ ((__format__ (__printf__, 2, 0)));
351extern void flockfile (FILE *__stream) throw ();
352extern int ftrylockfile (FILE *__stream) throw () ;
353extern void funlockfile (FILE *__stream) throw ();
354}
355extern "C" {
356extern void *memcpy (void *__restrict __dest,
357 __const void *__restrict __src, size_t __n)
358 throw () __attribute__ ((__nonnull__ (1, 2)));
359extern void *memmove (void *__dest, __const void *__src, size_t __n)
360 throw () __attribute__ ((__nonnull__ (1, 2)));
361extern void *memccpy (void *__restrict __dest, __const void *__restrict __src,
362 int __c, size_t __n)
363 throw () __attribute__ ((__nonnull__ (1, 2)));
364extern void *memset (void *__s, int __c, size_t __n) throw () __attribute__ ((__nonnull__ (1)));
365extern int memcmp (__const void *__s1, __const void *__s2, size_t __n)
366 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
367extern "C++"
368{
369extern void *memchr (void *__s, int __c, size_t __n)
370 throw () __asm ("memchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
371extern __const void *memchr (__const void *__s, int __c, size_t __n)
372 throw () __asm ("memchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
373}
374extern "C++" void *rawmemchr (void *__s, int __c)
375 throw () __asm ("rawmemchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
376extern "C++" __const void *rawmemchr (__const void *__s, int __c)
377 throw () __asm ("rawmemchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
378extern "C++" void *memrchr (void *__s, int __c, size_t __n)
379 throw () __asm ("memrchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
380extern "C++" __const void *memrchr (__const void *__s, int __c, size_t __n)
381 throw () __asm ("memrchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
382extern char *strcpy (char *__restrict __dest, __const char *__restrict __src)
383 throw () __attribute__ ((__nonnull__ (1, 2)));
384extern char *strncpy (char *__restrict __dest,
385 __const char *__restrict __src, size_t __n)
386 throw () __attribute__ ((__nonnull__ (1, 2)));
387extern char *strcat (char *__restrict __dest, __const char *__restrict __src)
388 throw () __attribute__ ((__nonnull__ (1, 2)));
389extern char *strncat (char *__restrict __dest, __const char *__restrict __src,
390 size_t __n) throw () __attribute__ ((__nonnull__ (1, 2)));
391extern int strcmp (__const char *__s1, __const char *__s2)
392 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
393extern int strncmp (__const char *__s1, __const char *__s2, size_t __n)
394 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
395extern int strcoll (__const char *__s1, __const char *__s2)
396 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
397extern size_t strxfrm (char *__restrict __dest,
398 __const char *__restrict __src, size_t __n)
399 throw () __attribute__ ((__nonnull__ (2)));
400typedef struct __locale_struct
401{
402 struct locale_data *__locales[13];
403 const unsigned short int *__ctype_b;
404 const int *__ctype_tolower;
405 const int *__ctype_toupper;
406 const char *__names[13];
407} *__locale_t;
408typedef __locale_t locale_t;
409extern int strcoll_l (__const char *__s1, __const char *__s2, __locale_t __l)
410 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3)));
411extern size_t strxfrm_l (char *__dest, __const char *__src, size_t __n,
412 __locale_t __l) throw () __attribute__ ((__nonnull__ (2, 4)));
413extern char *strdup (__const char *__s)
414 throw () __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
415extern char *strndup (__const char *__string, size_t __n)
416 throw () __attribute__ ((__malloc__)) __attribute__ ((__nonnull__ (1)));
417extern "C++"
418{
419extern char *strchr (char *__s, int __c)
420 throw () __asm ("strchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
421extern __const char *strchr (__const char *__s, int __c)
422 throw () __asm ("strchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
423}
424extern "C++"
425{
426extern char *strrchr (char *__s, int __c)
427 throw () __asm ("strrchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
428extern __const char *strrchr (__const char *__s, int __c)
429 throw () __asm ("strrchr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
430}
431extern "C++" char *strchrnul (char *__s, int __c)
432 throw () __asm ("strchrnul") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
433extern "C++" __const char *strchrnul (__const char *__s, int __c)
434 throw () __asm ("strchrnul") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
435extern size_t strcspn (__const char *__s, __const char *__reject)
436 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
437extern size_t strspn (__const char *__s, __const char *__accept)
438 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
439extern "C++"
440{
441extern char *strpbrk (char *__s, __const char *__accept)
442 throw () __asm ("strpbrk") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
443extern __const char *strpbrk (__const char *__s, __const char *__accept)
444 throw () __asm ("strpbrk") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
445}
446extern "C++"
447{
448extern char *strstr (char *__haystack, __const char *__needle)
449 throw () __asm ("strstr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
450extern __const char *strstr (__const char *__haystack,
451 __const char *__needle)
452 throw () __asm ("strstr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
453}
454extern char *strtok (char *__restrict __s, __const char *__restrict __delim)
455 throw () __attribute__ ((__nonnull__ (2)));
456extern char *__strtok_r (char *__restrict __s,
457 __const char *__restrict __delim,
458 char **__restrict __save_ptr)
459 throw () __attribute__ ((__nonnull__ (2, 3)));
460extern char *strtok_r (char *__restrict __s, __const char *__restrict __delim,
461 char **__restrict __save_ptr)
462 throw () __attribute__ ((__nonnull__ (2, 3)));
463extern "C++" char *strcasestr (char *__haystack, __const char *__needle)
464 throw () __asm ("strcasestr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
465extern "C++" __const char *strcasestr (__const char *__haystack,
466 __const char *__needle)
467 throw () __asm ("strcasestr") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
468extern void *memmem (__const void *__haystack, size_t __haystacklen,
469 __const void *__needle, size_t __needlelen)
470 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 3)));
471extern void *__mempcpy (void *__restrict __dest,
472 __const void *__restrict __src, size_t __n)
473 throw () __attribute__ ((__nonnull__ (1, 2)));
474extern void *mempcpy (void *__restrict __dest,
475 __const void *__restrict __src, size_t __n)
476 throw () __attribute__ ((__nonnull__ (1, 2)));
477extern size_t strlen (__const char *__s)
478 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
479extern size_t strnlen (__const char *__string, size_t __maxlen)
480 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
481extern char *strerror (int __errnum) throw ();
482extern char *strerror_r (int __errnum, char *__buf, size_t __buflen)
483 throw () __attribute__ ((__nonnull__ (2)));
484extern char *strerror_l (int __errnum, __locale_t __l) throw ();
485extern void __bzero (void *__s, size_t __n) throw () __attribute__ ((__nonnull__ (1)));
486extern void bcopy (__const void *__src, void *__dest, size_t __n)
487 throw () __attribute__ ((__nonnull__ (1, 2)));
488extern void bzero (void *__s, size_t __n) throw () __attribute__ ((__nonnull__ (1)));
489extern int bcmp (__const void *__s1, __const void *__s2, size_t __n)
490 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
491extern "C++"
492{
493extern char *index (char *__s, int __c)
494 throw () __asm ("index") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
495extern __const char *index (__const char *__s, int __c)
496 throw () __asm ("index") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
497}
498extern "C++"
499{
500extern char *rindex (char *__s, int __c)
501 throw () __asm ("rindex") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
502extern __const char *rindex (__const char *__s, int __c)
503 throw () __asm ("rindex") __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
504}
505extern int ffs (int __i) throw () __attribute__ ((__const__));
506extern int ffsl (long int __l) throw () __attribute__ ((__const__));
507__extension__ extern int ffsll (long long int __ll)
508 throw () __attribute__ ((__const__));
509extern int strcasecmp (__const char *__s1, __const char *__s2)
510 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
511extern int strncasecmp (__const char *__s1, __const char *__s2, size_t __n)
512 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
513extern int strcasecmp_l (__const char *__s1, __const char *__s2,
514 __locale_t __loc)
515 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 3)));
516extern int strncasecmp_l (__const char *__s1, __const char *__s2,
517 size_t __n, __locale_t __loc)
518 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2, 4)));
519extern char *strsep (char **__restrict __stringp,
520 __const char *__restrict __delim)
521 throw () __attribute__ ((__nonnull__ (1, 2)));
522extern char *strsignal (int __sig) throw ();
523extern char *__stpcpy (char *__restrict __dest, __const char *__restrict __src)
524 throw () __attribute__ ((__nonnull__ (1, 2)));
525extern char *stpcpy (char *__restrict __dest, __const char *__restrict __src)
526 throw () __attribute__ ((__nonnull__ (1, 2)));
527extern char *__stpncpy (char *__restrict __dest,
528 __const char *__restrict __src, size_t __n)
529 throw () __attribute__ ((__nonnull__ (1, 2)));
530extern char *stpncpy (char *__restrict __dest,
531 __const char *__restrict __src, size_t __n)
532 throw () __attribute__ ((__nonnull__ (1, 2)));
533extern int strverscmp (__const char *__s1, __const char *__s2)
534 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
535extern char *strfry (char *__string) throw () __attribute__ ((__nonnull__ (1)));
536extern void *memfrob (void *__s, size_t __n) throw () __attribute__ ((__nonnull__ (1)));
537extern "C++" char *basename (char *__filename)
538 throw () __asm ("basename") __attribute__ ((__nonnull__ (1)));
539extern "C++" __const char *basename (__const char *__filename)
540 throw () __asm ("basename") __attribute__ ((__nonnull__ (1)));
541}
542extern "C" {
543extern int *__errno_location (void) throw () __attribute__ ((__const__));
544extern char *program_invocation_name, *program_invocation_short_name;
545}
546typedef int error_t;
547extern "C" {
548union wait
549 {
550 int w_status;
551 struct
552 {
553 unsigned int __w_termsig:7;
554 unsigned int __w_coredump:1;
555 unsigned int __w_retcode:8;
556 unsigned int:16;
557 } __wait_terminated;
558 struct
559 {
560 unsigned int __w_stopval:8;
561 unsigned int __w_stopsig:8;
562 unsigned int:16;
563 } __wait_stopped;
564 };
565typedef struct
566 {
567 int quot;
568 int rem;
569 } div_t;
570typedef struct
571 {
572 long int quot;
573 long int rem;
574 } ldiv_t;
575__extension__ typedef struct
576 {
577 long long int quot;
578 long long int rem;
579 } lldiv_t;
580extern size_t __ctype_get_mb_cur_max (void) throw () ;
581extern double atof (__const char *__nptr)
582 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
583extern int atoi (__const char *__nptr)
584 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
585extern long int atol (__const char *__nptr)
586 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
587__extension__ extern long long int atoll (__const char *__nptr)
588 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
589extern double strtod (__const char *__restrict __nptr,
590 char **__restrict __endptr)
591 throw () __attribute__ ((__nonnull__ (1))) ;
592extern float strtof (__const char *__restrict __nptr,
593 char **__restrict __endptr) throw () __attribute__ ((__nonnull__ (1))) ;
594extern long double strtold (__const char *__restrict __nptr,
595 char **__restrict __endptr)
596 throw () __attribute__ ((__nonnull__ (1))) ;
597extern long int strtol (__const char *__restrict __nptr,
598 char **__restrict __endptr, int __base)
599 throw () __attribute__ ((__nonnull__ (1))) ;
600extern unsigned long int strtoul (__const char *__restrict __nptr,
601 char **__restrict __endptr, int __base)
602 throw () __attribute__ ((__nonnull__ (1))) ;
603__extension__
604extern long long int strtoq (__const char *__restrict __nptr,
605 char **__restrict __endptr, int __base)
606 throw () __attribute__ ((__nonnull__ (1))) ;
607__extension__
608extern unsigned long long int strtouq (__const char *__restrict __nptr,
609 char **__restrict __endptr, int __base)
610 throw () __attribute__ ((__nonnull__ (1))) ;
611__extension__
612extern long long int strtoll (__const char *__restrict __nptr,
613 char **__restrict __endptr, int __base)
614 throw () __attribute__ ((__nonnull__ (1))) ;
615__extension__
616extern unsigned long long int strtoull (__const char *__restrict __nptr,
617 char **__restrict __endptr, int __base)
618 throw () __attribute__ ((__nonnull__ (1))) ;
619extern long int strtol_l (__const char *__restrict __nptr,
620 char **__restrict __endptr, int __base,
621 __locale_t __loc) throw () __attribute__ ((__nonnull__ (1, 4))) ;
622extern unsigned long int strtoul_l (__const char *__restrict __nptr,
623 char **__restrict __endptr,
624 int __base, __locale_t __loc)
625 throw () __attribute__ ((__nonnull__ (1, 4))) ;
626__extension__
627extern long long int strtoll_l (__const char *__restrict __nptr,
628 char **__restrict __endptr, int __base,
629 __locale_t __loc)
630 throw () __attribute__ ((__nonnull__ (1, 4))) ;
631__extension__
632extern unsigned long long int strtoull_l (__const char *__restrict __nptr,
633 char **__restrict __endptr,
634 int __base, __locale_t __loc)
635 throw () __attribute__ ((__nonnull__ (1, 4))) ;
636extern double strtod_l (__const char *__restrict __nptr,
637 char **__restrict __endptr, __locale_t __loc)
638 throw () __attribute__ ((__nonnull__ (1, 3))) ;
639extern float strtof_l (__const char *__restrict __nptr,
640 char **__restrict __endptr, __locale_t __loc)
641 throw () __attribute__ ((__nonnull__ (1, 3))) ;
642extern long double strtold_l (__const char *__restrict __nptr,
643 char **__restrict __endptr,
644 __locale_t __loc)
645 throw () __attribute__ ((__nonnull__ (1, 3))) ;
646extern char *l64a (long int __n) throw () ;
647extern long int a64l (__const char *__s)
648 throw () __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
649extern "C" {
650typedef __u_char u_char;
651typedef __u_short u_short;
652typedef __u_int u_int;
653typedef __u_long u_long;
654typedef __quad_t quad_t;
655typedef __u_quad_t u_quad_t;
656typedef __fsid_t fsid_t;
657typedef __loff_t loff_t;
658typedef __ino64_t ino_t;
659typedef __ino64_t ino64_t;
660typedef __dev_t dev_t;
661typedef __gid_t gid_t;
662typedef __mode_t mode_t;
663typedef __nlink_t nlink_t;
664typedef __uid_t uid_t;
665typedef __off64_t off_t;
666typedef __off64_t off64_t;
667typedef __pid_t pid_t;
668typedef __id_t id_t;
669typedef __ssize_t ssize_t;
670typedef __daddr_t daddr_t;
671typedef __caddr_t caddr_t;
672typedef __key_t key_t;
673typedef __clock_t clock_t;
674typedef __time_t time_t;
675typedef __clockid_t clockid_t;
676typedef __timer_t timer_t;
677typedef __useconds_t useconds_t;
678typedef __suseconds_t suseconds_t;
679typedef unsigned long int ulong;
680typedef unsigned short int ushort;
681typedef unsigned int uint;
682typedef int int8_t __attribute__ ((__mode__ (__QI__)));
683typedef int int16_t __attribute__ ((__mode__ (__HI__)));
684typedef int int32_t __attribute__ ((__mode__ (__SI__)));
685typedef int int64_t __attribute__ ((__mode__ (__DI__)));
686typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__)));
687typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__)));
688typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__)));
689typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__)));
690typedef int register_t __attribute__ ((__mode__ (__word__)));
691typedef int __sig_atomic_t;
692typedef struct
693 {
694 unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];
695 } __sigset_t;
696typedef __sigset_t sigset_t;
697struct timespec
698 {
699 __time_t tv_sec;
700 long int tv_nsec;
701 };
702struct timeval
703 {
704 __time_t tv_sec;
705 __suseconds_t tv_usec;
706 };
707typedef long int __fd_mask;
708typedef struct
709 {
710 __fd_mask fds_bits[1024 / (8 * (int) sizeof (__fd_mask))];
711 } fd_set;
712typedef __fd_mask fd_mask;
713extern "C" {
714extern int select (int __nfds, fd_set *__restrict __readfds,
715 fd_set *__restrict __writefds,
716 fd_set *__restrict __exceptfds,
717 struct timeval *__restrict __timeout);
718extern int pselect (int __nfds, fd_set *__restrict __readfds,
719 fd_set *__restrict __writefds,
720 fd_set *__restrict __exceptfds,
721 const struct timespec *__restrict __timeout,
722 const __sigset_t *__restrict __sigmask);
723}
724__extension__
725extern unsigned int gnu_dev_major (unsigned long long int __dev)
726 throw ();
727__extension__
728extern unsigned int gnu_dev_minor (unsigned long long int __dev)
729 throw ();
730__extension__
731extern unsigned long long int gnu_dev_makedev (unsigned int __major,
732 unsigned int __minor)
733 throw ();
734typedef __blksize_t blksize_t;
735typedef __blkcnt64_t blkcnt_t;
736typedef __fsblkcnt64_t fsblkcnt_t;
737typedef __fsfilcnt64_t fsfilcnt_t;
738typedef __blkcnt64_t blkcnt64_t;
739typedef __fsblkcnt64_t fsblkcnt64_t;
740typedef __fsfilcnt64_t fsfilcnt64_t;
741typedef unsigned long int pthread_t;
742typedef union
743{
744 char __size[56];
745 long int __align;
746} pthread_attr_t;
747typedef struct __pthread_internal_list
748{
749 struct __pthread_internal_list *__prev;
750 struct __pthread_internal_list *__next;
751} __pthread_list_t;
752typedef union
753{
754 struct __pthread_mutex_s
755 {
756 int __lock;
757 unsigned int __count;
758 int __owner;
759 unsigned int __nusers;
760 int __kind;
761 int __spins;
762 __pthread_list_t __list;
763 } __data;
764 char __size[40];
765 long int __align;
766} pthread_mutex_t;
767typedef union
768{
769 char __size[4];
770 int __align;
771} pthread_mutexattr_t;
772typedef union
773{
774 struct
775 {
776 int __lock;
777 unsigned int __futex;
778 __extension__ unsigned long long int __total_seq;
779 __extension__ unsigned long long int __wakeup_seq;
780 __extension__ unsigned long long int __woken_seq;
781 void *__mutex;
782 unsigned int __nwaiters;
783 unsigned int __broadcast_seq;
784 } __data;
785 char __size[48];
786 __extension__ long long int __align;
787} pthread_cond_t;
788typedef union
789{
790 char __size[4];
791 int __align;
792} pthread_condattr_t;
793typedef unsigned int pthread_key_t;
794typedef int pthread_once_t;
795typedef union
796{
797 struct
798 {
799 int __lock;
800 unsigned int __nr_readers;
801 unsigned int __readers_wakeup;
802 unsigned int __writer_wakeup;
803 unsigned int __nr_readers_queued;
804 unsigned int __nr_writers_queued;
805 int __writer;
806 int __shared;
807 unsigned long int __pad1;
808 unsigned long int __pad2;
809 unsigned int __flags;
810 } __data;
811 char __size[56];
812 long int __align;
813} pthread_rwlock_t;
814typedef union
815{
816 char __size[8];
817 long int __align;
818} pthread_rwlockattr_t;
819typedef volatile int pthread_spinlock_t;
820typedef union
821{
822 char __size[32];
823 long int __align;
824} pthread_barrier_t;
825typedef union
826{
827 char __size[4];
828 int __align;
829} pthread_barrierattr_t;
830}
831extern long int random (void) throw ();
832extern void srandom (unsigned int __seed) throw ();
833extern char *initstate (unsigned int __seed, char *__statebuf,
834 size_t __statelen) throw () __attribute__ ((__nonnull__ (2)));
835extern char *setstate (char *__statebuf) throw () __attribute__ ((__nonnull__ (1)));
836struct random_data
837 {
838 int32_t *fptr;
839 int32_t *rptr;
840 int32_t *state;
841 int rand_type;
842 int rand_deg;
843 int rand_sep;
844 int32_t *end_ptr;
845 };
846extern int random_r (struct random_data *__restrict __buf,
847 int32_t *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2)));
848extern int srandom_r (unsigned int __seed, struct random_data *__buf)
849 throw () __attribute__ ((__nonnull__ (2)));
850extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
851 size_t __statelen,
852 struct random_data *__restrict __buf)
853 throw () __attribute__ ((__nonnull__ (2, 4)));
854extern int setstate_r (char *__restrict __statebuf,
855 struct random_data *__restrict __buf)
856 throw () __attribute__ ((__nonnull__ (1, 2)));
857extern int rand (void) throw ();
858extern void srand (unsigned int __seed) throw ();
859extern int rand_r (unsigned int *__seed) throw ();
860extern double drand48 (void) throw ();
861extern double erand48 (unsigned short int __xsubi[3]) throw () __attribute__ ((__nonnull__ (1)));
862extern long int lrand48 (void) throw ();
863extern long int nrand48 (unsigned short int __xsubi[3])
864 throw () __attribute__ ((__nonnull__ (1)));
865extern long int mrand48 (void) throw ();
866extern long int jrand48 (unsigned short int __xsubi[3])
867 throw () __attribute__ ((__nonnull__ (1)));
868extern void srand48 (long int __seedval) throw ();
869extern unsigned short int *seed48 (unsigned short int __seed16v[3])
870 throw () __attribute__ ((__nonnull__ (1)));
871extern void lcong48 (unsigned short int __param[7]) throw () __attribute__ ((__nonnull__ (1)));
872struct drand48_data
873 {
874 unsigned short int __x[3];
875 unsigned short int __old_x[3];
876 unsigned short int __c;
877 unsigned short int __init;
878 unsigned long long int __a;
879 };
880extern int drand48_r (struct drand48_data *__restrict __buffer,
881 double *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2)));
882extern int erand48_r (unsigned short int __xsubi[3],
883 struct drand48_data *__restrict __buffer,
884 double *__restrict __result) throw () __attribute__ ((__nonnull__ (1, 2)));
885extern int lrand48_r (struct drand48_data *__restrict __buffer,
886 long int *__restrict __result)
887 throw () __attribute__ ((__nonnull__ (1, 2)));
888extern int nrand48_r (unsigned short int __xsubi[3],
889 struct drand48_data *__restrict __buffer,
890 long int *__restrict __result)
891 throw () __attribute__ ((__nonnull__ (1, 2)));
892extern int mrand48_r (struct drand48_data *__restrict __buffer,
893 long int *__restrict __result)
894 throw () __attribute__ ((__nonnull__ (1, 2)));
895extern int jrand48_r (unsigned short int __xsubi[3],
896 struct drand48_data *__restrict __buffer,
897 long int *__restrict __result)
898 throw () __attribute__ ((__nonnull__ (1, 2)));
899extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
900 throw () __attribute__ ((__nonnull__ (2)));
901extern int seed48_r (unsigned short int __seed16v[3],
902 struct drand48_data *__buffer) throw () __attribute__ ((__nonnull__ (1, 2)));
903extern int lcong48_r (unsigned short int __param[7],
904 struct drand48_data *__buffer)
905 throw () __attribute__ ((__nonnull__ (1, 2)));
906extern void *malloc (size_t __size) throw () __attribute__ ((__malloc__)) ;
907extern void *calloc (size_t __nmemb, size_t __size)
908 throw () __attribute__ ((__malloc__)) ;
909extern void *realloc (void *__ptr, size_t __size)
910 throw () __attribute__ ((__warn_unused_result__));
911extern void free (void *__ptr) throw ();
912extern void cfree (void *__ptr) throw ();
913extern "C" {
914extern void *alloca (size_t __size) throw ();
915}
916extern void *valloc (size_t __size) throw () __attribute__ ((__malloc__)) ;
917extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size)
918 throw () __attribute__ ((__nonnull__ (1))) ;
919extern void abort (void) throw () __attribute__ ((__noreturn__));
920extern int atexit (void (*__func) (void)) throw () __attribute__ ((__nonnull__ (1)));
921extern "C++" int at_quick_exit (void (*__func) (void))
922 throw () __asm ("at_quick_exit") __attribute__ ((__nonnull__ (1)));
923extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
924 throw () __attribute__ ((__nonnull__ (1)));
925extern void exit (int __status) throw () __attribute__ ((__noreturn__));
926extern void quick_exit (int __status) throw () __attribute__ ((__noreturn__));
927extern void _Exit (int __status) throw () __attribute__ ((__noreturn__));
928extern char *getenv (__const char *__name) throw () __attribute__ ((__nonnull__ (1))) ;
929extern char *__secure_getenv (__const char *__name)
930 throw () __attribute__ ((__nonnull__ (1))) ;
931extern int putenv (char *__string) throw () __attribute__ ((__nonnull__ (1)));
932extern int setenv (__const char *__name, __const char *__value, int __replace)
933 throw () __attribute__ ((__nonnull__ (2)));
934extern int unsetenv (__const char *__name) throw ();
935extern int clearenv (void) throw ();
936extern char *mktemp (char *__template) throw () __attribute__ ((__nonnull__ (1))) ;
937extern int mkstemp (char *__template) __asm__ ("" "mkstemp64")
938 __attribute__ ((__nonnull__ (1))) ;
939extern int mkstemp64 (char *__template) __attribute__ ((__nonnull__ (1))) ;
940extern int mkstemps (char *__template, int __suffixlen) __asm__ ("" "mkstemps64") __attribute__ ((__nonnull__ (1))) ;
941extern int mkstemps64 (char *__template, int __suffixlen)
942 __attribute__ ((__nonnull__ (1))) ;
943extern char *mkdtemp (char *__template) throw () __attribute__ ((__nonnull__ (1))) ;
944extern int mkostemp (char *__template, int __flags) __asm__ ("" "mkostemp64")
945 __attribute__ ((__nonnull__ (1))) ;
946extern int mkostemp64 (char *__template, int __flags) __attribute__ ((__nonnull__ (1))) ;
947extern int mkostemps (char *__template, int __suffixlen, int __flags) __asm__ ("" "mkostemps64")
948 __attribute__ ((__nonnull__ (1))) ;
949extern int mkostemps64 (char *__template, int __suffixlen, int __flags)
950 __attribute__ ((__nonnull__ (1))) ;
951extern int system (__const char *__command) ;
952extern char *canonicalize_file_name (__const char *__name)
953 throw () __attribute__ ((__nonnull__ (1))) ;
954extern char *realpath (__const char *__restrict __name,
955 char *__restrict __resolved) throw () ;
956typedef int (*__compar_fn_t) (__const void *, __const void *);
957typedef __compar_fn_t comparison_fn_t;
958typedef int (*__compar_d_fn_t) (__const void *, __const void *, void *);
959extern void *bsearch (__const void *__key, __const void *__base,
960 size_t __nmemb, size_t __size, __compar_fn_t __compar)
961 __attribute__ ((__nonnull__ (1, 2, 5))) ;
962extern void qsort (void *__base, size_t __nmemb, size_t __size,
963 __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));
964extern void qsort_r (void *__base, size_t __nmemb, size_t __size,
965 __compar_d_fn_t __compar, void *__arg)
966 __attribute__ ((__nonnull__ (1, 4)));
967extern int abs (int __x) throw () __attribute__ ((__const__)) ;
968extern long int labs (long int __x) throw () __attribute__ ((__const__)) ;
969__extension__ extern long long int llabs (long long int __x)
970 throw () __attribute__ ((__const__)) ;
971extern div_t div (int __numer, int __denom)
972 throw () __attribute__ ((__const__)) ;
973extern ldiv_t ldiv (long int __numer, long int __denom)
974 throw () __attribute__ ((__const__)) ;
975__extension__ extern lldiv_t lldiv (long long int __numer,
976 long long int __denom)
977 throw () __attribute__ ((__const__)) ;
978extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
979 int *__restrict __sign) throw () __attribute__ ((__nonnull__ (3, 4))) ;
980extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
981 int *__restrict __sign) throw () __attribute__ ((__nonnull__ (3, 4))) ;
982extern char *gcvt (double __value, int __ndigit, char *__buf)
983 throw () __attribute__ ((__nonnull__ (3))) ;
984extern char *qecvt (long double __value, int __ndigit,
985 int *__restrict __decpt, int *__restrict __sign)
986 throw () __attribute__ ((__nonnull__ (3, 4))) ;
987extern char *qfcvt (long double __value, int __ndigit,
988 int *__restrict __decpt, int *__restrict __sign)
989 throw () __attribute__ ((__nonnull__ (3, 4))) ;
990extern char *qgcvt (long double __value, int __ndigit, char *__buf)
991 throw () __attribute__ ((__nonnull__ (3))) ;
992extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
993 int *__restrict __sign, char *__restrict __buf,
994 size_t __len) throw () __attribute__ ((__nonnull__ (3, 4, 5)));
995extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
996 int *__restrict __sign, char *__restrict __buf,
997 size_t __len) throw () __attribute__ ((__nonnull__ (3, 4, 5)));
998extern int qecvt_r (long double __value, int __ndigit,
999 int *__restrict __decpt, int *__restrict __sign,
1000 char *__restrict __buf, size_t __len)
1001 throw () __attribute__ ((__nonnull__ (3, 4, 5)));
1002extern int qfcvt_r (long double __value, int __ndigit,
1003 int *__restrict __decpt, int *__restrict __sign,
1004 char *__restrict __buf, size_t __len)
1005 throw () __attribute__ ((__nonnull__ (3, 4, 5)));
1006extern int mblen (__const char *__s, size_t __n) throw () ;
1007extern int mbtowc (wchar_t *__restrict __pwc,
1008 __const char *__restrict __s, size_t __n) throw () ;
1009extern int wctomb (char *__s, wchar_t __wchar) throw () ;
1010extern size_t mbstowcs (wchar_t *__restrict __pwcs,
1011 __const char *__restrict __s, size_t __n) throw ();
1012extern size_t wcstombs (char *__restrict __s,
1013 __const wchar_t *__restrict __pwcs, size_t __n)
1014 throw ();
1015extern int rpmatch (__const char *__response) throw () __attribute__ ((__nonnull__ (1))) ;
1016extern int getsubopt (char **__restrict __optionp,
1017 char *__const *__restrict __tokens,
1018 char **__restrict __valuep)
1019 throw () __attribute__ ((__nonnull__ (1, 2, 3))) ;
1020extern void setkey (__const char *__key) throw () __attribute__ ((__nonnull__ (1)));
1021extern int posix_openpt (int __oflag) ;
1022extern int grantpt (int __fd) throw ();
1023extern int unlockpt (int __fd) throw ();
1024extern char *ptsname (int __fd) throw () ;
1025extern int ptsname_r (int __fd, char *__buf, size_t __buflen)
1026 throw () __attribute__ ((__nonnull__ (2)));
1027extern int getpt (void);
1028extern int getloadavg (double __loadavg[], int __nelem)
1029 throw () __attribute__ ((__nonnull__ (1)));
1030}
1031extern "C" {
1032typedef __intptr_t intptr_t;
1033typedef __socklen_t socklen_t;
1034extern int access (__const char *__name, int __type) throw () __attribute__ ((__nonnull__ (1)));
1035extern int euidaccess (__const char *__name, int __type)
1036 throw () __attribute__ ((__nonnull__ (1)));
1037extern int eaccess (__const char *__name, int __type)
1038 throw () __attribute__ ((__nonnull__ (1)));
1039extern int faccessat (int __fd, __const char *__file, int __type, int __flag)
1040 throw () __attribute__ ((__nonnull__ (2))) ;
1041extern __off64_t lseek (int __fd, __off64_t __offset, int __whence) throw () __asm__ ("" "lseek64");
1042extern __off64_t lseek64 (int __fd, __off64_t __offset, int __whence)
1043 throw ();
1044extern int close (int __fd);
1045extern ssize_t read (int __fd, void *__buf, size_t __nbytes) ;
1046extern ssize_t write (int __fd, __const void *__buf, size_t __n) ;
1047extern ssize_t pread (int __fd, void *__buf, size_t __nbytes, __off64_t __offset) __asm__ ("" "pread64") ;
1048extern ssize_t pwrite (int __fd, __const void *__buf, size_t __nbytes, __off64_t __offset) __asm__ ("" "pwrite64") ;
1049extern ssize_t pread64 (int __fd, void *__buf, size_t __nbytes,
1050 __off64_t __offset) ;
1051extern ssize_t pwrite64 (int __fd, __const void *__buf, size_t __n,
1052 __off64_t __offset) ;
1053extern int pipe (int __pipedes[2]) throw () ;
1054extern int pipe2 (int __pipedes[2], int __flags) throw () ;
1055extern unsigned int alarm (unsigned int __seconds) throw ();
1056extern unsigned int sleep (unsigned int __seconds);
1057extern __useconds_t ualarm (__useconds_t __value, __useconds_t __interval)
1058 throw ();
1059extern int usleep (__useconds_t __useconds);
1060extern int pause (void);
1061extern int chown (__const char *__file, __uid_t __owner, __gid_t __group)
1062 throw () __attribute__ ((__nonnull__ (1))) ;
1063extern int fchown (int __fd, __uid_t __owner, __gid_t __group) throw () ;
1064extern int lchown (__const char *__file, __uid_t __owner, __gid_t __group)
1065 throw () __attribute__ ((__nonnull__ (1))) ;
1066extern int fchownat (int __fd, __const char *__file, __uid_t __owner,
1067 __gid_t __group, int __flag)
1068 throw () __attribute__ ((__nonnull__ (2))) ;
1069extern int chdir (__const char *__path) throw () __attribute__ ((__nonnull__ (1))) ;
1070extern int fchdir (int __fd) throw () ;
1071extern char *getcwd (char *__buf, size_t __size) throw () ;
1072extern char *get_current_dir_name (void) throw ();
1073extern char *getwd (char *__buf)
1074 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__)) ;
1075extern int dup (int __fd) throw () ;
1076extern int dup2 (int __fd, int __fd2) throw ();
1077extern int dup3 (int __fd, int __fd2, int __flags) throw ();
1078extern char **__environ;
1079extern char **environ;
1080extern int execve (__const char *__path, char *__const __argv[],
1081 char *__const __envp[]) throw () __attribute__ ((__nonnull__ (1)));
1082extern int fexecve (int __fd, char *__const __argv[], char *__const __envp[])
1083 throw ();
1084extern int execv (__const char *__path, char *__const __argv[])
1085 throw () __attribute__ ((__nonnull__ (1)));
1086extern int execle (__const char *__path, __const char *__arg, ...)
1087 throw () __attribute__ ((__nonnull__ (1)));
1088extern int execl (__const char *__path, __const char *__arg, ...)
1089 throw () __attribute__ ((__nonnull__ (1)));
1090extern int execvp (__const char *__file, char *__const __argv[])
1091 throw () __attribute__ ((__nonnull__ (1)));
1092extern int execlp (__const char *__file, __const char *__arg, ...)
1093 throw () __attribute__ ((__nonnull__ (1)));
1094extern int execvpe (__const char *__file, char *__const __argv[],
1095 char *__const __envp[])
1096 throw () __attribute__ ((__nonnull__ (1)));
1097extern int nice (int __inc) throw () ;
1098extern void _exit (int __status) __attribute__ ((__noreturn__));
1099enum
1100 {
1101 _PC_LINK_MAX,
1102 _PC_MAX_CANON,
1103 _PC_MAX_INPUT,
1104 _PC_NAME_MAX,
1105 _PC_PATH_MAX,
1106 _PC_PIPE_BUF,
1107 _PC_CHOWN_RESTRICTED,
1108 _PC_NO_TRUNC,
1109 _PC_VDISABLE,
1110 _PC_SYNC_IO,
1111 _PC_ASYNC_IO,
1112 _PC_PRIO_IO,
1113 _PC_SOCK_MAXBUF,
1114 _PC_FILESIZEBITS,
1115 _PC_REC_INCR_XFER_SIZE,
1116 _PC_REC_MAX_XFER_SIZE,
1117 _PC_REC_MIN_XFER_SIZE,
1118 _PC_REC_XFER_ALIGN,
1119 _PC_ALLOC_SIZE_MIN,
1120 _PC_SYMLINK_MAX,
1121 _PC_2_SYMLINKS
1122 };
1123enum
1124 {
1125 _SC_ARG_MAX,
1126 _SC_CHILD_MAX,
1127 _SC_CLK_TCK,
1128 _SC_NGROUPS_MAX,
1129 _SC_OPEN_MAX,
1130 _SC_STREAM_MAX,
1131 _SC_TZNAME_MAX,
1132 _SC_JOB_CONTROL,
1133 _SC_SAVED_IDS,
1134 _SC_REALTIME_SIGNALS,
1135 _SC_PRIORITY_SCHEDULING,
1136 _SC_TIMERS,
1137 _SC_ASYNCHRONOUS_IO,
1138 _SC_PRIORITIZED_IO,
1139 _SC_SYNCHRONIZED_IO,
1140 _SC_FSYNC,
1141 _SC_MAPPED_FILES,
1142 _SC_MEMLOCK,
1143 _SC_MEMLOCK_RANGE,
1144 _SC_MEMORY_PROTECTION,
1145 _SC_MESSAGE_PASSING,
1146 _SC_SEMAPHORES,
1147 _SC_SHARED_MEMORY_OBJECTS,
1148 _SC_AIO_LISTIO_MAX,
1149 _SC_AIO_MAX,
1150 _SC_AIO_PRIO_DELTA_MAX,
1151 _SC_DELAYTIMER_MAX,
1152 _SC_MQ_OPEN_MAX,
1153 _SC_MQ_PRIO_MAX,
1154 _SC_VERSION,
1155 _SC_PAGESIZE,
1156 _SC_RTSIG_MAX,
1157 _SC_SEM_NSEMS_MAX,
1158 _SC_SEM_VALUE_MAX,
1159 _SC_SIGQUEUE_MAX,
1160 _SC_TIMER_MAX,
1161 _SC_BC_BASE_MAX,
1162 _SC_BC_DIM_MAX,
1163 _SC_BC_SCALE_MAX,
1164 _SC_BC_STRING_MAX,
1165 _SC_COLL_WEIGHTS_MAX,
1166 _SC_EQUIV_CLASS_MAX,
1167 _SC_EXPR_NEST_MAX,
1168 _SC_LINE_MAX,
1169 _SC_RE_DUP_MAX,
1170 _SC_CHARCLASS_NAME_MAX,
1171 _SC_2_VERSION,
1172 _SC_2_C_BIND,
1173 _SC_2_C_DEV,
1174 _SC_2_FORT_DEV,
1175 _SC_2_FORT_RUN,
1176 _SC_2_SW_DEV,
1177 _SC_2_LOCALEDEF,
1178 _SC_PII,
1179 _SC_PII_XTI,
1180 _SC_PII_SOCKET,
1181 _SC_PII_INTERNET,
1182 _SC_PII_OSI,
1183 _SC_POLL,
1184 _SC_SELECT,
1185 _SC_UIO_MAXIOV,
1186 _SC_IOV_MAX = _SC_UIO_MAXIOV,
1187 _SC_PII_INTERNET_STREAM,
1188 _SC_PII_INTERNET_DGRAM,
1189 _SC_PII_OSI_COTS,
1190 _SC_PII_OSI_CLTS,
1191 _SC_PII_OSI_M,
1192 _SC_T_IOV_MAX,
1193 _SC_THREADS,
1194 _SC_THREAD_SAFE_FUNCTIONS,
1195 _SC_GETGR_R_SIZE_MAX,
1196 _SC_GETPW_R_SIZE_MAX,
1197 _SC_LOGIN_NAME_MAX,
1198 _SC_TTY_NAME_MAX,
1199 _SC_THREAD_DESTRUCTOR_ITERATIONS,
1200 _SC_THREAD_KEYS_MAX,
1201 _SC_THREAD_STACK_MIN,
1202 _SC_THREAD_THREADS_MAX,
1203 _SC_THREAD_ATTR_STACKADDR,
1204 _SC_THREAD_ATTR_STACKSIZE,
1205 _SC_THREAD_PRIORITY_SCHEDULING,
1206 _SC_THREAD_PRIO_INHERIT,
1207 _SC_THREAD_PRIO_PROTECT,
1208 _SC_THREAD_PROCESS_SHARED,
1209 _SC_NPROCESSORS_CONF,
1210 _SC_NPROCESSORS_ONLN,
1211 _SC_PHYS_PAGES,
1212 _SC_AVPHYS_PAGES,
1213 _SC_ATEXIT_MAX,
1214 _SC_PASS_MAX,
1215 _SC_XOPEN_VERSION,
1216 _SC_XOPEN_XCU_VERSION,
1217 _SC_XOPEN_UNIX,
1218 _SC_XOPEN_CRYPT,
1219 _SC_XOPEN_ENH_I18N,
1220 _SC_XOPEN_SHM,
1221 _SC_2_CHAR_TERM,
1222 _SC_2_C_VERSION,
1223 _SC_2_UPE,
1224 _SC_XOPEN_XPG2,
1225 _SC_XOPEN_XPG3,
1226 _SC_XOPEN_XPG4,
1227 _SC_CHAR_BIT,
1228 _SC_CHAR_MAX,
1229 _SC_CHAR_MIN,
1230 _SC_INT_MAX,
1231 _SC_INT_MIN,
1232 _SC_LONG_BIT,
1233 _SC_WORD_BIT,
1234 _SC_MB_LEN_MAX,
1235 _SC_NZERO,
1236 _SC_SSIZE_MAX,
1237 _SC_SCHAR_MAX,
1238 _SC_SCHAR_MIN,
1239 _SC_SHRT_MAX,
1240 _SC_SHRT_MIN,
1241 _SC_UCHAR_MAX,
1242 _SC_UINT_MAX,
1243 _SC_ULONG_MAX,
1244 _SC_USHRT_MAX,
1245 _SC_NL_ARGMAX,
1246 _SC_NL_LANGMAX,
1247 _SC_NL_MSGMAX,
1248 _SC_NL_NMAX,
1249 _SC_NL_SETMAX,
1250 _SC_NL_TEXTMAX,
1251 _SC_XBS5_ILP32_OFF32,
1252 _SC_XBS5_ILP32_OFFBIG,
1253 _SC_XBS5_LP64_OFF64,
1254 _SC_XBS5_LPBIG_OFFBIG,
1255 _SC_XOPEN_LEGACY,
1256 _SC_XOPEN_REALTIME,
1257 _SC_XOPEN_REALTIME_THREADS,
1258 _SC_ADVISORY_INFO,
1259 _SC_BARRIERS,
1260 _SC_BASE,
1261 _SC_C_LANG_SUPPORT,
1262 _SC_C_LANG_SUPPORT_R,
1263 _SC_CLOCK_SELECTION,
1264 _SC_CPUTIME,
1265 _SC_THREAD_CPUTIME,
1266 _SC_DEVICE_IO,
1267 _SC_DEVICE_SPECIFIC,
1268 _SC_DEVICE_SPECIFIC_R,
1269 _SC_FD_MGMT,
1270 _SC_FIFO,
1271 _SC_PIPE,
1272 _SC_FILE_ATTRIBUTES,
1273 _SC_FILE_LOCKING,
1274 _SC_FILE_SYSTEM,
1275 _SC_MONOTONIC_CLOCK,
1276 _SC_MULTI_PROCESS,
1277 _SC_SINGLE_PROCESS,
1278 _SC_NETWORKING,
1279 _SC_READER_WRITER_LOCKS,
1280 _SC_SPIN_LOCKS,
1281 _SC_REGEXP,
1282 _SC_REGEX_VERSION,
1283 _SC_SHELL,
1284 _SC_SIGNALS,
1285 _SC_SPAWN,
1286 _SC_SPORADIC_SERVER,
1287 _SC_THREAD_SPORADIC_SERVER,
1288 _SC_SYSTEM_DATABASE,
1289 _SC_SYSTEM_DATABASE_R,
1290 _SC_TIMEOUTS,
1291 _SC_TYPED_MEMORY_OBJECTS,
1292 _SC_USER_GROUPS,
1293 _SC_USER_GROUPS_R,
1294 _SC_2_PBS,
1295 _SC_2_PBS_ACCOUNTING,
1296 _SC_2_PBS_LOCATE,
1297 _SC_2_PBS_MESSAGE,
1298 _SC_2_PBS_TRACK,
1299 _SC_SYMLOOP_MAX,
1300 _SC_STREAMS,
1301 _SC_2_PBS_CHECKPOINT,
1302 _SC_V6_ILP32_OFF32,
1303 _SC_V6_ILP32_OFFBIG,
1304 _SC_V6_LP64_OFF64,
1305 _SC_V6_LPBIG_OFFBIG,
1306 _SC_HOST_NAME_MAX,
1307 _SC_TRACE,
1308 _SC_TRACE_EVENT_FILTER,
1309 _SC_TRACE_INHERIT,
1310 _SC_TRACE_LOG,
1311 _SC_LEVEL1_ICACHE_SIZE,
1312 _SC_LEVEL1_ICACHE_ASSOC,
1313 _SC_LEVEL1_ICACHE_LINESIZE,
1314 _SC_LEVEL1_DCACHE_SIZE,
1315 _SC_LEVEL1_DCACHE_ASSOC,
1316 _SC_LEVEL1_DCACHE_LINESIZE,
1317 _SC_LEVEL2_CACHE_SIZE,
1318 _SC_LEVEL2_CACHE_ASSOC,
1319 _SC_LEVEL2_CACHE_LINESIZE,
1320 _SC_LEVEL3_CACHE_SIZE,
1321 _SC_LEVEL3_CACHE_ASSOC,
1322 _SC_LEVEL3_CACHE_LINESIZE,
1323 _SC_LEVEL4_CACHE_SIZE,
1324 _SC_LEVEL4_CACHE_ASSOC,
1325 _SC_LEVEL4_CACHE_LINESIZE,
1326 _SC_IPV6 = _SC_LEVEL1_ICACHE_SIZE + 50,
1327 _SC_RAW_SOCKETS,
1328 _SC_V7_ILP32_OFF32,
1329 _SC_V7_ILP32_OFFBIG,
1330 _SC_V7_LP64_OFF64,
1331 _SC_V7_LPBIG_OFFBIG,
1332 _SC_SS_REPL_MAX,
1333 _SC_TRACE_EVENT_NAME_MAX,
1334 _SC_TRACE_NAME_MAX,
1335 _SC_TRACE_SYS_MAX,
1336 _SC_TRACE_USER_EVENT_MAX,
1337 _SC_XOPEN_STREAMS,
1338 _SC_THREAD_ROBUST_PRIO_INHERIT,
1339 _SC_THREAD_ROBUST_PRIO_PROTECT
1340 };
1341enum
1342 {
1343 _CS_PATH,
1344 _CS_V6_WIDTH_RESTRICTED_ENVS,
1345 _CS_GNU_LIBC_VERSION,
1346 _CS_GNU_LIBPTHREAD_VERSION,
1347 _CS_V5_WIDTH_RESTRICTED_ENVS,
1348 _CS_V7_WIDTH_RESTRICTED_ENVS,
1349 _CS_LFS_CFLAGS = 1000,
1350 _CS_LFS_LDFLAGS,
1351 _CS_LFS_LIBS,
1352 _CS_LFS_LINTFLAGS,
1353 _CS_LFS64_CFLAGS,
1354 _CS_LFS64_LDFLAGS,
1355 _CS_LFS64_LIBS,
1356 _CS_LFS64_LINTFLAGS,
1357 _CS_XBS5_ILP32_OFF32_CFLAGS = 1100,
1358 _CS_XBS5_ILP32_OFF32_LDFLAGS,
1359 _CS_XBS5_ILP32_OFF32_LIBS,
1360 _CS_XBS5_ILP32_OFF32_LINTFLAGS,
1361 _CS_XBS5_ILP32_OFFBIG_CFLAGS,
1362 _CS_XBS5_ILP32_OFFBIG_LDFLAGS,
1363 _CS_XBS5_ILP32_OFFBIG_LIBS,
1364 _CS_XBS5_ILP32_OFFBIG_LINTFLAGS,
1365 _CS_XBS5_LP64_OFF64_CFLAGS,
1366 _CS_XBS5_LP64_OFF64_LDFLAGS,
1367 _CS_XBS5_LP64_OFF64_LIBS,
1368 _CS_XBS5_LP64_OFF64_LINTFLAGS,
1369 _CS_XBS5_LPBIG_OFFBIG_CFLAGS,
1370 _CS_XBS5_LPBIG_OFFBIG_LDFLAGS,
1371 _CS_XBS5_LPBIG_OFFBIG_LIBS,
1372 _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS,
1373 _CS_POSIX_V6_ILP32_OFF32_CFLAGS,
1374 _CS_POSIX_V6_ILP32_OFF32_LDFLAGS,
1375 _CS_POSIX_V6_ILP32_OFF32_LIBS,
1376 _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS,
1377 _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS,
1378 _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS,
1379 _CS_POSIX_V6_ILP32_OFFBIG_LIBS,
1380 _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS,
1381 _CS_POSIX_V6_LP64_OFF64_CFLAGS,
1382 _CS_POSIX_V6_LP64_OFF64_LDFLAGS,
1383 _CS_POSIX_V6_LP64_OFF64_LIBS,
1384 _CS_POSIX_V6_LP64_OFF64_LINTFLAGS,
1385 _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS,
1386 _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS,
1387 _CS_POSIX_V6_LPBIG_OFFBIG_LIBS,
1388 _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS,
1389 _CS_POSIX_V7_ILP32_OFF32_CFLAGS,
1390 _CS_POSIX_V7_ILP32_OFF32_LDFLAGS,
1391 _CS_POSIX_V7_ILP32_OFF32_LIBS,
1392 _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS,
1393 _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS,
1394 _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS,
1395 _CS_POSIX_V7_ILP32_OFFBIG_LIBS,
1396 _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS,
1397 _CS_POSIX_V7_LP64_OFF64_CFLAGS,
1398 _CS_POSIX_V7_LP64_OFF64_LDFLAGS,
1399 _CS_POSIX_V7_LP64_OFF64_LIBS,
1400 _CS_POSIX_V7_LP64_OFF64_LINTFLAGS,
1401 _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS,
1402 _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS,
1403 _CS_POSIX_V7_LPBIG_OFFBIG_LIBS,
1404 _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS
1405 };
1406extern long int pathconf (__const char *__path, int __name)
1407 throw () __attribute__ ((__nonnull__ (1)));
1408extern long int fpathconf (int __fd, int __name) throw ();
1409extern long int sysconf (int __name) throw ();
1410extern size_t confstr (int __name, char *__buf, size_t __len) throw ();
1411extern __pid_t getpid (void) throw ();
1412extern __pid_t getppid (void) throw ();
1413extern __pid_t getpgrp (void) throw ();
1414extern __pid_t __getpgid (__pid_t __pid) throw ();
1415extern __pid_t getpgid (__pid_t __pid) throw ();
1416extern int setpgid (__pid_t __pid, __pid_t __pgid) throw ();
1417extern int setpgrp (void) throw ();
1418extern __pid_t setsid (void) throw ();
1419extern __pid_t getsid (__pid_t __pid) throw ();
1420extern __uid_t getuid (void) throw ();
1421extern __uid_t geteuid (void) throw ();
1422extern __gid_t getgid (void) throw ();
1423extern __gid_t getegid (void) throw ();
1424extern int getgroups (int __size, __gid_t __list[]) throw () ;
1425extern int group_member (__gid_t __gid) throw ();
1426extern int setuid (__uid_t __uid) throw ();
1427extern int setreuid (__uid_t __ruid, __uid_t __euid) throw ();
1428extern int seteuid (__uid_t __uid) throw ();
1429extern int setgid (__gid_t __gid) throw ();
1430extern int setregid (__gid_t __rgid, __gid_t __egid) throw ();
1431extern int setegid (__gid_t __gid) throw ();
1432extern int getresuid (__uid_t *__ruid, __uid_t *__euid, __uid_t *__suid)
1433 throw ();
1434extern int getresgid (__gid_t *__rgid, __gid_t *__egid, __gid_t *__sgid)
1435 throw ();
1436extern int setresuid (__uid_t __ruid, __uid_t __euid, __uid_t __suid)
1437 throw ();
1438extern int setresgid (__gid_t __rgid, __gid_t __egid, __gid_t __sgid)
1439 throw ();
1440extern __pid_t fork (void) throw ();
1441extern __pid_t vfork (void) throw ();
1442extern char *ttyname (int __fd) throw ();
1443extern int ttyname_r (int __fd, char *__buf, size_t __buflen)
1444 throw () __attribute__ ((__nonnull__ (2))) ;
1445extern int isatty (int __fd) throw ();
1446extern int ttyslot (void) throw ();
1447extern int link (__const char *__from, __const char *__to)
1448 throw () __attribute__ ((__nonnull__ (1, 2))) ;
1449extern int linkat (int __fromfd, __const char *__from, int __tofd,
1450 __const char *__to, int __flags)
1451 throw () __attribute__ ((__nonnull__ (2, 4))) ;
1452extern int symlink (__const char *__from, __const char *__to)
1453 throw () __attribute__ ((__nonnull__ (1, 2))) ;
1454extern ssize_t readlink (__const char *__restrict __path,
1455 char *__restrict __buf, size_t __len)
1456 throw () __attribute__ ((__nonnull__ (1, 2))) ;
1457extern int symlinkat (__const char *__from, int __tofd,
1458 __const char *__to) throw () __attribute__ ((__nonnull__ (1, 3))) ;
1459extern ssize_t readlinkat (int __fd, __const char *__restrict __path,
1460 char *__restrict __buf, size_t __len)
1461 throw () __attribute__ ((__nonnull__ (2, 3))) ;
1462extern int unlink (__const char *__name) throw () __attribute__ ((__nonnull__ (1)));
1463extern int unlinkat (int __fd, __const char *__name, int __flag)
1464 throw () __attribute__ ((__nonnull__ (2)));
1465extern int rmdir (__const char *__path) throw () __attribute__ ((__nonnull__ (1)));
1466extern __pid_t tcgetpgrp (int __fd) throw ();
1467extern int tcsetpgrp (int __fd, __pid_t __pgrp_id) throw ();
1468extern char *getlogin (void);
1469extern int getlogin_r (char *__name, size_t __name_len) __attribute__ ((__nonnull__ (1)));
1470extern int setlogin (__const char *__name) throw () __attribute__ ((__nonnull__ (1)));
1471extern "C" {
1472extern char *optarg;
1473extern int optind;
1474extern int opterr;
1475extern int optopt;
1476extern int getopt (int ___argc, char *const *___argv, const char *__shortopts)
1477 throw ();
1478}
1479extern int gethostname (char *__name, size_t __len) throw () __attribute__ ((__nonnull__ (1)));
1480extern int sethostname (__const char *__name, size_t __len)
1481 throw () __attribute__ ((__nonnull__ (1))) ;
1482extern int sethostid (long int __id) throw () ;
1483extern int getdomainname (char *__name, size_t __len)
1484 throw () __attribute__ ((__nonnull__ (1))) ;
1485extern int setdomainname (__const char *__name, size_t __len)
1486 throw () __attribute__ ((__nonnull__ (1))) ;
1487extern int vhangup (void) throw ();
1488extern int revoke (__const char *__file) throw () __attribute__ ((__nonnull__ (1))) ;
1489extern int profil (unsigned short int *__sample_buffer, size_t __size,
1490 size_t __offset, unsigned int __scale)
1491 throw () __attribute__ ((__nonnull__ (1)));
1492extern int acct (__const char *__name) throw ();
1493extern char *getusershell (void) throw ();
1494extern void endusershell (void) throw ();
1495extern void setusershell (void) throw ();
1496extern int daemon (int __nochdir, int __noclose) throw () ;
1497extern int chroot (__const char *__path) throw () __attribute__ ((__nonnull__ (1))) ;
1498extern char *getpass (__const char *__prompt) __attribute__ ((__nonnull__ (1)));
1499extern int fsync (int __fd);
1500extern long int gethostid (void);
1501extern void sync (void) throw ();
1502extern int getpagesize (void) throw () __attribute__ ((__const__));
1503extern int getdtablesize (void) throw ();
1504extern int truncate (__const char *__file, __off64_t __length) throw () __asm__ ("" "truncate64") __attribute__ ((__nonnull__ (1))) ;
1505extern int truncate64 (__const char *__file, __off64_t __length)
1506 throw () __attribute__ ((__nonnull__ (1))) ;
1507extern int ftruncate (int __fd, __off64_t __length) throw () __asm__ ("" "ftruncate64") ;
1508extern int ftruncate64 (int __fd, __off64_t __length) throw () ;
1509extern int brk (void *__addr) throw () ;
1510extern void *sbrk (intptr_t __delta) throw ();
1511extern long int syscall (long int __sysno, ...) throw ();
1512extern int lockf (int __fd, int __cmd, __off64_t __len) __asm__ ("" "lockf64") ;
1513extern int lockf64 (int __fd, int __cmd, __off64_t __len) ;
1514extern int fdatasync (int __fildes);
1515extern char *crypt (__const char *__key, __const char *__salt)
1516 throw () __attribute__ ((__nonnull__ (1, 2)));
1517extern void encrypt (char *__block, int __edflag) throw () __attribute__ ((__nonnull__ (1)));
1518extern void swab (__const void *__restrict __from, void *__restrict __to,
1519 ssize_t __n) throw () __attribute__ ((__nonnull__ (1, 2)));
1520extern char *ctermid (char *__s) throw ();
1521}
1522extern "C" {
1523extern void __assert_fail (__const char *__assertion, __const char *__file,
1524 unsigned int __line, __const char *__function)
1525 throw () __attribute__ ((__noreturn__));
1526extern void __assert_perror_fail (int __errnum, __const char *__file,
1527 unsigned int __line,
1528 __const char *__function)
1529 throw () __attribute__ ((__noreturn__));
1530extern void __assert (const char *__assertion, const char *__file, int __line)
1531 throw () __attribute__ ((__noreturn__));
1532}
1533typedef unsigned char uint8_t;
1534typedef unsigned short int uint16_t;
1535typedef unsigned int uint32_t;
1536typedef unsigned long int uint64_t;
1537typedef signed char int_least8_t;
1538typedef short int int_least16_t;
1539typedef int int_least32_t;
1540typedef long int int_least64_t;
1541typedef unsigned char uint_least8_t;
1542typedef unsigned short int uint_least16_t;
1543typedef unsigned int uint_least32_t;
1544typedef unsigned long int uint_least64_t;
1545typedef signed char int_fast8_t;
1546typedef long int int_fast16_t;
1547typedef long int int_fast32_t;
1548typedef long int int_fast64_t;
1549typedef unsigned char uint_fast8_t;
1550typedef unsigned long int uint_fast16_t;
1551typedef unsigned long int uint_fast32_t;
1552typedef unsigned long int uint_fast64_t;
1553typedef unsigned long int uintptr_t;
1554typedef long int intmax_t;
1555typedef unsigned long int uintmax_t;
1556typedef uintptr_t Py_uintptr_t;
1557typedef intptr_t Py_intptr_t;
1558typedef ssize_t Py_ssize_t;
1559extern "C" {
1560typedef float float_t;
1561typedef double double_t;
1562extern double acos (double __x) throw (); extern double __acos (double __x) throw ();
1563extern double asin (double __x) throw (); extern double __asin (double __x) throw ();
1564extern double atan (double __x) throw (); extern double __atan (double __x) throw ();
1565extern double atan2 (double __y, double __x) throw (); extern double __atan2 (double __y, double __x) throw ();
1566extern double cos (double __x) throw (); extern double __cos (double __x) throw ();
1567extern double sin (double __x) throw (); extern double __sin (double __x) throw ();
1568extern double tan (double __x) throw (); extern double __tan (double __x) throw ();
1569extern double cosh (double __x) throw (); extern double __cosh (double __x) throw ();
1570extern double sinh (double __x) throw (); extern double __sinh (double __x) throw ();
1571extern double tanh (double __x) throw (); extern double __tanh (double __x) throw ();
1572extern void sincos (double __x, double *__sinx, double *__cosx) throw (); extern void __sincos (double __x, double *__sinx, double *__cosx) throw ();
1573extern double acosh (double __x) throw (); extern double __acosh (double __x) throw ();
1574extern double asinh (double __x) throw (); extern double __asinh (double __x) throw ();
1575extern double atanh (double __x) throw (); extern double __atanh (double __x) throw ();
1576extern double exp (double __x) throw (); extern double __exp (double __x) throw ();
1577extern double frexp (double __x, int *__exponent) throw (); extern double __frexp (double __x, int *__exponent) throw ();
1578extern double ldexp (double __x, int __exponent) throw (); extern double __ldexp (double __x, int __exponent) throw ();
1579extern double log (double __x) throw (); extern double __log (double __x) throw ();
1580extern double log10 (double __x) throw (); extern double __log10 (double __x) throw ();
1581extern double modf (double __x, double *__iptr) throw (); extern double __modf (double __x, double *__iptr) throw ();
1582extern double exp10 (double __x) throw (); extern double __exp10 (double __x) throw ();
1583extern double pow10 (double __x) throw (); extern double __pow10 (double __x) throw ();
1584extern double expm1 (double __x) throw (); extern double __expm1 (double __x) throw ();
1585extern double log1p (double __x) throw (); extern double __log1p (double __x) throw ();
1586extern double logb (double __x) throw (); extern double __logb (double __x) throw ();
1587extern double exp2 (double __x) throw (); extern double __exp2 (double __x) throw ();
1588extern double log2 (double __x) throw (); extern double __log2 (double __x) throw ();
1589extern double pow (double __x, double __y) throw (); extern double __pow (double __x, double __y) throw ();
1590extern double sqrt (double __x) throw (); extern double __sqrt (double __x) throw ();
1591extern double hypot (double __x, double __y) throw (); extern double __hypot (double __x, double __y) throw ();
1592extern double cbrt (double __x) throw (); extern double __cbrt (double __x) throw ();
1593extern double ceil (double __x) throw () __attribute__ ((__const__)); extern double __ceil (double __x) throw () __attribute__ ((__const__));
1594extern double fabs (double __x) throw () __attribute__ ((__const__)); extern double __fabs (double __x) throw () __attribute__ ((__const__));
1595extern double floor (double __x) throw () __attribute__ ((__const__)); extern double __floor (double __x) throw () __attribute__ ((__const__));
1596extern double fmod (double __x, double __y) throw (); extern double __fmod (double __x, double __y) throw ();
1597extern int __isinf (double __value) throw () __attribute__ ((__const__));
1598extern int __finite (double __value) throw () __attribute__ ((__const__));
1599extern int isinf (double __value) throw () __attribute__ ((__const__));
1600extern int finite (double __value) throw () __attribute__ ((__const__));
1601extern double drem (double __x, double __y) throw (); extern double __drem (double __x, double __y) throw ();
1602extern double significand (double __x) throw (); extern double __significand (double __x) throw ();
1603extern double copysign (double __x, double __y) throw () __attribute__ ((__const__)); extern double __copysign (double __x, double __y) throw () __attribute__ ((__const__));
1604extern double nan (__const char *__tagb) throw () __attribute__ ((__const__)); extern double __nan (__const char *__tagb) throw () __attribute__ ((__const__));
1605extern int __isnan (double __value) throw () __attribute__ ((__const__));
1606extern int isnan (double __value) throw () __attribute__ ((__const__));
1607extern double j0 (double) throw (); extern double __j0 (double) throw ();
1608extern double j1 (double) throw (); extern double __j1 (double) throw ();
1609extern double jn (int, double) throw (); extern double __jn (int, double) throw ();
1610extern double y0 (double) throw (); extern double __y0 (double) throw ();
1611extern double y1 (double) throw (); extern double __y1 (double) throw ();
1612extern double yn (int, double) throw (); extern double __yn (int, double) throw ();
1613extern double erf (double) throw (); extern double __erf (double) throw ();
1614extern double erfc (double) throw (); extern double __erfc (double) throw ();
1615extern double lgamma (double) throw (); extern double __lgamma (double) throw ();
1616extern double tgamma (double) throw (); extern double __tgamma (double) throw ();
1617extern double gamma (double) throw (); extern double __gamma (double) throw ();
1618extern double lgamma_r (double, int *__signgamp) throw (); extern double __lgamma_r (double, int *__signgamp) throw ();
1619extern double rint (double __x) throw (); extern double __rint (double __x) throw ();
1620extern double nextafter (double __x, double __y) throw () __attribute__ ((__const__)); extern double __nextafter (double __x, double __y) throw () __attribute__ ((__const__));
1621extern double nexttoward (double __x, long double __y) throw () __attribute__ ((__const__)); extern double __nexttoward (double __x, long double __y) throw () __attribute__ ((__const__));
1622extern double remainder (double __x, double __y) throw (); extern double __remainder (double __x, double __y) throw ();
1623extern double scalbn (double __x, int __n) throw (); extern double __scalbn (double __x, int __n) throw ();
1624extern int ilogb (double __x) throw (); extern int __ilogb (double __x) throw ();
1625extern double scalbln (double __x, long int __n) throw (); extern double __scalbln (double __x, long int __n) throw ();
1626extern double nearbyint (double __x) throw (); extern double __nearbyint (double __x) throw ();
1627extern double round (double __x) throw () __attribute__ ((__const__)); extern double __round (double __x) throw () __attribute__ ((__const__));
1628extern double trunc (double __x) throw () __attribute__ ((__const__)); extern double __trunc (double __x) throw () __attribute__ ((__const__));
1629extern double remquo (double __x, double __y, int *__quo) throw (); extern double __remquo (double __x, double __y, int *__quo) throw ();
1630extern long int lrint (double __x) throw (); extern long int __lrint (double __x) throw ();
1631extern long long int llrint (double __x) throw (); extern long long int __llrint (double __x) throw ();
1632extern long int lround (double __x) throw (); extern long int __lround (double __x) throw ();
1633extern long long int llround (double __x) throw (); extern long long int __llround (double __x) throw ();
1634extern double fdim (double __x, double __y) throw (); extern double __fdim (double __x, double __y) throw ();
1635extern double fmax (double __x, double __y) throw (); extern double __fmax (double __x, double __y) throw ();
1636extern double fmin (double __x, double __y) throw (); extern double __fmin (double __x, double __y) throw ();
1637extern int __fpclassify (double __value) throw ()
1638 __attribute__ ((__const__));
1639extern int __signbit (double __value) throw ()
1640 __attribute__ ((__const__));
1641extern double fma (double __x, double __y, double __z) throw (); extern double __fma (double __x, double __y, double __z) throw ();
1642extern double scalb (double __x, double __n) throw (); extern double __scalb (double __x, double __n) throw ();
1643extern float acosf (float __x) throw (); extern float __acosf (float __x) throw ();
1644extern float asinf (float __x) throw (); extern float __asinf (float __x) throw ();
1645extern float atanf (float __x) throw (); extern float __atanf (float __x) throw ();
1646extern float atan2f (float __y, float __x) throw (); extern float __atan2f (float __y, float __x) throw ();
1647extern float cosf (float __x) throw (); extern float __cosf (float __x) throw ();
1648extern float sinf (float __x) throw (); extern float __sinf (float __x) throw ();
1649extern float tanf (float __x) throw (); extern float __tanf (float __x) throw ();
1650extern float coshf (float __x) throw (); extern float __coshf (float __x) throw ();
1651extern float sinhf (float __x) throw (); extern float __sinhf (float __x) throw ();
1652extern float tanhf (float __x) throw (); extern float __tanhf (float __x) throw ();
1653extern void sincosf (float __x, float *__sinx, float *__cosx) throw (); extern void __sincosf (float __x, float *__sinx, float *__cosx) throw ();
1654extern float acoshf (float __x) throw (); extern float __acoshf (float __x) throw ();
1655extern float asinhf (float __x) throw (); extern float __asinhf (float __x) throw ();
1656extern float atanhf (float __x) throw (); extern float __atanhf (float __x) throw ();
1657extern float expf (float __x) throw (); extern float __expf (float __x) throw ();
1658extern float frexpf (float __x, int *__exponent) throw (); extern float __frexpf (float __x, int *__exponent) throw ();
1659extern float ldexpf (float __x, int __exponent) throw (); extern float __ldexpf (float __x, int __exponent) throw ();
1660extern float logf (float __x) throw (); extern float __logf (float __x) throw ();
1661extern float log10f (float __x) throw (); extern float __log10f (float __x) throw ();
1662extern float modff (float __x, float *__iptr) throw (); extern float __modff (float __x, float *__iptr) throw ();
1663extern float exp10f (float __x) throw (); extern float __exp10f (float __x) throw ();
1664extern float pow10f (float __x) throw (); extern float __pow10f (float __x) throw ();
1665extern float expm1f (float __x) throw (); extern float __expm1f (float __x) throw ();
1666extern float log1pf (float __x) throw (); extern float __log1pf (float __x) throw ();
1667extern float logbf (float __x) throw (); extern float __logbf (float __x) throw ();
1668extern float exp2f (float __x) throw (); extern float __exp2f (float __x) throw ();
1669extern float log2f (float __x) throw (); extern float __log2f (float __x) throw ();
1670extern float powf (float __x, float __y) throw (); extern float __powf (float __x, float __y) throw ();
1671extern float sqrtf (float __x) throw (); extern float __sqrtf (float __x) throw ();
1672extern float hypotf (float __x, float __y) throw (); extern float __hypotf (float __x, float __y) throw ();
1673extern float cbrtf (float __x) throw (); extern float __cbrtf (float __x) throw ();
1674extern float ceilf (float __x) throw () __attribute__ ((__const__)); extern float __ceilf (float __x) throw () __attribute__ ((__const__));
1675extern float fabsf (float __x) throw () __attribute__ ((__const__)); extern float __fabsf (float __x) throw () __attribute__ ((__const__));
1676extern float floorf (float __x) throw () __attribute__ ((__const__)); extern float __floorf (float __x) throw () __attribute__ ((__const__));
1677extern float fmodf (float __x, float __y) throw (); extern float __fmodf (float __x, float __y) throw ();
1678extern int __isinff (float __value) throw () __attribute__ ((__const__));
1679extern int __finitef (float __value) throw () __attribute__ ((__const__));
1680extern int isinff (float __value) throw () __attribute__ ((__const__));
1681extern int finitef (float __value) throw () __attribute__ ((__const__));
1682extern float dremf (float __x, float __y) throw (); extern float __dremf (float __x, float __y) throw ();
1683extern float significandf (float __x) throw (); extern float __significandf (float __x) throw ();
1684extern float copysignf (float __x, float __y) throw () __attribute__ ((__const__)); extern float __copysignf (float __x, float __y) throw () __attribute__ ((__const__));
1685extern float nanf (__const char *__tagb) throw () __attribute__ ((__const__)); extern float __nanf (__const char *__tagb) throw () __attribute__ ((__const__));
1686extern int __isnanf (float __value) throw () __attribute__ ((__const__));
1687extern int isnanf (float __value) throw () __attribute__ ((__const__));
1688extern float j0f (float) throw (); extern float __j0f (float) throw ();
1689extern float j1f (float) throw (); extern float __j1f (float) throw ();
1690extern float jnf (int, float) throw (); extern float __jnf (int, float) throw ();
1691extern float y0f (float) throw (); extern float __y0f (float) throw ();
1692extern float y1f (float) throw (); extern float __y1f (float) throw ();
1693extern float ynf (int, float) throw (); extern float __ynf (int, float) throw ();
1694extern float erff (float) throw (); extern float __erff (float) throw ();
1695extern float erfcf (float) throw (); extern float __erfcf (float) throw ();
1696extern float lgammaf (float) throw (); extern float __lgammaf (float) throw ();
1697extern float tgammaf (float) throw (); extern float __tgammaf (float) throw ();
1698extern float gammaf (float) throw (); extern float __gammaf (float) throw ();
1699extern float lgammaf_r (float, int *__signgamp) throw (); extern float __lgammaf_r (float, int *__signgamp) throw ();
1700extern float rintf (float __x) throw (); extern float __rintf (float __x) throw ();
1701extern float nextafterf (float __x, float __y) throw () __attribute__ ((__const__)); extern float __nextafterf (float __x, float __y) throw () __attribute__ ((__const__));
1702extern float nexttowardf (float __x, long double __y) throw () __attribute__ ((__const__)); extern float __nexttowardf (float __x, long double __y) throw () __attribute__ ((__const__));
1703extern float remainderf (float __x, float __y) throw (); extern float __remainderf (float __x, float __y) throw ();
1704extern float scalbnf (float __x, int __n) throw (); extern float __scalbnf (float __x, int __n) throw ();
1705extern int ilogbf (float __x) throw (); extern int __ilogbf (float __x) throw ();
1706extern float scalblnf (float __x, long int __n) throw (); extern float __scalblnf (float __x, long int __n) throw ();
1707extern float nearbyintf (float __x) throw (); extern float __nearbyintf (float __x) throw ();
1708extern float roundf (float __x) throw () __attribute__ ((__const__)); extern float __roundf (float __x) throw () __attribute__ ((__const__));
1709extern float truncf (float __x) throw () __attribute__ ((__const__)); extern float __truncf (float __x) throw () __attribute__ ((__const__));
1710extern float remquof (float __x, float __y, int *__quo) throw (); extern float __remquof (float __x, float __y, int *__quo) throw ();
1711extern long int lrintf (float __x) throw (); extern long int __lrintf (float __x) throw ();
1712extern long long int llrintf (float __x) throw (); extern long long int __llrintf (float __x) throw ();
1713extern long int lroundf (float __x) throw (); extern long int __lroundf (float __x) throw ();
1714extern long long int llroundf (float __x) throw (); extern long long int __llroundf (float __x) throw ();
1715extern float fdimf (float __x, float __y) throw (); extern float __fdimf (float __x, float __y) throw ();
1716extern float fmaxf (float __x, float __y) throw (); extern float __fmaxf (float __x, float __y) throw ();
1717extern float fminf (float __x, float __y) throw (); extern float __fminf (float __x, float __y) throw ();
1718extern int __fpclassifyf (float __value) throw ()
1719 __attribute__ ((__const__));
1720extern int __signbitf (float __value) throw ()
1721 __attribute__ ((__const__));
1722extern float fmaf (float __x, float __y, float __z) throw (); extern float __fmaf (float __x, float __y, float __z) throw ();
1723extern float scalbf (float __x, float __n) throw (); extern float __scalbf (float __x, float __n) throw ();
1724extern long double acosl (long double __x) throw (); extern long double __acosl (long double __x) throw ();
1725extern long double asinl (long double __x) throw (); extern long double __asinl (long double __x) throw ();
1726extern long double atanl (long double __x) throw (); extern long double __atanl (long double __x) throw ();
1727extern long double atan2l (long double __y, long double __x) throw (); extern long double __atan2l (long double __y, long double __x) throw ();
1728extern long double cosl (long double __x) throw (); extern long double __cosl (long double __x) throw ();
1729extern long double sinl (long double __x) throw (); extern long double __sinl (long double __x) throw ();
1730extern long double tanl (long double __x) throw (); extern long double __tanl (long double __x) throw ();
1731extern long double coshl (long double __x) throw (); extern long double __coshl (long double __x) throw ();
1732extern long double sinhl (long double __x) throw (); extern long double __sinhl (long double __x) throw ();
1733extern long double tanhl (long double __x) throw (); extern long double __tanhl (long double __x) throw ();
1734extern void sincosl (long double __x, long double *__sinx, long double *__cosx) throw (); extern void __sincosl (long double __x, long double *__sinx, long double *__cosx) throw ();
1735extern long double acoshl (long double __x) throw (); extern long double __acoshl (long double __x) throw ();
1736extern long double asinhl (long double __x) throw (); extern long double __asinhl (long double __x) throw ();
1737extern long double atanhl (long double __x) throw (); extern long double __atanhl (long double __x) throw ();
1738extern long double expl (long double __x) throw (); extern long double __expl (long double __x) throw ();
1739extern long double frexpl (long double __x, int *__exponent) throw (); extern long double __frexpl (long double __x, int *__exponent) throw ();
1740extern long double ldexpl (long double __x, int __exponent) throw (); extern long double __ldexpl (long double __x, int __exponent) throw ();
1741extern long double logl (long double __x) throw (); extern long double __logl (long double __x) throw ();
1742extern long double log10l (long double __x) throw (); extern long double __log10l (long double __x) throw ();
1743extern long double modfl (long double __x, long double *__iptr) throw (); extern long double __modfl (long double __x, long double *__iptr) throw ();
1744extern long double exp10l (long double __x) throw (); extern long double __exp10l (long double __x) throw ();
1745extern long double pow10l (long double __x) throw (); extern long double __pow10l (long double __x) throw ();
1746extern long double expm1l (long double __x) throw (); extern long double __expm1l (long double __x) throw ();
1747extern long double log1pl (long double __x) throw (); extern long double __log1pl (long double __x) throw ();
1748extern long double logbl (long double __x) throw (); extern long double __logbl (long double __x) throw ();
1749extern long double exp2l (long double __x) throw (); extern long double __exp2l (long double __x) throw ();
1750extern long double log2l (long double __x) throw (); extern long double __log2l (long double __x) throw ();
1751extern long double powl (long double __x, long double __y) throw (); extern long double __powl (long double __x, long double __y) throw ();
1752extern long double sqrtl (long double __x) throw (); extern long double __sqrtl (long double __x) throw ();
1753extern long double hypotl (long double __x, long double __y) throw (); extern long double __hypotl (long double __x, long double __y) throw ();
1754extern long double cbrtl (long double __x) throw (); extern long double __cbrtl (long double __x) throw ();
1755extern long double ceill (long double __x) throw () __attribute__ ((__const__)); extern long double __ceill (long double __x) throw () __attribute__ ((__const__));
1756extern long double fabsl (long double __x) throw () __attribute__ ((__const__)); extern long double __fabsl (long double __x) throw () __attribute__ ((__const__));
1757extern long double floorl (long double __x) throw () __attribute__ ((__const__)); extern long double __floorl (long double __x) throw () __attribute__ ((__const__));
1758extern long double fmodl (long double __x, long double __y) throw (); extern long double __fmodl (long double __x, long double __y) throw ();
1759extern int __isinfl (long double __value) throw () __attribute__ ((__const__));
1760extern int __finitel (long double __value) throw () __attribute__ ((__const__));
1761extern int isinfl (long double __value) throw () __attribute__ ((__const__));
1762extern int finitel (long double __value) throw () __attribute__ ((__const__));
1763extern long double dreml (long double __x, long double __y) throw (); extern long double __dreml (long double __x, long double __y) throw ();
1764extern long double significandl (long double __x) throw (); extern long double __significandl (long double __x) throw ();
1765extern long double copysignl (long double __x, long double __y) throw () __attribute__ ((__const__)); extern long double __copysignl (long double __x, long double __y) throw () __attribute__ ((__const__));
1766extern long double nanl (__const char *__tagb) throw () __attribute__ ((__const__)); extern long double __nanl (__const char *__tagb) throw () __attribute__ ((__const__));
1767extern int __isnanl (long double __value) throw () __attribute__ ((__const__));
1768extern int isnanl (long double __value) throw () __attribute__ ((__const__));
1769extern long double j0l (long double) throw (); extern long double __j0l (long double) throw ();
1770extern long double j1l (long double) throw (); extern long double __j1l (long double) throw ();
1771extern long double jnl (int, long double) throw (); extern long double __jnl (int, long double) throw ();
1772extern long double y0l (long double) throw (); extern long double __y0l (long double) throw ();
1773extern long double y1l (long double) throw (); extern long double __y1l (long double) throw ();
1774extern long double ynl (int, long double) throw (); extern long double __ynl (int, long double) throw ();
1775extern long double erfl (long double) throw (); extern long double __erfl (long double) throw ();
1776extern long double erfcl (long double) throw (); extern long double __erfcl (long double) throw ();
1777extern long double lgammal (long double) throw (); extern long double __lgammal (long double) throw ();
1778extern long double tgammal (long double) throw (); extern long double __tgammal (long double) throw ();
1779extern long double gammal (long double) throw (); extern long double __gammal (long double) throw ();
1780extern long double lgammal_r (long double, int *__signgamp) throw (); extern long double __lgammal_r (long double, int *__signgamp) throw ();
1781extern long double rintl (long double __x) throw (); extern long double __rintl (long double __x) throw ();
1782extern long double nextafterl (long double __x, long double __y) throw () __attribute__ ((__const__)); extern long double __nextafterl (long double __x, long double __y) throw () __attribute__ ((__const__));
1783extern long double nexttowardl (long double __x, long double __y) throw () __attribute__ ((__const__)); extern long double __nexttowardl (long double __x, long double __y) throw () __attribute__ ((__const__));
1784extern long double remainderl (long double __x, long double __y) throw (); extern long double __remainderl (long double __x, long double __y) throw ();
1785extern long double scalbnl (long double __x, int __n) throw (); extern long double __scalbnl (long double __x, int __n) throw ();
1786extern int ilogbl (long double __x) throw (); extern int __ilogbl (long double __x) throw ();
1787extern long double scalblnl (long double __x, long int __n) throw (); extern long double __scalblnl (long double __x, long int __n) throw ();
1788extern long double nearbyintl (long double __x) throw (); extern long double __nearbyintl (long double __x) throw ();
1789extern long double roundl (long double __x) throw () __attribute__ ((__const__)); extern long double __roundl (long double __x) throw () __attribute__ ((__const__));
1790extern long double truncl (long double __x) throw () __attribute__ ((__const__)); extern long double __truncl (long double __x) throw () __attribute__ ((__const__));
1791extern long double remquol (long double __x, long double __y, int *__quo) throw (); extern long double __remquol (long double __x, long double __y, int *__quo) throw ();
1792extern long int lrintl (long double __x) throw (); extern long int __lrintl (long double __x) throw ();
1793extern long long int llrintl (long double __x) throw (); extern long long int __llrintl (long double __x) throw ();
1794extern long int lroundl (long double __x) throw (); extern long int __lroundl (long double __x) throw ();
1795extern long long int llroundl (long double __x) throw (); extern long long int __llroundl (long double __x) throw ();
1796extern long double fdiml (long double __x, long double __y) throw (); extern long double __fdiml (long double __x, long double __y) throw ();
1797extern long double fmaxl (long double __x, long double __y) throw (); extern long double __fmaxl (long double __x, long double __y) throw ();
1798extern long double fminl (long double __x, long double __y) throw (); extern long double __fminl (long double __x, long double __y) throw ();
1799extern int __fpclassifyl (long double __value) throw ()
1800 __attribute__ ((__const__));
1801extern int __signbitl (long double __value) throw ()
1802 __attribute__ ((__const__));
1803extern long double fmal (long double __x, long double __y, long double __z) throw (); extern long double __fmal (long double __x, long double __y, long double __z) throw ();
1804extern long double scalbl (long double __x, long double __n) throw (); extern long double __scalbl (long double __x, long double __n) throw ();
1805extern int signgam;
1806enum
1807 {
1808 FP_NAN,
1809 FP_INFINITE,
1810 FP_ZERO,
1811 FP_SUBNORMAL,
1812 FP_NORMAL
1813 };
1814typedef enum
1815{
1816 _IEEE_ = -1,
1817 _SVID_,
1818 _XOPEN_,
1819 _POSIX_,
1820 _ISOC_
1821} _LIB_VERSION_TYPE;
1822extern _LIB_VERSION_TYPE _LIB_VERSION;
1823struct __exception
1824 {
1825 int type;
1826 char *name;
1827 double arg1;
1828 double arg2;
1829 double retval;
1830 };
1831extern int matherr (struct __exception *__exc) throw ();
1832}
1833extern "C" {
1834struct timezone
1835 {
1836 int tz_minuteswest;
1837 int tz_dsttime;
1838 };
1839typedef struct timezone *__restrict __timezone_ptr_t;
1840extern int gettimeofday (struct timeval *__restrict __tv,
1841 __timezone_ptr_t __tz) throw () __attribute__ ((__nonnull__ (1)));
1842extern int settimeofday (__const struct timeval *__tv,
1843 __const struct timezone *__tz)
1844 throw () __attribute__ ((__nonnull__ (1)));
1845extern int adjtime (__const struct timeval *__delta,
1846 struct timeval *__olddelta) throw ();
1847enum __itimer_which
1848 {
1849 ITIMER_REAL = 0,
1850 ITIMER_VIRTUAL = 1,
1851 ITIMER_PROF = 2
1852 };
1853struct itimerval
1854 {
1855 struct timeval it_interval;
1856 struct timeval it_value;
1857 };
1858typedef int __itimer_which_t;
1859extern int getitimer (__itimer_which_t __which,
1860 struct itimerval *__value) throw ();
1861extern int setitimer (__itimer_which_t __which,
1862 __const struct itimerval *__restrict __new,
1863 struct itimerval *__restrict __old) throw ();
1864extern int utimes (__const char *__file, __const struct timeval __tvp[2])
1865 throw () __attribute__ ((__nonnull__ (1)));
1866extern int lutimes (__const char *__file, __const struct timeval __tvp[2])
1867 throw () __attribute__ ((__nonnull__ (1)));
1868extern int futimes (int __fd, __const struct timeval __tvp[2]) throw ();
1869extern int futimesat (int __fd, __const char *__file,
1870 __const struct timeval __tvp[2]) throw ();
1871}
1872extern "C" {
1873struct tm
1874{
1875 int tm_sec;
1876 int tm_min;
1877 int tm_hour;
1878 int tm_mday;
1879 int tm_mon;
1880 int tm_year;
1881 int tm_wday;
1882 int tm_yday;
1883 int tm_isdst;
1884 long int tm_gmtoff;
1885 __const char *tm_zone;
1886};
1887struct itimerspec
1888 {
1889 struct timespec it_interval;
1890 struct timespec it_value;
1891 };
1892struct sigevent;
1893extern clock_t clock (void) throw ();
1894extern time_t time (time_t *__timer) throw ();
1895extern double difftime (time_t __time1, time_t __time0)
1896 throw () __attribute__ ((__const__));
1897extern time_t mktime (struct tm *__tp) throw ();
1898extern size_t strftime (char *__restrict __s, size_t __maxsize,
1899 __const char *__restrict __format,
1900 __const struct tm *__restrict __tp) throw ();
1901extern char *strptime (__const char *__restrict __s,
1902 __const char *__restrict __fmt, struct tm *__tp)
1903 throw ();
1904extern size_t strftime_l (char *__restrict __s, size_t __maxsize,
1905 __const char *__restrict __format,
1906 __const struct tm *__restrict __tp,
1907 __locale_t __loc) throw ();
1908extern char *strptime_l (__const char *__restrict __s,
1909 __const char *__restrict __fmt, struct tm *__tp,
1910 __locale_t __loc) throw ();
1911extern struct tm *gmtime (__const time_t *__timer) throw ();
1912extern struct tm *localtime (__const time_t *__timer) throw ();
1913extern struct tm *gmtime_r (__const time_t *__restrict __timer,
1914 struct tm *__restrict __tp) throw ();
1915extern struct tm *localtime_r (__const time_t *__restrict __timer,
1916 struct tm *__restrict __tp) throw ();
1917extern char *asctime (__const struct tm *__tp) throw ();
1918extern char *ctime (__const time_t *__timer) throw ();
1919extern char *asctime_r (__const struct tm *__restrict __tp,
1920 char *__restrict __buf) throw ();
1921extern char *ctime_r (__const time_t *__restrict __timer,
1922 char *__restrict __buf) throw ();
1923extern char *__tzname[2];
1924extern int __daylight;
1925extern long int __timezone;
1926extern char *tzname[2];
1927extern void tzset (void) throw ();
1928extern int daylight;
1929extern long int timezone;
1930extern int stime (__const time_t *__when) throw ();
1931extern time_t timegm (struct tm *__tp) throw ();
1932extern time_t timelocal (struct tm *__tp) throw ();
1933extern int dysize (int __year) throw () __attribute__ ((__const__));
1934extern int nanosleep (__const struct timespec *__requested_time,
1935 struct timespec *__remaining);
1936extern int clock_getres (clockid_t __clock_id, struct timespec *__res) throw ();
1937extern int clock_gettime (clockid_t __clock_id, struct timespec *__tp) throw ();
1938extern int clock_settime (clockid_t __clock_id, __const struct timespec *__tp)
1939 throw ();
1940extern int clock_nanosleep (clockid_t __clock_id, int __flags,
1941 __const struct timespec *__req,
1942 struct timespec *__rem);
1943extern int clock_getcpuclockid (pid_t __pid, clockid_t *__clock_id) throw ();
1944extern int timer_create (clockid_t __clock_id,
1945 struct sigevent *__restrict __evp,
1946 timer_t *__restrict __timerid) throw ();
1947extern int timer_delete (timer_t __timerid) throw ();
1948extern int timer_settime (timer_t __timerid, int __flags,
1949 __const struct itimerspec *__restrict __value,
1950 struct itimerspec *__restrict __ovalue) throw ();
1951extern int timer_gettime (timer_t __timerid, struct itimerspec *__value)
1952 throw ();
1953extern int timer_getoverrun (timer_t __timerid) throw ();
1954extern int getdate_err;
1955extern struct tm *getdate (__const char *__string);
1956extern int getdate_r (__const char *__restrict __string,
1957 struct tm *__restrict __resbufp);
1958}
1959extern "C" {
1960struct stat
1961 {
1962 __dev_t st_dev;
1963 __ino_t st_ino;
1964 __nlink_t st_nlink;
1965 __mode_t st_mode;
1966 __uid_t st_uid;
1967 __gid_t st_gid;
1968 int __pad0;
1969 __dev_t st_rdev;
1970 __off_t st_size;
1971 __blksize_t st_blksize;
1972 __blkcnt_t st_blocks;
1973 struct timespec st_atim;
1974 struct timespec st_mtim;
1975 struct timespec st_ctim;
1976 long int __unused[3];
1977 };
1978struct stat64
1979 {
1980 __dev_t st_dev;
1981 __ino64_t st_ino;
1982 __nlink_t st_nlink;
1983 __mode_t st_mode;
1984 __uid_t st_uid;
1985 __gid_t st_gid;
1986 int __pad0;
1987 __dev_t st_rdev;
1988 __off_t st_size;
1989 __blksize_t st_blksize;
1990 __blkcnt64_t st_blocks;
1991 struct timespec st_atim;
1992 struct timespec st_mtim;
1993 struct timespec st_ctim;
1994 long int __unused[3];
1995 };
1996extern int stat (__const char *__restrict __file, struct stat *__restrict __buf) throw () __asm__ ("" "stat64")
1997 __attribute__ ((__nonnull__ (1, 2)));
1998extern int fstat (int __fd, struct stat *__buf) throw () __asm__ ("" "fstat64")
1999 __attribute__ ((__nonnull__ (2)));
2000extern int stat64 (__const char *__restrict __file,
2001 struct stat64 *__restrict __buf) throw () __attribute__ ((__nonnull__ (1, 2)));
2002extern int fstat64 (int __fd, struct stat64 *__buf) throw () __attribute__ ((__nonnull__ (2)));
2003extern int fstatat (int __fd, __const char *__restrict __file, struct stat *__restrict __buf, int __flag) throw () __asm__ ("" "fstatat64") __attribute__ ((__nonnull__ (2, 3)));
2004extern int fstatat64 (int __fd, __const char *__restrict __file,
2005 struct stat64 *__restrict __buf, int __flag)
2006 throw () __attribute__ ((__nonnull__ (2, 3)));
2007extern int lstat (__const char *__restrict __file, struct stat *__restrict __buf) throw () __asm__ ("" "lstat64")
2008 __attribute__ ((__nonnull__ (1, 2)));
2009extern int lstat64 (__const char *__restrict __file,
2010 struct stat64 *__restrict __buf)
2011 throw () __attribute__ ((__nonnull__ (1, 2)));
2012extern int chmod (__const char *__file, __mode_t __mode)
2013 throw () __attribute__ ((__nonnull__ (1)));
2014extern int lchmod (__const char *__file, __mode_t __mode)
2015 throw () __attribute__ ((__nonnull__ (1)));
2016extern int fchmod (int __fd, __mode_t __mode) throw ();
2017extern int fchmodat (int __fd, __const char *__file, __mode_t __mode,
2018 int __flag)
2019 throw () __attribute__ ((__nonnull__ (2))) ;
2020extern __mode_t umask (__mode_t __mask) throw ();
2021extern __mode_t getumask (void) throw ();
2022extern int mkdir (__const char *__path, __mode_t __mode)
2023 throw () __attribute__ ((__nonnull__ (1)));
2024extern int mkdirat (int __fd, __const char *__path, __mode_t __mode)
2025 throw () __attribute__ ((__nonnull__ (2)));
2026extern int mknod (__const char *__path, __mode_t __mode, __dev_t __dev)
2027 throw () __attribute__ ((__nonnull__ (1)));
2028extern int mknodat (int __fd, __const char *__path, __mode_t __mode,
2029 __dev_t __dev) throw () __attribute__ ((__nonnull__ (2)));
2030extern int mkfifo (__const char *__path, __mode_t __mode)
2031 throw () __attribute__ ((__nonnull__ (1)));
2032extern int mkfifoat (int __fd, __const char *__path, __mode_t __mode)
2033 throw () __attribute__ ((__nonnull__ (2)));
2034extern int utimensat (int __fd, __const char *__path,
2035 __const struct timespec __times[2],
2036 int __flags)
2037 throw () __attribute__ ((__nonnull__ (2)));
2038extern int futimens (int __fd, __const struct timespec __times[2]) throw ();
2039extern int __fxstat (int __ver, int __fildes, struct stat *__stat_buf) throw () __asm__ ("" "__fxstat64")
2040 __attribute__ ((__nonnull__ (3)));
2041extern int __xstat (int __ver, __const char *__filename, struct stat *__stat_buf) throw () __asm__ ("" "__xstat64")
2042 __attribute__ ((__nonnull__ (2, 3)));
2043extern int __lxstat (int __ver, __const char *__filename, struct stat *__stat_buf) throw () __asm__ ("" "__lxstat64")
2044 __attribute__ ((__nonnull__ (2, 3)));
2045extern int __fxstatat (int __ver, int __fildes, __const char *__filename, struct stat *__stat_buf, int __flag) throw () __asm__ ("" "__fxstatat64") __attribute__ ((__nonnull__ (3, 4)));
2046extern int __fxstat64 (int __ver, int __fildes, struct stat64 *__stat_buf)
2047 throw () __attribute__ ((__nonnull__ (3)));
2048extern int __xstat64 (int __ver, __const char *__filename,
2049 struct stat64 *__stat_buf) throw () __attribute__ ((__nonnull__ (2, 3)));
2050extern int __lxstat64 (int __ver, __const char *__filename,
2051 struct stat64 *__stat_buf) throw () __attribute__ ((__nonnull__ (2, 3)));
2052extern int __fxstatat64 (int __ver, int __fildes, __const char *__filename,
2053 struct stat64 *__stat_buf, int __flag)
2054 throw () __attribute__ ((__nonnull__ (3, 4)));
2055extern int __xmknod (int __ver, __const char *__path, __mode_t __mode,
2056 __dev_t *__dev) throw () __attribute__ ((__nonnull__ (2, 4)));
2057extern int __xmknodat (int __ver, int __fd, __const char *__path,
2058 __mode_t __mode, __dev_t *__dev)
2059 throw () __attribute__ ((__nonnull__ (3, 5)));
2060}
2061extern "C" {
2062}
2063extern "C" {
2064void * PyMem_Malloc(size_t);
2065void * PyMem_Realloc(void *, size_t);
2066void PyMem_Free(void *);
2067}
2068extern "C" {
2069typedef struct _object {
2070 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
2071} PyObject;
2072typedef struct {
2073 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; Py_ssize_t ob_size;
2074} PyVarObject;
2075typedef PyObject * (*unaryfunc)(PyObject *);
2076typedef PyObject * (*binaryfunc)(PyObject *, PyObject *);
2077typedef PyObject * (*ternaryfunc)(PyObject *, PyObject *, PyObject *);
2078typedef int (*inquiry)(PyObject *);
2079typedef Py_ssize_t (*lenfunc)(PyObject *);
2080typedef int (*coercion)(PyObject **, PyObject **);
2081typedef PyObject *(*intargfunc)(PyObject *, int) __attribute__((__deprecated__));
2082typedef PyObject *(*intintargfunc)(PyObject *, int, int) __attribute__((__deprecated__));
2083typedef PyObject *(*ssizeargfunc)(PyObject *, Py_ssize_t);
2084typedef PyObject *(*ssizessizeargfunc)(PyObject *, Py_ssize_t, Py_ssize_t);
2085typedef int(*intobjargproc)(PyObject *, int, PyObject *);
2086typedef int(*intintobjargproc)(PyObject *, int, int, PyObject *);
2087typedef int(*ssizeobjargproc)(PyObject *, Py_ssize_t, PyObject *);
2088typedef int(*ssizessizeobjargproc)(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *);
2089typedef int(*objobjargproc)(PyObject *, PyObject *, PyObject *);
2090typedef int (*getreadbufferproc)(PyObject *, int, void **);
2091typedef int (*getwritebufferproc)(PyObject *, int, void **);
2092typedef int (*getsegcountproc)(PyObject *, int *);
2093typedef int (*getcharbufferproc)(PyObject *, int, char **);
2094typedef Py_ssize_t (*readbufferproc)(PyObject *, Py_ssize_t, void **);
2095typedef Py_ssize_t (*writebufferproc)(PyObject *, Py_ssize_t, void **);
2096typedef Py_ssize_t (*segcountproc)(PyObject *, Py_ssize_t *);
2097typedef Py_ssize_t (*charbufferproc)(PyObject *, Py_ssize_t, char **);
2098typedef struct bufferinfo {
2099 void *buf;
2100 PyObject *obj;
2101 Py_ssize_t len;
2102 Py_ssize_t itemsize;
2103 int readonly;
2104 int ndim;
2105 char *format;
2106 Py_ssize_t *shape;
2107 Py_ssize_t *strides;
2108 Py_ssize_t *suboffsets;
2109 void *internal;
2110} Py_buffer;
2111typedef int (*getbufferproc)(PyObject *, Py_buffer *, int);
2112typedef void (*releasebufferproc)(PyObject *, Py_buffer *);
2113typedef int (*objobjproc)(PyObject *, PyObject *);
2114typedef int (*visitproc)(PyObject *, void *);
2115typedef int (*traverseproc)(PyObject *, visitproc, void *);
2116typedef struct {
2117 binaryfunc nb_add;
2118 binaryfunc nb_subtract;
2119 binaryfunc nb_multiply;
2120 binaryfunc nb_divide;
2121 binaryfunc nb_remainder;
2122 binaryfunc nb_divmod;
2123 ternaryfunc nb_power;
2124 unaryfunc nb_negative;
2125 unaryfunc nb_positive;
2126 unaryfunc nb_absolute;
2127 inquiry nb_nonzero;
2128 unaryfunc nb_invert;
2129 binaryfunc nb_lshift;
2130 binaryfunc nb_rshift;
2131 binaryfunc nb_and;
2132 binaryfunc nb_xor;
2133 binaryfunc nb_or;
2134 coercion nb_coerce;
2135 unaryfunc nb_int;
2136 unaryfunc nb_long;
2137 unaryfunc nb_float;
2138 unaryfunc nb_oct;
2139 unaryfunc nb_hex;
2140 binaryfunc nb_inplace_add;
2141 binaryfunc nb_inplace_subtract;
2142 binaryfunc nb_inplace_multiply;
2143 binaryfunc nb_inplace_divide;
2144 binaryfunc nb_inplace_remainder;
2145 ternaryfunc nb_inplace_power;
2146 binaryfunc nb_inplace_lshift;
2147 binaryfunc nb_inplace_rshift;
2148 binaryfunc nb_inplace_and;
2149 binaryfunc nb_inplace_xor;
2150 binaryfunc nb_inplace_or;
2151 binaryfunc nb_floor_divide;
2152 binaryfunc nb_true_divide;
2153 binaryfunc nb_inplace_floor_divide;
2154 binaryfunc nb_inplace_true_divide;
2155 unaryfunc nb_index;
2156} PyNumberMethods;
2157typedef struct {
2158 lenfunc sq_length;
2159 binaryfunc sq_concat;
2160 ssizeargfunc sq_repeat;
2161 ssizeargfunc sq_item;
2162 ssizessizeargfunc sq_slice;
2163 ssizeobjargproc sq_ass_item;
2164 ssizessizeobjargproc sq_ass_slice;
2165 objobjproc sq_contains;
2166 binaryfunc sq_inplace_concat;
2167 ssizeargfunc sq_inplace_repeat;
2168} PySequenceMethods;
2169typedef struct {
2170 lenfunc mp_length;
2171 binaryfunc mp_subscript;
2172 objobjargproc mp_ass_subscript;
2173} PyMappingMethods;
2174typedef struct {
2175 readbufferproc bf_getreadbuffer;
2176 writebufferproc bf_getwritebuffer;
2177 segcountproc bf_getsegcount;
2178 charbufferproc bf_getcharbuffer;
2179 getbufferproc bf_getbuffer;
2180 releasebufferproc bf_releasebuffer;
2181} PyBufferProcs;
2182typedef void (*freefunc)(void *);
2183typedef void (*destructor)(PyObject *);
2184typedef int (*printfunc)(PyObject *, FILE *, int);
2185typedef PyObject *(*getattrfunc)(PyObject *, char *);
2186typedef PyObject *(*getattrofunc)(PyObject *, PyObject *);
2187typedef int (*setattrfunc)(PyObject *, char *, PyObject *);
2188typedef int (*setattrofunc)(PyObject *, PyObject *, PyObject *);
2189typedef int (*cmpfunc)(PyObject *, PyObject *);
2190typedef PyObject *(*reprfunc)(PyObject *);
2191typedef long (*hashfunc)(PyObject *);
2192typedef PyObject *(*richcmpfunc) (PyObject *, PyObject *, int);
2193typedef PyObject *(*getiterfunc) (PyObject *);
2194typedef PyObject *(*iternextfunc) (PyObject *);
2195typedef PyObject *(*descrgetfunc) (PyObject *, PyObject *, PyObject *);
2196typedef int (*descrsetfunc) (PyObject *, PyObject *, PyObject *);
2197typedef int (*initproc)(PyObject *, PyObject *, PyObject *);
2198typedef PyObject *(*newfunc)(struct _typeobject *, PyObject *, PyObject *);
2199typedef PyObject *(*allocfunc)(struct _typeobject *, Py_ssize_t);
2200typedef struct _typeobject {
2201 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; Py_ssize_t ob_size;
2202 const char *tp_name;
2203 Py_ssize_t tp_basicsize, tp_itemsize;
2204 destructor tp_dealloc;
2205 printfunc tp_print;
2206 getattrfunc tp_getattr;
2207 setattrfunc tp_setattr;
2208 cmpfunc tp_compare;
2209 reprfunc tp_repr;
2210 PyNumberMethods *tp_as_number;
2211 PySequenceMethods *tp_as_sequence;
2212 PyMappingMethods *tp_as_mapping;
2213 hashfunc tp_hash;
2214 ternaryfunc tp_call;
2215 reprfunc tp_str;
2216 getattrofunc tp_getattro;
2217 setattrofunc tp_setattro;
2218 PyBufferProcs *tp_as_buffer;
2219 long tp_flags;
2220 const char *tp_doc;
2221 traverseproc tp_traverse;
2222 inquiry tp_clear;
2223 richcmpfunc tp_richcompare;
2224 Py_ssize_t tp_weaklistoffset;
2225 getiterfunc tp_iter;
2226 iternextfunc tp_iternext;
2227 struct PyMethodDef *tp_methods;
2228 struct PyMemberDef *tp_members;
2229 struct PyGetSetDef *tp_getset;
2230 struct _typeobject *tp_base;
2231 PyObject *tp_dict;
2232 descrgetfunc tp_descr_get;
2233 descrsetfunc tp_descr_set;
2234 Py_ssize_t tp_dictoffset;
2235 initproc tp_init;
2236 allocfunc tp_alloc;
2237 newfunc tp_new;
2238 freefunc tp_free;
2239 inquiry tp_is_gc;
2240 PyObject *tp_bases;
2241 PyObject *tp_mro;
2242 PyObject *tp_cache;
2243 PyObject *tp_subclasses;
2244 PyObject *tp_weaklist;
2245 destructor tp_del;
2246 unsigned int tp_version_tag;
2247} PyTypeObject;
2248typedef struct _heaptypeobject {
2249 PyTypeObject ht_type;
2250 PyNumberMethods as_number;
2251 PyMappingMethods as_mapping;
2252 PySequenceMethods as_sequence;
2253 PyBufferProcs as_buffer;
2254 PyObject *ht_name, *ht_slots;
2255} PyHeapTypeObject;
2256int PyType_IsSubtype(PyTypeObject *, PyTypeObject *);
2257extern PyTypeObject PyType_Type;
2258extern PyTypeObject PyBaseObject_Type;
2259extern PyTypeObject PySuper_Type;
2260int PyType_Ready(PyTypeObject *);
2261PyObject * PyType_GenericAlloc(PyTypeObject *, Py_ssize_t);
2262PyObject * PyType_GenericNew(PyTypeObject *,
2263 PyObject *, PyObject *);
2264PyObject * _PyType_Lookup(PyTypeObject *, PyObject *);
2265unsigned int PyType_ClearCache(void);
2266void PyType_Modified(PyTypeObject *);
2267int PyObject_Print(PyObject *, FILE *, int);
2268void _PyObject_Dump(PyObject *);
2269PyObject * PyObject_Repr(PyObject *);
2270PyObject * _PyObject_Str(PyObject *);
2271PyObject * PyObject_Str(PyObject *);
2272PyObject * PyObject_Unicode(PyObject *);
2273int PyObject_Compare(PyObject *, PyObject *);
2274PyObject * PyObject_RichCompare(PyObject *, PyObject *, int);
2275int PyObject_RichCompareBool(PyObject *, PyObject *, int);
2276PyObject * PyObject_GetAttrString(PyObject *, const char *);
2277int PyObject_SetAttrString(PyObject *, const char *, PyObject *);
2278int PyObject_HasAttrString(PyObject *, const char *);
2279PyObject * PyObject_GetAttr(PyObject *, PyObject *);
2280int PyObject_SetAttr(PyObject *, PyObject *, PyObject *);
2281int PyObject_HasAttr(PyObject *, PyObject *);
2282PyObject ** _PyObject_GetDictPtr(PyObject *);
2283PyObject * PyObject_SelfIter(PyObject *);
2284PyObject * PyObject_GenericGetAttr(PyObject *, PyObject *);
2285int PyObject_GenericSetAttr(PyObject *,
2286 PyObject *, PyObject *);
2287long PyObject_Hash(PyObject *);
2288long PyObject_HashNotImplemented(PyObject *);
2289int PyObject_IsTrue(PyObject *);
2290int PyObject_Not(PyObject *);
2291int PyCallable_Check(PyObject *);
2292int PyNumber_Coerce(PyObject **, PyObject **);
2293int PyNumber_CoerceEx(PyObject **, PyObject **);
2294void PyObject_ClearWeakRefs(PyObject *);
2295extern int _PyObject_SlotCompare(PyObject *, PyObject *);
2296PyObject * PyObject_Dir(PyObject *);
2297int Py_ReprEnter(PyObject *);
2298void Py_ReprLeave(PyObject *);
2299long _Py_HashDouble(double);
2300long _Py_HashPointer(void*);
2301void Py_IncRef(PyObject *);
2302void Py_DecRef(PyObject *);
2303extern PyObject _Py_NoneStruct;
2304extern PyObject _Py_NotImplementedStruct;
2305extern int _Py_SwappedOp[];
2306void _PyTrash_deposit_object(PyObject*);
2307void _PyTrash_destroy_chain(void);
2308extern int _PyTrash_delete_nesting;
2309extern PyObject * _PyTrash_delete_later;
2310}
2311extern "C" {
2312void * PyObject_Malloc(size_t);
2313void * PyObject_Realloc(void *, size_t);
2314void PyObject_Free(void *);
2315PyObject * PyObject_Init(PyObject *, PyTypeObject *);
2316PyVarObject * PyObject_InitVar(PyVarObject *,
2317 PyTypeObject *, Py_ssize_t);
2318PyObject * _PyObject_New(PyTypeObject *);
2319PyVarObject * _PyObject_NewVar(PyTypeObject *, Py_ssize_t);
2320Py_ssize_t PyGC_Collect(void);
2321PyVarObject * _PyObject_GC_Resize(PyVarObject *, Py_ssize_t);
2322typedef union _gc_head {
2323 struct {
2324 union _gc_head *gc_next;
2325 union _gc_head *gc_prev;
2326 Py_ssize_t gc_refs;
2327 } gc;
2328 long double dummy;
2329} PyGC_Head;
2330extern PyGC_Head *_PyGC_generation0;
2331PyObject * _PyObject_GC_Malloc(size_t);
2332PyObject * _PyObject_GC_New(PyTypeObject *);
2333PyVarObject * _PyObject_GC_NewVar(PyTypeObject *, Py_ssize_t);
2334void PyObject_GC_Track(void *);
2335void PyObject_GC_UnTrack(void *);
2336void PyObject_GC_Del(void *);
2337}
2338extern "C" {
2339extern int Py_DebugFlag;
2340extern int Py_VerboseFlag;
2341extern int Py_InteractiveFlag;
2342extern int Py_InspectFlag;
2343extern int Py_OptimizeFlag;
2344extern int Py_NoSiteFlag;
2345extern int Py_BytesWarningFlag;
2346extern int Py_UseClassExceptionsFlag;
2347extern int Py_FrozenFlag;
2348extern int Py_TabcheckFlag;
2349extern int Py_UnicodeFlag;
2350extern int Py_IgnoreEnvironmentFlag;
2351extern int Py_DivisionWarningFlag;
2352extern int Py_DontWriteBytecodeFlag;
2353extern int Py_NoUserSiteDirectory;
2354extern int _Py_QnewFlag;
2355extern int Py_Py3kWarningFlag;
2356void Py_FatalError(const char *message);
2357}
2358extern "C" {
2359enum
2360{
2361 _ISupper = ((0) < 8 ? ((1 << (0)) << 8) : ((1 << (0)) >> 8)),
2362 _ISlower = ((1) < 8 ? ((1 << (1)) << 8) : ((1 << (1)) >> 8)),
2363 _ISalpha = ((2) < 8 ? ((1 << (2)) << 8) : ((1 << (2)) >> 8)),
2364 _ISdigit = ((3) < 8 ? ((1 << (3)) << 8) : ((1 << (3)) >> 8)),
2365 _ISxdigit = ((4) < 8 ? ((1 << (4)) << 8) : ((1 << (4)) >> 8)),
2366 _ISspace = ((5) < 8 ? ((1 << (5)) << 8) : ((1 << (5)) >> 8)),
2367 _ISprint = ((6) < 8 ? ((1 << (6)) << 8) : ((1 << (6)) >> 8)),
2368 _ISgraph = ((7) < 8 ? ((1 << (7)) << 8) : ((1 << (7)) >> 8)),
2369 _ISblank = ((8) < 8 ? ((1 << (8)) << 8) : ((1 << (8)) >> 8)),
2370 _IScntrl = ((9) < 8 ? ((1 << (9)) << 8) : ((1 << (9)) >> 8)),
2371 _ISpunct = ((10) < 8 ? ((1 << (10)) << 8) : ((1 << (10)) >> 8)),
2372 _ISalnum = ((11) < 8 ? ((1 << (11)) << 8) : ((1 << (11)) >> 8))
2373};
2374extern __const unsigned short int **__ctype_b_loc (void)
2375 throw () __attribute__ ((__const));
2376extern __const __int32_t **__ctype_tolower_loc (void)
2377 throw () __attribute__ ((__const));
2378extern __const __int32_t **__ctype_toupper_loc (void)
2379 throw () __attribute__ ((__const));
2380extern int isalnum (int) throw ();
2381extern int isalpha (int) throw ();
2382extern int iscntrl (int) throw ();
2383extern int isdigit (int) throw ();
2384extern int islower (int) throw ();
2385extern int isgraph (int) throw ();
2386extern int isprint (int) throw ();
2387extern int ispunct (int) throw ();
2388extern int isspace (int) throw ();
2389extern int isupper (int) throw ();
2390extern int isxdigit (int) throw ();
2391extern int tolower (int __c) throw ();
2392extern int toupper (int __c) throw ();
2393extern int isblank (int) throw ();
2394extern int isctype (int __c, int __mask) throw ();
2395extern int isascii (int __c) throw ();
2396extern int toascii (int __c) throw ();
2397extern int _toupper (int) throw ();
2398extern int _tolower (int) throw ();
2399extern int isalnum_l (int, __locale_t) throw ();
2400extern int isalpha_l (int, __locale_t) throw ();
2401extern int iscntrl_l (int, __locale_t) throw ();
2402extern int isdigit_l (int, __locale_t) throw ();
2403extern int islower_l (int, __locale_t) throw ();
2404extern int isgraph_l (int, __locale_t) throw ();
2405extern int isprint_l (int, __locale_t) throw ();
2406extern int ispunct_l (int, __locale_t) throw ();
2407extern int isspace_l (int, __locale_t) throw ();
2408extern int isupper_l (int, __locale_t) throw ();
2409extern int isxdigit_l (int, __locale_t) throw ();
2410extern int isblank_l (int, __locale_t) throw ();
2411extern int __tolower_l (int __c, __locale_t __l) throw ();
2412extern int tolower_l (int __c, __locale_t __l) throw ();
2413extern int __toupper_l (int __c, __locale_t __l) throw ();
2414extern int toupper_l (int __c, __locale_t __l) throw ();
2415}
2416typedef unsigned int wint_t;
2417typedef __mbstate_t mbstate_t;
2418extern "C" {
2419struct tm;
2420extern wchar_t *wcscpy (wchar_t *__restrict __dest,
2421 __const wchar_t *__restrict __src) throw ();
2422extern wchar_t *wcsncpy (wchar_t *__restrict __dest,
2423 __const wchar_t *__restrict __src, size_t __n)
2424 throw ();
2425extern wchar_t *wcscat (wchar_t *__restrict __dest,
2426 __const wchar_t *__restrict __src) throw ();
2427extern wchar_t *wcsncat (wchar_t *__restrict __dest,
2428 __const wchar_t *__restrict __src, size_t __n)
2429 throw ();
2430extern int wcscmp (__const wchar_t *__s1, __const wchar_t *__s2)
2431 throw () __attribute__ ((__pure__));
2432extern int wcsncmp (__const wchar_t *__s1, __const wchar_t *__s2, size_t __n)
2433 throw () __attribute__ ((__pure__));
2434extern int wcscasecmp (__const wchar_t *__s1, __const wchar_t *__s2) throw ();
2435extern int wcsncasecmp (__const wchar_t *__s1, __const wchar_t *__s2,
2436 size_t __n) throw ();
2437extern int wcscasecmp_l (__const wchar_t *__s1, __const wchar_t *__s2,
2438 __locale_t __loc) throw ();
2439extern int wcsncasecmp_l (__const wchar_t *__s1, __const wchar_t *__s2,
2440 size_t __n, __locale_t __loc) throw ();
2441extern int wcscoll (__const wchar_t *__s1, __const wchar_t *__s2) throw ();
2442extern size_t wcsxfrm (wchar_t *__restrict __s1,
2443 __const wchar_t *__restrict __s2, size_t __n) throw ();
2444extern int wcscoll_l (__const wchar_t *__s1, __const wchar_t *__s2,
2445 __locale_t __loc) throw ();
2446extern size_t wcsxfrm_l (wchar_t *__s1, __const wchar_t *__s2,
2447 size_t __n, __locale_t __loc) throw ();
2448extern wchar_t *wcsdup (__const wchar_t *__s) throw () __attribute__ ((__malloc__));
2449extern "C++" wchar_t *wcschr (wchar_t *__wcs, wchar_t __wc)
2450 throw () __asm ("wcschr") __attribute__ ((__pure__));
2451extern "C++" __const wchar_t *wcschr (__const wchar_t *__wcs, wchar_t __wc)
2452 throw () __asm ("wcschr") __attribute__ ((__pure__));
2453extern "C++" wchar_t *wcsrchr (wchar_t *__wcs, wchar_t __wc)
2454 throw () __asm ("wcsrchr") __attribute__ ((__pure__));
2455extern "C++" __const wchar_t *wcsrchr (__const wchar_t *__wcs, wchar_t __wc)
2456 throw () __asm ("wcsrchr") __attribute__ ((__pure__));
2457extern wchar_t *wcschrnul (__const wchar_t *__s, wchar_t __wc)
2458 throw () __attribute__ ((__pure__));
2459extern size_t wcscspn (__const wchar_t *__wcs, __const wchar_t *__reject)
2460 throw () __attribute__ ((__pure__));
2461extern size_t wcsspn (__const wchar_t *__wcs, __const wchar_t *__accept)
2462 throw () __attribute__ ((__pure__));
2463extern "C++" wchar_t *wcspbrk (wchar_t *__wcs, __const wchar_t *__accept)
2464 throw () __asm ("wcspbrk") __attribute__ ((__pure__));
2465extern "C++" __const wchar_t *wcspbrk (__const wchar_t *__wcs,
2466 __const wchar_t *__accept)
2467 throw () __asm ("wcspbrk") __attribute__ ((__pure__));
2468extern "C++" wchar_t *wcsstr (wchar_t *__haystack, __const wchar_t *__needle)
2469 throw () __asm ("wcsstr") __attribute__ ((__pure__));
2470extern "C++" __const wchar_t *wcsstr (__const wchar_t *__haystack,
2471 __const wchar_t *__needle)
2472 throw () __asm ("wcsstr") __attribute__ ((__pure__));
2473extern wchar_t *wcstok (wchar_t *__restrict __s,
2474 __const wchar_t *__restrict __delim,
2475 wchar_t **__restrict __ptr) throw ();
2476extern size_t wcslen (__const wchar_t *__s) throw () __attribute__ ((__pure__));
2477extern "C++" wchar_t *wcswcs (wchar_t *__haystack, __const wchar_t *__needle)
2478 throw () __asm ("wcswcs") __attribute__ ((__pure__));
2479extern "C++" __const wchar_t *wcswcs (__const wchar_t *__haystack,
2480 __const wchar_t *__needle)
2481 throw () __asm ("wcswcs") __attribute__ ((__pure__));
2482extern size_t wcsnlen (__const wchar_t *__s, size_t __maxlen)
2483 throw () __attribute__ ((__pure__));
2484extern "C++" wchar_t *wmemchr (wchar_t *__s, wchar_t __c, size_t __n)
2485 throw () __asm ("wmemchr") __attribute__ ((__pure__));
2486extern "C++" __const wchar_t *wmemchr (__const wchar_t *__s, wchar_t __c,
2487 size_t __n)
2488 throw () __asm ("wmemchr") __attribute__ ((__pure__));
2489extern int wmemcmp (__const wchar_t *__restrict __s1,
2490 __const wchar_t *__restrict __s2, size_t __n)
2491 throw () __attribute__ ((__pure__));
2492extern wchar_t *wmemcpy (wchar_t *__restrict __s1,
2493 __const wchar_t *__restrict __s2, size_t __n) throw ();
2494extern wchar_t *wmemmove (wchar_t *__s1, __const wchar_t *__s2, size_t __n)
2495 throw ();
2496extern wchar_t *wmemset (wchar_t *__s, wchar_t __c, size_t __n) throw ();
2497extern wchar_t *wmempcpy (wchar_t *__restrict __s1,
2498 __const wchar_t *__restrict __s2, size_t __n)
2499 throw ();
2500extern wint_t btowc (int __c) throw ();
2501extern int wctob (wint_t __c) throw ();
2502extern int mbsinit (__const mbstate_t *__ps) throw () __attribute__ ((__pure__));
2503extern size_t mbrtowc (wchar_t *__restrict __pwc,
2504 __const char *__restrict __s, size_t __n,
2505 mbstate_t *__p) throw ();
2506extern size_t wcrtomb (char *__restrict __s, wchar_t __wc,
2507 mbstate_t *__restrict __ps) throw ();
2508extern size_t __mbrlen (__const char *__restrict __s, size_t __n,
2509 mbstate_t *__restrict __ps) throw ();
2510extern size_t mbrlen (__const char *__restrict __s, size_t __n,
2511 mbstate_t *__restrict __ps) throw ();
2512extern size_t mbsrtowcs (wchar_t *__restrict __dst,
2513 __const char **__restrict __src, size_t __len,
2514 mbstate_t *__restrict __ps) throw ();
2515extern size_t wcsrtombs (char *__restrict __dst,
2516 __const wchar_t **__restrict __src, size_t __len,
2517 mbstate_t *__restrict __ps) throw ();
2518extern size_t mbsnrtowcs (wchar_t *__restrict __dst,
2519 __const char **__restrict __src, size_t __nmc,
2520 size_t __len, mbstate_t *__restrict __ps) throw ();
2521extern size_t wcsnrtombs (char *__restrict __dst,
2522 __const wchar_t **__restrict __src,
2523 size_t __nwc, size_t __len,
2524 mbstate_t *__restrict __ps) throw ();
2525extern int wcwidth (wchar_t __c) throw ();
2526extern int wcswidth (__const wchar_t *__s, size_t __n) throw ();
2527extern double wcstod (__const wchar_t *__restrict __nptr,
2528 wchar_t **__restrict __endptr) throw ();
2529extern float wcstof (__const wchar_t *__restrict __nptr,
2530 wchar_t **__restrict __endptr) throw ();
2531extern long double wcstold (__const wchar_t *__restrict __nptr,
2532 wchar_t **__restrict __endptr) throw ();
2533extern long int wcstol (__const wchar_t *__restrict __nptr,
2534 wchar_t **__restrict __endptr, int __base) throw ();
2535extern unsigned long int wcstoul (__const wchar_t *__restrict __nptr,
2536 wchar_t **__restrict __endptr, int __base)
2537 throw ();
2538__extension__
2539extern long long int wcstoll (__const wchar_t *__restrict __nptr,
2540 wchar_t **__restrict __endptr, int __base)
2541 throw ();
2542__extension__
2543extern unsigned long long int wcstoull (__const wchar_t *__restrict __nptr,
2544 wchar_t **__restrict __endptr,
2545 int __base) throw ();
2546__extension__
2547extern long long int wcstoq (__const wchar_t *__restrict __nptr,
2548 wchar_t **__restrict __endptr, int __base)
2549 throw ();
2550__extension__
2551extern unsigned long long int wcstouq (__const wchar_t *__restrict __nptr,
2552 wchar_t **__restrict __endptr,
2553 int __base) throw ();
2554extern long int wcstol_l (__const wchar_t *__restrict __nptr,
2555 wchar_t **__restrict __endptr, int __base,
2556 __locale_t __loc) throw ();
2557extern unsigned long int wcstoul_l (__const wchar_t *__restrict __nptr,
2558 wchar_t **__restrict __endptr,
2559 int __base, __locale_t __loc) throw ();
2560__extension__
2561extern long long int wcstoll_l (__const wchar_t *__restrict __nptr,
2562 wchar_t **__restrict __endptr,
2563 int __base, __locale_t __loc) throw ();
2564__extension__
2565extern unsigned long long int wcstoull_l (__const wchar_t *__restrict __nptr,
2566 wchar_t **__restrict __endptr,
2567 int __base, __locale_t __loc)
2568 throw ();
2569extern double wcstod_l (__const wchar_t *__restrict __nptr,
2570 wchar_t **__restrict __endptr, __locale_t __loc)
2571 throw ();
2572extern float wcstof_l (__const wchar_t *__restrict __nptr,
2573 wchar_t **__restrict __endptr, __locale_t __loc)
2574 throw ();
2575extern long double wcstold_l (__const wchar_t *__restrict __nptr,
2576 wchar_t **__restrict __endptr,
2577 __locale_t __loc) throw ();
2578extern wchar_t *wcpcpy (wchar_t *__dest, __const wchar_t *__src) throw ();
2579extern wchar_t *wcpncpy (wchar_t *__dest, __const wchar_t *__src, size_t __n)
2580 throw ();
2581extern __FILE *open_wmemstream (wchar_t **__bufloc, size_t *__sizeloc) throw ();
2582extern int fwide (__FILE *__fp, int __mode) throw ();
2583extern int fwprintf (__FILE *__restrict __stream,
2584 __const wchar_t *__restrict __format, ...)
2585 ;
2586extern int wprintf (__const wchar_t *__restrict __format, ...)
2587 ;
2588extern int swprintf (wchar_t *__restrict __s, size_t __n,
2589 __const wchar_t *__restrict __format, ...)
2590 throw () ;
2591extern int vfwprintf (__FILE *__restrict __s,
2592 __const wchar_t *__restrict __format,
2593 __gnuc_va_list __arg)
2594 ;
2595extern int vwprintf (__const wchar_t *__restrict __format,
2596 __gnuc_va_list __arg)
2597 ;
2598extern int vswprintf (wchar_t *__restrict __s, size_t __n,
2599 __const wchar_t *__restrict __format,
2600 __gnuc_va_list __arg)
2601 throw () ;
2602extern int fwscanf (__FILE *__restrict __stream,
2603 __const wchar_t *__restrict __format, ...)
2604 ;
2605extern int wscanf (__const wchar_t *__restrict __format, ...)
2606 ;
2607extern int swscanf (__const wchar_t *__restrict __s,
2608 __const wchar_t *__restrict __format, ...)
2609 throw () ;
2610extern int vfwscanf (__FILE *__restrict __s,
2611 __const wchar_t *__restrict __format,
2612 __gnuc_va_list __arg)
2613 ;
2614extern int vwscanf (__const wchar_t *__restrict __format,
2615 __gnuc_va_list __arg)
2616 ;
2617extern int vswscanf (__const wchar_t *__restrict __s,
2618 __const wchar_t *__restrict __format,
2619 __gnuc_va_list __arg)
2620 throw () ;
2621extern wint_t fgetwc (__FILE *__stream);
2622extern wint_t getwc (__FILE *__stream);
2623extern wint_t getwchar (void);
2624extern wint_t fputwc (wchar_t __wc, __FILE *__stream);
2625extern wint_t putwc (wchar_t __wc, __FILE *__stream);
2626extern wint_t putwchar (wchar_t __wc);
2627extern wchar_t *fgetws (wchar_t *__restrict __ws, int __n,
2628 __FILE *__restrict __stream);
2629extern int fputws (__const wchar_t *__restrict __ws,
2630 __FILE *__restrict __stream);
2631extern wint_t ungetwc (wint_t __wc, __FILE *__stream);
2632extern wint_t getwc_unlocked (__FILE *__stream);
2633extern wint_t getwchar_unlocked (void);
2634extern wint_t fgetwc_unlocked (__FILE *__stream);
2635extern wint_t fputwc_unlocked (wchar_t __wc, __FILE *__stream);
2636extern wint_t putwc_unlocked (wchar_t __wc, __FILE *__stream);
2637extern wint_t putwchar_unlocked (wchar_t __wc);
2638extern wchar_t *fgetws_unlocked (wchar_t *__restrict __ws, int __n,
2639 __FILE *__restrict __stream);
2640extern int fputws_unlocked (__const wchar_t *__restrict __ws,
2641 __FILE *__restrict __stream);
2642extern size_t wcsftime (wchar_t *__restrict __s, size_t __maxsize,
2643 __const wchar_t *__restrict __format,
2644 __const struct tm *__restrict __tp) throw ();
2645extern size_t wcsftime_l (wchar_t *__restrict __s, size_t __maxsize,
2646 __const wchar_t *__restrict __format,
2647 __const struct tm *__restrict __tp,
2648 __locale_t __loc) throw ();
2649}
2650typedef unsigned int Py_UCS4;
2651typedef Py_UCS4 Py_UNICODE;
2652extern "C" {
2653typedef struct {
2654 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
2655 Py_ssize_t length;
2656 Py_UNICODE *str;
2657 long hash;
2658 PyObject *defenc;
2659} PyUnicodeObject;
2660extern PyTypeObject PyUnicode_Type;
2661PyObject* PyUnicodeUCS4_FromUnicode(
2662 const Py_UNICODE *u,
2663 Py_ssize_t size
2664 );
2665PyObject* PyUnicodeUCS4_FromStringAndSize(
2666 const char *u,
2667 Py_ssize_t size
2668 );
2669PyObject* PyUnicodeUCS4_FromString(
2670 const char *u
2671 );
2672Py_UNICODE * PyUnicodeUCS4_AsUnicode(
2673 PyObject *unicode
2674 );
2675Py_ssize_t PyUnicodeUCS4_GetSize(
2676 PyObject *unicode
2677 );
2678Py_UNICODE PyUnicodeUCS4_GetMax(void);
2679int PyUnicodeUCS4_Resize(
2680 PyObject **unicode,
2681 Py_ssize_t length
2682 );
2683PyObject* PyUnicodeUCS4_FromEncodedObject(
2684 register PyObject *obj,
2685 const char *encoding,
2686 const char *errors
2687 );
2688PyObject* PyUnicodeUCS4_FromObject(
2689 register PyObject *obj
2690 );
2691PyObject * PyUnicodeUCS4_FromFormatV(const char*, va_list);
2692PyObject * PyUnicodeUCS4_FromFormat(const char*, ...);
2693PyObject * _PyUnicode_FormatAdvanced(PyObject *obj,
2694 Py_UNICODE *format_spec,
2695 Py_ssize_t format_spec_len);
2696PyObject* PyUnicodeUCS4_FromWideChar(
2697 register const wchar_t *w,
2698 Py_ssize_t size
2699 );
2700Py_ssize_t PyUnicodeUCS4_AsWideChar(
2701 PyUnicodeObject *unicode,
2702 register wchar_t *w,
2703 Py_ssize_t size
2704 );
2705PyObject* PyUnicodeUCS4_FromOrdinal(int ordinal);
2706int PyUnicodeUCS4_ClearFreelist(void);
2707PyObject * _PyUnicodeUCS4_AsDefaultEncodedString(
2708 PyObject *, const char *);
2709const char* PyUnicodeUCS4_GetDefaultEncoding(void);
2710int PyUnicodeUCS4_SetDefaultEncoding(
2711 const char *encoding
2712 );
2713PyObject* PyUnicodeUCS4_Decode(
2714 const char *s,
2715 Py_ssize_t size,
2716 const char *encoding,
2717 const char *errors
2718 );
2719PyObject* PyUnicodeUCS4_Encode(
2720 const Py_UNICODE *s,
2721 Py_ssize_t size,
2722 const char *encoding,
2723 const char *errors
2724 );
2725PyObject* PyUnicodeUCS4_AsEncodedObject(
2726 PyObject *unicode,
2727 const char *encoding,
2728 const char *errors
2729 );
2730PyObject* PyUnicodeUCS4_AsEncodedString(
2731 PyObject *unicode,
2732 const char *encoding,
2733 const char *errors
2734 );
2735PyObject* PyUnicode_BuildEncodingMap(
2736 PyObject* string
2737 );
2738PyObject* PyUnicode_DecodeUTF7(
2739 const char *string,
2740 Py_ssize_t length,
2741 const char *errors
2742 );
2743PyObject* PyUnicode_DecodeUTF7Stateful(
2744 const char *string,
2745 Py_ssize_t length,
2746 const char *errors,
2747 Py_ssize_t *consumed
2748 );
2749PyObject* PyUnicode_EncodeUTF7(
2750 const Py_UNICODE *data,
2751 Py_ssize_t length,
2752 int encodeSetO,
2753 int encodeWhiteSpace,
2754 const char *errors
2755 );
2756PyObject* PyUnicodeUCS4_DecodeUTF8(
2757 const char *string,
2758 Py_ssize_t length,
2759 const char *errors
2760 );
2761PyObject* PyUnicodeUCS4_DecodeUTF8Stateful(
2762 const char *string,
2763 Py_ssize_t length,
2764 const char *errors,
2765 Py_ssize_t *consumed
2766 );
2767PyObject* PyUnicodeUCS4_AsUTF8String(
2768 PyObject *unicode
2769 );
2770PyObject* PyUnicodeUCS4_EncodeUTF8(
2771 const Py_UNICODE *data,
2772 Py_ssize_t length,
2773 const char *errors
2774 );
2775PyObject* PyUnicodeUCS4_DecodeUTF32(
2776 const char *string,
2777 Py_ssize_t length,
2778 const char *errors,
2779 int *byteorder
2780 );
2781PyObject* PyUnicodeUCS4_DecodeUTF32Stateful(
2782 const char *string,
2783 Py_ssize_t length,
2784 const char *errors,
2785 int *byteorder,
2786 Py_ssize_t *consumed
2787 );
2788PyObject* PyUnicodeUCS4_AsUTF32String(
2789 PyObject *unicode
2790 );
2791PyObject* PyUnicodeUCS4_EncodeUTF32(
2792 const Py_UNICODE *data,
2793 Py_ssize_t length,
2794 const char *errors,
2795 int byteorder
2796 );
2797PyObject* PyUnicodeUCS4_DecodeUTF16(
2798 const char *string,
2799 Py_ssize_t length,
2800 const char *errors,
2801 int *byteorder
2802 );
2803PyObject* PyUnicodeUCS4_DecodeUTF16Stateful(
2804 const char *string,
2805 Py_ssize_t length,
2806 const char *errors,
2807 int *byteorder,
2808 Py_ssize_t *consumed
2809 );
2810PyObject* PyUnicodeUCS4_AsUTF16String(
2811 PyObject *unicode
2812 );
2813PyObject* PyUnicodeUCS4_EncodeUTF16(
2814 const Py_UNICODE *data,
2815 Py_ssize_t length,
2816 const char *errors,
2817 int byteorder
2818 );
2819PyObject* PyUnicodeUCS4_DecodeUnicodeEscape(
2820 const char *string,
2821 Py_ssize_t length,
2822 const char *errors
2823 );
2824PyObject* PyUnicodeUCS4_AsUnicodeEscapeString(
2825 PyObject *unicode
2826 );
2827PyObject* PyUnicodeUCS4_EncodeUnicodeEscape(
2828 const Py_UNICODE *data,
2829 Py_ssize_t length
2830 );
2831PyObject* PyUnicodeUCS4_DecodeRawUnicodeEscape(
2832 const char *string,
2833 Py_ssize_t length,
2834 const char *errors
2835 );
2836PyObject* PyUnicodeUCS4_AsRawUnicodeEscapeString(
2837 PyObject *unicode
2838 );
2839PyObject* PyUnicodeUCS4_EncodeRawUnicodeEscape(
2840 const Py_UNICODE *data,
2841 Py_ssize_t length
2842 );
2843PyObject *_PyUnicode_DecodeUnicodeInternal(
2844 const char *string,
2845 Py_ssize_t length,
2846 const char *errors
2847 );
2848PyObject* PyUnicodeUCS4_DecodeLatin1(
2849 const char *string,
2850 Py_ssize_t length,
2851 const char *errors
2852 );
2853PyObject* PyUnicodeUCS4_AsLatin1String(
2854 PyObject *unicode
2855 );
2856PyObject* PyUnicodeUCS4_EncodeLatin1(
2857 const Py_UNICODE *data,
2858 Py_ssize_t length,
2859 const char *errors
2860 );
2861PyObject* PyUnicodeUCS4_DecodeASCII(
2862 const char *string,
2863 Py_ssize_t length,
2864 const char *errors
2865 );
2866PyObject* PyUnicodeUCS4_AsASCIIString(
2867 PyObject *unicode
2868 );
2869PyObject* PyUnicodeUCS4_EncodeASCII(
2870 const Py_UNICODE *data,
2871 Py_ssize_t length,
2872 const char *errors
2873 );
2874PyObject* PyUnicodeUCS4_DecodeCharmap(
2875 const char *string,
2876 Py_ssize_t length,
2877 PyObject *mapping,
2878 const char *errors
2879 );
2880PyObject* PyUnicodeUCS4_AsCharmapString(
2881 PyObject *unicode,
2882 PyObject *mapping
2883 );
2884PyObject* PyUnicodeUCS4_EncodeCharmap(
2885 const Py_UNICODE *data,
2886 Py_ssize_t length,
2887 PyObject *mapping,
2888 const char *errors
2889 );
2890PyObject * PyUnicodeUCS4_TranslateCharmap(
2891 const Py_UNICODE *data,
2892 Py_ssize_t length,
2893 PyObject *table,
2894 const char *errors
2895 );
2896int PyUnicodeUCS4_EncodeDecimal(
2897 Py_UNICODE *s,
2898 Py_ssize_t length,
2899 char *output,
2900 const char *errors
2901 );
2902PyObject* PyUnicodeUCS4_Concat(
2903 PyObject *left,
2904 PyObject *right
2905 );
2906PyObject* PyUnicodeUCS4_Split(
2907 PyObject *s,
2908 PyObject *sep,
2909 Py_ssize_t maxsplit
2910 );
2911PyObject* PyUnicodeUCS4_Splitlines(
2912 PyObject *s,
2913 int keepends
2914 );
2915PyObject* PyUnicodeUCS4_Partition(
2916 PyObject *s,
2917 PyObject *sep
2918 );
2919PyObject* PyUnicodeUCS4_RPartition(
2920 PyObject *s,
2921 PyObject *sep
2922 );
2923PyObject* PyUnicodeUCS4_RSplit(
2924 PyObject *s,
2925 PyObject *sep,
2926 Py_ssize_t maxsplit
2927 );
2928PyObject * PyUnicodeUCS4_Translate(
2929 PyObject *str,
2930 PyObject *table,
2931 const char *errors
2932 );
2933PyObject* PyUnicodeUCS4_Join(
2934 PyObject *separator,
2935 PyObject *seq
2936 );
2937Py_ssize_t PyUnicodeUCS4_Tailmatch(
2938 PyObject *str,
2939 PyObject *substr,
2940 Py_ssize_t start,
2941 Py_ssize_t end,
2942 int direction
2943 );
2944Py_ssize_t PyUnicodeUCS4_Find(
2945 PyObject *str,
2946 PyObject *substr,
2947 Py_ssize_t start,
2948 Py_ssize_t end,
2949 int direction
2950 );
2951Py_ssize_t PyUnicodeUCS4_Count(
2952 PyObject *str,
2953 PyObject *substr,
2954 Py_ssize_t start,
2955 Py_ssize_t end
2956 );
2957PyObject * PyUnicodeUCS4_Replace(
2958 PyObject *str,
2959 PyObject *substr,
2960 PyObject *replstr,
2961 Py_ssize_t maxcount
2962 );
2963int PyUnicodeUCS4_Compare(
2964 PyObject *left,
2965 PyObject *right
2966 );
2967PyObject * PyUnicodeUCS4_RichCompare(
2968 PyObject *left,
2969 PyObject *right,
2970 int op
2971 );
2972PyObject * PyUnicodeUCS4_Format(
2973 PyObject *format,
2974 PyObject *args
2975 );
2976int PyUnicodeUCS4_Contains(
2977 PyObject *container,
2978 PyObject *element
2979 );
2980PyObject * _PyUnicode_XStrip(
2981 PyUnicodeObject *self,
2982 int striptype,
2983 PyObject *sepobj
2984 );
2985extern const unsigned char _Py_ascii_whitespace[];
2986int _PyUnicodeUCS4_IsLowercase(
2987 Py_UNICODE ch
2988 );
2989int _PyUnicodeUCS4_IsUppercase(
2990 Py_UNICODE ch
2991 );
2992int _PyUnicodeUCS4_IsTitlecase(
2993 Py_UNICODE ch
2994 );
2995int _PyUnicodeUCS4_IsWhitespace(
2996 const Py_UNICODE ch
2997 );
2998int _PyUnicodeUCS4_IsLinebreak(
2999 const Py_UNICODE ch
3000 );
3001Py_UNICODE _PyUnicodeUCS4_ToLowercase(
3002 Py_UNICODE ch
3003 );
3004Py_UNICODE _PyUnicodeUCS4_ToUppercase(
3005 Py_UNICODE ch
3006 );
3007Py_UNICODE _PyUnicodeUCS4_ToTitlecase(
3008 Py_UNICODE ch
3009 );
3010int _PyUnicodeUCS4_ToDecimalDigit(
3011 Py_UNICODE ch
3012 );
3013int _PyUnicodeUCS4_ToDigit(
3014 Py_UNICODE ch
3015 );
3016double _PyUnicodeUCS4_ToNumeric(
3017 Py_UNICODE ch
3018 );
3019int _PyUnicodeUCS4_IsDecimalDigit(
3020 Py_UNICODE ch
3021 );
3022int _PyUnicodeUCS4_IsDigit(
3023 Py_UNICODE ch
3024 );
3025int _PyUnicodeUCS4_IsNumeric(
3026 Py_UNICODE ch
3027 );
3028int _PyUnicodeUCS4_IsAlpha(
3029 Py_UNICODE ch
3030 );
3031}
3032extern "C" {
3033typedef struct {
3034 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3035 long ob_ival;
3036} PyIntObject;
3037extern PyTypeObject PyInt_Type;
3038PyObject * PyInt_FromString(char*, char**, int);
3039PyObject * PyInt_FromUnicode(Py_UNICODE*, Py_ssize_t, int);
3040PyObject * PyInt_FromLong(long);
3041PyObject * PyInt_FromSize_t(size_t);
3042PyObject * PyInt_FromSsize_t(Py_ssize_t);
3043long PyInt_AsLong(PyObject *);
3044Py_ssize_t PyInt_AsSsize_t(PyObject *);
3045unsigned long PyInt_AsUnsignedLongMask(PyObject *);
3046unsigned long long PyInt_AsUnsignedLongLongMask(PyObject *);
3047long PyInt_GetMax(void);
3048unsigned long PyOS_strtoul(char *, char **, int);
3049long PyOS_strtol(char *, char **, int);
3050int PyInt_ClearFreeList(void);
3051PyObject* _PyInt_Format(PyIntObject* v, int base, int newstyle);
3052PyObject * _PyInt_FormatAdvanced(PyObject *obj,
3053 char *format_spec,
3054 Py_ssize_t format_spec_len);
3055}
3056extern "C" {
3057typedef PyIntObject PyBoolObject;
3058extern PyTypeObject PyBool_Type;
3059extern PyIntObject _Py_ZeroStruct, _Py_TrueStruct;
3060PyObject * PyBool_FromLong(long);
3061}
3062extern "C" {
3063typedef struct _longobject PyLongObject;
3064extern PyTypeObject PyLong_Type;
3065PyObject * PyLong_FromLong(long);
3066PyObject * PyLong_FromUnsignedLong(unsigned long);
3067PyObject * PyLong_FromDouble(double);
3068PyObject * PyLong_FromSize_t(size_t);
3069PyObject * PyLong_FromSsize_t(Py_ssize_t);
3070long PyLong_AsLong(PyObject *);
3071unsigned long PyLong_AsUnsignedLong(PyObject *);
3072unsigned long PyLong_AsUnsignedLongMask(PyObject *);
3073Py_ssize_t PyLong_AsSsize_t(PyObject *);
3074extern int _PyLong_DigitValue[256];
3075double _PyLong_AsScaledDouble(PyObject *vv, int *e);
3076double PyLong_AsDouble(PyObject *);
3077PyObject * PyLong_FromVoidPtr(void *);
3078void * PyLong_AsVoidPtr(PyObject *);
3079PyObject * PyLong_FromLongLong(long long);
3080PyObject * PyLong_FromUnsignedLongLong(unsigned long long);
3081long long PyLong_AsLongLong(PyObject *);
3082unsigned long long PyLong_AsUnsignedLongLong(PyObject *);
3083unsigned long long PyLong_AsUnsignedLongLongMask(PyObject *);
3084PyObject * PyLong_FromString(char *, char **, int);
3085PyObject * PyLong_FromUnicode(Py_UNICODE*, Py_ssize_t, int);
3086int _PyLong_Sign(PyObject *v);
3087size_t _PyLong_NumBits(PyObject *v);
3088PyObject * _PyLong_FromByteArray(
3089 const unsigned char* bytes, size_t n,
3090 int little_endian, int is_signed);
3091int _PyLong_AsByteArray(PyLongObject* v,
3092 unsigned char* bytes, size_t n,
3093 int little_endian, int is_signed);
3094PyObject * _PyLong_Format(PyObject *aa, int base, int addL, int newstyle);
3095PyObject * _PyLong_FormatAdvanced(PyObject *obj,
3096 char *format_spec,
3097 Py_ssize_t format_spec_len);
3098}
3099extern "C" {
3100typedef struct {
3101 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3102 double ob_fval;
3103} PyFloatObject;
3104extern PyTypeObject PyFloat_Type;
3105double PyFloat_GetMax(void);
3106double PyFloat_GetMin(void);
3107PyObject * PyFloat_GetInfo(void);
3108PyObject * PyFloat_FromString(PyObject*, char** junk);
3109PyObject * PyFloat_FromDouble(double);
3110double PyFloat_AsDouble(PyObject *);
3111void PyFloat_AsReprString(char*, PyFloatObject *v);
3112void PyFloat_AsString(char*, PyFloatObject *v);
3113int _PyFloat_Pack4(double x, unsigned char *p, int le);
3114int _PyFloat_Pack8(double x, unsigned char *p, int le);
3115int _PyFloat_Digits(char *buf, double v, int *signum);
3116void _PyFloat_DigitsInit(void);
3117double _PyFloat_Unpack4(const unsigned char *p, int le);
3118double _PyFloat_Unpack8(const unsigned char *p, int le);
3119int PyFloat_ClearFreeList(void);
3120PyObject * _PyFloat_FormatAdvanced(PyObject *obj,
3121 char *format_spec,
3122 Py_ssize_t format_spec_len);
3123}
3124extern "C" {
3125typedef struct {
3126 double real;
3127 double imag;
3128} Py_complex;
3129Py_complex _Py_c_sum(Py_complex, Py_complex);
3130Py_complex _Py_c_diff(Py_complex, Py_complex);
3131Py_complex _Py_c_neg(Py_complex);
3132Py_complex _Py_c_prod(Py_complex, Py_complex);
3133Py_complex _Py_c_quot(Py_complex, Py_complex);
3134Py_complex _Py_c_pow(Py_complex, Py_complex);
3135double _Py_c_abs(Py_complex);
3136typedef struct {
3137 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3138 Py_complex cval;
3139} PyComplexObject;
3140extern PyTypeObject PyComplex_Type;
3141PyObject * PyComplex_FromCComplex(Py_complex);
3142PyObject * PyComplex_FromDoubles(double real, double imag);
3143double PyComplex_RealAsDouble(PyObject *op);
3144double PyComplex_ImagAsDouble(PyObject *op);
3145Py_complex PyComplex_AsCComplex(PyObject *op);
3146}
3147extern "C" {
3148extern PyTypeObject PyRange_Type;
3149}
3150extern "C" {
3151typedef struct {
3152 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; Py_ssize_t ob_size;
3153 long ob_shash;
3154 int ob_sstate;
3155 char ob_sval[1];
3156} PyStringObject;
3157extern PyTypeObject PyBaseString_Type;
3158extern PyTypeObject PyString_Type;
3159PyObject * PyString_FromStringAndSize(const char *, Py_ssize_t);
3160PyObject * PyString_FromString(const char *);
3161PyObject * PyString_FromFormatV(const char*, va_list)
3162 __attribute__((format(printf, 1, 0)));
3163PyObject * PyString_FromFormat(const char*, ...)
3164 __attribute__((format(printf, 1, 2)));
3165Py_ssize_t PyString_Size(PyObject *);
3166char * PyString_AsString(PyObject *);
3167PyObject * PyString_Repr(PyObject *, int);
3168void PyString_Concat(PyObject **, PyObject *);
3169void PyString_ConcatAndDel(PyObject **, PyObject *);
3170int _PyString_Resize(PyObject **, Py_ssize_t);
3171int _PyString_Eq(PyObject *, PyObject*);
3172PyObject * PyString_Format(PyObject *, PyObject *);
3173PyObject * _PyString_FormatLong(PyObject*, int, int,
3174 int, char**, int*);
3175PyObject * PyString_DecodeEscape(const char *, Py_ssize_t,
3176 const char *, Py_ssize_t,
3177 const char *);
3178void PyString_InternInPlace(PyObject **);
3179void PyString_InternImmortal(PyObject **);
3180PyObject * PyString_InternFromString(const char *);
3181void _Py_ReleaseInternedStrings(void);
3182PyObject * _PyString_Join(PyObject *sep, PyObject *x);
3183PyObject* PyString_Decode(
3184 const char *s,
3185 Py_ssize_t size,
3186 const char *encoding,
3187 const char *errors
3188 );
3189PyObject* PyString_Encode(
3190 const char *s,
3191 Py_ssize_t size,
3192 const char *encoding,
3193 const char *errors
3194 );
3195PyObject* PyString_AsEncodedObject(
3196 PyObject *str,
3197 const char *encoding,
3198 const char *errors
3199 );
3200PyObject* PyString_AsEncodedString(
3201 PyObject *str,
3202 const char *encoding,
3203 const char *errors
3204 );
3205PyObject* PyString_AsDecodedObject(
3206 PyObject *str,
3207 const char *encoding,
3208 const char *errors
3209 );
3210PyObject* PyString_AsDecodedString(
3211 PyObject *str,
3212 const char *encoding,
3213 const char *errors
3214 );
3215int PyString_AsStringAndSize(
3216 register PyObject *obj,
3217 register char **s,
3218 register Py_ssize_t *len
3219 );
3220int _PyString_InsertThousandsGrouping(char *buffer,
3221 Py_ssize_t n_buffer,
3222 Py_ssize_t n_digits,
3223 Py_ssize_t buf_size,
3224 Py_ssize_t *count,
3225 int append_zero_char);
3226PyObject * _PyBytes_FormatAdvanced(PyObject *obj,
3227 char *format_spec,
3228 Py_ssize_t format_spec_len);
3229}
3230extern "C" {
3231extern PyTypeObject PyBuffer_Type;
3232PyObject * PyBuffer_FromObject(PyObject *base,
3233 Py_ssize_t offset, Py_ssize_t size);
3234PyObject * PyBuffer_FromReadWriteObject(PyObject *base,
3235 Py_ssize_t offset,
3236 Py_ssize_t size);
3237PyObject * PyBuffer_FromMemory(void *ptr, Py_ssize_t size);
3238PyObject * PyBuffer_FromReadWriteMemory(void *ptr, Py_ssize_t size);
3239PyObject * PyBuffer_New(Py_ssize_t size);
3240}
3241extern "C" {
3242typedef struct {
3243 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; Py_ssize_t ob_size;
3244 int ob_exports;
3245 Py_ssize_t ob_alloc;
3246 char *ob_bytes;
3247} PyByteArrayObject;
3248extern PyTypeObject PyByteArray_Type;
3249extern PyTypeObject PyByteArrayIter_Type;
3250PyObject * PyByteArray_FromObject(PyObject *);
3251PyObject * PyByteArray_Concat(PyObject *, PyObject *);
3252PyObject * PyByteArray_FromStringAndSize(const char *, Py_ssize_t);
3253Py_ssize_t PyByteArray_Size(PyObject *);
3254char * PyByteArray_AsString(PyObject *);
3255int PyByteArray_Resize(PyObject *, Py_ssize_t);
3256extern char _PyByteArray_empty_string[];
3257}
3258extern "C" {
3259typedef struct {
3260 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; Py_ssize_t ob_size;
3261 PyObject *ob_item[1];
3262} PyTupleObject;
3263extern PyTypeObject PyTuple_Type;
3264PyObject * PyTuple_New(Py_ssize_t size);
3265Py_ssize_t PyTuple_Size(PyObject *);
3266PyObject * PyTuple_GetItem(PyObject *, Py_ssize_t);
3267int PyTuple_SetItem(PyObject *, Py_ssize_t, PyObject *);
3268PyObject * PyTuple_GetSlice(PyObject *, Py_ssize_t, Py_ssize_t);
3269int _PyTuple_Resize(PyObject **, Py_ssize_t);
3270PyObject * PyTuple_Pack(Py_ssize_t, ...);
3271int PyTuple_ClearFreeList(void);
3272}
3273extern "C" {
3274typedef struct {
3275 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; Py_ssize_t ob_size;
3276 PyObject **ob_item;
3277 Py_ssize_t allocated;
3278} PyListObject;
3279extern PyTypeObject PyList_Type;
3280PyObject * PyList_New(Py_ssize_t size);
3281Py_ssize_t PyList_Size(PyObject *);
3282PyObject * PyList_GetItem(PyObject *, Py_ssize_t);
3283int PyList_SetItem(PyObject *, Py_ssize_t, PyObject *);
3284int PyList_Insert(PyObject *, Py_ssize_t, PyObject *);
3285int PyList_Append(PyObject *, PyObject *);
3286PyObject * PyList_GetSlice(PyObject *, Py_ssize_t, Py_ssize_t);
3287int PyList_SetSlice(PyObject *, Py_ssize_t, Py_ssize_t, PyObject *);
3288int PyList_Sort(PyObject *);
3289int PyList_Reverse(PyObject *);
3290PyObject * PyList_AsTuple(PyObject *);
3291PyObject * _PyList_Extend(PyListObject *, PyObject *);
3292}
3293extern "C" {
3294typedef struct {
3295 Py_ssize_t me_hash;
3296 PyObject *me_key;
3297 PyObject *me_value;
3298} PyDictEntry;
3299typedef struct _dictobject PyDictObject;
3300struct _dictobject {
3301 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3302 Py_ssize_t ma_fill;
3303 Py_ssize_t ma_used;
3304 Py_ssize_t ma_mask;
3305 PyDictEntry *ma_table;
3306 PyDictEntry *(*ma_lookup)(PyDictObject *mp, PyObject *key, long hash);
3307 PyDictEntry ma_smalltable[8];
3308};
3309extern PyTypeObject PyDict_Type;
3310PyObject * PyDict_New(void);
3311PyObject * PyDict_GetItem(PyObject *mp, PyObject *key);
3312int PyDict_SetItem(PyObject *mp, PyObject *key, PyObject *item);
3313int PyDict_DelItem(PyObject *mp, PyObject *key);
3314void PyDict_Clear(PyObject *mp);
3315int PyDict_Next(
3316 PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value);
3317int _PyDict_Next(
3318 PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value, long *hash);
3319PyObject * PyDict_Keys(PyObject *mp);
3320PyObject * PyDict_Values(PyObject *mp);
3321PyObject * PyDict_Items(PyObject *mp);
3322Py_ssize_t PyDict_Size(PyObject *mp);
3323PyObject * PyDict_Copy(PyObject *mp);
3324int PyDict_Contains(PyObject *mp, PyObject *key);
3325int _PyDict_Contains(PyObject *mp, PyObject *key, long hash);
3326PyObject * _PyDict_NewPresized(Py_ssize_t minused);
3327int PyDict_Update(PyObject *mp, PyObject *other);
3328int PyDict_Merge(PyObject *mp,
3329 PyObject *other,
3330 int override);
3331int PyDict_MergeFromSeq2(PyObject *d,
3332 PyObject *seq2,
3333 int override);
3334PyObject * PyDict_GetItemString(PyObject *dp, const char *key);
3335int PyDict_SetItemString(PyObject *dp, const char *key, PyObject *item);
3336int PyDict_DelItemString(PyObject *dp, const char *key);
3337}
3338extern "C" {
3339extern PyTypeObject PyEnum_Type;
3340extern PyTypeObject PyReversed_Type;
3341}
3342extern "C" {
3343typedef struct {
3344 long hash;
3345 PyObject *key;
3346} setentry;
3347typedef struct _setobject PySetObject;
3348struct _setobject {
3349 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3350 Py_ssize_t fill;
3351 Py_ssize_t used;
3352 Py_ssize_t mask;
3353 setentry *table;
3354 setentry *(*lookup)(PySetObject *so, PyObject *key, long hash);
3355 setentry smalltable[8];
3356 long hash;
3357 PyObject *weakreflist;
3358};
3359extern PyTypeObject PySet_Type;
3360extern PyTypeObject PyFrozenSet_Type;
3361PyObject * PySet_New(PyObject *);
3362PyObject * PyFrozenSet_New(PyObject *);
3363Py_ssize_t PySet_Size(PyObject *anyset);
3364int PySet_Clear(PyObject *set);
3365int PySet_Contains(PyObject *anyset, PyObject *key);
3366int PySet_Discard(PyObject *set, PyObject *key);
3367int PySet_Add(PyObject *set, PyObject *key);
3368int _PySet_Next(PyObject *set, Py_ssize_t *pos, PyObject **key);
3369int _PySet_NextEntry(PyObject *set, Py_ssize_t *pos, PyObject **key, long *hash);
3370PyObject * PySet_Pop(PyObject *set);
3371int _PySet_Update(PyObject *set, PyObject *iterable);
3372}
3373extern "C" {
3374extern PyTypeObject PyCFunction_Type;
3375typedef PyObject *(*PyCFunction)(PyObject *, PyObject *);
3376typedef PyObject *(*PyCFunctionWithKeywords)(PyObject *, PyObject *,
3377 PyObject *);
3378typedef PyObject *(*PyNoArgsFunction)(PyObject *);
3379PyCFunction PyCFunction_GetFunction(PyObject *);
3380PyObject * PyCFunction_GetSelf(PyObject *);
3381int PyCFunction_GetFlags(PyObject *);
3382PyObject * PyCFunction_Call(PyObject *, PyObject *, PyObject *);
3383struct PyMethodDef {
3384 const char *ml_name;
3385 PyCFunction ml_meth;
3386 int ml_flags;
3387 const char *ml_doc;
3388};
3389typedef struct PyMethodDef PyMethodDef;
3390PyObject * Py_FindMethod(PyMethodDef[], PyObject *, const char *);
3391PyObject * PyCFunction_NewEx(PyMethodDef *, PyObject *,
3392 PyObject *);
3393typedef struct PyMethodChain {
3394 PyMethodDef *methods;
3395 struct PyMethodChain *link;
3396} PyMethodChain;
3397PyObject * Py_FindMethodInChain(PyMethodChain *, PyObject *,
3398 const char *);
3399typedef struct {
3400 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3401 PyMethodDef *m_ml;
3402 PyObject *m_self;
3403 PyObject *m_module;
3404} PyCFunctionObject;
3405int PyCFunction_ClearFreeList(void);
3406}
3407extern "C" {
3408extern PyTypeObject PyModule_Type;
3409PyObject * PyModule_New(const char *);
3410PyObject * PyModule_GetDict(PyObject *);
3411char * PyModule_GetName(PyObject *);
3412char * PyModule_GetFilename(PyObject *);
3413void _PyModule_Clear(PyObject *);
3414}
3415extern "C" {
3416typedef struct {
3417 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3418 PyObject *func_code;
3419 PyObject *func_globals;
3420 PyObject *func_defaults;
3421 PyObject *func_closure;
3422 PyObject *func_doc;
3423 PyObject *func_name;
3424 PyObject *func_dict;
3425 PyObject *func_weakreflist;
3426 PyObject *func_module;
3427} PyFunctionObject;
3428extern PyTypeObject PyFunction_Type;
3429PyObject * PyFunction_New(PyObject *, PyObject *);
3430PyObject * PyFunction_GetCode(PyObject *);
3431PyObject * PyFunction_GetGlobals(PyObject *);
3432PyObject * PyFunction_GetModule(PyObject *);
3433PyObject * PyFunction_GetDefaults(PyObject *);
3434int PyFunction_SetDefaults(PyObject *, PyObject *);
3435PyObject * PyFunction_GetClosure(PyObject *);
3436int PyFunction_SetClosure(PyObject *, PyObject *);
3437extern PyTypeObject PyClassMethod_Type;
3438extern PyTypeObject PyStaticMethod_Type;
3439PyObject * PyClassMethod_New(PyObject *);
3440PyObject * PyStaticMethod_New(PyObject *);
3441}
3442extern "C" {
3443typedef struct {
3444 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3445 PyObject *cl_bases;
3446 PyObject *cl_dict;
3447 PyObject *cl_name;
3448 PyObject *cl_getattr;
3449 PyObject *cl_setattr;
3450 PyObject *cl_delattr;
3451} PyClassObject;
3452typedef struct {
3453 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3454 PyClassObject *in_class;
3455 PyObject *in_dict;
3456 PyObject *in_weakreflist;
3457} PyInstanceObject;
3458typedef struct {
3459 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3460 PyObject *im_func;
3461 PyObject *im_self;
3462 PyObject *im_class;
3463 PyObject *im_weakreflist;
3464} PyMethodObject;
3465extern PyTypeObject PyClass_Type, PyInstance_Type, PyMethod_Type;
3466PyObject * PyClass_New(PyObject *, PyObject *, PyObject *);
3467PyObject * PyInstance_New(PyObject *, PyObject *,
3468 PyObject *);
3469PyObject * PyInstance_NewRaw(PyObject *, PyObject *);
3470PyObject * PyMethod_New(PyObject *, PyObject *, PyObject *);
3471PyObject * PyMethod_Function(PyObject *);
3472PyObject * PyMethod_Self(PyObject *);
3473PyObject * PyMethod_Class(PyObject *);
3474PyObject * _PyInstance_Lookup(PyObject *pinst, PyObject *name);
3475int PyClass_IsSubclass(PyObject *, PyObject *);
3476int PyMethod_ClearFreeList(void);
3477}
3478extern "C" {
3479typedef struct {
3480 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3481 FILE *f_fp;
3482 PyObject *f_name;
3483 PyObject *f_mode;
3484 int (*f_close)(FILE *);
3485 int f_softspace;
3486 int f_binary;
3487 char* f_buf;
3488 char* f_bufend;
3489 char* f_bufptr;
3490 char *f_setbuf;
3491 int f_univ_newline;
3492 int f_newlinetypes;
3493 int f_skipnextlf;
3494 PyObject *f_encoding;
3495 PyObject *f_errors;
3496 PyObject *weakreflist;
3497 int unlocked_count;
3498 int readable;
3499 int writable;
3500} PyFileObject;
3501extern PyTypeObject PyFile_Type;
3502PyObject * PyFile_FromString(char *, char *);
3503void PyFile_SetBufSize(PyObject *, int);
3504int PyFile_SetEncoding(PyObject *, const char *);
3505int PyFile_SetEncodingAndErrors(PyObject *, const char *, char *errors);
3506PyObject * PyFile_FromFile(FILE *, char *, char *,
3507 int (*)(FILE *));
3508FILE * PyFile_AsFile(PyObject *);
3509void PyFile_IncUseCount(PyFileObject *);
3510void PyFile_DecUseCount(PyFileObject *);
3511PyObject * PyFile_Name(PyObject *);
3512PyObject * PyFile_GetLine(PyObject *, int);
3513int PyFile_WriteObject(PyObject *, PyObject *, int);
3514int PyFile_SoftSpace(PyObject *, int);
3515int PyFile_WriteString(const char *, PyObject *);
3516int PyObject_AsFileDescriptor(PyObject *);
3517extern const char * Py_FileSystemDefaultEncoding;
3518char *Py_UniversalNewlineFgets(char *, int, FILE*, PyObject *);
3519size_t Py_UniversalNewlineFread(char *, size_t, FILE *, PyObject *);
3520int _PyFile_SanitizeMode(char *mode);
3521}
3522extern "C" {
3523extern PyTypeObject PyCObject_Type;
3524PyObject * PyCObject_FromVoidPtr(
3525 void *cobj, void (*destruct)(void*));
3526PyObject * PyCObject_FromVoidPtrAndDesc(
3527 void *cobj, void *desc, void (*destruct)(void*,void*));
3528void * PyCObject_AsVoidPtr(PyObject *);
3529void * PyCObject_GetDesc(PyObject *);
3530void * PyCObject_Import(char *module_name, char *cobject_name);
3531int PyCObject_SetVoidPtr(PyObject *self, void *cobj);
3532typedef struct {
3533 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3534 void *cobject;
3535 void *desc;
3536 void (*destructor)(void *);
3537} PyCObject;
3538}
3539extern "C" {
3540struct _frame;
3541typedef struct _traceback {
3542 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3543 struct _traceback *tb_next;
3544 struct _frame *tb_frame;
3545 int tb_lasti;
3546 int tb_lineno;
3547} PyTracebackObject;
3548int PyTraceBack_Here(struct _frame *);
3549int PyTraceBack_Print(PyObject *, PyObject *);
3550int _Py_DisplaySourceLine(PyObject *, const char *, int, int);
3551extern PyTypeObject PyTraceBack_Type;
3552}
3553extern "C" {
3554extern PyObject _Py_EllipsisObject;
3555typedef struct {
3556 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3557 PyObject *start, *stop, *step;
3558} PySliceObject;
3559extern PyTypeObject PySlice_Type;
3560extern PyTypeObject PyEllipsis_Type;
3561PyObject * PySlice_New(PyObject* start, PyObject* stop,
3562 PyObject* step);
3563PyObject * _PySlice_FromIndices(Py_ssize_t start, Py_ssize_t stop);
3564int PySlice_GetIndices(PySliceObject *r, Py_ssize_t length,
3565 Py_ssize_t *start, Py_ssize_t *stop, Py_ssize_t *step);
3566int PySlice_GetIndicesEx(PySliceObject *r, Py_ssize_t length,
3567 Py_ssize_t *start, Py_ssize_t *stop,
3568 Py_ssize_t *step, Py_ssize_t *slicelength);
3569}
3570extern "C" {
3571typedef struct {
3572 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3573 PyObject *ob_ref;
3574} PyCellObject;
3575extern PyTypeObject PyCell_Type;
3576PyObject * PyCell_New(PyObject *);
3577PyObject * PyCell_Get(PyObject *);
3578int PyCell_Set(PyObject *, PyObject *);
3579}
3580extern "C" {
3581extern PyTypeObject PySeqIter_Type;
3582PyObject * PySeqIter_New(PyObject *);
3583extern PyTypeObject PyCallIter_Type;
3584PyObject * PyCallIter_New(PyObject *, PyObject *);
3585}
3586extern "C" {
3587struct _frame;
3588typedef struct {
3589 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3590 struct _frame *gi_frame;
3591 int gi_running;
3592 PyObject *gi_code;
3593 PyObject *gi_weakreflist;
3594} PyGenObject;
3595extern PyTypeObject PyGen_Type;
3596PyObject * PyGen_New(struct _frame *);
3597int PyGen_NeedsFinalizing(PyGenObject *);
3598}
3599extern "C" {
3600typedef PyObject *(*getter)(PyObject *, void *);
3601typedef int (*setter)(PyObject *, PyObject *, void *);
3602typedef struct PyGetSetDef {
3603 char *name;
3604 getter get;
3605 setter set;
3606 char *doc;
3607 void *closure;
3608} PyGetSetDef;
3609typedef PyObject *(*wrapperfunc)(PyObject *self, PyObject *args,
3610 void *wrapped);
3611typedef PyObject *(*wrapperfunc_kwds)(PyObject *self, PyObject *args,
3612 void *wrapped, PyObject *kwds);
3613struct wrapperbase {
3614 char *name;
3615 int offset;
3616 void *function;
3617 wrapperfunc wrapper;
3618 char *doc;
3619 int flags;
3620 PyObject *name_strobj;
3621};
3622typedef struct {
3623 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; PyTypeObject *d_type; PyObject *d_name;
3624} PyDescrObject;
3625typedef struct {
3626 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; PyTypeObject *d_type; PyObject *d_name;
3627 PyMethodDef *d_method;
3628} PyMethodDescrObject;
3629typedef struct {
3630 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; PyTypeObject *d_type; PyObject *d_name;
3631 struct PyMemberDef *d_member;
3632} PyMemberDescrObject;
3633typedef struct {
3634 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; PyTypeObject *d_type; PyObject *d_name;
3635 PyGetSetDef *d_getset;
3636} PyGetSetDescrObject;
3637typedef struct {
3638 Py_ssize_t ob_refcnt; struct _typeobject *ob_type; PyTypeObject *d_type; PyObject *d_name;
3639 struct wrapperbase *d_base;
3640 void *d_wrapped;
3641} PyWrapperDescrObject;
3642extern PyTypeObject PyWrapperDescr_Type;
3643extern PyTypeObject PyDictProxy_Type;
3644extern PyTypeObject PyGetSetDescr_Type;
3645extern PyTypeObject PyMemberDescr_Type;
3646PyObject * PyDescr_NewMethod(PyTypeObject *, PyMethodDef *);
3647PyObject * PyDescr_NewClassMethod(PyTypeObject *, PyMethodDef *);
3648PyObject * PyDescr_NewMember(PyTypeObject *,
3649 struct PyMemberDef *);
3650PyObject * PyDescr_NewGetSet(PyTypeObject *,
3651 struct PyGetSetDef *);
3652PyObject * PyDescr_NewWrapper(PyTypeObject *,
3653 struct wrapperbase *, void *);
3654PyObject * PyDictProxy_New(PyObject *);
3655PyObject * PyWrapper_New(PyObject *, PyObject *);
3656extern PyTypeObject PyProperty_Type;
3657}
3658extern "C" {
3659void _PyWarnings_Init(void);
3660int PyErr_WarnEx(PyObject *, const char *, Py_ssize_t);
3661int PyErr_WarnExplicit(PyObject *, const char *, const char *, int,
3662 const char *, PyObject *);
3663}
3664extern "C" {
3665typedef struct _PyWeakReference PyWeakReference;
3666struct _PyWeakReference {
3667 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3668 PyObject *wr_object;
3669 PyObject *wr_callback;
3670 long hash;
3671 PyWeakReference *wr_prev;
3672 PyWeakReference *wr_next;
3673};
3674extern PyTypeObject _PyWeakref_RefType;
3675extern PyTypeObject _PyWeakref_ProxyType;
3676extern PyTypeObject _PyWeakref_CallableProxyType;
3677PyObject * PyWeakref_NewRef(PyObject *ob,
3678 PyObject *callback);
3679PyObject * PyWeakref_NewProxy(PyObject *ob,
3680 PyObject *callback);
3681PyObject * PyWeakref_GetObject(PyObject *ref);
3682Py_ssize_t _PyWeakref_GetWeakrefCount(PyWeakReference *head);
3683void _PyWeakref_ClearRef(PyWeakReference *self);
3684}
3685extern "C" {
3686int PyCodec_Register(
3687 PyObject *search_function
3688 );
3689PyObject * _PyCodec_Lookup(
3690 const char *encoding
3691 );
3692PyObject * PyCodec_Encode(
3693 PyObject *object,
3694 const char *encoding,
3695 const char *errors
3696 );
3697PyObject * PyCodec_Decode(
3698 PyObject *object,
3699 const char *encoding,
3700 const char *errors
3701 );
3702PyObject * PyCodec_Encoder(
3703 const char *encoding
3704 );
3705PyObject * PyCodec_Decoder(
3706 const char *encoding
3707 );
3708PyObject * PyCodec_IncrementalEncoder(
3709 const char *encoding,
3710 const char *errors
3711 );
3712PyObject * PyCodec_IncrementalDecoder(
3713 const char *encoding,
3714 const char *errors
3715 );
3716PyObject * PyCodec_StreamReader(
3717 const char *encoding,
3718 PyObject *stream,
3719 const char *errors
3720 );
3721PyObject * PyCodec_StreamWriter(
3722 const char *encoding,
3723 PyObject *stream,
3724 const char *errors
3725 );
3726int PyCodec_RegisterError(const char *name, PyObject *error);
3727PyObject * PyCodec_LookupError(const char *name);
3728PyObject * PyCodec_StrictErrors(PyObject *exc);
3729PyObject * PyCodec_IgnoreErrors(PyObject *exc);
3730PyObject * PyCodec_ReplaceErrors(PyObject *exc);
3731PyObject * PyCodec_XMLCharRefReplaceErrors(PyObject *exc);
3732PyObject * PyCodec_BackslashReplaceErrors(PyObject *exc);
3733}
3734extern "C" {
3735typedef struct {
3736 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3737 PyObject *dict;
3738 PyObject *args;
3739 PyObject *message;
3740} PyBaseExceptionObject;
3741typedef struct {
3742 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3743 PyObject *dict;
3744 PyObject *args;
3745 PyObject *message;
3746 PyObject *msg;
3747 PyObject *filename;
3748 PyObject *lineno;
3749 PyObject *offset;
3750 PyObject *text;
3751 PyObject *print_file_and_line;
3752} PySyntaxErrorObject;
3753typedef struct {
3754 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3755 PyObject *dict;
3756 PyObject *args;
3757 PyObject *message;
3758 PyObject *encoding;
3759 PyObject *object;
3760 Py_ssize_t start;
3761 Py_ssize_t end;
3762 PyObject *reason;
3763} PyUnicodeErrorObject;
3764typedef struct {
3765 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3766 PyObject *dict;
3767 PyObject *args;
3768 PyObject *message;
3769 PyObject *code;
3770} PySystemExitObject;
3771typedef struct {
3772 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
3773 PyObject *dict;
3774 PyObject *args;
3775 PyObject *message;
3776 PyObject *myerrno;
3777 PyObject *strerror;
3778 PyObject *filename;
3779} PyEnvironmentErrorObject;
3780void PyErr_SetNone(PyObject *);
3781void PyErr_SetObject(PyObject *, PyObject *);
3782void PyErr_SetString(PyObject *, const char *);
3783PyObject * PyErr_Occurred(void);
3784void PyErr_Clear(void);
3785void PyErr_Fetch(PyObject **, PyObject **, PyObject **);
3786void PyErr_Restore(PyObject *, PyObject *, PyObject *);
3787int PyErr_GivenExceptionMatches(PyObject *, PyObject *);
3788int PyErr_ExceptionMatches(PyObject *);
3789void PyErr_NormalizeException(PyObject**, PyObject**, PyObject**);
3790extern PyObject * PyExc_BaseException;
3791extern PyObject * PyExc_Exception;
3792extern PyObject * PyExc_StopIteration;
3793extern PyObject * PyExc_GeneratorExit;
3794extern PyObject * PyExc_StandardError;
3795extern PyObject * PyExc_ArithmeticError;
3796extern PyObject * PyExc_LookupError;
3797extern PyObject * PyExc_AssertionError;
3798extern PyObject * PyExc_AttributeError;
3799extern PyObject * PyExc_EOFError;
3800extern PyObject * PyExc_FloatingPointError;
3801extern PyObject * PyExc_EnvironmentError;
3802extern PyObject * PyExc_IOError;
3803extern PyObject * PyExc_OSError;
3804extern PyObject * PyExc_ImportError;
3805extern PyObject * PyExc_IndexError;
3806extern PyObject * PyExc_KeyError;
3807extern PyObject * PyExc_KeyboardInterrupt;
3808extern PyObject * PyExc_MemoryError;
3809extern PyObject * PyExc_NameError;
3810extern PyObject * PyExc_OverflowError;
3811extern PyObject * PyExc_RuntimeError;
3812extern PyObject * PyExc_NotImplementedError;
3813extern PyObject * PyExc_SyntaxError;
3814extern PyObject * PyExc_IndentationError;
3815extern PyObject * PyExc_TabError;
3816extern PyObject * PyExc_ReferenceError;
3817extern PyObject * PyExc_SystemError;
3818extern PyObject * PyExc_SystemExit;
3819extern PyObject * PyExc_TypeError;
3820extern PyObject * PyExc_UnboundLocalError;
3821extern PyObject * PyExc_UnicodeError;
3822extern PyObject * PyExc_UnicodeEncodeError;
3823extern PyObject * PyExc_UnicodeDecodeError;
3824extern PyObject * PyExc_UnicodeTranslateError;
3825extern PyObject * PyExc_ValueError;
3826extern PyObject * PyExc_ZeroDivisionError;
3827extern PyObject * PyExc_BufferError;
3828extern PyObject * PyExc_MemoryErrorInst;
3829extern PyObject * PyExc_RecursionErrorInst;
3830extern PyObject * PyExc_Warning;
3831extern PyObject * PyExc_UserWarning;
3832extern PyObject * PyExc_DeprecationWarning;
3833extern PyObject * PyExc_PendingDeprecationWarning;
3834extern PyObject * PyExc_SyntaxWarning;
3835extern PyObject * PyExc_RuntimeWarning;
3836extern PyObject * PyExc_FutureWarning;
3837extern PyObject * PyExc_ImportWarning;
3838extern PyObject * PyExc_UnicodeWarning;
3839extern PyObject * PyExc_BytesWarning;
3840int PyErr_BadArgument(void);
3841PyObject * PyErr_NoMemory(void);
3842PyObject * PyErr_SetFromErrno(PyObject *);
3843PyObject * PyErr_SetFromErrnoWithFilenameObject(
3844 PyObject *, PyObject *);
3845PyObject * PyErr_SetFromErrnoWithFilename(PyObject *, char *);
3846PyObject * PyErr_Format(PyObject *, const char *, ...)
3847 __attribute__((format(printf, 2, 3)));
3848void PyErr_BadInternalCall(void);
3849void _PyErr_BadInternalCall(char *filename, int lineno);
3850PyObject * PyErr_NewException(char *name, PyObject *base,
3851 PyObject *dict);
3852void PyErr_WriteUnraisable(PyObject *);
3853int PyErr_CheckSignals(void);
3854void PyErr_SetInterrupt(void);
3855int PySignal_SetWakeupFd(int fd);
3856void PyErr_SyntaxLocation(const char *, int);
3857PyObject * PyErr_ProgramText(const char *, int);
3858PyObject * PyUnicodeDecodeError_Create(
3859 const char *, const char *, Py_ssize_t, Py_ssize_t, Py_ssize_t, const char *);
3860PyObject * PyUnicodeEncodeError_Create(
3861 const char *, const Py_UNICODE *, Py_ssize_t, Py_ssize_t, Py_ssize_t, const char *);
3862PyObject * PyUnicodeTranslateError_Create(
3863 const Py_UNICODE *, Py_ssize_t, Py_ssize_t, Py_ssize_t, const char *);
3864PyObject * PyUnicodeEncodeError_GetEncoding(PyObject *);
3865PyObject * PyUnicodeDecodeError_GetEncoding(PyObject *);
3866PyObject * PyUnicodeEncodeError_GetObject(PyObject *);
3867PyObject * PyUnicodeDecodeError_GetObject(PyObject *);
3868PyObject * PyUnicodeTranslateError_GetObject(PyObject *);
3869int PyUnicodeEncodeError_GetStart(PyObject *, Py_ssize_t *);
3870int PyUnicodeDecodeError_GetStart(PyObject *, Py_ssize_t *);
3871int PyUnicodeTranslateError_GetStart(PyObject *, Py_ssize_t *);
3872int PyUnicodeEncodeError_SetStart(PyObject *, Py_ssize_t);
3873int PyUnicodeDecodeError_SetStart(PyObject *, Py_ssize_t);
3874int PyUnicodeTranslateError_SetStart(PyObject *, Py_ssize_t);
3875int PyUnicodeEncodeError_GetEnd(PyObject *, Py_ssize_t *);
3876int PyUnicodeDecodeError_GetEnd(PyObject *, Py_ssize_t *);
3877int PyUnicodeTranslateError_GetEnd(PyObject *, Py_ssize_t *);
3878int PyUnicodeEncodeError_SetEnd(PyObject *, Py_ssize_t);
3879int PyUnicodeDecodeError_SetEnd(PyObject *, Py_ssize_t);
3880int PyUnicodeTranslateError_SetEnd(PyObject *, Py_ssize_t);
3881PyObject * PyUnicodeEncodeError_GetReason(PyObject *);
3882PyObject * PyUnicodeDecodeError_GetReason(PyObject *);
3883PyObject * PyUnicodeTranslateError_GetReason(PyObject *);
3884int PyUnicodeEncodeError_SetReason(
3885 PyObject *, const char *);
3886int PyUnicodeDecodeError_SetReason(
3887 PyObject *, const char *);
3888int PyUnicodeTranslateError_SetReason(
3889 PyObject *, const char *);
3890int PyOS_snprintf(char *str, size_t size, const char *format, ...)
3891 __attribute__((format(printf, 3, 4)));
3892int PyOS_vsnprintf(char *str, size_t size, const char *format, va_list va)
3893 __attribute__((format(printf, 3, 0)));
3894}
3895extern "C" {
3896struct _ts;
3897struct _is;
3898typedef struct _is {
3899 struct _is *next;
3900 struct _ts *tstate_head;
3901 PyObject *modules;
3902 PyObject *sysdict;
3903 PyObject *builtins;
3904 PyObject *modules_reloading;
3905 PyObject *codec_search_path;
3906 PyObject *codec_search_cache;
3907 PyObject *codec_error_registry;
3908 int dlopenflags;
3909} PyInterpreterState;
3910struct _frame;
3911typedef int (*Py_tracefunc)(PyObject *, struct _frame *, int, PyObject *);
3912typedef struct _ts {
3913 struct _ts *next;
3914 PyInterpreterState *interp;
3915 struct _frame *frame;
3916 int recursion_depth;
3917 int tracing;
3918 int use_tracing;
3919 Py_tracefunc c_profilefunc;
3920 Py_tracefunc c_tracefunc;
3921 PyObject *c_profileobj;
3922 PyObject *c_traceobj;
3923 PyObject *curexc_type;
3924 PyObject *curexc_value;
3925 PyObject *curexc_traceback;
3926 PyObject *exc_type;
3927 PyObject *exc_value;
3928 PyObject *exc_traceback;
3929 PyObject *dict;
3930 int tick_counter;
3931 int gilstate_counter;
3932 PyObject *async_exc;
3933 long thread_id;
3934} PyThreadState;
3935PyInterpreterState * PyInterpreterState_New(void);
3936void PyInterpreterState_Clear(PyInterpreterState *);
3937void PyInterpreterState_Delete(PyInterpreterState *);
3938PyThreadState * PyThreadState_New(PyInterpreterState *);
3939PyThreadState * _PyThreadState_Prealloc(PyInterpreterState *);
3940void _PyThreadState_Init(PyThreadState *);
3941void PyThreadState_Clear(PyThreadState *);
3942void PyThreadState_Delete(PyThreadState *);
3943void PyThreadState_DeleteCurrent(void);
3944PyThreadState * PyThreadState_Get(void);
3945PyThreadState * PyThreadState_Swap(PyThreadState *);
3946PyObject * PyThreadState_GetDict(void);
3947int PyThreadState_SetAsyncExc(long, PyObject *);
3948extern PyThreadState * _PyThreadState_Current;
3949typedef
3950 enum {PyGILState_LOCKED, PyGILState_UNLOCKED}
3951 PyGILState_STATE;
3952PyGILState_STATE PyGILState_Ensure(void);
3953void PyGILState_Release(PyGILState_STATE);
3954PyThreadState * PyGILState_GetThisThreadState(void);
3955PyObject * _PyThread_CurrentFrames(void);
3956PyInterpreterState * PyInterpreterState_Head(void);
3957PyInterpreterState * PyInterpreterState_Next(PyInterpreterState *);
3958PyThreadState * PyInterpreterState_ThreadHead(PyInterpreterState *);
3959PyThreadState * PyThreadState_Next(PyThreadState *);
3960typedef struct _frame *(*PyThreadFrameGetter)(PyThreadState *self_);
3961extern PyThreadFrameGetter _PyThreadState_GetFrame;
3962}
3963extern "C" {
3964 typedef struct _arena PyArena;
3965 PyArena * PyArena_New(void);
3966 void PyArena_Free(PyArena *);
3967 void * PyArena_Malloc(PyArena *, size_t size);
3968 int PyArena_AddPyObject(PyArena *, PyObject *);
3969}
3970extern "C" {
3971PyObject * _Py_VaBuildValue_SizeT(const char *, va_list);
3972int PyArg_Parse(PyObject *, const char *, ...);
3973int PyArg_ParseTuple(PyObject *, const char *, ...) ;
3974int PyArg_ParseTupleAndKeywords(PyObject *, PyObject *,
3975 const char *, char **, ...);
3976int PyArg_UnpackTuple(PyObject *, const char *, Py_ssize_t, Py_ssize_t, ...);
3977PyObject * Py_BuildValue(const char *, ...);
3978PyObject * _Py_BuildValue_SizeT(const char *, ...);
3979int _PyArg_NoKeywords(const char *funcname, PyObject *kw);
3980int PyArg_VaParse(PyObject *, const char *, va_list);
3981int PyArg_VaParseTupleAndKeywords(PyObject *, PyObject *,
3982 const char *, char **, va_list);
3983PyObject * Py_VaBuildValue(const char *, va_list);
3984int PyModule_AddObject(PyObject *, const char *, PyObject *);
3985int PyModule_AddIntConstant(PyObject *, const char *, long);
3986int PyModule_AddStringConstant(PyObject *, const char *, const char *);
3987PyObject * Py_InitModule4_64(const char *name, PyMethodDef *methods,
3988 const char *doc, PyObject *self,
3989 int apiver);
3990extern char * _Py_PackageContext;
3991}
3992extern "C" {
3993typedef struct {
3994 int cf_flags;
3995} PyCompilerFlags;
3996void Py_SetProgramName(char *);
3997char * Py_GetProgramName(void);
3998void Py_SetPythonHome(char *);
3999char * Py_GetPythonHome(void);
4000void Py_Initialize(void);
4001void Py_InitializeEx(int);
4002void Py_Finalize(void);
4003int Py_IsInitialized(void);
4004PyThreadState * Py_NewInterpreter(void);
4005void Py_EndInterpreter(PyThreadState *);
4006int PyRun_AnyFileFlags(FILE *, const char *, PyCompilerFlags *);
4007int PyRun_AnyFileExFlags(FILE *, const char *, int, PyCompilerFlags *);
4008int PyRun_SimpleStringFlags(const char *, PyCompilerFlags *);
4009int PyRun_SimpleFileExFlags(FILE *, const char *, int, PyCompilerFlags *);
4010int PyRun_InteractiveOneFlags(FILE *, const char *, PyCompilerFlags *);
4011int PyRun_InteractiveLoopFlags(FILE *, const char *, PyCompilerFlags *);
4012struct _mod * PyParser_ASTFromString(const char *, const char *,
4013 int, PyCompilerFlags *flags,
4014 PyArena *);
4015struct _mod * PyParser_ASTFromFile(FILE *, const char *, int,
4016 char *, char *,
4017 PyCompilerFlags *, int *,
4018 PyArena *);
4019struct _node * PyParser_SimpleParseStringFlags(const char *, int,
4020 int);
4021struct _node * PyParser_SimpleParseFileFlags(FILE *, const char *,
4022 int, int);
4023PyObject * PyRun_StringFlags(const char *, int, PyObject *,
4024 PyObject *, PyCompilerFlags *);
4025PyObject * PyRun_FileExFlags(FILE *, const char *, int,
4026 PyObject *, PyObject *, int,
4027 PyCompilerFlags *);
4028PyObject * Py_CompileStringFlags(const char *, const char *, int,
4029 PyCompilerFlags *);
4030struct symtable * Py_SymtableString(const char *, const char *, int);
4031void PyErr_Print(void);
4032void PyErr_PrintEx(int);
4033void PyErr_Display(PyObject *, PyObject *, PyObject *);
4034int Py_AtExit(void (*func)(void));
4035void Py_Exit(int);
4036int Py_FdIsInteractive(FILE *, const char *);
4037int Py_Main(int argc, char **argv);
4038char * Py_GetProgramFullPath(void);
4039char * Py_GetPrefix(void);
4040char * Py_GetExecPrefix(void);
4041char * Py_GetPath(void);
4042const char * Py_GetVersion(void);
4043const char * Py_GetPlatform(void);
4044const char * Py_GetCopyright(void);
4045const char * Py_GetCompiler(void);
4046const char * Py_GetBuildInfo(void);
4047const char * _Py_svnversion(void);
4048const char * Py_SubversionRevision(void);
4049const char * Py_SubversionShortBranch(void);
4050PyObject * _PyBuiltin_Init(void);
4051PyObject * _PySys_Init(void);
4052void _PyImport_Init(void);
4053void _PyExc_Init(void);
4054void _PyImportHooks_Init(void);
4055int _PyFrame_Init(void);
4056int _PyInt_Init(void);
4057void _PyFloat_Init(void);
4058int PyByteArray_Init(void);
4059void _PyExc_Fini(void);
4060void _PyImport_Fini(void);
4061void PyMethod_Fini(void);
4062void PyFrame_Fini(void);
4063void PyCFunction_Fini(void);
4064void PyDict_Fini(void);
4065void PyTuple_Fini(void);
4066void PyList_Fini(void);
4067void PySet_Fini(void);
4068void PyString_Fini(void);
4069void PyInt_Fini(void);
4070void PyFloat_Fini(void);
4071void PyOS_FiniInterrupts(void);
4072void PyByteArray_Fini(void);
4073char * PyOS_Readline(FILE *, FILE *, char *);
4074extern int (*PyOS_InputHook)(void);
4075extern char *(*PyOS_ReadlineFunctionPointer)(FILE *, FILE *, char *);
4076extern PyThreadState* _PyOS_ReadlineTState;
4077typedef void (*PyOS_sighandler_t)(int);
4078PyOS_sighandler_t PyOS_getsig(int);
4079PyOS_sighandler_t PyOS_setsig(int, PyOS_sighandler_t);
4080}
4081extern "C" {
4082PyObject * PyEval_CallObjectWithKeywords(
4083 PyObject *, PyObject *, PyObject *);
4084PyObject * PyEval_CallObject(PyObject *, PyObject *);
4085PyObject * PyEval_CallFunction(PyObject *obj,
4086 const char *format, ...);
4087PyObject * PyEval_CallMethod(PyObject *obj,
4088 const char *methodname,
4089 const char *format, ...);
4090void PyEval_SetProfile(Py_tracefunc, PyObject *);
4091void PyEval_SetTrace(Py_tracefunc, PyObject *);
4092struct _frame;
4093PyObject * PyEval_GetBuiltins(void);
4094PyObject * PyEval_GetGlobals(void);
4095PyObject * PyEval_GetLocals(void);
4096struct _frame * PyEval_GetFrame(void);
4097int PyEval_GetRestricted(void);
4098int PyEval_MergeCompilerFlags(PyCompilerFlags *cf);
4099int Py_FlushLine(void);
4100int Py_AddPendingCall(int (*func)(void *), void *arg);
4101int Py_MakePendingCalls(void);
4102void Py_SetRecursionLimit(int);
4103int Py_GetRecursionLimit(void);
4104int _Py_CheckRecursiveCall(char *where);
4105extern int _Py_CheckRecursionLimit;
4106const char * PyEval_GetFuncName(PyObject *);
4107const char * PyEval_GetFuncDesc(PyObject *);
4108PyObject * PyEval_GetCallStats(PyObject *);
4109PyObject * PyEval_EvalFrame(struct _frame *);
4110PyObject * PyEval_EvalFrameEx(struct _frame *f, int exc);
4111extern volatile int _Py_Ticker;
4112extern int _Py_CheckInterval;
4113PyThreadState * PyEval_SaveThread(void);
4114void PyEval_RestoreThread(PyThreadState *);
4115int PyEval_ThreadsInitialized(void);
4116void PyEval_InitThreads(void);
4117void PyEval_AcquireLock(void);
4118void PyEval_ReleaseLock(void);
4119void PyEval_AcquireThread(PyThreadState *tstate);
4120void PyEval_ReleaseThread(PyThreadState *tstate);
4121void PyEval_ReInitThreads(void);
4122int _PyEval_SliceIndex(PyObject *, Py_ssize_t *);
4123}
4124extern "C" {
4125PyObject * PySys_GetObject(char *);
4126int PySys_SetObject(char *, PyObject *);
4127FILE * PySys_GetFile(char *, FILE *);
4128void PySys_SetArgv(int, char **);
4129void PySys_SetArgvEx(int, char **, int);
4130void PySys_SetPath(char *);
4131void PySys_WriteStdout(const char *format, ...)
4132 __attribute__((format(printf, 1, 2)));
4133void PySys_WriteStderr(const char *format, ...)
4134 __attribute__((format(printf, 1, 2)));
4135extern PyObject * _PySys_TraceFunc, *_PySys_ProfileFunc;
4136extern int _PySys_CheckInterval;
4137void PySys_ResetWarnOptions(void);
4138void PySys_AddWarnOption(char *);
4139int PySys_HasWarnOptions(void);
4140}
4141extern "C" {
4142int PyOS_InterruptOccurred(void);
4143void PyOS_InitInterrupts(void);
4144void PyOS_AfterFork(void);
4145}
4146extern "C" {
4147long PyImport_GetMagicNumber(void);
4148PyObject * PyImport_ExecCodeModule(char *name, PyObject *co);
4149PyObject * PyImport_ExecCodeModuleEx(
4150 char *name, PyObject *co, char *pathname);
4151PyObject * PyImport_GetModuleDict(void);
4152PyObject * PyImport_AddModule(const char *name);
4153PyObject * PyImport_ImportModule(const char *name);
4154PyObject * PyImport_ImportModuleNoBlock(const char *);
4155PyObject * PyImport_ImportModuleLevel(char *name,
4156 PyObject *globals, PyObject *locals, PyObject *fromlist, int level);
4157PyObject * PyImport_GetImporter(PyObject *path);
4158PyObject * PyImport_Import(PyObject *name);
4159PyObject * PyImport_ReloadModule(PyObject *m);
4160void PyImport_Cleanup(void);
4161int PyImport_ImportFrozenModule(char *);
4162void _PyImport_AcquireLock(void);
4163int _PyImport_ReleaseLock(void);
4164struct filedescr * _PyImport_FindModule(
4165 const char *, PyObject *, char *, size_t, FILE **, PyObject **);
4166int _PyImport_IsScript(struct filedescr *);
4167void _PyImport_ReInitLock(void);
4168PyObject *_PyImport_FindExtension(char *, char *);
4169PyObject *_PyImport_FixupExtension(char *, char *);
4170struct _inittab {
4171 char *name;
4172 void (*initfunc)(void);
4173};
4174extern PyTypeObject PyNullImporter_Type;
4175extern struct _inittab * PyImport_Inittab;
4176int PyImport_AppendInittab(char *name, void (*initfunc)(void));
4177int PyImport_ExtendInittab(struct _inittab *newtab);
4178struct _frozen {
4179 char *name;
4180 unsigned char *code;
4181 int size;
4182};
4183extern struct _frozen * PyImport_FrozenModules;
4184}
4185extern "C" {
4186 int PyObject_Cmp(PyObject *o1, PyObject *o2, int *result);
4187 PyObject * PyObject_Call(PyObject *callable_object,
4188 PyObject *args, PyObject *kw);
4189 PyObject * PyObject_CallObject(PyObject *callable_object,
4190 PyObject *args);
4191 PyObject * PyObject_CallFunction(PyObject *callable_object,
4192 char *format, ...);
4193 PyObject * PyObject_CallMethod(PyObject *o, char *m,
4194 char *format, ...);
4195 PyObject * _PyObject_CallFunction_SizeT(PyObject *callable,
4196 char *format, ...);
4197 PyObject * _PyObject_CallMethod_SizeT(PyObject *o,
4198 char *name,
4199 char *format, ...);
4200 PyObject * PyObject_CallFunctionObjArgs(PyObject *callable,
4201 ...);
4202 PyObject * PyObject_CallMethodObjArgs(PyObject *o,
4203 PyObject *m, ...);
4204 PyObject * PyObject_Type(PyObject *o);
4205 Py_ssize_t PyObject_Size(PyObject *o);
4206 Py_ssize_t PyObject_Length(PyObject *o);
4207 Py_ssize_t _PyObject_LengthHint(PyObject *o, Py_ssize_t);
4208 PyObject * PyObject_GetItem(PyObject *o, PyObject *key);
4209 int PyObject_SetItem(PyObject *o, PyObject *key, PyObject *v);
4210 int PyObject_DelItemString(PyObject *o, char *key);
4211 int PyObject_DelItem(PyObject *o, PyObject *key);
4212 int PyObject_AsCharBuffer(PyObject *obj,
4213 const char **buffer,
4214 Py_ssize_t *buffer_len);
4215 int PyObject_CheckReadBuffer(PyObject *obj);
4216 int PyObject_AsReadBuffer(PyObject *obj,
4217 const void **buffer,
4218 Py_ssize_t *buffer_len);
4219 int PyObject_AsWriteBuffer(PyObject *obj,
4220 void **buffer,
4221 Py_ssize_t *buffer_len);
4222 int PyObject_GetBuffer(PyObject *obj, Py_buffer *view,
4223 int flags);
4224 void * PyBuffer_GetPointer(Py_buffer *view, Py_ssize_t *indices);
4225 int PyBuffer_SizeFromFormat(const char *);
4226 int PyBuffer_ToContiguous(void *buf, Py_buffer *view,
4227 Py_ssize_t len, char fort);
4228 int PyBuffer_FromContiguous(Py_buffer *view, void *buf,
4229 Py_ssize_t len, char fort);
4230 int PyObject_CopyData(PyObject *dest, PyObject *src);
4231 int PyBuffer_IsContiguous(Py_buffer *view, char fort);
4232 void PyBuffer_FillContiguousStrides(int ndims,
4233 Py_ssize_t *shape,
4234 Py_ssize_t *strides,
4235 int itemsize,
4236 char fort);
4237 int PyBuffer_FillInfo(Py_buffer *view, PyObject *o, void *buf,
4238 Py_ssize_t len, int readonly,
4239 int flags);
4240 void PyBuffer_Release(Py_buffer *view);
4241 PyObject * PyObject_Format(PyObject* obj,
4242 PyObject *format_spec);
4243 PyObject * PyObject_GetIter(PyObject *);
4244 PyObject * PyIter_Next(PyObject *);
4245 int PyNumber_Check(PyObject *o);
4246 PyObject * PyNumber_Add(PyObject *o1, PyObject *o2);
4247 PyObject * PyNumber_Subtract(PyObject *o1, PyObject *o2);
4248 PyObject * PyNumber_Multiply(PyObject *o1, PyObject *o2);
4249 PyObject * PyNumber_Divide(PyObject *o1, PyObject *o2);
4250 PyObject * PyNumber_FloorDivide(PyObject *o1, PyObject *o2);
4251 PyObject * PyNumber_TrueDivide(PyObject *o1, PyObject *o2);
4252 PyObject * PyNumber_Remainder(PyObject *o1, PyObject *o2);
4253 PyObject * PyNumber_Divmod(PyObject *o1, PyObject *o2);
4254 PyObject * PyNumber_Power(PyObject *o1, PyObject *o2,
4255 PyObject *o3);
4256 PyObject * PyNumber_Negative(PyObject *o);
4257 PyObject * PyNumber_Positive(PyObject *o);
4258 PyObject * PyNumber_Absolute(PyObject *o);
4259 PyObject * PyNumber_Invert(PyObject *o);
4260 PyObject * PyNumber_Lshift(PyObject *o1, PyObject *o2);
4261 PyObject * PyNumber_Rshift(PyObject *o1, PyObject *o2);
4262 PyObject * PyNumber_And(PyObject *o1, PyObject *o2);
4263 PyObject * PyNumber_Xor(PyObject *o1, PyObject *o2);
4264 PyObject * PyNumber_Or(PyObject *o1, PyObject *o2);
4265 PyObject * PyNumber_Index(PyObject *o);
4266 Py_ssize_t PyNumber_AsSsize_t(PyObject *o, PyObject *exc);
4267 PyObject * _PyNumber_ConvertIntegralToInt(
4268 PyObject *integral,
4269 const char* error_format);
4270 PyObject * PyNumber_Int(PyObject *o);
4271 PyObject * PyNumber_Long(PyObject *o);
4272 PyObject * PyNumber_Float(PyObject *o);
4273 PyObject * PyNumber_InPlaceAdd(PyObject *o1, PyObject *o2);
4274 PyObject * PyNumber_InPlaceSubtract(PyObject *o1, PyObject *o2);
4275 PyObject * PyNumber_InPlaceMultiply(PyObject *o1, PyObject *o2);
4276 PyObject * PyNumber_InPlaceDivide(PyObject *o1, PyObject *o2);
4277 PyObject * PyNumber_InPlaceFloorDivide(PyObject *o1,
4278 PyObject *o2);
4279 PyObject * PyNumber_InPlaceTrueDivide(PyObject *o1,
4280 PyObject *o2);
4281 PyObject * PyNumber_InPlaceRemainder(PyObject *o1, PyObject *o2);
4282 PyObject * PyNumber_InPlacePower(PyObject *o1, PyObject *o2,
4283 PyObject *o3);
4284 PyObject * PyNumber_InPlaceLshift(PyObject *o1, PyObject *o2);
4285 PyObject * PyNumber_InPlaceRshift(PyObject *o1, PyObject *o2);
4286 PyObject * PyNumber_InPlaceAnd(PyObject *o1, PyObject *o2);
4287 PyObject * PyNumber_InPlaceXor(PyObject *o1, PyObject *o2);
4288 PyObject * PyNumber_InPlaceOr(PyObject *o1, PyObject *o2);
4289 PyObject * PyNumber_ToBase(PyObject *n, int base);
4290 int PySequence_Check(PyObject *o);
4291 Py_ssize_t PySequence_Size(PyObject *o);
4292 Py_ssize_t PySequence_Length(PyObject *o);
4293 PyObject * PySequence_Concat(PyObject *o1, PyObject *o2);
4294 PyObject * PySequence_Repeat(PyObject *o, Py_ssize_t count);
4295 PyObject * PySequence_GetItem(PyObject *o, Py_ssize_t i);
4296 PyObject * PySequence_GetSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2);
4297 int PySequence_SetItem(PyObject *o, Py_ssize_t i, PyObject *v);
4298 int PySequence_DelItem(PyObject *o, Py_ssize_t i);
4299 int PySequence_SetSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2,
4300 PyObject *v);
4301 int PySequence_DelSlice(PyObject *o, Py_ssize_t i1, Py_ssize_t i2);
4302 PyObject * PySequence_Tuple(PyObject *o);
4303 PyObject * PySequence_List(PyObject *o);
4304 PyObject * PySequence_Fast(PyObject *o, const char* m);
4305 Py_ssize_t PySequence_Count(PyObject *o, PyObject *value);
4306 int PySequence_Contains(PyObject *seq, PyObject *ob);
4307 Py_ssize_t _PySequence_IterSearch(PyObject *seq,
4308 PyObject *obj, int operation);
4309 int PySequence_In(PyObject *o, PyObject *value);
4310 Py_ssize_t PySequence_Index(PyObject *o, PyObject *value);
4311 PyObject * PySequence_InPlaceConcat(PyObject *o1, PyObject *o2);
4312 PyObject * PySequence_InPlaceRepeat(PyObject *o, Py_ssize_t count);
4313 int PyMapping_Check(PyObject *o);
4314 Py_ssize_t PyMapping_Size(PyObject *o);
4315 Py_ssize_t PyMapping_Length(PyObject *o);
4316 int PyMapping_HasKeyString(PyObject *o, char *key);
4317 int PyMapping_HasKey(PyObject *o, PyObject *key);
4318 PyObject * PyMapping_GetItemString(PyObject *o, char *key);
4319 int PyMapping_SetItemString(PyObject *o, char *key,
4320 PyObject *value);
4321int PyObject_IsInstance(PyObject *object, PyObject *typeorclass);
4322int PyObject_IsSubclass(PyObject *object, PyObject *typeorclass);
4323int _PyObject_RealIsInstance(PyObject *inst, PyObject *cls);
4324int _PyObject_RealIsSubclass(PyObject *derived, PyObject *cls);
4325}
4326extern "C" {
4327typedef struct {
4328 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
4329 int co_argcount;
4330 int co_nlocals;
4331 int co_stacksize;
4332 int co_flags;
4333 PyObject *co_code;
4334 PyObject *co_consts;
4335 PyObject *co_names;
4336 PyObject *co_varnames;
4337 PyObject *co_freevars;
4338 PyObject *co_cellvars;
4339 PyObject *co_filename;
4340 PyObject *co_name;
4341 int co_firstlineno;
4342 PyObject *co_lnotab;
4343 void *co_zombieframe;
4344} PyCodeObject;
4345extern PyTypeObject PyCode_Type;
4346PyCodeObject * PyCode_New(
4347 int, int, int, int, PyObject *, PyObject *, PyObject *, PyObject *,
4348 PyObject *, PyObject *, PyObject *, PyObject *, int, PyObject *);
4349int PyCode_Addr2Line(PyCodeObject *, int);
4350typedef struct _addr_pair {
4351 int ap_lower;
4352 int ap_upper;
4353} PyAddrPair;
4354int PyCode_CheckLineNumber(PyCodeObject* co,
4355 int lasti, PyAddrPair *bounds);
4356PyObject* PyCode_Optimize(PyObject *code, PyObject* consts,
4357 PyObject *names, PyObject *lineno_obj);
4358}
4359extern "C" {
4360struct _node;
4361PyCodeObject * PyNode_Compile(struct _node *, const char *);
4362typedef struct {
4363 int ff_features;
4364 int ff_lineno;
4365} PyFutureFeatures;
4366struct _mod;
4367PyCodeObject * PyAST_Compile(struct _mod *, const char *,
4368 PyCompilerFlags *, PyArena *);
4369PyFutureFeatures * PyFuture_FromAST(struct _mod *, const char *);
4370}
4371extern "C" {
4372PyObject * PyEval_EvalCode(PyCodeObject *, PyObject *, PyObject *);
4373PyObject * PyEval_EvalCodeEx(PyCodeObject *co,
4374 PyObject *globals,
4375 PyObject *locals,
4376 PyObject **args, int argc,
4377 PyObject **kwds, int kwdc,
4378 PyObject **defs, int defc,
4379 PyObject *closure);
4380PyObject * _PyEval_CallTracing(PyObject *func, PyObject *args);
4381}
4382extern "C" {
4383double PyOS_ascii_strtod(const char *str, char **ptr);
4384double PyOS_ascii_atof(const char *str);
4385char * PyOS_ascii_formatd(char *buffer, size_t buf_len, const char *format, double d);
4386}
4387extern "C" {
4388int PyOS_mystrnicmp(const char *, const char *, Py_ssize_t);
4389int PyOS_mystricmp(const char *, const char *);
4390}
4391PyObject* _Py_Mangle(PyObject *p, PyObject *name);
4392extern "C" {
4393extern "C" {
4394extern int __sigismember (__const __sigset_t *, int);
4395extern int __sigaddset (__sigset_t *, int);
4396extern int __sigdelset (__sigset_t *, int);
4397typedef __sig_atomic_t sig_atomic_t;
4398typedef union sigval
4399 {
4400 int sival_int;
4401 void *sival_ptr;
4402 } sigval_t;
4403typedef struct siginfo
4404 {
4405 int si_signo;
4406 int si_errno;
4407 int si_code;
4408 union
4409 {
4410 int _pad[((128 / sizeof (int)) - 4)];
4411 struct
4412 {
4413 __pid_t si_pid;
4414 __uid_t si_uid;
4415 } _kill;
4416 struct
4417 {
4418 int si_tid;
4419 int si_overrun;
4420 sigval_t si_sigval;
4421 } _timer;
4422 struct
4423 {
4424 __pid_t si_pid;
4425 __uid_t si_uid;
4426 sigval_t si_sigval;
4427 } _rt;
4428 struct
4429 {
4430 __pid_t si_pid;
4431 __uid_t si_uid;
4432 int si_status;
4433 __clock_t si_utime;
4434 __clock_t si_stime;
4435 } _sigchld;
4436 struct
4437 {
4438 void *si_addr;
4439 } _sigfault;
4440 struct
4441 {
4442 long int si_band;
4443 int si_fd;
4444 } _sigpoll;
4445 } _sifields;
4446 } siginfo_t;
4447enum
4448{
4449 SI_ASYNCNL = -60,
4450 SI_TKILL = -6,
4451 SI_SIGIO,
4452 SI_ASYNCIO,
4453 SI_MESGQ,
4454 SI_TIMER,
4455 SI_QUEUE,
4456 SI_USER,
4457 SI_KERNEL = 0x80
4458};
4459enum
4460{
4461 ILL_ILLOPC = 1,
4462 ILL_ILLOPN,
4463 ILL_ILLADR,
4464 ILL_ILLTRP,
4465 ILL_PRVOPC,
4466 ILL_PRVREG,
4467 ILL_COPROC,
4468 ILL_BADSTK
4469};
4470enum
4471{
4472 FPE_INTDIV = 1,
4473 FPE_INTOVF,
4474 FPE_FLTDIV,
4475 FPE_FLTOVF,
4476 FPE_FLTUND,
4477 FPE_FLTRES,
4478 FPE_FLTINV,
4479 FPE_FLTSUB
4480};
4481enum
4482{
4483 SEGV_MAPERR = 1,
4484 SEGV_ACCERR
4485};
4486enum
4487{
4488 BUS_ADRALN = 1,
4489 BUS_ADRERR,
4490 BUS_OBJERR
4491};
4492enum
4493{
4494 TRAP_BRKPT = 1,
4495 TRAP_TRACE
4496};
4497enum
4498{
4499 CLD_EXITED = 1,
4500 CLD_KILLED,
4501 CLD_DUMPED,
4502 CLD_TRAPPED,
4503 CLD_STOPPED,
4504 CLD_CONTINUED
4505};
4506enum
4507{
4508 POLL_IN = 1,
4509 POLL_OUT,
4510 POLL_MSG,
4511 POLL_ERR,
4512 POLL_PRI,
4513 POLL_HUP
4514};
4515typedef struct sigevent
4516 {
4517 sigval_t sigev_value;
4518 int sigev_signo;
4519 int sigev_notify;
4520 union
4521 {
4522 int _pad[((64 / sizeof (int)) - 4)];
4523 __pid_t _tid;
4524 struct
4525 {
4526 void (*_function) (sigval_t);
4527 void *_attribute;
4528 } _sigev_thread;
4529 } _sigev_un;
4530 } sigevent_t;
4531enum
4532{
4533 SIGEV_SIGNAL = 0,
4534 SIGEV_NONE,
4535 SIGEV_THREAD,
4536 SIGEV_THREAD_ID = 4
4537};
4538typedef void (*__sighandler_t) (int);
4539extern __sighandler_t __sysv_signal (int __sig, __sighandler_t __handler)
4540 throw ();
4541extern __sighandler_t sysv_signal (int __sig, __sighandler_t __handler)
4542 throw ();
4543extern __sighandler_t signal (int __sig, __sighandler_t __handler)
4544 throw ();
4545extern __sighandler_t bsd_signal (int __sig, __sighandler_t __handler)
4546 throw ();
4547extern int kill (__pid_t __pid, int __sig) throw ();
4548extern int killpg (__pid_t __pgrp, int __sig) throw ();
4549extern int raise (int __sig) throw ();
4550extern __sighandler_t ssignal (int __sig, __sighandler_t __handler)
4551 throw ();
4552extern int gsignal (int __sig) throw ();
4553extern void psignal (int __sig, __const char *__s);
4554extern void psiginfo (__const siginfo_t *__pinfo, __const char *__s);
4555extern int __sigpause (int __sig_or_mask, int __is_sig);
4556extern int sigpause (int __sig) __asm__ ("__xpg_sigpause");
4557extern int sigblock (int __mask) throw () __attribute__ ((__deprecated__));
4558extern int sigsetmask (int __mask) throw () __attribute__ ((__deprecated__));
4559extern int siggetmask (void) throw () __attribute__ ((__deprecated__));
4560typedef __sighandler_t sighandler_t;
4561typedef __sighandler_t sig_t;
4562extern int sigemptyset (sigset_t *__set) throw () __attribute__ ((__nonnull__ (1)));
4563extern int sigfillset (sigset_t *__set) throw () __attribute__ ((__nonnull__ (1)));
4564extern int sigaddset (sigset_t *__set, int __signo) throw () __attribute__ ((__nonnull__ (1)));
4565extern int sigdelset (sigset_t *__set, int __signo) throw () __attribute__ ((__nonnull__ (1)));
4566extern int sigismember (__const sigset_t *__set, int __signo)
4567 throw () __attribute__ ((__nonnull__ (1)));
4568extern int sigisemptyset (__const sigset_t *__set) throw () __attribute__ ((__nonnull__ (1)));
4569extern int sigandset (sigset_t *__set, __const sigset_t *__left,
4570 __const sigset_t *__right) throw () __attribute__ ((__nonnull__ (1, 2, 3)));
4571extern int sigorset (sigset_t *__set, __const sigset_t *__left,
4572 __const sigset_t *__right) throw () __attribute__ ((__nonnull__ (1, 2, 3)));
4573struct sigaction
4574 {
4575 union
4576 {
4577 __sighandler_t sa_handler;
4578 void (*sa_sigaction) (int, siginfo_t *, void *);
4579 }
4580 __sigaction_handler;
4581 __sigset_t sa_mask;
4582 int sa_flags;
4583 void (*sa_restorer) (void);
4584 };
4585extern int sigprocmask (int __how, __const sigset_t *__restrict __set,
4586 sigset_t *__restrict __oset) throw ();
4587extern int sigsuspend (__const sigset_t *__set) __attribute__ ((__nonnull__ (1)));
4588extern int sigaction (int __sig, __const struct sigaction *__restrict __act,
4589 struct sigaction *__restrict __oact) throw ();
4590extern int sigpending (sigset_t *__set) throw () __attribute__ ((__nonnull__ (1)));
4591extern int sigwait (__const sigset_t *__restrict __set, int *__restrict __sig)
4592 __attribute__ ((__nonnull__ (1, 2)));
4593extern int sigwaitinfo (__const sigset_t *__restrict __set,
4594 siginfo_t *__restrict __info) __attribute__ ((__nonnull__ (1)));
4595extern int sigtimedwait (__const sigset_t *__restrict __set,
4596 siginfo_t *__restrict __info,
4597 __const struct timespec *__restrict __timeout)
4598 __attribute__ ((__nonnull__ (1)));
4599extern int sigqueue (__pid_t __pid, int __sig, __const union sigval __val)
4600 throw ();
4601extern __const char *__const _sys_siglist[65];
4602extern __const char *__const sys_siglist[65];
4603struct sigvec
4604 {
4605 __sighandler_t sv_handler;
4606 int sv_mask;
4607 int sv_flags;
4608 };
4609extern int sigvec (int __sig, __const struct sigvec *__vec,
4610 struct sigvec *__ovec) throw ();
4611struct _fpreg
4612{
4613 unsigned short significand[4];
4614 unsigned short exponent;
4615};
4616struct _fpxreg
4617{
4618 unsigned short significand[4];
4619 unsigned short exponent;
4620 unsigned short padding[3];
4621};
4622struct _xmmreg
4623{
4624 __uint32_t element[4];
4625};
4626struct _fpstate
4627{
4628 __uint16_t cwd;
4629 __uint16_t swd;
4630 __uint16_t ftw;
4631 __uint16_t fop;
4632 __uint64_t rip;
4633 __uint64_t rdp;
4634 __uint32_t mxcsr;
4635 __uint32_t mxcr_mask;
4636 struct _fpxreg _st[8];
4637 struct _xmmreg _xmm[16];
4638 __uint32_t padding[24];
4639};
4640struct sigcontext
4641{
4642 unsigned long r8;
4643 unsigned long r9;
4644 unsigned long r10;
4645 unsigned long r11;
4646 unsigned long r12;
4647 unsigned long r13;
4648 unsigned long r14;
4649 unsigned long r15;
4650 unsigned long rdi;
4651 unsigned long rsi;
4652 unsigned long rbp;
4653 unsigned long rbx;
4654 unsigned long rdx;
4655 unsigned long rax;
4656 unsigned long rcx;
4657 unsigned long rsp;
4658 unsigned long rip;
4659 unsigned long eflags;
4660 unsigned short cs;
4661 unsigned short gs;
4662 unsigned short fs;
4663 unsigned short __pad0;
4664 unsigned long err;
4665 unsigned long trapno;
4666 unsigned long oldmask;
4667 unsigned long cr2;
4668 struct _fpstate * fpstate;
4669 unsigned long __reserved1 [8];
4670};
4671extern int sigreturn (struct sigcontext *__scp) throw ();
4672extern int siginterrupt (int __sig, int __interrupt) throw ();
4673struct sigstack
4674 {
4675 void *ss_sp;
4676 int ss_onstack;
4677 };
4678enum
4679{
4680 SS_ONSTACK = 1,
4681 SS_DISABLE
4682};
4683typedef struct sigaltstack
4684 {
4685 void *ss_sp;
4686 int ss_flags;
4687 size_t ss_size;
4688 } stack_t;
4689typedef long int greg_t;
4690typedef greg_t gregset_t[23];
4691enum
4692{
4693 REG_R8 = 0,
4694 REG_R9,
4695 REG_R10,
4696 REG_R11,
4697 REG_R12,
4698 REG_R13,
4699 REG_R14,
4700 REG_R15,
4701 REG_RDI,
4702 REG_RSI,
4703 REG_RBP,
4704 REG_RBX,
4705 REG_RDX,
4706 REG_RAX,
4707 REG_RCX,
4708 REG_RSP,
4709 REG_RIP,
4710 REG_EFL,
4711 REG_CSGSFS,
4712 REG_ERR,
4713 REG_TRAPNO,
4714 REG_OLDMASK,
4715 REG_CR2
4716};
4717struct _libc_fpxreg
4718{
4719 unsigned short int significand[4];
4720 unsigned short int exponent;
4721 unsigned short int padding[3];
4722};
4723struct _libc_xmmreg
4724{
4725 __uint32_t element[4];
4726};
4727struct _libc_fpstate
4728{
4729 __uint16_t cwd;
4730 __uint16_t swd;
4731 __uint16_t ftw;
4732 __uint16_t fop;
4733 __uint64_t rip;
4734 __uint64_t rdp;
4735 __uint32_t mxcsr;
4736 __uint32_t mxcr_mask;
4737 struct _libc_fpxreg _st[8];
4738 struct _libc_xmmreg _xmm[16];
4739 __uint32_t padding[24];
4740};
4741typedef struct _libc_fpstate *fpregset_t;
4742typedef struct
4743 {
4744 gregset_t gregs;
4745 fpregset_t fpregs;
4746 unsigned long __reserved1 [8];
4747} mcontext_t;
4748typedef struct ucontext
4749 {
4750 unsigned long int uc_flags;
4751 struct ucontext *uc_link;
4752 stack_t uc_stack;
4753 mcontext_t uc_mcontext;
4754 __sigset_t uc_sigmask;
4755 struct _libc_fpstate __fpregs_mem;
4756 } ucontext_t;
4757extern int sigstack (struct sigstack *__ss, struct sigstack *__oss)
4758 throw () __attribute__ ((__deprecated__));
4759extern int sigaltstack (__const struct sigaltstack *__restrict __ss,
4760 struct sigaltstack *__restrict __oss) throw ();
4761extern int sighold (int __sig) throw ();
4762extern int sigrelse (int __sig) throw ();
4763extern int sigignore (int __sig) throw ();
4764extern __sighandler_t sigset (int __sig, __sighandler_t __disp) throw ();
4765extern int pthread_sigmask (int __how,
4766 __const __sigset_t *__restrict __newmask,
4767 __sigset_t *__restrict __oldmask)throw ();
4768extern int pthread_kill (pthread_t __threadid, int __signo) throw ();
4769extern int pthread_sigqueue (pthread_t __threadid, int __signo,
4770 const union sigval __value) throw ();
4771extern int __libc_current_sigrtmin (void) throw ();
4772extern int __libc_current_sigrtmax (void) throw ();
4773}
4774extern "C" {
4775typedef long int __jmp_buf[8];
4776struct __jmp_buf_tag
4777 {
4778 __jmp_buf __jmpbuf;
4779 int __mask_was_saved;
4780 __sigset_t __saved_mask;
4781 };
4782typedef struct __jmp_buf_tag jmp_buf[1];
4783extern int setjmp (jmp_buf __env) throw ();
4784extern int __sigsetjmp (struct __jmp_buf_tag __env[1], int __savemask) throw ();
4785extern int _setjmp (struct __jmp_buf_tag __env[1]) throw ();
4786extern void longjmp (struct __jmp_buf_tag __env[1], int __val)
4787 throw () __attribute__ ((__noreturn__));
4788extern void _longjmp (struct __jmp_buf_tag __env[1], int __val)
4789 throw () __attribute__ ((__noreturn__));
4790typedef struct __jmp_buf_tag sigjmp_buf[1];
4791extern void siglongjmp (sigjmp_buf __env, int __val)
4792 throw () __attribute__ ((__noreturn__));
4793}
4794extern jmp_buf PyFPE_jbuf;
4795extern int PyFPE_counter;
4796extern double PyFPE_dummy(void *);
4797}
4798extern "C" {
4799typedef void *(*swig_converter_func)(void *, int *);
4800typedef struct swig_type_info *(*swig_dycast_func)(void **);
4801typedef struct swig_type_info {
4802 const char *name;
4803 const char *str;
4804 swig_dycast_func dcast;
4805 struct swig_cast_info *cast;
4806 void *clientdata;
4807 int owndata;
4808} swig_type_info;
4809typedef struct swig_cast_info {
4810 swig_type_info *type;
4811 swig_converter_func converter;
4812 struct swig_cast_info *next;
4813 struct swig_cast_info *prev;
4814} swig_cast_info;
4815typedef struct swig_module_info {
4816 swig_type_info **types;
4817 size_t size;
4818 struct swig_module_info *next;
4819 swig_type_info **type_initial;
4820 swig_cast_info **cast_initial;
4821 void *clientdata;
4822} swig_module_info;
4823static __attribute__ ((__unused__)) int
4824SWIG_TypeNameComp(const char *f1, const char *l1,
4825 const char *f2, const char *l2) {
4826 for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
4827 while ((*f1 == ' ') && (f1 != l1)) ++f1;
4828 while ((*f2 == ' ') && (f2 != l2)) ++f2;
4829 if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
4830 }
4831 return (int)((l1 - f1) - (l2 - f2));
4832}
4833static __attribute__ ((__unused__)) int
4834SWIG_TypeEquiv(const char *nb, const char *tb) {
4835 int equiv = 0;
4836 const char* te = tb + strlen(tb);
4837 const char* ne = nb;
4838 while (!equiv && *ne) {
4839 for (nb = ne; *ne; ++ne) {
4840 if (*ne == '|') break;
4841 }
4842 equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
4843 if (*ne) ++ne;
4844 }
4845 return equiv;
4846}
4847static __attribute__ ((__unused__)) int
4848SWIG_TypeCompare(const char *nb, const char *tb) {
4849 int equiv = 0;
4850 const char* te = tb + strlen(tb);
4851 const char* ne = nb;
4852 while (!equiv && *ne) {
4853 for (nb = ne; *ne; ++ne) {
4854 if (*ne == '|') break;
4855 }
4856 equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
4857 if (*ne) ++ne;
4858 }
4859 return equiv;
4860}
4861static __attribute__ ((__unused__)) swig_cast_info *
4862SWIG_TypeCheck(const char *c, swig_type_info *ty) {
4863 if (ty) {
4864 swig_cast_info *iter = ty->cast;
4865 while (iter) {
4866 if (strcmp(iter->type->name, c) == 0) {
4867 if (iter == ty->cast)
4868 return iter;
4869 iter->prev->next = iter->next;
4870 if (iter->next)
4871 iter->next->prev = iter->prev;
4872 iter->next = ty->cast;
4873 iter->prev = 0;
4874 if (ty->cast) ty->cast->prev = iter;
4875 ty->cast = iter;
4876 return iter;
4877 }
4878 iter = iter->next;
4879 }
4880 }
4881 return 0;
4882}
4883static __attribute__ ((__unused__)) swig_cast_info *
4884SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty) {
4885 if (ty) {
4886 swig_cast_info *iter = ty->cast;
4887 while (iter) {
4888 if (iter->type == from) {
4889 if (iter == ty->cast)
4890 return iter;
4891 iter->prev->next = iter->next;
4892 if (iter->next)
4893 iter->next->prev = iter->prev;
4894 iter->next = ty->cast;
4895 iter->prev = 0;
4896 if (ty->cast) ty->cast->prev = iter;
4897 ty->cast = iter;
4898 return iter;
4899 }
4900 iter = iter->next;
4901 }
4902 }
4903 return 0;
4904}
4905static __attribute__ ((__unused__)) inline void *
4906SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
4907 return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
4908}
4909static __attribute__ ((__unused__)) swig_type_info *
4910SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
4911 swig_type_info *lastty = ty;
4912 if (!ty || !ty->dcast) return ty;
4913 while (ty && (ty->dcast)) {
4914 ty = (*ty->dcast)(ptr);
4915 if (ty) lastty = ty;
4916 }
4917 return lastty;
4918}
4919static __attribute__ ((__unused__)) inline const char *
4920SWIG_TypeName(const swig_type_info *ty) {
4921 return ty->name;
4922}
4923static __attribute__ ((__unused__)) const char *
4924SWIG_TypePrettyName(const swig_type_info *type) {
4925 if (!type) return __null;
4926 if (type->str != __null) {
4927 const char *last_name = type->str;
4928 const char *s;
4929 for (s = type->str; *s; s++)
4930 if (*s == '|') last_name = s+1;
4931 return last_name;
4932 }
4933 else
4934 return type->name;
4935}
4936static __attribute__ ((__unused__)) void
4937SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
4938 swig_cast_info *cast = ti->cast;
4939 ti->clientdata = clientdata;
4940 while (cast) {
4941 if (!cast->converter) {
4942 swig_type_info *tc = cast->type;
4943 if (!tc->clientdata) {
4944 SWIG_TypeClientData(tc, clientdata);
4945 }
4946 }
4947 cast = cast->next;
4948 }
4949}
4950static __attribute__ ((__unused__)) void
4951SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) {
4952 SWIG_TypeClientData(ti, clientdata);
4953 ti->owndata = 1;
4954}
4955static __attribute__ ((__unused__)) swig_type_info *
4956SWIG_MangledTypeQueryModule(swig_module_info *start,
4957 swig_module_info *end,
4958 const char *name) {
4959 swig_module_info *iter = start;
4960 do {
4961 if (iter->size) {
4962 register size_t l = 0;
4963 register size_t r = iter->size - 1;
4964 do {
4965 register size_t i = (l + r) >> 1;
4966 const char *iname = iter->types[i]->name;
4967 if (iname) {
4968 register int compare = strcmp(name, iname);
4969 if (compare == 0) {
4970 return iter->types[i];
4971 } else if (compare < 0) {
4972 if (i) {
4973 r = i - 1;
4974 } else {
4975 break;
4976 }
4977 } else if (compare > 0) {
4978 l = i + 1;
4979 }
4980 } else {
4981 break;
4982 }
4983 } while (l <= r);
4984 }
4985 iter = iter->next;
4986 } while (iter != end);
4987 return 0;
4988}
4989static __attribute__ ((__unused__)) swig_type_info *
4990SWIG_TypeQueryModule(swig_module_info *start,
4991 swig_module_info *end,
4992 const char *name) {
4993 swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
4994 if (ret) {
4995 return ret;
4996 } else {
4997 swig_module_info *iter = start;
4998 do {
4999 register size_t i = 0;
5000 for (; i < iter->size; ++i) {
5001 if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
5002 return iter->types[i];
5003 }
5004 iter = iter->next;
5005 } while (iter != end);
5006 }
5007 return 0;
5008}
5009static __attribute__ ((__unused__)) char *
5010SWIG_PackData(char *c, void *ptr, size_t sz) {
5011 static const char hex[17] = "0123456789abcdef";
5012 register const unsigned char *u = (unsigned char *) ptr;
5013 register const unsigned char *eu = u + sz;
5014 for (; u != eu; ++u) {
5015 register unsigned char uu = *u;
5016 *(c++) = hex[(uu & 0xf0) >> 4];
5017 *(c++) = hex[uu & 0xf];
5018 }
5019 return c;
5020}
5021static __attribute__ ((__unused__)) const char *
5022SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
5023 register unsigned char *u = (unsigned char *) ptr;
5024 register const unsigned char *eu = u + sz;
5025 for (; u != eu; ++u) {
5026 register char d = *(c++);
5027 register unsigned char uu;
5028 if ((d >= '0') && (d <= '9'))
5029 uu = ((d - '0') << 4);
5030 else if ((d >= 'a') && (d <= 'f'))
5031 uu = ((d - ('a'-10)) << 4);
5032 else
5033 return (char *) 0;
5034 d = *(c++);
5035 if ((d >= '0') && (d <= '9'))
5036 uu |= (d - '0');
5037 else if ((d >= 'a') && (d <= 'f'))
5038 uu |= (d - ('a'-10));
5039 else
5040 return (char *) 0;
5041 *u = uu;
5042 }
5043 return c;
5044}
5045static __attribute__ ((__unused__)) char *
5046SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
5047 char *r = buff;
5048 if ((2*sizeof(void *) + 2) > bsz) return 0;
5049 *(r++) = '_';
5050 r = SWIG_PackData(r,&ptr,sizeof(void *));
5051 if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
5052 strcpy(r,name);
5053 return buff;
5054}
5055static __attribute__ ((__unused__)) const char *
5056SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
5057 if (*c != '_') {
5058 if (strcmp(c,"NULL") == 0) {
5059 *ptr = (void *) 0;
5060 return name;
5061 } else {
5062 return 0;
5063 }
5064 }
5065 return SWIG_UnpackData(++c,ptr,sizeof(void *));
5066}
5067static __attribute__ ((__unused__)) char *
5068SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
5069 char *r = buff;
5070 size_t lname = (name ? strlen(name) : 0);
5071 if ((2*sz + 2 + lname) > bsz) return 0;
5072 *(r++) = '_';
5073 r = SWIG_PackData(r,ptr,sz);
5074 if (lname) {
5075 strncpy(r,name,lname+1);
5076 } else {
5077 *r = 0;
5078 }
5079 return buff;
5080}
5081static __attribute__ ((__unused__)) const char *
5082SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
5083 if (*c != '_') {
5084 if (strcmp(c,"NULL") == 0) {
5085 memset(ptr,0,sz);
5086 return name;
5087 } else {
5088 return 0;
5089 }
5090 }
5091 return SWIG_UnpackData(++c,ptr,sz);
5092}
5093}
5094static __attribute__ ((__unused__)) char*
5095SWIG_Python_str_AsChar(PyObject *str)
5096{
5097 return PyString_AsString(str);
5098}
5099static __attribute__ ((__unused__)) PyObject*
5100SWIG_Python_str_FromChar(const char *c)
5101{
5102 return PyString_FromString(c);
5103}
5104static __attribute__ ((__unused__)) PyObject*
5105SWIG_Python_ErrorType(int code) {
5106 PyObject* type = 0;
5107 switch(code) {
5108 case -12:
5109 type = PyExc_MemoryError;
5110 break;
5111 case -2:
5112 type = PyExc_IOError;
5113 break;
5114 case -3:
5115 type = PyExc_RuntimeError;
5116 break;
5117 case -4:
5118 type = PyExc_IndexError;
5119 break;
5120 case -5:
5121 type = PyExc_TypeError;
5122 break;
5123 case -6:
5124 type = PyExc_ZeroDivisionError;
5125 break;
5126 case -7:
5127 type = PyExc_OverflowError;
5128 break;
5129 case -8:
5130 type = PyExc_SyntaxError;
5131 break;
5132 case -9:
5133 type = PyExc_ValueError;
5134 break;
5135 case -10:
5136 type = PyExc_SystemError;
5137 break;
5138 case -11:
5139 type = PyExc_AttributeError;
5140 break;
5141 default:
5142 type = PyExc_RuntimeError;
5143 }
5144 return type;
5145}
5146static __attribute__ ((__unused__)) void
5147SWIG_Python_AddErrorMsg(const char* mesg)
5148{
5149 PyObject *type = 0;
5150 PyObject *value = 0;
5151 PyObject *traceback = 0;
5152 if (PyErr_Occurred()) PyErr_Fetch(&type, &value, &traceback);
5153 if (value) {
5154 char *tmp;
5155 PyObject *old_str = PyObject_Str(value);
5156 PyErr_Clear();
5157 if ((type) == __null) ; else ( ((PyObject*)(type))->ob_refcnt++);
5158 PyErr_Format(type, "%s %s", tmp = SWIG_Python_str_AsChar(old_str), mesg);
5159 ;
5160 if ( --((PyObject*)(old_str))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(old_str)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(old_str))));
5161 if ( --((PyObject*)(value))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(value)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(value))));
5162 } else {
5163 PyErr_SetString(PyExc_RuntimeError, mesg);
5164 }
5165}
5166 class SWIG_Python_Thread_Block {
5167 bool status;
5168 PyGILState_STATE state;
5169 public:
5170 void end() { if (status) { PyGILState_Release(state); status = false;} }
5171 SWIG_Python_Thread_Block() : status(true), state(PyGILState_Ensure()) {}
5172 ~SWIG_Python_Thread_Block() { end(); }
5173 };
5174 class SWIG_Python_Thread_Allow {
5175 bool status;
5176 PyThreadState *save;
5177 public:
5178 void end() { if (status) { PyEval_RestoreThread(save); status = false; }}
5179 SWIG_Python_Thread_Allow() : status(true), save(PyEval_SaveThread()) {}
5180 ~SWIG_Python_Thread_Allow() { end(); }
5181 };
5182extern "C" {
5183typedef struct swig_const_info {
5184 int type;
5185 char *name;
5186 long lvalue;
5187 double dvalue;
5188 void *pvalue;
5189 swig_type_info **ptype;
5190} swig_const_info;
5191static __attribute__ ((__unused__)) PyObject* SWIG_PyInstanceMethod_New(PyObject *self, PyObject *func)
5192{
5193 return __null;
5194}
5195}
5196static __attribute__ ((__unused__)) void
5197SWIG_Python_SetErrorObj(PyObject *errtype, PyObject *obj) {
5198 SWIG_Python_Thread_Block _swig_thread_block;
5199 PyErr_SetObject(errtype, obj);
5200 if ( --((PyObject*)(obj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(obj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(obj))));
5201 _swig_thread_block.end();
5202}
5203static __attribute__ ((__unused__)) void
5204SWIG_Python_SetErrorMsg(PyObject *errtype, const char *msg) {
5205 SWIG_Python_Thread_Block _swig_thread_block;
5206 PyErr_SetString(errtype, (char *) msg);
5207 _swig_thread_block.end();
5208}
5209static __attribute__ ((__unused__)) void
5210SWIG_Python_SetConstant(PyObject *d, const char *name, PyObject *obj) {
5211 PyDict_SetItemString(d, (char*) name, obj);
5212 if ( --((PyObject*)(obj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(obj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(obj))));
5213}
5214static __attribute__ ((__unused__)) PyObject*
5215SWIG_Python_AppendOutput(PyObject* result, PyObject* obj) {
5216 if (!result) {
5217 result = obj;
5218 } else if (result == (&_Py_NoneStruct)) {
5219 if ( --((PyObject*)(result))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(result)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(result))));
5220 result = obj;
5221 } else {
5222 if (!((((((PyObject*)(result))->ob_type))->tp_flags & ((1L<<25))) != 0)) {
5223 PyObject *o2 = result;
5224 result = PyList_New(1);
5225 PyList_SetItem(result, 0, o2);
5226 }
5227 PyList_Append(result,obj);
5228 if ( --((PyObject*)(obj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(obj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(obj))));
5229 }
5230 return result;
5231}
5232static __attribute__ ((__unused__)) int
5233SWIG_Python_UnpackTuple(PyObject *args, const char *name, Py_ssize_t min, Py_ssize_t max, PyObject **objs)
5234{
5235 if (!args) {
5236 if (!min && !max) {
5237 return 1;
5238 } else {
5239 PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got none",
5240 name, (min == max ? "" : "at least "), (int)min);
5241 return 0;
5242 }
5243 }
5244 if (!((((((PyObject*)(args))->ob_type))->tp_flags & ((1L<<26))) != 0)) {
5245 PyErr_SetString(PyExc_SystemError, "UnpackTuple() argument list is not a tuple");
5246 return 0;
5247 } else {
5248 register Py_ssize_t l = (((PyVarObject*)(args))->ob_size);
5249 if (l < min) {
5250 PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d",
5251 name, (min == max ? "" : "at least "), (int)min, (int)l);
5252 return 0;
5253 } else if (l > max) {
5254 PyErr_Format(PyExc_TypeError, "%s expected %s%d arguments, got %d",
5255 name, (min == max ? "" : "at most "), (int)max, (int)l);
5256 return 0;
5257 } else {
5258 register int i;
5259 for (i = 0; i < l; ++i) {
5260 objs[i] = (((PyTupleObject *)(args))->ob_item[i]);
5261 }
5262 for (; l < max; ++l) {
5263 objs[l] = 0;
5264 }
5265 return i + 1;
5266 }
5267 }
5268}
5269extern "C" {
5270static __attribute__ ((__unused__)) inline PyObject *
5271SWIG_Py_Void(void)
5272{
5273 PyObject *none = (&_Py_NoneStruct);
5274 ( ((PyObject*)(none))->ob_refcnt++);
5275 return none;
5276}
5277typedef struct {
5278 PyObject *klass;
5279 PyObject *newraw;
5280 PyObject *newargs;
5281 PyObject *destroy;
5282 int delargs;
5283 int implicitconv;
5284} SwigPyClientData;
5285static __attribute__ ((__unused__)) inline int
5286SWIG_Python_CheckImplicit(swig_type_info *ty)
5287{
5288 SwigPyClientData *data = (SwigPyClientData *)ty->clientdata;
5289 return data ? data->implicitconv : 0;
5290}
5291static __attribute__ ((__unused__)) inline PyObject *
5292SWIG_Python_ExceptionType(swig_type_info *desc) {
5293 SwigPyClientData *data = desc ? (SwigPyClientData *) desc->clientdata : 0;
5294 PyObject *klass = data ? data->klass : 0;
5295 return (klass ? klass : PyExc_RuntimeError);
5296}
5297static __attribute__ ((__unused__)) SwigPyClientData *
5298SwigPyClientData_New(PyObject* obj)
5299{
5300 if (!obj) {
5301 return 0;
5302 } else {
5303 SwigPyClientData *data = (SwigPyClientData *)malloc(sizeof(SwigPyClientData));
5304 data->klass = obj;
5305 ( ((PyObject*)(data->klass))->ob_refcnt++);
5306 if (((obj)->ob_type == &PyClass_Type)) {
5307 data->newraw = 0;
5308 data->newargs = obj;
5309 ( ((PyObject*)(obj))->ob_refcnt++);
5310 } else {
5311 data->newraw = PyObject_GetAttrString(data->klass, (char *)"__new__");
5312 if (data->newraw) {
5313 ( ((PyObject*)(data->newraw))->ob_refcnt++);
5314 data->newargs = PyTuple_New(1);
5315 PyTuple_SetItem(data->newargs, 0, obj);
5316 } else {
5317 data->newargs = obj;
5318 }
5319 ( ((PyObject*)(data->newargs))->ob_refcnt++);
5320 }
5321 data->destroy = PyObject_GetAttrString(data->klass, (char *)"__swig_destroy__");
5322 if (PyErr_Occurred()) {
5323 PyErr_Clear();
5324 data->destroy = 0;
5325 }
5326 if (data->destroy) {
5327 int flags;
5328 ( ((PyObject*)(data->destroy))->ob_refcnt++);
5329 flags = (((PyCFunctionObject *)data->destroy) -> m_ml -> ml_flags);
5330 data->delargs = !(flags & (0x0008));
5331 } else {
5332 data->delargs = 0;
5333 }
5334 data->implicitconv = 0;
5335 return data;
5336 }
5337}
5338static __attribute__ ((__unused__)) void
5339SwigPyClientData_Del(SwigPyClientData* data)
5340{
5341 if ((data->newraw) == __null) ; else if ( --((PyObject*)(data->newraw))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(data->newraw)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(data->newraw))));
5342 if ((data->newargs) == __null) ; else if ( --((PyObject*)(data->newargs))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(data->newargs)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(data->newargs))));
5343 if ((data->destroy) == __null) ; else if ( --((PyObject*)(data->destroy))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(data->destroy)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(data->destroy))));
5344}
5345typedef struct {
5346 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
5347 void *ptr;
5348 swig_type_info *ty;
5349 int own;
5350 PyObject *next;
5351} SwigPyObject;
5352static __attribute__ ((__unused__)) PyObject *
5353SwigPyObject_long(SwigPyObject *v)
5354{
5355 return PyLong_FromVoidPtr(v->ptr);
5356}
5357static __attribute__ ((__unused__)) PyObject *
5358SwigPyObject_format(const char* fmt, SwigPyObject *v)
5359{
5360 PyObject *res = __null;
5361 PyObject *args = PyTuple_New(1);
5362 if (args) {
5363 if (PyTuple_SetItem(args, 0, SwigPyObject_long(v)) == 0) {
5364 PyObject *ofmt = SWIG_Python_str_FromChar(fmt);
5365 if (ofmt) {
5366 res = PyString_Format(ofmt,args);
5367 if ( --((PyObject*)(ofmt))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(ofmt)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(ofmt))));
5368 }
5369 if ( --((PyObject*)(args))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(args)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(args))));
5370 }
5371 }
5372 return res;
5373}
5374static __attribute__ ((__unused__)) PyObject *
5375SwigPyObject_oct(SwigPyObject *v)
5376{
5377 return SwigPyObject_format("%o",v);
5378}
5379static __attribute__ ((__unused__)) PyObject *
5380SwigPyObject_hex(SwigPyObject *v)
5381{
5382 return SwigPyObject_format("%x",v);
5383}
5384static __attribute__ ((__unused__)) PyObject *
5385SwigPyObject_repr(SwigPyObject *v)
5386{
5387 const char *name = SWIG_TypePrettyName(v->ty);
5388 PyObject *repr = PyString_FromFormat("<Swig Object of type '%s' at %p>", name, v);
5389 if (v->next) {
5390 PyObject *nrep = SwigPyObject_repr((SwigPyObject *)v->next);
5391 PyString_ConcatAndDel(&repr,nrep);
5392 }
5393 return repr;
5394}
5395static __attribute__ ((__unused__)) int
5396SwigPyObject_print(SwigPyObject *v, FILE *fp, int )
5397{
5398 char *str;
5399 PyObject *repr = SwigPyObject_repr(v);
5400 if (repr) {
5401 str = SWIG_Python_str_AsChar(repr);
5402 fputs(str, fp);
5403 ;
5404 if ( --((PyObject*)(repr))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(repr)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(repr))));
5405 return 0;
5406 } else {
5407 return 1;
5408 }
5409}
5410static __attribute__ ((__unused__)) PyObject *
5411SwigPyObject_str(SwigPyObject *v)
5412{
5413 char result[1024];
5414 return SWIG_PackVoidPtr(result, v->ptr, v->ty->name, sizeof(result)) ?
5415 SWIG_Python_str_FromChar(result) : 0;
5416}
5417static __attribute__ ((__unused__)) int
5418SwigPyObject_compare(SwigPyObject *v, SwigPyObject *w)
5419{
5420 void *i = v->ptr;
5421 void *j = w->ptr;
5422 return (i < j) ? -1 : ((i > j) ? 1 : 0);
5423}
5424static __attribute__ ((__unused__)) PyObject*
5425SwigPyObject_richcompare(SwigPyObject *v, SwigPyObject *w, int op)
5426{
5427 PyObject* res;
5428 if( op != 2 && op != 3 ) {
5429 ( ((PyObject*)((&_Py_NotImplementedStruct)))->ob_refcnt++);
5430 return (&_Py_NotImplementedStruct);
5431 }
5432 if( (SwigPyObject_compare(v, w)==0) == (op == 2) )
5433 res = ((PyObject *) &_Py_TrueStruct);
5434 else
5435 res = ((PyObject *) &_Py_ZeroStruct);
5436 ( ((PyObject*)(res))->ob_refcnt++);
5437 return res;
5438}
5439static __attribute__ ((__unused__)) PyTypeObject* _PySwigObject_type(void);
5440static __attribute__ ((__unused__)) PyTypeObject*
5441SwigPyObject_type(void) {
5442 static PyTypeObject *type = _PySwigObject_type();
5443 return type;
5444}
5445static __attribute__ ((__unused__)) inline int
5446SwigPyObject_Check(PyObject *op) {
5447 return ((((PyObject*)(op))->ob_type) == SwigPyObject_type())
5448 || (strcmp((((PyObject*)(op))->ob_type)->tp_name,"SwigPyObject") == 0);
5449}
5450static __attribute__ ((__unused__)) PyObject *
5451SwigPyObject_New(void *ptr, swig_type_info *ty, int own);
5452static __attribute__ ((__unused__)) void
5453SwigPyObject_dealloc(PyObject *v)
5454{
5455 SwigPyObject *sobj = (SwigPyObject *) v;
5456 PyObject *next = sobj->next;
5457 if (sobj->own == 0x1) {
5458 swig_type_info *ty = sobj->ty;
5459 SwigPyClientData *data = ty ? (SwigPyClientData *) ty->clientdata : 0;
5460 PyObject *destroy = data ? data->destroy : 0;
5461 if (destroy) {
5462 PyObject *res;
5463 if (data->delargs) {
5464 PyObject *tmp = SwigPyObject_New(sobj->ptr, ty, 0);
5465 res = PyObject_CallFunctionObjArgs(destroy, tmp, __null);;
5466 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
5467 } else {
5468 PyCFunction meth = (((PyCFunctionObject *)destroy) -> m_ml -> ml_meth);
5469 PyObject *mself = (((PyCFunctionObject *)destroy) -> m_self);
5470 res = ((*meth)(mself, v));
5471 }
5472 if ((res) == __null) ; else if ( --((PyObject*)(res))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(res)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(res))));
5473 }
5474 else {
5475 const char *name = SWIG_TypePrettyName(ty);
5476 printf("swig/python detected a memory leak of type '%s', no destructor found.\n", (name ? name : "unknown"));
5477 }
5478 }
5479 if ((next) == __null) ; else if ( --((PyObject*)(next))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(next)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(next))));
5480 PyObject_Free(v);
5481}
5482static __attribute__ ((__unused__)) PyObject*
5483SwigPyObject_append(PyObject* v, PyObject* next)
5484{
5485 SwigPyObject *sobj = (SwigPyObject *) v;
5486 if (!SwigPyObject_Check(next)) {
5487 return __null;
5488 }
5489 sobj->next = next;
5490 ( ((PyObject*)(next))->ob_refcnt++);
5491 return SWIG_Py_Void();
5492}
5493static __attribute__ ((__unused__)) PyObject*
5494SwigPyObject_next(PyObject* v)
5495{
5496 SwigPyObject *sobj = (SwigPyObject *) v;
5497 if (sobj->next) {
5498 ( ((PyObject*)(sobj->next))->ob_refcnt++);
5499 return sobj->next;
5500 } else {
5501 return SWIG_Py_Void();
5502 }
5503}
5504static __attribute__ ((__unused__)) PyObject*
5505SwigPyObject_disown(PyObject *v)
5506{
5507 SwigPyObject *sobj = (SwigPyObject *)v;
5508 sobj->own = 0;
5509 return SWIG_Py_Void();
5510}
5511static __attribute__ ((__unused__)) PyObject*
5512SwigPyObject_acquire(PyObject *v)
5513{
5514 SwigPyObject *sobj = (SwigPyObject *)v;
5515 sobj->own = 0x1;
5516 return SWIG_Py_Void();
5517}
5518static __attribute__ ((__unused__)) PyObject*
5519SwigPyObject_own(PyObject *v, PyObject *args)
5520{
5521 PyObject *val = 0;
5522 if (!PyArg_UnpackTuple(args, (char *)"own", 0, 1, &val))
5523 {
5524 return __null;
5525 }
5526 else
5527 {
5528 SwigPyObject *sobj = (SwigPyObject *)v;
5529 PyObject *obj = PyBool_FromLong(sobj->own);
5530 if (val) {
5531 if (PyObject_IsTrue(val)) {
5532 SwigPyObject_acquire(v);
5533 } else {
5534 SwigPyObject_disown(v);
5535 }
5536 }
5537 return obj;
5538 }
5539}
5540static PyMethodDef
5541swigobject_methods[] = {
5542 {(char *)"disown", (PyCFunction)SwigPyObject_disown, 0x0004, (char *)"releases ownership of the pointer"},
5543 {(char *)"acquire", (PyCFunction)SwigPyObject_acquire, 0x0004, (char *)"aquires ownership of the pointer"},
5544 {(char *)"own", (PyCFunction)SwigPyObject_own, 0x0001, (char *)"returns/sets ownership of the pointer"},
5545 {(char *)"append", (PyCFunction)SwigPyObject_append, 0x0008, (char *)"appends another 'this' object"},
5546 {(char *)"next", (PyCFunction)SwigPyObject_next, 0x0004, (char *)"returns the next 'this' object"},
5547 {(char *)"__repr__",(PyCFunction)SwigPyObject_repr, 0x0004, (char *)"returns object representation"},
5548 {0, 0, 0, 0}
5549};
5550static __attribute__ ((__unused__)) PyTypeObject*
5551_PySwigObject_type(void) {
5552 static char swigobject_doc[] = "Swig object carries a C/C++ instance pointer";
5553 static PyNumberMethods SwigPyObject_as_number = {
5554 (binaryfunc)0,
5555 (binaryfunc)0,
5556 (binaryfunc)0,
5557 (binaryfunc)0,
5558 (binaryfunc)0,
5559 (binaryfunc)0,
5560 (ternaryfunc)0,
5561 (unaryfunc)0,
5562 (unaryfunc)0,
5563 (unaryfunc)0,
5564 (inquiry)0,
5565 0,
5566 0,
5567 0,
5568 0,
5569 0,
5570 0,
5571 0,
5572 (unaryfunc)SwigPyObject_long,
5573 (unaryfunc)SwigPyObject_long,
5574 (unaryfunc)0,
5575 (unaryfunc)SwigPyObject_oct,
5576 (unaryfunc)SwigPyObject_hex,
5577 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
5578 };
5579 static PyTypeObject swigpyobject_type;
5580 static int type_init = 0;
5581 if (!type_init) {
5582 const PyTypeObject tmp
5583 = {
5584 1, __null,
5585 0,
5586 (char *)"SwigPyObject",
5587 sizeof(SwigPyObject),
5588 0,
5589 (destructor)SwigPyObject_dealloc,
5590 (printfunc)SwigPyObject_print,
5591 (getattrfunc)0,
5592 (setattrfunc)0,
5593 (cmpfunc)SwigPyObject_compare,
5594 (reprfunc)SwigPyObject_repr,
5595 &SwigPyObject_as_number,
5596 0,
5597 0,
5598 (hashfunc)0,
5599 (ternaryfunc)0,
5600 (reprfunc)SwigPyObject_str,
5601 PyObject_GenericGetAttr,
5602 0,
5603 0,
5604 ( (1L<<0) | (1L<<1) | (1L<<3) | (1L<<5) | (1L<<6) | (1L<<7) | (1L<<8) | 0 | (1L<<17) | 0),
5605 swigobject_doc,
5606 0,
5607 0,
5608 (richcmpfunc)SwigPyObject_richcompare,
5609 0,
5610 0,
5611 0,
5612 swigobject_methods,
5613 0,
5614 0,
5615 0,
5616 0,
5617 0,
5618 0,
5619 0,
5620 0,
5621 0,
5622 0,
5623 0,
5624 0,
5625 0,
5626 0,
5627 0,
5628 0,
5629 0,
5630 0,
5631 };
5632 swigpyobject_type = tmp;
5633 swigpyobject_type.ob_type = &PyType_Type;
5634 type_init = 1;
5635 }
5636 return &swigpyobject_type;
5637}
5638static __attribute__ ((__unused__)) PyObject *
5639SwigPyObject_New(void *ptr, swig_type_info *ty, int own)
5640{
5641 SwigPyObject *sobj = ( (SwigPyObject *) PyObject_Init( (PyObject *) PyObject_Malloc( ( (SwigPyObject_type())->tp_basicsize ) ), (SwigPyObject_type())) );
5642 if (sobj) {
5643 sobj->ptr = ptr;
5644 sobj->ty = ty;
5645 sobj->own = own;
5646 sobj->next = 0;
5647 }
5648 return (PyObject *)sobj;
5649}
5650typedef struct {
5651 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
5652 void *pack;
5653 swig_type_info *ty;
5654 size_t size;
5655} SwigPyPacked;
5656static __attribute__ ((__unused__)) int
5657SwigPyPacked_print(SwigPyPacked *v, FILE *fp, int )
5658{
5659 char result[1024];
5660 fputs("<Swig Packed ", fp);
5661 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
5662 fputs("at ", fp);
5663 fputs(result, fp);
5664 }
5665 fputs(v->ty->name,fp);
5666 fputs(">", fp);
5667 return 0;
5668}
5669static __attribute__ ((__unused__)) PyObject *
5670SwigPyPacked_repr(SwigPyPacked *v)
5671{
5672 char result[1024];
5673 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))) {
5674 return PyString_FromFormat("<Swig Packed at %s%s>", result, v->ty->name);
5675 } else {
5676 return PyString_FromFormat("<Swig Packed %s>", v->ty->name);
5677 }
5678}
5679static __attribute__ ((__unused__)) PyObject *
5680SwigPyPacked_str(SwigPyPacked *v)
5681{
5682 char result[1024];
5683 if (SWIG_PackDataName(result, v->pack, v->size, 0, sizeof(result))){
5684 return PyString_FromFormat("%s%s", result, v->ty->name);
5685 } else {
5686 return SWIG_Python_str_FromChar(v->ty->name);
5687 }
5688}
5689static __attribute__ ((__unused__)) int
5690SwigPyPacked_compare(SwigPyPacked *v, SwigPyPacked *w)
5691{
5692 size_t i = v->size;
5693 size_t j = w->size;
5694 int s = (i < j) ? -1 : ((i > j) ? 1 : 0);
5695 return s ? s : strncmp((char *)v->pack, (char *)w->pack, 2*v->size);
5696}
5697static __attribute__ ((__unused__)) PyTypeObject* _PySwigPacked_type(void);
5698static __attribute__ ((__unused__)) PyTypeObject*
5699SwigPyPacked_type(void) {
5700 static PyTypeObject *type = _PySwigPacked_type();
5701 return type;
5702}
5703static __attribute__ ((__unused__)) inline int
5704SwigPyPacked_Check(PyObject *op) {
5705 return ((op)->ob_type == _PySwigPacked_type())
5706 || (strcmp((op)->ob_type->tp_name,"SwigPyPacked") == 0);
5707}
5708static __attribute__ ((__unused__)) void
5709SwigPyPacked_dealloc(PyObject *v)
5710{
5711 if (SwigPyPacked_Check(v)) {
5712 SwigPyPacked *sobj = (SwigPyPacked *) v;
5713 free(sobj->pack);
5714 }
5715 PyObject_Free(v);
5716}
5717static __attribute__ ((__unused__)) PyTypeObject*
5718_PySwigPacked_type(void) {
5719 static char swigpacked_doc[] = "Swig object carries a C/C++ instance pointer";
5720 static PyTypeObject swigpypacked_type;
5721 static int type_init = 0;
5722 if (!type_init) {
5723 const PyTypeObject tmp
5724 = {
5725 1, __null,
5726 0,
5727 (char *)"SwigPyPacked",
5728 sizeof(SwigPyPacked),
5729 0,
5730 (destructor)SwigPyPacked_dealloc,
5731 (printfunc)SwigPyPacked_print,
5732 (getattrfunc)0,
5733 (setattrfunc)0,
5734 (cmpfunc)SwigPyPacked_compare,
5735 (reprfunc)SwigPyPacked_repr,
5736 0,
5737 0,
5738 0,
5739 (hashfunc)0,
5740 (ternaryfunc)0,
5741 (reprfunc)SwigPyPacked_str,
5742 PyObject_GenericGetAttr,
5743 0,
5744 0,
5745 ( (1L<<0) | (1L<<1) | (1L<<3) | (1L<<5) | (1L<<6) | (1L<<7) | (1L<<8) | 0 | (1L<<17) | 0),
5746 swigpacked_doc,
5747 0,
5748 0,
5749 0,
5750 0,
5751 0,
5752 0,
5753 0,
5754 0,
5755 0,
5756 0,
5757 0,
5758 0,
5759 0,
5760 0,
5761 0,
5762 0,
5763 0,
5764 0,
5765 0,
5766 0,
5767 0,
5768 0,
5769 0,
5770 0,
5771 0,
5772 };
5773 swigpypacked_type = tmp;
5774 swigpypacked_type.ob_type = &PyType_Type;
5775 type_init = 1;
5776 }
5777 return &swigpypacked_type;
5778}
5779static __attribute__ ((__unused__)) PyObject *
5780SwigPyPacked_New(void *ptr, size_t size, swig_type_info *ty)
5781{
5782 SwigPyPacked *sobj = ( (SwigPyPacked *) PyObject_Init( (PyObject *) PyObject_Malloc( ( (SwigPyPacked_type())->tp_basicsize ) ), (SwigPyPacked_type())) );
5783 if (sobj) {
5784 void *pack = malloc(size);
5785 if (pack) {
5786 memcpy(pack, ptr, size);
5787 sobj->pack = pack;
5788 sobj->ty = ty;
5789 sobj->size = size;
5790 } else {
5791 PyObject_Free((PyObject *) sobj);
5792 sobj = 0;
5793 }
5794 }
5795 return (PyObject *) sobj;
5796}
5797static __attribute__ ((__unused__)) swig_type_info *
5798SwigPyPacked_UnpackData(PyObject *obj, void *ptr, size_t size)
5799{
5800 if (SwigPyPacked_Check(obj)) {
5801 SwigPyPacked *sobj = (SwigPyPacked *)obj;
5802 if (sobj->size != size) return 0;
5803 memcpy(ptr, sobj->pack, size);
5804 return sobj->ty;
5805 } else {
5806 return 0;
5807 }
5808}
5809static __attribute__ ((__unused__)) inline PyObject *
5810_SWIG_This(void)
5811{
5812 return SWIG_Python_str_FromChar("this");
5813}
5814static __attribute__ ((__unused__)) PyObject *
5815SWIG_This(void)
5816{
5817 static PyObject *swig_this = _SWIG_This();
5818 return swig_this;
5819}
5820static __attribute__ ((__unused__)) SwigPyObject *
5821SWIG_Python_GetSwigThis(PyObject *pyobj)
5822{
5823 if (SwigPyObject_Check(pyobj)) {
5824 return (SwigPyObject *) pyobj;
5825 } else {
5826 PyObject *obj = 0;
5827 if (((pyobj)->ob_type == &PyInstance_Type)) {
5828 obj = _PyInstance_Lookup(pyobj, SWIG_This());
5829 } else {
5830 PyObject **dictptr = _PyObject_GetDictPtr(pyobj);
5831 if (dictptr != __null) {
5832 PyObject *dict = *dictptr;
5833 obj = dict ? PyDict_GetItem(dict, SWIG_This()) : 0;
5834 } else {
5835 if ((((((PyObject*)(pyobj))->ob_type) == &_PyWeakref_ProxyType) || ((((PyObject*)(pyobj))->ob_type) == &_PyWeakref_CallableProxyType))) {
5836 PyObject *wobj = (((PyWeakReference *)(pyobj))->wr_object);
5837 return wobj ? SWIG_Python_GetSwigThis(wobj) : 0;
5838 }
5839 obj = PyObject_GetAttr(pyobj,SWIG_This());
5840 if (obj) {
5841 if ( --((PyObject*)(obj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(obj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(obj))));
5842 } else {
5843 if (PyErr_Occurred()) PyErr_Clear();
5844 return 0;
5845 }
5846 }
5847 }
5848 if (obj && !SwigPyObject_Check(obj)) {
5849 return SWIG_Python_GetSwigThis(obj);
5850 }
5851 return (SwigPyObject *)obj;
5852 }
5853}
5854static __attribute__ ((__unused__)) int
5855SWIG_Python_AcquirePtr(PyObject *obj, int own) {
5856 if (own == 0x1) {
5857 SwigPyObject *sobj = SWIG_Python_GetSwigThis(obj);
5858 if (sobj) {
5859 int oldown = sobj->own;
5860 sobj->own = own;
5861 return oldown;
5862 }
5863 }
5864 return 0;
5865}
5866static __attribute__ ((__unused__)) int
5867SWIG_Python_ConvertPtrAndOwn(PyObject *obj, void **ptr, swig_type_info *ty, int flags, int *own) {
5868 if (!obj) return (-1);
5869 if (obj == (&_Py_NoneStruct)) {
5870 if (ptr) *ptr = 0;
5871 return (0);
5872 } else {
5873 SwigPyObject *sobj = SWIG_Python_GetSwigThis(obj);
5874 if (own)
5875 *own = 0;
5876 while (sobj) {
5877 void *vptr = sobj->ptr;
5878 if (ty) {
5879 swig_type_info *to = sobj->ty;
5880 if (to == ty) {
5881 if (ptr) *ptr = vptr;
5882 break;
5883 } else {
5884 swig_cast_info *tc = SWIG_TypeCheck(to->name,ty);
5885 if (!tc) {
5886 sobj = (SwigPyObject *)sobj->next;
5887 } else {
5888 if (ptr) {
5889 int newmemory = 0;
5890 *ptr = SWIG_TypeCast(tc,vptr,&newmemory);
5891 if (newmemory == 0x2) {
5892 ((own) ? static_cast<void> (0) : __assert_fail ("own", "modern/xapian_wrap.cc", 2183, __PRETTY_FUNCTION__));
5893 if (own)
5894 *own = *own | 0x2;
5895 }
5896 }
5897 break;
5898 }
5899 }
5900 } else {
5901 if (ptr) *ptr = vptr;
5902 break;
5903 }
5904 }
5905 if (sobj) {
5906 if (own)
5907 *own = *own | sobj->own;
5908 if (flags & 0x1) {
5909 sobj->own = 0;
5910 }
5911 return (0);
5912 } else {
5913 int res = (-1);
5914 if (flags & (0x1 << 1)) {
5915 SwigPyClientData *data = ty ? (SwigPyClientData *) ty->clientdata : 0;
5916 if (data && !data->implicitconv) {
5917 PyObject *klass = data->klass;
5918 if (klass) {
5919 PyObject *impconv;
5920 data->implicitconv = 1;
5921 impconv = PyObject_CallFunctionObjArgs(klass, obj, __null);;
5922 data->implicitconv = 0;
5923 if (PyErr_Occurred()) {
5924 PyErr_Clear();
5925 impconv = 0;
5926 }
5927 if (impconv) {
5928 SwigPyObject *iobj = SWIG_Python_GetSwigThis(impconv);
5929 if (iobj) {
5930 void *vptr;
5931 res = SWIG_Python_ConvertPtrAndOwn((PyObject*)iobj, &vptr, ty, 0, 0);
5932 if ((res >= 0)) {
5933 if (ptr) {
5934 *ptr = vptr;
5935 iobj->own = 0;
5936 res = (res);
5937 res = ((res >= 0) ? (res | ((1 << 8) << 1)) : res);
5938 } else {
5939 res = (res);
5940 }
5941 }
5942 }
5943 if ( --((PyObject*)(impconv))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(impconv)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(impconv))));
5944 }
5945 }
5946 }
5947 }
5948 return res;
5949 }
5950 }
5951}
5952static __attribute__ ((__unused__)) int
5953SWIG_Python_ConvertFunctionPtr(PyObject *obj, void **ptr, swig_type_info *ty) {
5954 if (!((((PyObject*)(obj))->ob_type) == &PyCFunction_Type)) {
5955 return SWIG_Python_ConvertPtrAndOwn(obj, ptr, ty, 0, 0);
5956 } else {
5957 void *vptr = 0;
5958 const char *doc = (((PyCFunctionObject *)obj) -> m_ml -> ml_doc);
5959 const char *desc = doc ? strstr(doc, "swig_ptr: ") : 0;
5960 if (desc) {
5961 desc = ty ? SWIG_UnpackVoidPtr(desc + 10, &vptr, ty->name) : 0;
5962 if (!desc) return (-1);
5963 }
5964 if (ty) {
5965 swig_cast_info *tc = SWIG_TypeCheck(desc,ty);
5966 if (tc) {
5967 int newmemory = 0;
5968 *ptr = SWIG_TypeCast(tc,vptr,&newmemory);
5969 ((!newmemory) ? static_cast<void> (0) : __assert_fail ("!newmemory", "modern/xapian_wrap.cc", 2266, __PRETTY_FUNCTION__));
5970 } else {
5971 return (-1);
5972 }
5973 } else {
5974 *ptr = vptr;
5975 }
5976 return (0);
5977 }
5978}
5979static __attribute__ ((__unused__)) int
5980SWIG_Python_ConvertPacked(PyObject *obj, void *ptr, size_t sz, swig_type_info *ty) {
5981 swig_type_info *to = SwigPyPacked_UnpackData(obj, ptr, sz);
5982 if (!to) return (-1);
5983 if (ty) {
5984 if (to != ty) {
5985 swig_cast_info *tc = SWIG_TypeCheck(to->name,ty);
5986 if (!tc) return (-1);
5987 }
5988 }
5989 return (0);
5990}
5991static __attribute__ ((__unused__)) PyObject*
5992SWIG_Python_NewShadowInstance(SwigPyClientData *data, PyObject *swig_this)
5993{
5994 PyObject *inst = 0;
5995 PyObject *newraw = data->newraw;
5996 if (newraw) {
5997 inst = PyObject_Call(newraw, data->newargs, __null);
5998 if (inst) {
5999 PyObject **dictptr = _PyObject_GetDictPtr(inst);
6000 if (dictptr != __null) {
6001 PyObject *dict = *dictptr;
6002 if (dict == __null) {
6003 dict = PyDict_New();
6004 *dictptr = dict;
6005 PyDict_SetItem(dict, SWIG_This(), swig_this);
6006 }
6007 }
6008 }
6009 } else {
6010 PyObject *dict = PyDict_New();
6011 PyDict_SetItem(dict, SWIG_This(), swig_this);
6012 inst = PyInstance_NewRaw(data->newargs, dict);
6013 if ( --((PyObject*)(dict))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(dict)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(dict))));
6014 }
6015 return inst;
6016}
6017static __attribute__ ((__unused__)) void
6018SWIG_Python_SetSwigThis(PyObject *inst, PyObject *swig_this)
6019{
6020 PyObject *dict;
6021 PyObject **dictptr = _PyObject_GetDictPtr(inst);
6022 if (dictptr != __null) {
6023 dict = *dictptr;
6024 if (dict == __null) {
6025 dict = PyDict_New();
6026 *dictptr = dict;
6027 }
6028 PyDict_SetItem(dict, SWIG_This(), swig_this);
6029 return;
6030 }
6031 dict = PyObject_GetAttrString(inst, (char*)"__dict__");
6032 PyDict_SetItem(dict, SWIG_This(), swig_this);
6033 if ( --((PyObject*)(dict))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(dict)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(dict))));
6034}
6035static __attribute__ ((__unused__)) PyObject *
6036SWIG_Python_InitShadowInstance(PyObject *args) {
6037 PyObject *obj[2];
6038 if (!SWIG_Python_UnpackTuple(args,(char*)"swiginit", 2, 2, obj)) {
6039 return __null;
6040 } else {
6041 SwigPyObject *sthis = SWIG_Python_GetSwigThis(obj[0]);
6042 if (sthis) {
6043 SwigPyObject_append((PyObject*) sthis, obj[1]);
6044 } else {
6045 SWIG_Python_SetSwigThis(obj[0], obj[1]);
6046 }
6047 return SWIG_Py_Void();
6048 }
6049}
6050static __attribute__ ((__unused__)) PyObject *
6051SWIG_Python_NewPointerObj(void *ptr, swig_type_info *type, int flags) {
6052 if (!ptr) {
6053 return SWIG_Py_Void();
6054 } else {
6055 int own = (flags & 0x1) ? 0x1 : 0;
6056 PyObject *robj = SwigPyObject_New(ptr, type, own);
6057 SwigPyClientData *clientdata = type ? (SwigPyClientData *)(type->clientdata) : 0;
6058 if (clientdata && !(flags & (0x1 << 1))) {
6059 PyObject *inst = SWIG_Python_NewShadowInstance(clientdata, robj);
6060 if (inst) {
6061 if ( --((PyObject*)(robj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(robj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(robj))));
6062 robj = inst;
6063 }
6064 }
6065 return robj;
6066 }
6067}
6068static __attribute__ ((__unused__)) inline PyObject *
6069SWIG_Python_NewPackedObj(void *ptr, size_t sz, swig_type_info *type) {
6070 return ptr ? SwigPyPacked_New((void *) ptr, sz, type) : SWIG_Py_Void();
6071}
6072static __attribute__ ((__unused__)) swig_module_info *
6073SWIG_Python_GetModule(void) {
6074 static void *type_pointer = (void *)0;
6075 if (!type_pointer) {
6076 type_pointer = PyCObject_Import((char*)"swig_runtime_data" "4",
6077 (char*)"type_pointer" );
6078 if (PyErr_Occurred()) {
6079 PyErr_Clear();
6080 type_pointer = (void *)0;
6081 }
6082 }
6083 return (swig_module_info *) type_pointer;
6084}
6085static __attribute__ ((__unused__)) void
6086SWIG_Python_DestroyModule(void *vptr)
6087{
6088 swig_module_info *swig_module = (swig_module_info *) vptr;
6089 swig_type_info **types = swig_module->types;
6090 size_t i;
6091 for (i =0; i < swig_module->size; ++i) {
6092 swig_type_info *ty = types[i];
6093 if (ty->owndata) {
6094 SwigPyClientData *data = (SwigPyClientData *) ty->clientdata;
6095 if (data) SwigPyClientData_Del(data);
6096 }
6097 }
6098 if ( --((PyObject*)(SWIG_This()))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(SWIG_This())))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(SWIG_This()))));
6099}
6100static __attribute__ ((__unused__)) void
6101SWIG_Python_SetModule(swig_module_info *swig_module) {
6102 static PyMethodDef swig_empty_runtime_method_table[] = { {__null, __null, 0, __null} };
6103 PyObject *module = Py_InitModule4_64((char*)"swig_runtime_data" "4", swig_empty_runtime_method_table, (char *)__null, (PyObject *)__null, 1013);
6104 PyObject *pointer = PyCObject_FromVoidPtr((void *) swig_module, SWIG_Python_DestroyModule);
6105 if (pointer && module) {
6106 PyModule_AddObject(module, (char*)"type_pointer" , pointer);
6107 } else {
6108 if ((pointer) == __null) ; else if ( --((PyObject*)(pointer))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(pointer)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(pointer))));
6109 }
6110}
6111static __attribute__ ((__unused__)) PyObject *
6112SWIG_Python_TypeCache(void) {
6113 static PyObject *cache = PyDict_New();
6114 return cache;
6115}
6116static __attribute__ ((__unused__)) swig_type_info *
6117SWIG_Python_TypeQuery(const char *type)
6118{
6119 PyObject *cache = SWIG_Python_TypeCache();
6120 PyObject *key = SWIG_Python_str_FromChar(type);
6121 PyObject *obj = PyDict_GetItem(cache, key);
6122 swig_type_info *descriptor;
6123 if (obj) {
6124 descriptor = (swig_type_info *) PyCObject_AsVoidPtr(obj);
6125 } else {
6126 swig_module_info *swig_module = SWIG_Python_GetModule();
6127 descriptor = SWIG_TypeQueryModule(swig_module, swig_module, type);
6128 if (descriptor) {
6129 obj = PyCObject_FromVoidPtr(descriptor, __null);
6130 PyDict_SetItem(cache, key, obj);
6131 if ( --((PyObject*)(obj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(obj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(obj))));
6132 }
6133 }
6134 if ( --((PyObject*)(key))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(key)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(key))));
6135 return descriptor;
6136}
6137static __attribute__ ((__unused__)) int
6138SWIG_Python_AddErrMesg(const char* mesg, int infront)
6139{
6140 if (PyErr_Occurred()) {
6141 PyObject *type = 0;
6142 PyObject *value = 0;
6143 PyObject *traceback = 0;
6144 PyErr_Fetch(&type, &value, &traceback);
6145 if (value) {
6146 char *tmp;
6147 PyObject *old_str = PyObject_Str(value);
6148 if ((type) == __null) ; else ( ((PyObject*)(type))->ob_refcnt++);
6149 PyErr_Clear();
6150 if (infront) {
6151 PyErr_Format(type, "%s %s", mesg, tmp = SWIG_Python_str_AsChar(old_str));
6152 } else {
6153 PyErr_Format(type, "%s %s", tmp = SWIG_Python_str_AsChar(old_str), mesg);
6154 }
6155 ;
6156 if ( --((PyObject*)(old_str))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(old_str)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(old_str))));
6157 }
6158 return 1;
6159 } else {
6160 return 0;
6161 }
6162}
6163static __attribute__ ((__unused__)) int
6164SWIG_Python_ArgFail(int argnum)
6165{
6166 if (PyErr_Occurred()) {
6167 char mesg[256];
6168 PyOS_snprintf(mesg, sizeof(mesg), "argument number %d:", argnum);
6169 return SWIG_Python_AddErrMesg(mesg, 1);
6170 } else {
6171 return 0;
6172 }
6173}
6174static __attribute__ ((__unused__)) inline const char *
6175SwigPyObject_GetDesc(PyObject *self)
6176{
6177 SwigPyObject *v = (SwigPyObject *)self;
6178 swig_type_info *ty = v ? v->ty : 0;
6179 return ty ? ty->str : (char*)"";
6180}
6181static __attribute__ ((__unused__)) void
6182SWIG_Python_TypeError(const char *type, PyObject *obj)
6183{
6184 if (type) {
6185 {
6186 const char *otype = (obj ? obj->ob_type->tp_name : 0);
6187 if (otype) {
6188 PyObject *str = PyObject_Str(obj);
6189 const char *cstr = str ? SWIG_Python_str_AsChar(str) : 0;
6190 if (cstr) {
6191 PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s(%s)' is received",
6192 type, otype, cstr);
6193 ;
6194 } else {
6195 PyErr_Format(PyExc_TypeError, "a '%s' is expected, '%s' is received",
6196 type, otype);
6197 }
6198 if ((str) == __null) ; else if ( --((PyObject*)(str))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(str)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(str))));
6199 return;
6200 }
6201 }
6202 PyErr_Format(PyExc_TypeError, "a '%s' is expected", type);
6203 } else {
6204 PyErr_Format(PyExc_TypeError, "unexpected type is received");
6205 }
6206}
6207static __attribute__ ((__unused__)) void *
6208SWIG_Python_MustGetPtr(PyObject *obj, swig_type_info *ty, int argnum, int flags) {
6209 void *result;
6210 if (SWIG_Python_ConvertPtrAndOwn(obj, &result, ty, flags, 0) == -1) {
6211 PyErr_Clear();
6212 }
6213 return result;
6214}
6215}
6216
6217
6218namespace std __attribute__ ((__visibility__ ("default"))) {
6219 template<typename _Alloc>
6220 class allocator;
6221 template<class _CharT>
6222 struct char_traits;
6223 template<typename _CharT, typename _Traits = char_traits<_CharT>,
6224 typename _Alloc = allocator<_CharT> >
6225 class basic_string;
6226 template<> struct char_traits<char>;
6227 typedef basic_string<char> string;
6228 template<> struct char_traits<wchar_t>;
6229 typedef basic_string<wchar_t> wstring;
6230}
6231
6232
6233typedef long int ptrdiff_t;
6234namespace std __attribute__ ((__visibility__ ("default"))) {
6235 using ::ptrdiff_t;
6236 using ::size_t;
6237}
6238namespace std __attribute__ ((__visibility__ ("default"))) {
6239 void
6240 __throw_bad_exception(void) __attribute__((__noreturn__));
6241 void
6242 __throw_bad_alloc(void) __attribute__((__noreturn__));
6243 void
6244 __throw_bad_cast(void) __attribute__((__noreturn__));
6245 void
6246 __throw_bad_typeid(void) __attribute__((__noreturn__));
6247 void
6248 __throw_logic_error(const char*) __attribute__((__noreturn__));
6249 void
6250 __throw_domain_error(const char*) __attribute__((__noreturn__));
6251 void
6252 __throw_invalid_argument(const char*) __attribute__((__noreturn__));
6253 void
6254 __throw_length_error(const char*) __attribute__((__noreturn__));
6255 void
6256 __throw_out_of_range(const char*) __attribute__((__noreturn__));
6257 void
6258 __throw_runtime_error(const char*) __attribute__((__noreturn__));
6259 void
6260 __throw_range_error(const char*) __attribute__((__noreturn__));
6261 void
6262 __throw_overflow_error(const char*) __attribute__((__noreturn__));
6263 void
6264 __throw_underflow_error(const char*) __attribute__((__noreturn__));
6265 void
6266 __throw_ios_failure(const char*) __attribute__((__noreturn__));
6267 void
6268 __throw_system_error(int) __attribute__((__noreturn__));
6269}
6270
6271namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
6272 template<typename _Iterator, typename _Container>
6273 class __normal_iterator;
6274}
6275namespace std __attribute__ ((__visibility__ ("default"))) {
6276 struct __true_type { };
6277 struct __false_type { };
6278 template<bool>
6279 struct __truth_type
6280 { typedef __false_type __type; };
6281 template<>
6282 struct __truth_type<true>
6283 { typedef __true_type __type; };
6284 template<class _Sp, class _Tp>
6285 struct __traitor
6286 {
6287 enum { __value = bool(_Sp::__value) || bool(_Tp::__value) };
6288 typedef typename __truth_type<__value>::__type __type;
6289 };
6290 template<typename, typename>
6291 struct __are_same
6292 {
6293 enum { __value = 0 };
6294 typedef __false_type __type;
6295 };
6296 template<typename _Tp>
6297 struct __are_same<_Tp, _Tp>
6298 {
6299 enum { __value = 1 };
6300 typedef __true_type __type;
6301 };
6302 template<typename _Tp>
6303 struct __is_void
6304 {
6305 enum { __value = 0 };
6306 typedef __false_type __type;
6307 };
6308 template<>
6309 struct __is_void<void>
6310 {
6311 enum { __value = 1 };
6312 typedef __true_type __type;
6313 };
6314 template<typename _Tp>
6315 struct __is_integer
6316 {
6317 enum { __value = 0 };
6318 typedef __false_type __type;
6319 };
6320 template<>
6321 struct __is_integer<bool>
6322 {
6323 enum { __value = 1 };
6324 typedef __true_type __type;
6325 };
6326 template<>
6327 struct __is_integer<char>
6328 {
6329 enum { __value = 1 };
6330 typedef __true_type __type;
6331 };
6332 template<>
6333 struct __is_integer<signed char>
6334 {
6335 enum { __value = 1 };
6336 typedef __true_type __type;
6337 };
6338 template<>
6339 struct __is_integer<unsigned char>
6340 {
6341 enum { __value = 1 };
6342 typedef __true_type __type;
6343 };
6344 template<>
6345 struct __is_integer<wchar_t>
6346 {
6347 enum { __value = 1 };
6348 typedef __true_type __type;
6349 };
6350 template<>
6351 struct __is_integer<short>
6352 {
6353 enum { __value = 1 };
6354 typedef __true_type __type;
6355 };
6356 template<>
6357 struct __is_integer<unsigned short>
6358 {
6359 enum { __value = 1 };
6360 typedef __true_type __type;
6361 };
6362 template<>
6363 struct __is_integer<int>
6364 {
6365 enum { __value = 1 };
6366 typedef __true_type __type;
6367 };
6368 template<>
6369 struct __is_integer<unsigned int>
6370 {
6371 enum { __value = 1 };
6372 typedef __true_type __type;
6373 };
6374 template<>
6375 struct __is_integer<long>
6376 {
6377 enum { __value = 1 };
6378 typedef __true_type __type;
6379 };
6380 template<>
6381 struct __is_integer<unsigned long>
6382 {
6383 enum { __value = 1 };
6384 typedef __true_type __type;
6385 };
6386 template<>
6387 struct __is_integer<long long>
6388 {
6389 enum { __value = 1 };
6390 typedef __true_type __type;
6391 };
6392 template<>
6393 struct __is_integer<unsigned long long>
6394 {
6395 enum { __value = 1 };
6396 typedef __true_type __type;
6397 };
6398 template<typename _Tp>
6399 struct __is_floating
6400 {
6401 enum { __value = 0 };
6402 typedef __false_type __type;
6403 };
6404 template<>
6405 struct __is_floating<float>
6406 {
6407 enum { __value = 1 };
6408 typedef __true_type __type;
6409 };
6410 template<>
6411 struct __is_floating<double>
6412 {
6413 enum { __value = 1 };
6414 typedef __true_type __type;
6415 };
6416 template<>
6417 struct __is_floating<long double>
6418 {
6419 enum { __value = 1 };
6420 typedef __true_type __type;
6421 };
6422 template<typename _Tp>
6423 struct __is_pointer
6424 {
6425 enum { __value = 0 };
6426 typedef __false_type __type;
6427 };
6428 template<typename _Tp>
6429 struct __is_pointer<_Tp*>
6430 {
6431 enum { __value = 1 };
6432 typedef __true_type __type;
6433 };
6434 template<typename _Tp>
6435 struct __is_normal_iterator
6436 {
6437 enum { __value = 0 };
6438 typedef __false_type __type;
6439 };
6440 template<typename _Iterator, typename _Container>
6441 struct __is_normal_iterator< __gnu_cxx::__normal_iterator<_Iterator,
6442 _Container> >
6443 {
6444 enum { __value = 1 };
6445 typedef __true_type __type;
6446 };
6447 template<typename _Tp>
6448 struct __is_arithmetic
6449 : public __traitor<__is_integer<_Tp>, __is_floating<_Tp> >
6450 { };
6451 template<typename _Tp>
6452 struct __is_fundamental
6453 : public __traitor<__is_void<_Tp>, __is_arithmetic<_Tp> >
6454 { };
6455 template<typename _Tp>
6456 struct __is_scalar
6457 : public __traitor<__is_arithmetic<_Tp>, __is_pointer<_Tp> >
6458 { };
6459 template<typename _Tp>
6460 struct __is_char
6461 {
6462 enum { __value = 0 };
6463 typedef __false_type __type;
6464 };
6465 template<>
6466 struct __is_char<char>
6467 {
6468 enum { __value = 1 };
6469 typedef __true_type __type;
6470 };
6471 template<>
6472 struct __is_char<wchar_t>
6473 {
6474 enum { __value = 1 };
6475 typedef __true_type __type;
6476 };
6477 template<typename _Tp>
6478 struct __is_byte
6479 {
6480 enum { __value = 0 };
6481 typedef __false_type __type;
6482 };
6483 template<>
6484 struct __is_byte<char>
6485 {
6486 enum { __value = 1 };
6487 typedef __true_type __type;
6488 };
6489 template<>
6490 struct __is_byte<signed char>
6491 {
6492 enum { __value = 1 };
6493 typedef __true_type __type;
6494 };
6495 template<>
6496 struct __is_byte<unsigned char>
6497 {
6498 enum { __value = 1 };
6499 typedef __true_type __type;
6500 };
6501 template<typename _Tp>
6502 struct __is_move_iterator
6503 {
6504 enum { __value = 0 };
6505 typedef __false_type __type;
6506 };
6507}
6508
6509namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
6510 template<bool, typename>
6511 struct __enable_if
6512 { };
6513 template<typename _Tp>
6514 struct __enable_if<true, _Tp>
6515 { typedef _Tp __type; };
6516 template<bool _Cond, typename _Iftrue, typename _Iffalse>
6517 struct __conditional_type
6518 { typedef _Iftrue __type; };
6519 template<typename _Iftrue, typename _Iffalse>
6520 struct __conditional_type<false, _Iftrue, _Iffalse>
6521 { typedef _Iffalse __type; };
6522 template<typename _Tp>
6523 struct __add_unsigned
6524 {
6525 private:
6526 typedef __enable_if<std::__is_integer<_Tp>::__value, _Tp> __if_type;
6527 public:
6528 typedef typename __if_type::__type __type;
6529 };
6530 template<>
6531 struct __add_unsigned<char>
6532 { typedef unsigned char __type; };
6533 template<>
6534 struct __add_unsigned<signed char>
6535 { typedef unsigned char __type; };
6536 template<>
6537 struct __add_unsigned<short>
6538 { typedef unsigned short __type; };
6539 template<>
6540 struct __add_unsigned<int>
6541 { typedef unsigned int __type; };
6542 template<>
6543 struct __add_unsigned<long>
6544 { typedef unsigned long __type; };
6545 template<>
6546 struct __add_unsigned<long long>
6547 { typedef unsigned long long __type; };
6548 template<>
6549 struct __add_unsigned<bool>;
6550 template<>
6551 struct __add_unsigned<wchar_t>;
6552 template<typename _Tp>
6553 struct __remove_unsigned
6554 {
6555 private:
6556 typedef __enable_if<std::__is_integer<_Tp>::__value, _Tp> __if_type;
6557 public:
6558 typedef typename __if_type::__type __type;
6559 };
6560 template<>
6561 struct __remove_unsigned<char>
6562 { typedef signed char __type; };
6563 template<>
6564 struct __remove_unsigned<unsigned char>
6565 { typedef signed char __type; };
6566 template<>
6567 struct __remove_unsigned<unsigned short>
6568 { typedef short __type; };
6569 template<>
6570 struct __remove_unsigned<unsigned int>
6571 { typedef int __type; };
6572 template<>
6573 struct __remove_unsigned<unsigned long>
6574 { typedef long __type; };
6575 template<>
6576 struct __remove_unsigned<unsigned long long>
6577 { typedef long long __type; };
6578 template<>
6579 struct __remove_unsigned<bool>;
6580 template<>
6581 struct __remove_unsigned<wchar_t>;
6582 template<typename _Type>
6583 inline bool
6584 __is_null_pointer(_Type* __ptr)
6585 { return __ptr == 0; }
6586 template<typename _Type>
6587 inline bool
6588 __is_null_pointer(_Type)
6589 { return false; }
6590 template<typename _Tp, bool = std::__is_integer<_Tp>::__value>
6591 struct __promote
6592 { typedef double __type; };
6593 template<typename _Tp>
6594 struct __promote<_Tp, false>
6595 { typedef _Tp __type; };
6596 template<typename _Tp, typename _Up>
6597 struct __promote_2
6598 {
6599 private:
6600 typedef typename __promote<_Tp>::__type __type1;
6601 typedef typename __promote<_Up>::__type __type2;
6602 public:
6603 typedef __typeof__(__type1() + __type2()) __type;
6604 };
6605 template<typename _Tp, typename _Up, typename _Vp>
6606 struct __promote_3
6607 {
6608 private:
6609 typedef typename __promote<_Tp>::__type __type1;
6610 typedef typename __promote<_Up>::__type __type2;
6611 typedef typename __promote<_Vp>::__type __type3;
6612 public:
6613 typedef __typeof__(__type1() + __type2() + __type3()) __type;
6614 };
6615 template<typename _Tp, typename _Up, typename _Vp, typename _Wp>
6616 struct __promote_4
6617 {
6618 private:
6619 typedef typename __promote<_Tp>::__type __type1;
6620 typedef typename __promote<_Up>::__type __type2;
6621 typedef typename __promote<_Vp>::__type __type3;
6622 typedef typename __promote<_Wp>::__type __type4;
6623 public:
6624 typedef __typeof__(__type1() + __type2() + __type3() + __type4()) __type;
6625 };
6626}
6627
6628namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
6629 template<typename _Value>
6630 struct __numeric_traits_integer
6631 {
6632 static const _Value __min = (((_Value)(-1) < 0) ? (_Value)1 << (sizeof(_Value) * 8 - ((_Value)(-1) < 0)) : (_Value)0);
6633 static const _Value __max = (((_Value)(-1) < 0) ? (((((_Value)1 << ((sizeof(_Value) * 8 - ((_Value)(-1) < 0)) - 1)) - 1) << 1) + 1) : ~(_Value)0);
6634 static const bool __is_signed = ((_Value)(-1) < 0);
6635 static const int __digits = (sizeof(_Value) * 8 - ((_Value)(-1) < 0));
6636 };
6637 template<typename _Value>
6638 const _Value __numeric_traits_integer<_Value>::__min;
6639 template<typename _Value>
6640 const _Value __numeric_traits_integer<_Value>::__max;
6641 template<typename _Value>
6642 const bool __numeric_traits_integer<_Value>::__is_signed;
6643 template<typename _Value>
6644 const int __numeric_traits_integer<_Value>::__digits;
6645 template<typename _Value>
6646 struct __numeric_traits_floating
6647 {
6648 static const int __max_digits10 = (2 + (std::__are_same<_Value, float>::__value ? 24 : std::__are_same<_Value, double>::__value ? 53 : 64) * 3010 / 10000);
6649 static const bool __is_signed = true;
6650 static const int __digits10 = (std::__are_same<_Value, float>::__value ? 6 : std::__are_same<_Value, double>::__value ? 15 : 18);
6651 static const int __max_exponent10 = (std::__are_same<_Value, float>::__value ? 38 : std::__are_same<_Value, double>::__value ? 308 : 4932);
6652 };
6653 template<typename _Value>
6654 const int __numeric_traits_floating<_Value>::__max_digits10;
6655 template<typename _Value>
6656 const bool __numeric_traits_floating<_Value>::__is_signed;
6657 template<typename _Value>
6658 const int __numeric_traits_floating<_Value>::__digits10;
6659 template<typename _Value>
6660 const int __numeric_traits_floating<_Value>::__max_exponent10;
6661 template<typename _Value>
6662 struct __numeric_traits
6663 : public __conditional_type<std::__is_integer<_Value>::__value,
6664 __numeric_traits_integer<_Value>,
6665 __numeric_traits_floating<_Value> >::__type
6666 { };
6667}
6668
6669
6670namespace std __attribute__ ((__visibility__ ("default"))) {
6671 template<typename _Tp>
6672 inline void
6673 swap(_Tp& __a, _Tp& __b)
6674 {
6675
6676 _Tp __tmp = (__a);
6677 __a = (__b);
6678 __b = (__tmp);
6679 }
6680 template<typename _Tp, size_t _Nm>
6681 inline void
6682 swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm])
6683 {
6684 for (size_t __n = 0; __n < _Nm; ++__n)
6685 swap(__a[__n], __b[__n]);
6686 }
6687}
6688namespace std __attribute__ ((__visibility__ ("default"))) {
6689 template<class _T1, class _T2>
6690 struct pair
6691 {
6692 typedef _T1 first_type;
6693 typedef _T2 second_type;
6694 _T1 first;
6695 _T2 second;
6696 pair()
6697 : first(), second() { }
6698 pair(const _T1& __a, const _T2& __b)
6699 : first(__a), second(__b) { }
6700 template<class _U1, class _U2>
6701 pair(const pair<_U1, _U2>& __p)
6702 : first(__p.first),
6703 second(__p.second) { }
6704 };
6705 template<class _T1, class _T2>
6706 inline bool
6707 operator==(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
6708 { return __x.first == __y.first && __x.second == __y.second; }
6709 template<class _T1, class _T2>
6710 inline bool
6711 operator<(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
6712 { return __x.first < __y.first
6713 || (!(__y.first < __x.first) && __x.second < __y.second); }
6714 template<class _T1, class _T2>
6715 inline bool
6716 operator!=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
6717 { return !(__x == __y); }
6718 template<class _T1, class _T2>
6719 inline bool
6720 operator>(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
6721 { return __y < __x; }
6722 template<class _T1, class _T2>
6723 inline bool
6724 operator<=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
6725 { return !(__y < __x); }
6726 template<class _T1, class _T2>
6727 inline bool
6728 operator>=(const pair<_T1, _T2>& __x, const pair<_T1, _T2>& __y)
6729 { return !(__x < __y); }
6730 template<class _T1, class _T2>
6731 inline pair<_T1, _T2>
6732 make_pair(_T1 __x, _T2 __y)
6733 { return pair<_T1, _T2>(__x, __y); }
6734}
6735
6736
6737namespace std __attribute__ ((__visibility__ ("default"))) {
6738 struct input_iterator_tag { };
6739 struct output_iterator_tag { };
6740 struct forward_iterator_tag : public input_iterator_tag { };
6741 struct bidirectional_iterator_tag : public forward_iterator_tag { };
6742 struct random_access_iterator_tag : public bidirectional_iterator_tag { };
6743 template<typename _Category, typename _Tp, typename _Distance = ptrdiff_t,
6744 typename _Pointer = _Tp*, typename _Reference = _Tp&>
6745 struct iterator
6746 {
6747 typedef _Category iterator_category;
6748 typedef _Tp value_type;
6749 typedef _Distance difference_type;
6750 typedef _Pointer pointer;
6751 typedef _Reference reference;
6752 };
6753 template<typename _Iterator>
6754 struct iterator_traits
6755 {
6756 typedef typename _Iterator::iterator_category iterator_category;
6757 typedef typename _Iterator::value_type value_type;
6758 typedef typename _Iterator::difference_type difference_type;
6759 typedef typename _Iterator::pointer pointer;
6760 typedef typename _Iterator::reference reference;
6761 };
6762 template<typename _Tp>
6763 struct iterator_traits<_Tp*>
6764 {
6765 typedef random_access_iterator_tag iterator_category;
6766 typedef _Tp value_type;
6767 typedef ptrdiff_t difference_type;
6768 typedef _Tp* pointer;
6769 typedef _Tp& reference;
6770 };
6771 template<typename _Tp>
6772 struct iterator_traits<const _Tp*>
6773 {
6774 typedef random_access_iterator_tag iterator_category;
6775 typedef _Tp value_type;
6776 typedef ptrdiff_t difference_type;
6777 typedef const _Tp* pointer;
6778 typedef const _Tp& reference;
6779 };
6780 template<typename _Iter>
6781 inline typename iterator_traits<_Iter>::iterator_category
6782 __iterator_category(const _Iter&)
6783 { return typename iterator_traits<_Iter>::iterator_category(); }
6784}
6785
6786namespace std __attribute__ ((__visibility__ ("default"))) {
6787 template<typename _InputIterator>
6788 inline typename iterator_traits<_InputIterator>::difference_type
6789 __distance(_InputIterator __first, _InputIterator __last,
6790 input_iterator_tag)
6791 {
6792
6793 typename iterator_traits<_InputIterator>::difference_type __n = 0;
6794 while (__first != __last)
6795 {
6796 ++__first;
6797 ++__n;
6798 }
6799 return __n;
6800 }
6801 template<typename _RandomAccessIterator>
6802 inline typename iterator_traits<_RandomAccessIterator>::difference_type
6803 __distance(_RandomAccessIterator __first, _RandomAccessIterator __last,
6804 random_access_iterator_tag)
6805 {
6806
6807 return __last - __first;
6808 }
6809 template<typename _InputIterator>
6810 inline typename iterator_traits<_InputIterator>::difference_type
6811 distance(_InputIterator __first, _InputIterator __last)
6812 {
6813 return std::__distance(__first, __last,
6814 std::__iterator_category(__first));
6815 }
6816 template<typename _InputIterator, typename _Distance>
6817 inline void
6818 __advance(_InputIterator& __i, _Distance __n, input_iterator_tag)
6819 {
6820
6821 while (__n--)
6822 ++__i;
6823 }
6824 template<typename _BidirectionalIterator, typename _Distance>
6825 inline void
6826 __advance(_BidirectionalIterator& __i, _Distance __n,
6827 bidirectional_iterator_tag)
6828 {
6829
6830 if (__n > 0)
6831 while (__n--)
6832 ++__i;
6833 else
6834 while (__n++)
6835 --__i;
6836 }
6837 template<typename _RandomAccessIterator, typename _Distance>
6838 inline void
6839 __advance(_RandomAccessIterator& __i, _Distance __n,
6840 random_access_iterator_tag)
6841 {
6842
6843 __i += __n;
6844 }
6845 template<typename _InputIterator, typename _Distance>
6846 inline void
6847 advance(_InputIterator& __i, _Distance __n)
6848 {
6849 typename iterator_traits<_InputIterator>::difference_type __d = __n;
6850 std::__advance(__i, __d, std::__iterator_category(__i));
6851 }
6852}
6853namespace std __attribute__ ((__visibility__ ("default"))) {
6854 template<typename _Iterator>
6855 class reverse_iterator
6856 : public iterator<typename iterator_traits<_Iterator>::iterator_category,
6857 typename iterator_traits<_Iterator>::value_type,
6858 typename iterator_traits<_Iterator>::difference_type,
6859 typename iterator_traits<_Iterator>::pointer,
6860 typename iterator_traits<_Iterator>::reference>
6861 {
6862 protected:
6863 _Iterator current;
6864 public:
6865 typedef _Iterator iterator_type;
6866 typedef typename iterator_traits<_Iterator>::difference_type
6867 difference_type;
6868 typedef typename iterator_traits<_Iterator>::reference reference;
6869 typedef typename iterator_traits<_Iterator>::pointer pointer;
6870 public:
6871 reverse_iterator() : current() { }
6872 explicit
6873 reverse_iterator(iterator_type __x) : current(__x) { }
6874 reverse_iterator(const reverse_iterator& __x)
6875 : current(__x.current) { }
6876 template<typename _Iter>
6877 reverse_iterator(const reverse_iterator<_Iter>& __x)
6878 : current(__x.base()) { }
6879 iterator_type
6880 base() const
6881 { return current; }
6882 reference
6883 operator*() const
6884 {
6885 _Iterator __tmp = current;
6886 return *--__tmp;
6887 }
6888 pointer
6889 operator->() const
6890 { return &(operator*()); }
6891 reverse_iterator&
6892 operator++()
6893 {
6894 --current;
6895 return *this;
6896 }
6897 reverse_iterator
6898 operator++(int)
6899 {
6900 reverse_iterator __tmp = *this;
6901 --current;
6902 return __tmp;
6903 }
6904 reverse_iterator&
6905 operator--()
6906 {
6907 ++current;
6908 return *this;
6909 }
6910 reverse_iterator
6911 operator--(int)
6912 {
6913 reverse_iterator __tmp = *this;
6914 ++current;
6915 return __tmp;
6916 }
6917 reverse_iterator
6918 operator+(difference_type __n) const
6919 { return reverse_iterator(current - __n); }
6920 reverse_iterator&
6921 operator+=(difference_type __n)
6922 {
6923 current -= __n;
6924 return *this;
6925 }
6926 reverse_iterator
6927 operator-(difference_type __n) const
6928 { return reverse_iterator(current + __n); }
6929 reverse_iterator&
6930 operator-=(difference_type __n)
6931 {
6932 current += __n;
6933 return *this;
6934 }
6935 reference
6936 operator[](difference_type __n) const
6937 { return *(*this + __n); }
6938 };
6939 template<typename _Iterator>
6940 inline bool
6941 operator==(const reverse_iterator<_Iterator>& __x,
6942 const reverse_iterator<_Iterator>& __y)
6943 { return __x.base() == __y.base(); }
6944 template<typename _Iterator>
6945 inline bool
6946 operator<(const reverse_iterator<_Iterator>& __x,
6947 const reverse_iterator<_Iterator>& __y)
6948 { return __y.base() < __x.base(); }
6949 template<typename _Iterator>
6950 inline bool
6951 operator!=(const reverse_iterator<_Iterator>& __x,
6952 const reverse_iterator<_Iterator>& __y)
6953 { return !(__x == __y); }
6954 template<typename _Iterator>
6955 inline bool
6956 operator>(const reverse_iterator<_Iterator>& __x,
6957 const reverse_iterator<_Iterator>& __y)
6958 { return __y < __x; }
6959 template<typename _Iterator>
6960 inline bool
6961 operator<=(const reverse_iterator<_Iterator>& __x,
6962 const reverse_iterator<_Iterator>& __y)
6963 { return !(__y < __x); }
6964 template<typename _Iterator>
6965 inline bool
6966 operator>=(const reverse_iterator<_Iterator>& __x,
6967 const reverse_iterator<_Iterator>& __y)
6968 { return !(__x < __y); }
6969 template<typename _Iterator>
6970 inline typename reverse_iterator<_Iterator>::difference_type
6971 operator-(const reverse_iterator<_Iterator>& __x,
6972 const reverse_iterator<_Iterator>& __y)
6973 { return __y.base() - __x.base(); }
6974 template<typename _Iterator>
6975 inline reverse_iterator<_Iterator>
6976 operator+(typename reverse_iterator<_Iterator>::difference_type __n,
6977 const reverse_iterator<_Iterator>& __x)
6978 { return reverse_iterator<_Iterator>(__x.base() - __n); }
6979 template<typename _IteratorL, typename _IteratorR>
6980 inline bool
6981 operator==(const reverse_iterator<_IteratorL>& __x,
6982 const reverse_iterator<_IteratorR>& __y)
6983 { return __x.base() == __y.base(); }
6984 template<typename _IteratorL, typename _IteratorR>
6985 inline bool
6986 operator<(const reverse_iterator<_IteratorL>& __x,
6987 const reverse_iterator<_IteratorR>& __y)
6988 { return __y.base() < __x.base(); }
6989 template<typename _IteratorL, typename _IteratorR>
6990 inline bool
6991 operator!=(const reverse_iterator<_IteratorL>& __x,
6992 const reverse_iterator<_IteratorR>& __y)
6993 { return !(__x == __y); }
6994 template<typename _IteratorL, typename _IteratorR>
6995 inline bool
6996 operator>(const reverse_iterator<_IteratorL>& __x,
6997 const reverse_iterator<_IteratorR>& __y)
6998 { return __y < __x; }
6999 template<typename _IteratorL, typename _IteratorR>
7000 inline bool
7001 operator<=(const reverse_iterator<_IteratorL>& __x,
7002 const reverse_iterator<_IteratorR>& __y)
7003 { return !(__y < __x); }
7004 template<typename _IteratorL, typename _IteratorR>
7005 inline bool
7006 operator>=(const reverse_iterator<_IteratorL>& __x,
7007 const reverse_iterator<_IteratorR>& __y)
7008 { return !(__x < __y); }
7009 template<typename _IteratorL, typename _IteratorR>
7010 inline typename reverse_iterator<_IteratorL>::difference_type
7011 operator-(const reverse_iterator<_IteratorL>& __x,
7012 const reverse_iterator<_IteratorR>& __y)
7013 { return __y.base() - __x.base(); }
7014 template<typename _Container>
7015 class back_insert_iterator
7016 : public iterator<output_iterator_tag, void, void, void, void>
7017 {
7018 protected:
7019 _Container* container;
7020 public:
7021 typedef _Container container_type;
7022 explicit
7023 back_insert_iterator(_Container& __x) : container(&__x) { }
7024 back_insert_iterator&
7025 operator=(typename _Container::const_reference __value)
7026 {
7027 container->push_back(__value);
7028 return *this;
7029 }
7030 back_insert_iterator&
7031 operator*()
7032 { return *this; }
7033 back_insert_iterator&
7034 operator++()
7035 { return *this; }
7036 back_insert_iterator
7037 operator++(int)
7038 { return *this; }
7039 };
7040 template<typename _Container>
7041 inline back_insert_iterator<_Container>
7042 back_inserter(_Container& __x)
7043 { return back_insert_iterator<_Container>(__x); }
7044 template<typename _Container>
7045 class front_insert_iterator
7046 : public iterator<output_iterator_tag, void, void, void, void>
7047 {
7048 protected:
7049 _Container* container;
7050 public:
7051 typedef _Container container_type;
7052 explicit front_insert_iterator(_Container& __x) : container(&__x) { }
7053 front_insert_iterator&
7054 operator=(typename _Container::const_reference __value)
7055 {
7056 container->push_front(__value);
7057 return *this;
7058 }
7059 front_insert_iterator&
7060 operator*()
7061 { return *this; }
7062 front_insert_iterator&
7063 operator++()
7064 { return *this; }
7065 front_insert_iterator
7066 operator++(int)
7067 { return *this; }
7068 };
7069 template<typename _Container>
7070 inline front_insert_iterator<_Container>
7071 front_inserter(_Container& __x)
7072 { return front_insert_iterator<_Container>(__x); }
7073 template<typename _Container>
7074 class insert_iterator
7075 : public iterator<output_iterator_tag, void, void, void, void>
7076 {
7077 protected:
7078 _Container* container;
7079 typename _Container::iterator iter;
7080 public:
7081 typedef _Container container_type;
7082 insert_iterator(_Container& __x, typename _Container::iterator __i)
7083 : container(&__x), iter(__i) {}
7084 insert_iterator&
7085 operator=(typename _Container::const_reference __value)
7086 {
7087 iter = container->insert(iter, __value);
7088 ++iter;
7089 return *this;
7090 }
7091 insert_iterator&
7092 operator*()
7093 { return *this; }
7094 insert_iterator&
7095 operator++()
7096 { return *this; }
7097 insert_iterator&
7098 operator++(int)
7099 { return *this; }
7100 };
7101 template<typename _Container, typename _Iterator>
7102 inline insert_iterator<_Container>
7103 inserter(_Container& __x, _Iterator __i)
7104 {
7105 return insert_iterator<_Container>(__x,
7106 typename _Container::iterator(__i));
7107 }
7108}
7109namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
7110 using std::iterator_traits;
7111 using std::iterator;
7112 template<typename _Iterator, typename _Container>
7113 class __normal_iterator
7114 {
7115 protected:
7116 _Iterator _M_current;
7117 public:
7118 typedef _Iterator iterator_type;
7119 typedef typename iterator_traits<_Iterator>::iterator_category
7120 iterator_category;
7121 typedef typename iterator_traits<_Iterator>::value_type value_type;
7122 typedef typename iterator_traits<_Iterator>::difference_type
7123 difference_type;
7124 typedef typename iterator_traits<_Iterator>::reference reference;
7125 typedef typename iterator_traits<_Iterator>::pointer pointer;
7126 __normal_iterator() : _M_current(_Iterator()) { }
7127 explicit
7128 __normal_iterator(const _Iterator& __i) : _M_current(__i) { }
7129 template<typename _Iter>
7130 __normal_iterator(const __normal_iterator<_Iter,
7131 typename __enable_if<
7132 (std::__are_same<_Iter, typename _Container::pointer>::__value),
7133 _Container>::__type>& __i)
7134 : _M_current(__i.base()) { }
7135 reference
7136 operator*() const
7137 { return *_M_current; }
7138 pointer
7139 operator->() const
7140 { return _M_current; }
7141 __normal_iterator&
7142 operator++()
7143 {
7144 ++_M_current;
7145 return *this;
7146 }
7147 __normal_iterator
7148 operator++(int)
7149 { return __normal_iterator(_M_current++); }
7150 __normal_iterator&
7151 operator--()
7152 {
7153 --_M_current;
7154 return *this;
7155 }
7156 __normal_iterator
7157 operator--(int)
7158 { return __normal_iterator(_M_current--); }
7159 reference
7160 operator[](const difference_type& __n) const
7161 { return _M_current[__n]; }
7162 __normal_iterator&
7163 operator+=(const difference_type& __n)
7164 { _M_current += __n; return *this; }
7165 __normal_iterator
7166 operator+(const difference_type& __n) const
7167 { return __normal_iterator(_M_current + __n); }
7168 __normal_iterator&
7169 operator-=(const difference_type& __n)
7170 { _M_current -= __n; return *this; }
7171 __normal_iterator
7172 operator-(const difference_type& __n) const
7173 { return __normal_iterator(_M_current - __n); }
7174 const _Iterator&
7175 base() const
7176 { return _M_current; }
7177 };
7178 template<typename _IteratorL, typename _IteratorR, typename _Container>
7179 inline bool
7180 operator==(const __normal_iterator<_IteratorL, _Container>& __lhs,
7181 const __normal_iterator<_IteratorR, _Container>& __rhs)
7182 { return __lhs.base() == __rhs.base(); }
7183 template<typename _Iterator, typename _Container>
7184 inline bool
7185 operator==(const __normal_iterator<_Iterator, _Container>& __lhs,
7186 const __normal_iterator<_Iterator, _Container>& __rhs)
7187 { return __lhs.base() == __rhs.base(); }
7188 template<typename _IteratorL, typename _IteratorR, typename _Container>
7189 inline bool
7190 operator!=(const __normal_iterator<_IteratorL, _Container>& __lhs,
7191 const __normal_iterator<_IteratorR, _Container>& __rhs)
7192 { return __lhs.base() != __rhs.base(); }
7193 template<typename _Iterator, typename _Container>
7194 inline bool
7195 operator!=(const __normal_iterator<_Iterator, _Container>& __lhs,
7196 const __normal_iterator<_Iterator, _Container>& __rhs)
7197 { return __lhs.base() != __rhs.base(); }
7198 template<typename _IteratorL, typename _IteratorR, typename _Container>
7199 inline bool
7200 operator<(const __normal_iterator<_IteratorL, _Container>& __lhs,
7201 const __normal_iterator<_IteratorR, _Container>& __rhs)
7202 { return __lhs.base() < __rhs.base(); }
7203 template<typename _Iterator, typename _Container>
7204 inline bool
7205 operator<(const __normal_iterator<_Iterator, _Container>& __lhs,
7206 const __normal_iterator<_Iterator, _Container>& __rhs)
7207 { return __lhs.base() < __rhs.base(); }
7208 template<typename _IteratorL, typename _IteratorR, typename _Container>
7209 inline bool
7210 operator>(const __normal_iterator<_IteratorL, _Container>& __lhs,
7211 const __normal_iterator<_IteratorR, _Container>& __rhs)
7212 { return __lhs.base() > __rhs.base(); }
7213 template<typename _Iterator, typename _Container>
7214 inline bool
7215 operator>(const __normal_iterator<_Iterator, _Container>& __lhs,
7216 const __normal_iterator<_Iterator, _Container>& __rhs)
7217 { return __lhs.base() > __rhs.base(); }
7218 template<typename _IteratorL, typename _IteratorR, typename _Container>
7219 inline bool
7220 operator<=(const __normal_iterator<_IteratorL, _Container>& __lhs,
7221 const __normal_iterator<_IteratorR, _Container>& __rhs)
7222 { return __lhs.base() <= __rhs.base(); }
7223 template<typename _Iterator, typename _Container>
7224 inline bool
7225 operator<=(const __normal_iterator<_Iterator, _Container>& __lhs,
7226 const __normal_iterator<_Iterator, _Container>& __rhs)
7227 { return __lhs.base() <= __rhs.base(); }
7228 template<typename _IteratorL, typename _IteratorR, typename _Container>
7229 inline bool
7230 operator>=(const __normal_iterator<_IteratorL, _Container>& __lhs,
7231 const __normal_iterator<_IteratorR, _Container>& __rhs)
7232 { return __lhs.base() >= __rhs.base(); }
7233 template<typename _Iterator, typename _Container>
7234 inline bool
7235 operator>=(const __normal_iterator<_Iterator, _Container>& __lhs,
7236 const __normal_iterator<_Iterator, _Container>& __rhs)
7237 { return __lhs.base() >= __rhs.base(); }
7238 template<typename _IteratorL, typename _IteratorR, typename _Container>
7239 inline typename __normal_iterator<_IteratorL, _Container>::difference_type
7240 operator-(const __normal_iterator<_IteratorL, _Container>& __lhs,
7241 const __normal_iterator<_IteratorR, _Container>& __rhs)
7242 { return __lhs.base() - __rhs.base(); }
7243 template<typename _Iterator, typename _Container>
7244 inline typename __normal_iterator<_Iterator, _Container>::difference_type
7245 operator-(const __normal_iterator<_Iterator, _Container>& __lhs,
7246 const __normal_iterator<_Iterator, _Container>& __rhs)
7247 { return __lhs.base() - __rhs.base(); }
7248 template<typename _Iterator, typename _Container>
7249 inline __normal_iterator<_Iterator, _Container>
7250 operator+(typename __normal_iterator<_Iterator, _Container>::difference_type
7251 __n, const __normal_iterator<_Iterator, _Container>& __i)
7252 { return __normal_iterator<_Iterator, _Container>(__i.base() + __n); }
7253}
7254namespace std
7255{
7256 namespace __debug { }
7257}
7258namespace __gnu_debug
7259{
7260 using namespace std::__debug;
7261}
7262namespace std __attribute__ ((__visibility__ ("default"))) {
7263 template<bool _BoolType>
7264 struct __iter_swap
7265 {
7266 template<typename _ForwardIterator1, typename _ForwardIterator2>
7267 static void
7268 iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
7269 {
7270 typedef typename iterator_traits<_ForwardIterator1>::value_type
7271 _ValueType1;
7272 _ValueType1 __tmp = (*__a);
7273 *__a = (*__b);
7274 *__b = (__tmp);
7275 }
7276 };
7277 template<>
7278 struct __iter_swap<true>
7279 {
7280 template<typename _ForwardIterator1, typename _ForwardIterator2>
7281 static void
7282 iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
7283 {
7284 swap(*__a, *__b);
7285 }
7286 };
7287 template<typename _ForwardIterator1, typename _ForwardIterator2>
7288 inline void
7289 iter_swap(_ForwardIterator1 __a, _ForwardIterator2 __b)
7290 {
7291 typedef typename iterator_traits<_ForwardIterator1>::value_type
7292 _ValueType1;
7293 typedef typename iterator_traits<_ForwardIterator2>::value_type
7294 _ValueType2;
7295
7296
7297
7298
7299 typedef typename iterator_traits<_ForwardIterator1>::reference
7300 _ReferenceType1;
7301 typedef typename iterator_traits<_ForwardIterator2>::reference
7302 _ReferenceType2;
7303 std::__iter_swap<__are_same<_ValueType1, _ValueType2>::__value
7304 && __are_same<_ValueType1&, _ReferenceType1>::__value
7305 && __are_same<_ValueType2&, _ReferenceType2>::__value>::
7306 iter_swap(__a, __b);
7307 }
7308 template<typename _ForwardIterator1, typename _ForwardIterator2>
7309 _ForwardIterator2
7310 swap_ranges(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
7311 _ForwardIterator2 __first2)
7312 {
7313
7314
7315 ;
7316 for (; __first1 != __last1; ++__first1, ++__first2)
7317 std::iter_swap(__first1, __first2);
7318 return __first2;
7319 }
7320 template<typename _Tp>
7321 inline const _Tp&
7322 min(const _Tp& __a, const _Tp& __b)
7323 {
7324
7325 if (__b < __a)
7326 return __b;
7327 return __a;
7328 }
7329 template<typename _Tp>
7330 inline const _Tp&
7331 max(const _Tp& __a, const _Tp& __b)
7332 {
7333
7334 if (__a < __b)
7335 return __b;
7336 return __a;
7337 }
7338 template<typename _Tp, typename _Compare>
7339 inline const _Tp&
7340 min(const _Tp& __a, const _Tp& __b, _Compare __comp)
7341 {
7342 if (__comp(__b, __a))
7343 return __b;
7344 return __a;
7345 }
7346 template<typename _Tp, typename _Compare>
7347 inline const _Tp&
7348 max(const _Tp& __a, const _Tp& __b, _Compare __comp)
7349 {
7350 if (__comp(__a, __b))
7351 return __b;
7352 return __a;
7353 }
7354 template<typename _Iterator,
7355 bool _IsNormal = __is_normal_iterator<_Iterator>::__value>
7356 struct __niter_base
7357 {
7358 static _Iterator
7359 __b(_Iterator __it)
7360 { return __it; }
7361 };
7362 template<typename _Iterator>
7363 struct __niter_base<_Iterator, true>
7364 {
7365 static typename _Iterator::iterator_type
7366 __b(_Iterator __it)
7367 { return __it.base(); }
7368 };
7369 template<typename _Iterator,
7370 bool _IsMove = __is_move_iterator<_Iterator>::__value>
7371 struct __miter_base
7372 {
7373 static _Iterator
7374 __b(_Iterator __it)
7375 { return __it; }
7376 };
7377 template<typename _Iterator>
7378 struct __miter_base<_Iterator, true>
7379 {
7380 static typename _Iterator::iterator_type
7381 __b(_Iterator __it)
7382 { return __it.base(); }
7383 };
7384 template<bool, bool, typename>
7385 struct __copy_move
7386 {
7387 template<typename _II, typename _OI>
7388 static _OI
7389 __copy_m(_II __first, _II __last, _OI __result)
7390 {
7391 for (; __first != __last; ++__result, ++__first)
7392 *__result = *__first;
7393 return __result;
7394 }
7395 };
7396 template<>
7397 struct __copy_move<false, false, random_access_iterator_tag>
7398 {
7399 template<typename _II, typename _OI>
7400 static _OI
7401 __copy_m(_II __first, _II __last, _OI __result)
7402 {
7403 typedef typename iterator_traits<_II>::difference_type _Distance;
7404 for(_Distance __n = __last - __first; __n > 0; --__n)
7405 {
7406 *__result = *__first;
7407 ++__first;
7408 ++__result;
7409 }
7410 return __result;
7411 }
7412 };
7413 template<bool _IsMove>
7414 struct __copy_move<_IsMove, true, random_access_iterator_tag>
7415 {
7416 template<typename _Tp>
7417 static _Tp*
7418 __copy_m(const _Tp* __first, const _Tp* __last, _Tp* __result)
7419 {
7420 __builtin_memmove(__result, __first,
7421 sizeof(_Tp) * (__last - __first));
7422 return __result + (__last - __first);
7423 }
7424 };
7425 template<bool _IsMove, typename _II, typename _OI>
7426 inline _OI
7427 __copy_move_a(_II __first, _II __last, _OI __result)
7428 {
7429 typedef typename iterator_traits<_II>::value_type _ValueTypeI;
7430 typedef typename iterator_traits<_OI>::value_type _ValueTypeO;
7431 typedef typename iterator_traits<_II>::iterator_category _Category;
7432 const bool __simple = (__is_pod(_ValueTypeI)
7433 && __is_pointer<_II>::__value
7434 && __is_pointer<_OI>::__value
7435 && __are_same<_ValueTypeI, _ValueTypeO>::__value);
7436 return std::__copy_move<_IsMove, __simple,
7437 _Category>::__copy_m(__first, __last, __result);
7438 }
7439 template<typename _CharT>
7440 struct char_traits;
7441 template<typename _CharT, typename _Traits>
7442 class istreambuf_iterator;
7443 template<typename _CharT, typename _Traits>
7444 class ostreambuf_iterator;
7445 template<bool _IsMove, typename _CharT>
7446 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
7447 ostreambuf_iterator<_CharT, char_traits<_CharT> > >::__type
7448 __copy_move_a2(_CharT*, _CharT*,
7449 ostreambuf_iterator<_CharT, char_traits<_CharT> >);
7450 template<bool _IsMove, typename _CharT>
7451 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
7452 ostreambuf_iterator<_CharT, char_traits<_CharT> > >::__type
7453 __copy_move_a2(const _CharT*, const _CharT*,
7454 ostreambuf_iterator<_CharT, char_traits<_CharT> >);
7455 template<bool _IsMove, typename _CharT>
7456 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
7457 _CharT*>::__type
7458 __copy_move_a2(istreambuf_iterator<_CharT, char_traits<_CharT> >,
7459 istreambuf_iterator<_CharT, char_traits<_CharT> >, _CharT*);
7460 template<bool _IsMove, typename _II, typename _OI>
7461 inline _OI
7462 __copy_move_a2(_II __first, _II __last, _OI __result)
7463 {
7464 return _OI(std::__copy_move_a<_IsMove>
7465 (std::__niter_base<_II>::__b(__first),
7466 std::__niter_base<_II>::__b(__last),
7467 std::__niter_base<_OI>::__b(__result)));
7468 }
7469 template<typename _II, typename _OI>
7470 inline _OI
7471 copy(_II __first, _II __last, _OI __result)
7472 {
7473
7474
7475 ;
7476 return (std::__copy_move_a2<__is_move_iterator<_II>::__value>
7477 (std::__miter_base<_II>::__b(__first),
7478 std::__miter_base<_II>::__b(__last), __result));
7479 }
7480 template<bool, bool, typename>
7481 struct __copy_move_backward
7482 {
7483 template<typename _BI1, typename _BI2>
7484 static _BI2
7485 __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)
7486 {
7487 while (__first != __last)
7488 *--__result = *--__last;
7489 return __result;
7490 }
7491 };
7492 template<>
7493 struct __copy_move_backward<false, false, random_access_iterator_tag>
7494 {
7495 template<typename _BI1, typename _BI2>
7496 static _BI2
7497 __copy_move_b(_BI1 __first, _BI1 __last, _BI2 __result)
7498 {
7499 typename iterator_traits<_BI1>::difference_type __n;
7500 for (__n = __last - __first; __n > 0; --__n)
7501 *--__result = *--__last;
7502 return __result;
7503 }
7504 };
7505 template<bool _IsMove>
7506 struct __copy_move_backward<_IsMove, true, random_access_iterator_tag>
7507 {
7508 template<typename _Tp>
7509 static _Tp*
7510 __copy_move_b(const _Tp* __first, const _Tp* __last, _Tp* __result)
7511 {
7512 const ptrdiff_t _Num = __last - __first;
7513 __builtin_memmove(__result - _Num, __first, sizeof(_Tp) * _Num);
7514 return __result - _Num;
7515 }
7516 };
7517 template<bool _IsMove, typename _BI1, typename _BI2>
7518 inline _BI2
7519 __copy_move_backward_a(_BI1 __first, _BI1 __last, _BI2 __result)
7520 {
7521 typedef typename iterator_traits<_BI1>::value_type _ValueType1;
7522 typedef typename iterator_traits<_BI2>::value_type _ValueType2;
7523 typedef typename iterator_traits<_BI1>::iterator_category _Category;
7524 const bool __simple = (__is_pod(_ValueType1)
7525 && __is_pointer<_BI1>::__value
7526 && __is_pointer<_BI2>::__value
7527 && __are_same<_ValueType1, _ValueType2>::__value);
7528 return std::__copy_move_backward<_IsMove, __simple,
7529 _Category>::__copy_move_b(__first,
7530 __last,
7531 __result);
7532 }
7533 template<bool _IsMove, typename _BI1, typename _BI2>
7534 inline _BI2
7535 __copy_move_backward_a2(_BI1 __first, _BI1 __last, _BI2 __result)
7536 {
7537 return _BI2(std::__copy_move_backward_a<_IsMove>
7538 (std::__niter_base<_BI1>::__b(__first),
7539 std::__niter_base<_BI1>::__b(__last),
7540 std::__niter_base<_BI2>::__b(__result)));
7541 }
7542 template<typename _BI1, typename _BI2>
7543 inline _BI2
7544 copy_backward(_BI1 __first, _BI1 __last, _BI2 __result)
7545 {
7546
7547
7548
7549 ;
7550 return (std::__copy_move_backward_a2<__is_move_iterator<_BI1>::__value>
7551 (std::__miter_base<_BI1>::__b(__first),
7552 std::__miter_base<_BI1>::__b(__last), __result));
7553 }
7554 template<typename _ForwardIterator, typename _Tp>
7555 inline typename
7556 __gnu_cxx::__enable_if<!__is_scalar<_Tp>::__value, void>::__type
7557 __fill_a(_ForwardIterator __first, _ForwardIterator __last,
7558 const _Tp& __value)
7559 {
7560 for (; __first != __last; ++__first)
7561 *__first = __value;
7562 }
7563 template<typename _ForwardIterator, typename _Tp>
7564 inline typename
7565 __gnu_cxx::__enable_if<__is_scalar<_Tp>::__value, void>::__type
7566 __fill_a(_ForwardIterator __first, _ForwardIterator __last,
7567 const _Tp& __value)
7568 {
7569 const _Tp __tmp = __value;
7570 for (; __first != __last; ++__first)
7571 *__first = __tmp;
7572 }
7573 template<typename _Tp>
7574 inline typename
7575 __gnu_cxx::__enable_if<__is_byte<_Tp>::__value, void>::__type
7576 __fill_a(_Tp* __first, _Tp* __last, const _Tp& __c)
7577 {
7578 const _Tp __tmp = __c;
7579 __builtin_memset(__first, static_cast<unsigned char>(__tmp),
7580 __last - __first);
7581 }
7582 template<typename _ForwardIterator, typename _Tp>
7583 inline void
7584 fill(_ForwardIterator __first, _ForwardIterator __last, const _Tp& __value)
7585 {
7586
7587 ;
7588 std::__fill_a(std::__niter_base<_ForwardIterator>::__b(__first),
7589 std::__niter_base<_ForwardIterator>::__b(__last), __value);
7590 }
7591 template<typename _OutputIterator, typename _Size, typename _Tp>
7592 inline typename
7593 __gnu_cxx::__enable_if<!__is_scalar<_Tp>::__value, _OutputIterator>::__type
7594 __fill_n_a(_OutputIterator __first, _Size __n, const _Tp& __value)
7595 {
7596 for (; __n > 0; --__n, ++__first)
7597 *__first = __value;
7598 return __first;
7599 }
7600 template<typename _OutputIterator, typename _Size, typename _Tp>
7601 inline typename
7602 __gnu_cxx::__enable_if<__is_scalar<_Tp>::__value, _OutputIterator>::__type
7603 __fill_n_a(_OutputIterator __first, _Size __n, const _Tp& __value)
7604 {
7605 const _Tp __tmp = __value;
7606 for (; __n > 0; --__n, ++__first)
7607 *__first = __tmp;
7608 return __first;
7609 }
7610 template<typename _Size, typename _Tp>
7611 inline typename
7612 __gnu_cxx::__enable_if<__is_byte<_Tp>::__value, _Tp*>::__type
7613 __fill_n_a(_Tp* __first, _Size __n, const _Tp& __c)
7614 {
7615 std::__fill_a(__first, __first + __n, __c);
7616 return __first + __n;
7617 }
7618 template<typename _OI, typename _Size, typename _Tp>
7619 inline _OI
7620 fill_n(_OI __first, _Size __n, const _Tp& __value)
7621 {
7622
7623 return _OI(std::__fill_n_a(std::__niter_base<_OI>::__b(__first),
7624 __n, __value));
7625 }
7626 template<bool _BoolType>
7627 struct __equal
7628 {
7629 template<typename _II1, typename _II2>
7630 static bool
7631 equal(_II1 __first1, _II1 __last1, _II2 __first2)
7632 {
7633 for (; __first1 != __last1; ++__first1, ++__first2)
7634 if (!(*__first1 == *__first2))
7635 return false;
7636 return true;
7637 }
7638 };
7639 template<>
7640 struct __equal<true>
7641 {
7642 template<typename _Tp>
7643 static bool
7644 equal(const _Tp* __first1, const _Tp* __last1, const _Tp* __first2)
7645 {
7646 return !__builtin_memcmp(__first1, __first2, sizeof(_Tp)
7647 * (__last1 - __first1));
7648 }
7649 };
7650 template<typename _II1, typename _II2>
7651 inline bool
7652 __equal_aux(_II1 __first1, _II1 __last1, _II2 __first2)
7653 {
7654 typedef typename iterator_traits<_II1>::value_type _ValueType1;
7655 typedef typename iterator_traits<_II2>::value_type _ValueType2;
7656 const bool __simple = (__is_integer<_ValueType1>::__value
7657 && __is_pointer<_II1>::__value
7658 && __is_pointer<_II2>::__value
7659 && __are_same<_ValueType1, _ValueType2>::__value);
7660 return std::__equal<__simple>::equal(__first1, __last1, __first2);
7661 }
7662 template<typename, typename>
7663 struct __lc_rai
7664 {
7665 template<typename _II1, typename _II2>
7666 static _II1
7667 __newlast1(_II1, _II1 __last1, _II2, _II2)
7668 { return __last1; }
7669 template<typename _II>
7670 static bool
7671 __cnd2(_II __first, _II __last)
7672 { return __first != __last; }
7673 };
7674 template<>
7675 struct __lc_rai<random_access_iterator_tag, random_access_iterator_tag>
7676 {
7677 template<typename _RAI1, typename _RAI2>
7678 static _RAI1
7679 __newlast1(_RAI1 __first1, _RAI1 __last1,
7680 _RAI2 __first2, _RAI2 __last2)
7681 {
7682 const typename iterator_traits<_RAI1>::difference_type
7683 __diff1 = __last1 - __first1;
7684 const typename iterator_traits<_RAI2>::difference_type
7685 __diff2 = __last2 - __first2;
7686 return __diff2 < __diff1 ? __first1 + __diff2 : __last1;
7687 }
7688 template<typename _RAI>
7689 static bool
7690 __cnd2(_RAI, _RAI)
7691 { return true; }
7692 };
7693 template<bool _BoolType>
7694 struct __lexicographical_compare
7695 {
7696 template<typename _II1, typename _II2>
7697 static bool __lc(_II1, _II1, _II2, _II2);
7698 };
7699 template<bool _BoolType>
7700 template<typename _II1, typename _II2>
7701 bool
7702 __lexicographical_compare<_BoolType>::
7703 __lc(_II1 __first1, _II1 __last1, _II2 __first2, _II2 __last2)
7704 {
7705 typedef typename iterator_traits<_II1>::iterator_category _Category1;
7706 typedef typename iterator_traits<_II2>::iterator_category _Category2;
7707 typedef std::__lc_rai<_Category1, _Category2> __rai_type;
7708 __last1 = __rai_type::__newlast1(__first1, __last1,
7709 __first2, __last2);
7710 for (; __first1 != __last1 && __rai_type::__cnd2(__first2, __last2);
7711 ++__first1, ++__first2)
7712 {
7713 if (*__first1 < *__first2)
7714 return true;
7715 if (*__first2 < *__first1)
7716 return false;
7717 }
7718 return __first1 == __last1 && __first2 != __last2;
7719 }
7720 template<>
7721 struct __lexicographical_compare<true>
7722 {
7723 template<typename _Tp, typename _Up>
7724 static bool
7725 __lc(const _Tp* __first1, const _Tp* __last1,
7726 const _Up* __first2, const _Up* __last2)
7727 {
7728 const size_t __len1 = __last1 - __first1;
7729 const size_t __len2 = __last2 - __first2;
7730 const int __result = __builtin_memcmp(__first1, __first2,
7731 std::min(__len1, __len2));
7732 return __result != 0 ? __result < 0 : __len1 < __len2;
7733 }
7734 };
7735 template<typename _II1, typename _II2>
7736 inline bool
7737 __lexicographical_compare_aux(_II1 __first1, _II1 __last1,
7738 _II2 __first2, _II2 __last2)
7739 {
7740 typedef typename iterator_traits<_II1>::value_type _ValueType1;
7741 typedef typename iterator_traits<_II2>::value_type _ValueType2;
7742 const bool __simple =
7743 (__is_byte<_ValueType1>::__value && __is_byte<_ValueType2>::__value
7744 && !__gnu_cxx::__numeric_traits<_ValueType1>::__is_signed
7745 && !__gnu_cxx::__numeric_traits<_ValueType2>::__is_signed
7746 && __is_pointer<_II1>::__value
7747 && __is_pointer<_II2>::__value);
7748 return std::__lexicographical_compare<__simple>::__lc(__first1, __last1,
7749 __first2, __last2);
7750 }
7751}
7752namespace std __attribute__ ((__visibility__ ("default"))) {
7753 template<typename _II1, typename _II2>
7754 inline bool
7755 equal(_II1 __first1, _II1 __last1, _II2 __first2)
7756 {
7757
7758
7759
7760 ;
7761 return std::__equal_aux(std::__niter_base<_II1>::__b(__first1),
7762 std::__niter_base<_II1>::__b(__last1),
7763 std::__niter_base<_II2>::__b(__first2));
7764 }
7765 template<typename _IIter1, typename _IIter2, typename _BinaryPredicate>
7766 inline bool
7767 equal(_IIter1 __first1, _IIter1 __last1,
7768 _IIter2 __first2, _BinaryPredicate __binary_pred)
7769 {
7770
7771
7772 ;
7773 for (; __first1 != __last1; ++__first1, ++__first2)
7774 if (!bool(__binary_pred(*__first1, *__first2)))
7775 return false;
7776 return true;
7777 }
7778 template<typename _II1, typename _II2>
7779 inline bool
7780 lexicographical_compare(_II1 __first1, _II1 __last1,
7781 _II2 __first2, _II2 __last2)
7782 {
7783 typedef typename iterator_traits<_II1>::value_type _ValueType1;
7784 typedef typename iterator_traits<_II2>::value_type _ValueType2;
7785
7786
7787
7788
7789 ;
7790 ;
7791 return std::__lexicographical_compare_aux
7792 (std::__niter_base<_II1>::__b(__first1),
7793 std::__niter_base<_II1>::__b(__last1),
7794 std::__niter_base<_II2>::__b(__first2),
7795 std::__niter_base<_II2>::__b(__last2));
7796 }
7797 template<typename _II1, typename _II2, typename _Compare>
7798 bool
7799 lexicographical_compare(_II1 __first1, _II1 __last1,
7800 _II2 __first2, _II2 __last2, _Compare __comp)
7801 {
7802 typedef typename iterator_traits<_II1>::iterator_category _Category1;
7803 typedef typename iterator_traits<_II2>::iterator_category _Category2;
7804 typedef std::__lc_rai<_Category1, _Category2> __rai_type;
7805
7806
7807 ;
7808 ;
7809 __last1 = __rai_type::__newlast1(__first1, __last1, __first2, __last2);
7810 for (; __first1 != __last1 && __rai_type::__cnd2(__first2, __last2);
7811 ++__first1, ++__first2)
7812 {
7813 if (__comp(*__first1, *__first2))
7814 return true;
7815 if (__comp(*__first2, *__first1))
7816 return false;
7817 }
7818 return __first1 == __last1 && __first2 != __last2;
7819 }
7820 template<typename _InputIterator1, typename _InputIterator2>
7821 pair<_InputIterator1, _InputIterator2>
7822 mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
7823 _InputIterator2 __first2)
7824 {
7825
7826
7827
7828 ;
7829 while (__first1 != __last1 && *__first1 == *__first2)
7830 {
7831 ++__first1;
7832 ++__first2;
7833 }
7834 return pair<_InputIterator1, _InputIterator2>(__first1, __first2);
7835 }
7836 template<typename _InputIterator1, typename _InputIterator2,
7837 typename _BinaryPredicate>
7838 pair<_InputIterator1, _InputIterator2>
7839 mismatch(_InputIterator1 __first1, _InputIterator1 __last1,
7840 _InputIterator2 __first2, _BinaryPredicate __binary_pred)
7841 {
7842
7843
7844 ;
7845 while (__first1 != __last1 && bool(__binary_pred(*__first1, *__first2)))
7846 {
7847 ++__first1;
7848 ++__first2;
7849 }
7850 return pair<_InputIterator1, _InputIterator2>(__first1, __first2);
7851 }
7852}
7853
7854
7855
7856namespace std __attribute__ ((__visibility__ ("default"))) {
7857 using ::mbstate_t;
7858}
7859namespace std __attribute__ ((__visibility__ ("default"))) {
7860 using ::wint_t;
7861 using ::btowc;
7862 using ::fgetwc;
7863 using ::fgetws;
7864 using ::fputwc;
7865 using ::fputws;
7866 using ::fwide;
7867 using ::fwprintf;
7868 using ::fwscanf;
7869 using ::getwc;
7870 using ::getwchar;
7871 using ::mbrlen;
7872 using ::mbrtowc;
7873 using ::mbsinit;
7874 using ::mbsrtowcs;
7875 using ::putwc;
7876 using ::putwchar;
7877 using ::swprintf;
7878 using ::swscanf;
7879 using ::ungetwc;
7880 using ::vfwprintf;
7881 using ::vfwscanf;
7882 using ::vswprintf;
7883 using ::vswscanf;
7884 using ::vwprintf;
7885 using ::vwscanf;
7886 using ::wcrtomb;
7887 using ::wcscat;
7888 using ::wcscmp;
7889 using ::wcscoll;
7890 using ::wcscpy;
7891 using ::wcscspn;
7892 using ::wcsftime;
7893 using ::wcslen;
7894 using ::wcsncat;
7895 using ::wcsncmp;
7896 using ::wcsncpy;
7897 using ::wcsrtombs;
7898 using ::wcsspn;
7899 using ::wcstod;
7900 using ::wcstof;
7901 using ::wcstok;
7902 using ::wcstol;
7903 using ::wcstoul;
7904 using ::wcsxfrm;
7905 using ::wctob;
7906 using ::wmemcmp;
7907 using ::wmemcpy;
7908 using ::wmemmove;
7909 using ::wmemset;
7910 using ::wprintf;
7911 using ::wscanf;
7912 using ::wcschr;
7913 using ::wcspbrk;
7914 using ::wcsrchr;
7915 using ::wcsstr;
7916 using ::wmemchr;
7917}
7918namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
7919 using ::wcstold;
7920 using ::wcstoll;
7921 using ::wcstoull;
7922}
7923namespace std __attribute__ ((__visibility__ ("default"))) {
7924 using ::__gnu_cxx::wcstold;
7925 using ::__gnu_cxx::wcstoll;
7926 using ::__gnu_cxx::wcstoull;
7927}
7928namespace std __attribute__ ((__visibility__ ("default"))) {
7929 typedef long streamoff;
7930 typedef ptrdiff_t streamsize;
7931 template<typename _StateT>
7932 class fpos
7933 {
7934 private:
7935 streamoff _M_off;
7936 _StateT _M_state;
7937 public:
7938 fpos()
7939 : _M_off(0), _M_state() { }
7940 fpos(streamoff __off)
7941 : _M_off(__off), _M_state() { }
7942 operator streamoff() const { return _M_off; }
7943 void
7944 state(_StateT __st)
7945 { _M_state = __st; }
7946 _StateT
7947 state() const
7948 { return _M_state; }
7949 fpos&
7950 operator+=(streamoff __off)
7951 {
7952 _M_off += __off;
7953 return *this;
7954 }
7955 fpos&
7956 operator-=(streamoff __off)
7957 {
7958 _M_off -= __off;
7959 return *this;
7960 }
7961 fpos
7962 operator+(streamoff __off) const
7963 {
7964 fpos __pos(*this);
7965 __pos += __off;
7966 return __pos;
7967 }
7968 fpos
7969 operator-(streamoff __off) const
7970 {
7971 fpos __pos(*this);
7972 __pos -= __off;
7973 return __pos;
7974 }
7975 streamoff
7976 operator-(const fpos& __other) const
7977 { return _M_off - __other._M_off; }
7978 };
7979 template<typename _StateT>
7980 inline bool
7981 operator==(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs)
7982 { return streamoff(__lhs) == streamoff(__rhs); }
7983 template<typename _StateT>
7984 inline bool
7985 operator!=(const fpos<_StateT>& __lhs, const fpos<_StateT>& __rhs)
7986 { return streamoff(__lhs) != streamoff(__rhs); }
7987 typedef fpos<mbstate_t> streampos;
7988 typedef fpos<mbstate_t> wstreampos;
7989}
7990
7991
7992namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
7993 template<typename _CharT>
7994 struct _Char_types
7995 {
7996 typedef unsigned long int_type;
7997 typedef std::streampos pos_type;
7998 typedef std::streamoff off_type;
7999 typedef std::mbstate_t state_type;
8000 };
8001 template<typename _CharT>
8002 struct char_traits
8003 {
8004 typedef _CharT char_type;
8005 typedef typename _Char_types<_CharT>::int_type int_type;
8006 typedef typename _Char_types<_CharT>::pos_type pos_type;
8007 typedef typename _Char_types<_CharT>::off_type off_type;
8008 typedef typename _Char_types<_CharT>::state_type state_type;
8009 static void
8010 assign(char_type& __c1, const char_type& __c2)
8011 { __c1 = __c2; }
8012 static bool
8013 eq(const char_type& __c1, const char_type& __c2)
8014 { return __c1 == __c2; }
8015 static bool
8016 lt(const char_type& __c1, const char_type& __c2)
8017 { return __c1 < __c2; }
8018 static int
8019 compare(const char_type* __s1, const char_type* __s2, std::size_t __n);
8020 static std::size_t
8021 length(const char_type* __s);
8022 static const char_type*
8023 find(const char_type* __s, std::size_t __n, const char_type& __a);
8024 static char_type*
8025 move(char_type* __s1, const char_type* __s2, std::size_t __n);
8026 static char_type*
8027 copy(char_type* __s1, const char_type* __s2, std::size_t __n);
8028 static char_type*
8029 assign(char_type* __s, std::size_t __n, char_type __a);
8030 static char_type
8031 to_char_type(const int_type& __c)
8032 { return static_cast<char_type>(__c); }
8033 static int_type
8034 to_int_type(const char_type& __c)
8035 { return static_cast<int_type>(__c); }
8036 static bool
8037 eq_int_type(const int_type& __c1, const int_type& __c2)
8038 { return __c1 == __c2; }
8039 static int_type
8040 eof()
8041 { return static_cast<int_type>((-1)); }
8042 static int_type
8043 not_eof(const int_type& __c)
8044 { return !eq_int_type(__c, eof()) ? __c : to_int_type(char_type()); }
8045 };
8046 template<typename _CharT>
8047 int
8048 char_traits<_CharT>::
8049 compare(const char_type* __s1, const char_type* __s2, std::size_t __n)
8050 {
8051 for (std::size_t __i = 0; __i < __n; ++__i)
8052 if (lt(__s1[__i], __s2[__i]))
8053 return -1;
8054 else if (lt(__s2[__i], __s1[__i]))
8055 return 1;
8056 return 0;
8057 }
8058 template<typename _CharT>
8059 std::size_t
8060 char_traits<_CharT>::
8061 length(const char_type* __p)
8062 {
8063 std::size_t __i = 0;
8064 while (!eq(__p[__i], char_type()))
8065 ++__i;
8066 return __i;
8067 }
8068 template<typename _CharT>
8069 const typename char_traits<_CharT>::char_type*
8070 char_traits<_CharT>::
8071 find(const char_type* __s, std::size_t __n, const char_type& __a)
8072 {
8073 for (std::size_t __i = 0; __i < __n; ++__i)
8074 if (eq(__s[__i], __a))
8075 return __s + __i;
8076 return 0;
8077 }
8078 template<typename _CharT>
8079 typename char_traits<_CharT>::char_type*
8080 char_traits<_CharT>::
8081 move(char_type* __s1, const char_type* __s2, std::size_t __n)
8082 {
8083 return static_cast<_CharT*>(__builtin_memmove(__s1, __s2,
8084 __n * sizeof(char_type)));
8085 }
8086 template<typename _CharT>
8087 typename char_traits<_CharT>::char_type*
8088 char_traits<_CharT>::
8089 copy(char_type* __s1, const char_type* __s2, std::size_t __n)
8090 {
8091 std::copy(__s2, __s2 + __n, __s1);
8092 return __s1;
8093 }
8094 template<typename _CharT>
8095 typename char_traits<_CharT>::char_type*
8096 char_traits<_CharT>::
8097 assign(char_type* __s, std::size_t __n, char_type __a)
8098 {
8099 std::fill_n(__s, __n, __a);
8100 return __s;
8101 }
8102}
8103namespace std __attribute__ ((__visibility__ ("default"))) {
8104 template<class _CharT>
8105 struct char_traits : public __gnu_cxx::char_traits<_CharT>
8106 { };
8107 template<>
8108 struct char_traits<char>
8109 {
8110 typedef char char_type;
8111 typedef int int_type;
8112 typedef streampos pos_type;
8113 typedef streamoff off_type;
8114 typedef mbstate_t state_type;
8115 static void
8116 assign(char_type& __c1, const char_type& __c2)
8117 { __c1 = __c2; }
8118 static bool
8119 eq(const char_type& __c1, const char_type& __c2)
8120 { return __c1 == __c2; }
8121 static bool
8122 lt(const char_type& __c1, const char_type& __c2)
8123 { return __c1 < __c2; }
8124 static int
8125 compare(const char_type* __s1, const char_type* __s2, size_t __n)
8126 { return __builtin_memcmp(__s1, __s2, __n); }
8127 static size_t
8128 length(const char_type* __s)
8129 { return __builtin_strlen(__s); }
8130 static const char_type*
8131 find(const char_type* __s, size_t __n, const char_type& __a)
8132 { return static_cast<const char_type*>(__builtin_memchr(__s, __a, __n)); }
8133 static char_type*
8134 move(char_type* __s1, const char_type* __s2, size_t __n)
8135 { return static_cast<char_type*>(__builtin_memmove(__s1, __s2, __n)); }
8136 static char_type*
8137 copy(char_type* __s1, const char_type* __s2, size_t __n)
8138 { return static_cast<char_type*>(__builtin_memcpy(__s1, __s2, __n)); }
8139 static char_type*
8140 assign(char_type* __s, size_t __n, char_type __a)
8141 { return static_cast<char_type*>(__builtin_memset(__s, __a, __n)); }
8142 static char_type
8143 to_char_type(const int_type& __c)
8144 { return static_cast<char_type>(__c); }
8145 static int_type
8146 to_int_type(const char_type& __c)
8147 { return static_cast<int_type>(static_cast<unsigned char>(__c)); }
8148 static bool
8149 eq_int_type(const int_type& __c1, const int_type& __c2)
8150 { return __c1 == __c2; }
8151 static int_type
8152 eof()
8153 { return static_cast<int_type>((-1)); }
8154 static int_type
8155 not_eof(const int_type& __c)
8156 { return (__c == eof()) ? 0 : __c; }
8157 };
8158 template<>
8159 struct char_traits<wchar_t>
8160 {
8161 typedef wchar_t char_type;
8162 typedef wint_t int_type;
8163 typedef streamoff off_type;
8164 typedef wstreampos pos_type;
8165 typedef mbstate_t state_type;
8166 static void
8167 assign(char_type& __c1, const char_type& __c2)
8168 { __c1 = __c2; }
8169 static bool
8170 eq(const char_type& __c1, const char_type& __c2)
8171 { return __c1 == __c2; }
8172 static bool
8173 lt(const char_type& __c1, const char_type& __c2)
8174 { return __c1 < __c2; }
8175 static int
8176 compare(const char_type* __s1, const char_type* __s2, size_t __n)
8177 { return wmemcmp(__s1, __s2, __n); }
8178 static size_t
8179 length(const char_type* __s)
8180 { return wcslen(__s); }
8181 static const char_type*
8182 find(const char_type* __s, size_t __n, const char_type& __a)
8183 { return wmemchr(__s, __a, __n); }
8184 static char_type*
8185 move(char_type* __s1, const char_type* __s2, size_t __n)
8186 { return wmemmove(__s1, __s2, __n); }
8187 static char_type*
8188 copy(char_type* __s1, const char_type* __s2, size_t __n)
8189 { return wmemcpy(__s1, __s2, __n); }
8190 static char_type*
8191 assign(char_type* __s, size_t __n, char_type __a)
8192 { return wmemset(__s, __a, __n); }
8193 static char_type
8194 to_char_type(const int_type& __c)
8195 { return char_type(__c); }
8196 static int_type
8197 to_int_type(const char_type& __c)
8198 { return int_type(__c); }
8199 static bool
8200 eq_int_type(const int_type& __c1, const int_type& __c2)
8201 { return __c1 == __c2; }
8202 static int_type
8203 eof()
8204 { return static_cast<int_type>((0xffffffffu)); }
8205 static int_type
8206 not_eof(const int_type& __c)
8207 { return eq_int_type(__c, eof()) ? 0 : __c; }
8208 };
8209}
8210
8211extern "C++" {
8212namespace std
8213{
8214 class exception
8215 {
8216 public:
8217 exception() throw() { }
8218 virtual ~exception() throw();
8219 virtual const char* what() const throw();
8220 };
8221 class bad_exception : public exception
8222 {
8223 public:
8224 bad_exception() throw() { }
8225 virtual ~bad_exception() throw();
8226 virtual const char* what() const throw();
8227 };
8228 typedef void (*terminate_handler) ();
8229 typedef void (*unexpected_handler) ();
8230 terminate_handler set_terminate(terminate_handler) throw();
8231 void terminate() __attribute__ ((__noreturn__));
8232 unexpected_handler set_unexpected(unexpected_handler) throw();
8233 void unexpected() __attribute__ ((__noreturn__));
8234 bool uncaught_exception() throw();
8235}
8236namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
8237 void __verbose_terminate_handler();
8238}
8239}
8240extern "C++" {
8241namespace std
8242{
8243 class bad_alloc : public exception
8244 {
8245 public:
8246 bad_alloc() throw() { }
8247 virtual ~bad_alloc() throw();
8248 virtual const char* what() const throw();
8249 };
8250 struct nothrow_t { };
8251 extern const nothrow_t nothrow;
8252 typedef void (*new_handler)();
8253 new_handler set_new_handler(new_handler) throw();
8254}
8255void* operator new(std::size_t) throw (std::bad_alloc);
8256void* operator new[](std::size_t) throw (std::bad_alloc);
8257void operator delete(void*) throw();
8258void operator delete[](void*) throw();
8259void* operator new(std::size_t, const std::nothrow_t&) throw();
8260void* operator new[](std::size_t, const std::nothrow_t&) throw();
8261void operator delete(void*, const std::nothrow_t&) throw();
8262void operator delete[](void*, const std::nothrow_t&) throw();
8263inline void* operator new(std::size_t, void* __p) throw() { return __p; }
8264inline void* operator new[](std::size_t, void* __p) throw() { return __p; }
8265inline void operator delete (void*, void*) throw() { }
8266inline void operator delete[](void*, void*) throw() { }
8267}
8268namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
8269 using std::size_t;
8270 using std::ptrdiff_t;
8271 template<typename _Tp>
8272 class new_allocator
8273 {
8274 public:
8275 typedef size_t size_type;
8276 typedef ptrdiff_t difference_type;
8277 typedef _Tp* pointer;
8278 typedef const _Tp* const_pointer;
8279 typedef _Tp& reference;
8280 typedef const _Tp& const_reference;
8281 typedef _Tp value_type;
8282 template<typename _Tp1>
8283 struct rebind
8284 { typedef new_allocator<_Tp1> other; };
8285 new_allocator() throw() { }
8286 new_allocator(const new_allocator&) throw() { }
8287 template<typename _Tp1>
8288 new_allocator(const new_allocator<_Tp1>&) throw() { }
8289 ~new_allocator() throw() { }
8290 pointer
8291 address(reference __x) const { return &__x; }
8292 const_pointer
8293 address(const_reference __x) const { return &__x; }
8294 pointer
8295 allocate(size_type __n, const void* = 0)
8296 {
8297 if (__builtin_expect(__n > this->max_size(), false))
8298 std::__throw_bad_alloc();
8299 return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
8300 }
8301 void
8302 deallocate(pointer __p, size_type)
8303 { ::operator delete(__p); }
8304 size_type
8305 max_size() const throw()
8306 { return size_t(-1) / sizeof(_Tp); }
8307 void
8308 construct(pointer __p, const _Tp& __val)
8309 { ::new((void *)__p) _Tp(__val); }
8310 void
8311 destroy(pointer __p) { __p->~_Tp(); }
8312 };
8313 template<typename _Tp>
8314 inline bool
8315 operator==(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
8316 { return true; }
8317 template<typename _Tp>
8318 inline bool
8319 operator!=(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
8320 { return false; }
8321}
8322namespace std __attribute__ ((__visibility__ ("default"))) {
8323 template<typename _Tp>
8324 class allocator;
8325 template<>
8326 class allocator<void>
8327 {
8328 public:
8329 typedef size_t size_type;
8330 typedef ptrdiff_t difference_type;
8331 typedef void* pointer;
8332 typedef const void* const_pointer;
8333 typedef void value_type;
8334 template<typename _Tp1>
8335 struct rebind
8336 { typedef allocator<_Tp1> other; };
8337 };
8338 template<typename _Tp>
8339 class allocator: public __gnu_cxx::new_allocator<_Tp>
8340 {
8341 public:
8342 typedef size_t size_type;
8343 typedef ptrdiff_t difference_type;
8344 typedef _Tp* pointer;
8345 typedef const _Tp* const_pointer;
8346 typedef _Tp& reference;
8347 typedef const _Tp& const_reference;
8348 typedef _Tp value_type;
8349 template<typename _Tp1>
8350 struct rebind
8351 { typedef allocator<_Tp1> other; };
8352 allocator() throw() { }
8353 allocator(const allocator& __a) throw()
8354 : __gnu_cxx::new_allocator<_Tp>(__a) { }
8355 template<typename _Tp1>
8356 allocator(const allocator<_Tp1>&) throw() { }
8357 ~allocator() throw() { }
8358 };
8359 template<typename _T1, typename _T2>
8360 inline bool
8361 operator==(const allocator<_T1>&, const allocator<_T2>&)
8362 { return true; }
8363 template<typename _Tp>
8364 inline bool
8365 operator==(const allocator<_Tp>&, const allocator<_Tp>&)
8366 { return true; }
8367 template<typename _T1, typename _T2>
8368 inline bool
8369 operator!=(const allocator<_T1>&, const allocator<_T2>&)
8370 { return false; }
8371 template<typename _Tp>
8372 inline bool
8373 operator!=(const allocator<_Tp>&, const allocator<_Tp>&)
8374 { return false; }
8375 extern template class allocator<char>;
8376 extern template class allocator<wchar_t>;
8377 template<typename _Alloc, bool = __is_empty(_Alloc)>
8378 struct __alloc_swap
8379 { static void _S_do_it(_Alloc&, _Alloc&) { } };
8380 template<typename _Alloc>
8381 struct __alloc_swap<_Alloc, false>
8382 {
8383 static void
8384 _S_do_it(_Alloc& __one, _Alloc& __two)
8385 {
8386 if (__one != __two)
8387 swap(__one, __two);
8388 }
8389 };
8390 template<typename _Alloc, bool = __is_empty(_Alloc)>
8391 struct __alloc_neq
8392 {
8393 static bool
8394 _S_do_it(const _Alloc&, const _Alloc&)
8395 { return false; }
8396 };
8397 template<typename _Alloc>
8398 struct __alloc_neq<_Alloc, false>
8399 {
8400 static bool
8401 _S_do_it(const _Alloc& __one, const _Alloc& __two)
8402 { return __one != __two; }
8403 };
8404}
8405
8406
8407
8408enum
8409{
8410 __LC_CTYPE = 0,
8411 __LC_NUMERIC = 1,
8412 __LC_TIME = 2,
8413 __LC_COLLATE = 3,
8414 __LC_MONETARY = 4,
8415 __LC_MESSAGES = 5,
8416 __LC_ALL = 6,
8417 __LC_PAPER = 7,
8418 __LC_NAME = 8,
8419 __LC_ADDRESS = 9,
8420 __LC_TELEPHONE = 10,
8421 __LC_MEASUREMENT = 11,
8422 __LC_IDENTIFICATION = 12
8423};
8424extern "C" {
8425struct lconv
8426{
8427 char *decimal_point;
8428 char *thousands_sep;
8429 char *grouping;
8430 char *int_curr_symbol;
8431 char *currency_symbol;
8432 char *mon_decimal_point;
8433 char *mon_thousands_sep;
8434 char *mon_grouping;
8435 char *positive_sign;
8436 char *negative_sign;
8437 char int_frac_digits;
8438 char frac_digits;
8439 char p_cs_precedes;
8440 char p_sep_by_space;
8441 char n_cs_precedes;
8442 char n_sep_by_space;
8443 char p_sign_posn;
8444 char n_sign_posn;
8445 char int_p_cs_precedes;
8446 char int_p_sep_by_space;
8447 char int_n_cs_precedes;
8448 char int_n_sep_by_space;
8449 char int_p_sign_posn;
8450 char int_n_sign_posn;
8451};
8452extern char *setlocale (int __category, __const char *__locale) throw ();
8453extern struct lconv *localeconv (void) throw ();
8454extern __locale_t newlocale (int __category_mask, __const char *__locale,
8455 __locale_t __base) throw ();
8456extern __locale_t duplocale (__locale_t __dataset) throw ();
8457extern void freelocale (__locale_t __dataset) throw ();
8458extern __locale_t uselocale (__locale_t __dataset) throw ();
8459}
8460namespace std __attribute__ ((__visibility__ ("default"))) {
8461 using ::lconv;
8462 using ::setlocale;
8463 using ::localeconv;
8464}
8465
8466namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
8467 extern "C" __typeof(uselocale) __uselocale;
8468}
8469namespace std __attribute__ ((__visibility__ ("default"))) {
8470 typedef __locale_t __c_locale;
8471 inline int
8472 __convert_from_v(const __c_locale& __cloc __attribute__ ((__unused__)),
8473 char* __out,
8474 const int __size __attribute__ ((__unused__)),
8475 const char* __fmt, ...)
8476 {
8477 __c_locale __old = __gnu_cxx::__uselocale(__cloc);
8478 __builtin_va_list __args;
8479 __builtin_va_start(__args, __fmt);
8480 const int __ret = __builtin_vsnprintf(__out, __size, __fmt, __args);
8481 __builtin_va_end(__args);
8482 __gnu_cxx::__uselocale(__old);
8483 return __ret;
8484 }
8485}
8486
8487namespace std __attribute__ ((__visibility__ ("default"))) {
8488 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8489 class basic_ios;
8490 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8491 class basic_streambuf;
8492 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8493 class basic_istream;
8494 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8495 class basic_ostream;
8496 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8497 class basic_iostream;
8498 template<typename _CharT, typename _Traits = char_traits<_CharT>,
8499 typename _Alloc = allocator<_CharT> >
8500 class basic_stringbuf;
8501 template<typename _CharT, typename _Traits = char_traits<_CharT>,
8502 typename _Alloc = allocator<_CharT> >
8503 class basic_istringstream;
8504 template<typename _CharT, typename _Traits = char_traits<_CharT>,
8505 typename _Alloc = allocator<_CharT> >
8506 class basic_ostringstream;
8507 template<typename _CharT, typename _Traits = char_traits<_CharT>,
8508 typename _Alloc = allocator<_CharT> >
8509 class basic_stringstream;
8510 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8511 class basic_filebuf;
8512 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8513 class basic_ifstream;
8514 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8515 class basic_ofstream;
8516 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8517 class basic_fstream;
8518 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8519 class istreambuf_iterator;
8520 template<typename _CharT, typename _Traits = char_traits<_CharT> >
8521 class ostreambuf_iterator;
8522 class ios_base;
8523 typedef basic_ios<char> ios;
8524 typedef basic_streambuf<char> streambuf;
8525 typedef basic_istream<char> istream;
8526 typedef basic_ostream<char> ostream;
8527 typedef basic_iostream<char> iostream;
8528 typedef basic_stringbuf<char> stringbuf;
8529 typedef basic_istringstream<char> istringstream;
8530 typedef basic_ostringstream<char> ostringstream;
8531 typedef basic_stringstream<char> stringstream;
8532 typedef basic_filebuf<char> filebuf;
8533 typedef basic_ifstream<char> ifstream;
8534 typedef basic_ofstream<char> ofstream;
8535 typedef basic_fstream<char> fstream;
8536 typedef basic_ios<wchar_t> wios;
8537 typedef basic_streambuf<wchar_t> wstreambuf;
8538 typedef basic_istream<wchar_t> wistream;
8539 typedef basic_ostream<wchar_t> wostream;
8540 typedef basic_iostream<wchar_t> wiostream;
8541 typedef basic_stringbuf<wchar_t> wstringbuf;
8542 typedef basic_istringstream<wchar_t> wistringstream;
8543 typedef basic_ostringstream<wchar_t> wostringstream;
8544 typedef basic_stringstream<wchar_t> wstringstream;
8545 typedef basic_filebuf<wchar_t> wfilebuf;
8546 typedef basic_ifstream<wchar_t> wifstream;
8547 typedef basic_ofstream<wchar_t> wofstream;
8548 typedef basic_fstream<wchar_t> wfstream;
8549}
8550
8551namespace std __attribute__ ((__visibility__ ("default"))) {
8552 using ::isalnum;
8553 using ::isalpha;
8554 using ::iscntrl;
8555 using ::isdigit;
8556 using ::isgraph;
8557 using ::islower;
8558 using ::isprint;
8559 using ::ispunct;
8560 using ::isspace;
8561 using ::isupper;
8562 using ::isxdigit;
8563 using ::tolower;
8564 using ::toupper;
8565}
8566namespace std __attribute__ ((__visibility__ ("default"))) {
8567 class locale;
8568 template<typename _Facet>
8569 bool
8570 has_facet(const locale&) throw();
8571 template<typename _Facet>
8572 const _Facet&
8573 use_facet(const locale&);
8574 template<typename _CharT>
8575 bool
8576 isspace(_CharT, const locale&);
8577 template<typename _CharT>
8578 bool
8579 isprint(_CharT, const locale&);
8580 template<typename _CharT>
8581 bool
8582 iscntrl(_CharT, const locale&);
8583 template<typename _CharT>
8584 bool
8585 isupper(_CharT, const locale&);
8586 template<typename _CharT>
8587 bool
8588 islower(_CharT, const locale&);
8589 template<typename _CharT>
8590 bool
8591 isalpha(_CharT, const locale&);
8592 template<typename _CharT>
8593 bool
8594 isdigit(_CharT, const locale&);
8595 template<typename _CharT>
8596 bool
8597 ispunct(_CharT, const locale&);
8598 template<typename _CharT>
8599 bool
8600 isxdigit(_CharT, const locale&);
8601 template<typename _CharT>
8602 bool
8603 isalnum(_CharT, const locale&);
8604 template<typename _CharT>
8605 bool
8606 isgraph(_CharT, const locale&);
8607 template<typename _CharT>
8608 _CharT
8609 toupper(_CharT, const locale&);
8610 template<typename _CharT>
8611 _CharT
8612 tolower(_CharT, const locale&);
8613 class ctype_base;
8614 template<typename _CharT>
8615 class ctype;
8616 template<> class ctype<char>;
8617 template<> class ctype<wchar_t>;
8618 template<typename _CharT>
8619 class ctype_byname;
8620 class codecvt_base;
8621 template<typename _InternT, typename _ExternT, typename _StateT>
8622 class codecvt;
8623 template<> class codecvt<char, char, mbstate_t>;
8624 template<> class codecvt<wchar_t, char, mbstate_t>;
8625 template<typename _InternT, typename _ExternT, typename _StateT>
8626 class codecvt_byname;
8627 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
8628 class num_get;
8629 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
8630 class num_put;
8631 template<typename _CharT> class numpunct;
8632 template<typename _CharT> class numpunct_byname;
8633 template<typename _CharT>
8634 class collate;
8635 template<typename _CharT> class
8636 collate_byname;
8637 class time_base;
8638 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
8639 class time_get;
8640 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
8641 class time_get_byname;
8642 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
8643 class time_put;
8644 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
8645 class time_put_byname;
8646 class money_base;
8647 template<typename _CharT, typename _InIter = istreambuf_iterator<_CharT> >
8648 class money_get;
8649 template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
8650 class money_put;
8651 template<typename _CharT, bool _Intl = false>
8652 class moneypunct;
8653 template<typename _CharT, bool _Intl = false>
8654 class moneypunct_byname;
8655 class messages_base;
8656 template<typename _CharT>
8657 class messages;
8658 template<typename _CharT>
8659 class messages_byname;
8660}
8661
8662namespace __cxxabiv1
8663{
8664 class __forced_unwind
8665 {
8666 virtual ~__forced_unwind() throw();
8667 virtual void __pure_dummy() = 0;
8668 };
8669}
8670namespace std __attribute__ ((__visibility__ ("default"))) {
8671 template<typename _CharT, typename _Traits>
8672 inline void
8673 __ostream_write(basic_ostream<_CharT, _Traits>& __out,
8674 const _CharT* __s, streamsize __n)
8675 {
8676 typedef basic_ostream<_CharT, _Traits> __ostream_type;
8677 typedef typename __ostream_type::ios_base __ios_base;
8678 const streamsize __put = __out.rdbuf()->sputn(__s, __n);
8679 if (__put != __n)
8680 __out.setstate(__ios_base::badbit);
8681 }
8682 template<typename _CharT, typename _Traits>
8683 inline void
8684 __ostream_fill(basic_ostream<_CharT, _Traits>& __out, streamsize __n)
8685 {
8686 typedef basic_ostream<_CharT, _Traits> __ostream_type;
8687 typedef typename __ostream_type::ios_base __ios_base;
8688 const _CharT __c = __out.fill();
8689 for (; __n > 0; --__n)
8690 {
8691 const typename _Traits::int_type __put = __out.rdbuf()->sputc(__c);
8692 if (_Traits::eq_int_type(__put, _Traits::eof()))
8693 {
8694 __out.setstate(__ios_base::badbit);
8695 break;
8696 }
8697 }
8698 }
8699 template<typename _CharT, typename _Traits>
8700 basic_ostream<_CharT, _Traits>&
8701 __ostream_insert(basic_ostream<_CharT, _Traits>& __out,
8702 const _CharT* __s, streamsize __n)
8703 {
8704 typedef basic_ostream<_CharT, _Traits> __ostream_type;
8705 typedef typename __ostream_type::ios_base __ios_base;
8706 typename __ostream_type::sentry __cerb(__out);
8707 if (__cerb)
8708 {
8709 try
8710 {
8711 const streamsize __w = __out.width();
8712 if (__w > __n)
8713 {
8714 const bool __left = ((__out.flags()
8715 & __ios_base::adjustfield)
8716 == __ios_base::left);
8717 if (!__left)
8718 __ostream_fill(__out, __w - __n);
8719 if (__out.good())
8720 __ostream_write(__out, __s, __n);
8721 if (__left && __out.good())
8722 __ostream_fill(__out, __w - __n);
8723 }
8724 else
8725 __ostream_write(__out, __s, __n);
8726 __out.width(0);
8727 }
8728 catch(__cxxabiv1::__forced_unwind&)
8729 {
8730 __out._M_setstate(__ios_base::badbit);
8731 throw;
8732 }
8733 catch(...)
8734 { __out._M_setstate(__ios_base::badbit); }
8735 }
8736 return __out;
8737 }
8738 extern template ostream& __ostream_insert(ostream&, const char*, streamsize);
8739 extern template wostream& __ostream_insert(wostream&, const wchar_t*,
8740 streamsize);
8741}
8742namespace std __attribute__ ((__visibility__ ("default"))) {
8743 template<typename _Arg, typename _Result>
8744 struct unary_function
8745 {
8746 typedef _Arg argument_type;
8747 typedef _Result result_type;
8748 };
8749 template<typename _Arg1, typename _Arg2, typename _Result>
8750 struct binary_function
8751 {
8752 typedef _Arg1 first_argument_type;
8753 typedef _Arg2 second_argument_type;
8754 typedef _Result result_type;
8755 };
8756 template<typename _Tp>
8757 struct plus : public binary_function<_Tp, _Tp, _Tp>
8758 {
8759 _Tp
8760 operator()(const _Tp& __x, const _Tp& __y) const
8761 { return __x + __y; }
8762 };
8763 template<typename _Tp>
8764 struct minus : public binary_function<_Tp, _Tp, _Tp>
8765 {
8766 _Tp
8767 operator()(const _Tp& __x, const _Tp& __y) const
8768 { return __x - __y; }
8769 };
8770 template<typename _Tp>
8771 struct multiplies : public binary_function<_Tp, _Tp, _Tp>
8772 {
8773 _Tp
8774 operator()(const _Tp& __x, const _Tp& __y) const
8775 { return __x * __y; }
8776 };
8777 template<typename _Tp>
8778 struct divides : public binary_function<_Tp, _Tp, _Tp>
8779 {
8780 _Tp
8781 operator()(const _Tp& __x, const _Tp& __y) const
8782 { return __x / __y; }
8783 };
8784 template<typename _Tp>
8785 struct modulus : public binary_function<_Tp, _Tp, _Tp>
8786 {
8787 _Tp
8788 operator()(const _Tp& __x, const _Tp& __y) const
8789 { return __x % __y; }
8790 };
8791 template<typename _Tp>
8792 struct negate : public unary_function<_Tp, _Tp>
8793 {
8794 _Tp
8795 operator()(const _Tp& __x) const
8796 { return -__x; }
8797 };
8798 template<typename _Tp>
8799 struct equal_to : public binary_function<_Tp, _Tp, bool>
8800 {
8801 bool
8802 operator()(const _Tp& __x, const _Tp& __y) const
8803 { return __x == __y; }
8804 };
8805 template<typename _Tp>
8806 struct not_equal_to : public binary_function<_Tp, _Tp, bool>
8807 {
8808 bool
8809 operator()(const _Tp& __x, const _Tp& __y) const
8810 { return __x != __y; }
8811 };
8812 template<typename _Tp>
8813 struct greater : public binary_function<_Tp, _Tp, bool>
8814 {
8815 bool
8816 operator()(const _Tp& __x, const _Tp& __y) const
8817 { return __x > __y; }
8818 };
8819 template<typename _Tp>
8820 struct less : public binary_function<_Tp, _Tp, bool>
8821 {
8822 bool
8823 operator()(const _Tp& __x, const _Tp& __y) const
8824 { return __x < __y; }
8825 };
8826 template<typename _Tp>
8827 struct greater_equal : public binary_function<_Tp, _Tp, bool>
8828 {
8829 bool
8830 operator()(const _Tp& __x, const _Tp& __y) const
8831 { return __x >= __y; }
8832 };
8833 template<typename _Tp>
8834 struct less_equal : public binary_function<_Tp, _Tp, bool>
8835 {
8836 bool
8837 operator()(const _Tp& __x, const _Tp& __y) const
8838 { return __x <= __y; }
8839 };
8840 template<typename _Tp>
8841 struct logical_and : public binary_function<_Tp, _Tp, bool>
8842 {
8843 bool
8844 operator()(const _Tp& __x, const _Tp& __y) const
8845 { return __x && __y; }
8846 };
8847 template<typename _Tp>
8848 struct logical_or : public binary_function<_Tp, _Tp, bool>
8849 {
8850 bool
8851 operator()(const _Tp& __x, const _Tp& __y) const
8852 { return __x || __y; }
8853 };
8854 template<typename _Tp>
8855 struct logical_not : public unary_function<_Tp, bool>
8856 {
8857 bool
8858 operator()(const _Tp& __x) const
8859 { return !__x; }
8860 };
8861 template<typename _Tp>
8862 struct bit_and : public binary_function<_Tp, _Tp, _Tp>
8863 {
8864 _Tp
8865 operator()(const _Tp& __x, const _Tp& __y) const
8866 { return __x & __y; }
8867 };
8868 template<typename _Tp>
8869 struct bit_or : public binary_function<_Tp, _Tp, _Tp>
8870 {
8871 _Tp
8872 operator()(const _Tp& __x, const _Tp& __y) const
8873 { return __x | __y; }
8874 };
8875 template<typename _Tp>
8876 struct bit_xor : public binary_function<_Tp, _Tp, _Tp>
8877 {
8878 _Tp
8879 operator()(const _Tp& __x, const _Tp& __y) const
8880 { return __x ^ __y; }
8881 };
8882 template<typename _Predicate>
8883 class unary_negate
8884 : public unary_function<typename _Predicate::argument_type, bool>
8885 {
8886 protected:
8887 _Predicate _M_pred;
8888 public:
8889 explicit
8890 unary_negate(const _Predicate& __x) : _M_pred(__x) { }
8891 bool
8892 operator()(const typename _Predicate::argument_type& __x) const
8893 { return !_M_pred(__x); }
8894 };
8895 template<typename _Predicate>
8896 inline unary_negate<_Predicate>
8897 not1(const _Predicate& __pred)
8898 { return unary_negate<_Predicate>(__pred); }
8899 template<typename _Predicate>
8900 class binary_negate
8901 : public binary_function<typename _Predicate::first_argument_type,
8902 typename _Predicate::second_argument_type, bool>
8903 {
8904 protected:
8905 _Predicate _M_pred;
8906 public:
8907 explicit
8908 binary_negate(const _Predicate& __x) : _M_pred(__x) { }
8909 bool
8910 operator()(const typename _Predicate::first_argument_type& __x,
8911 const typename _Predicate::second_argument_type& __y) const
8912 { return !_M_pred(__x, __y); }
8913 };
8914 template<typename _Predicate>
8915 inline binary_negate<_Predicate>
8916 not2(const _Predicate& __pred)
8917 { return binary_negate<_Predicate>(__pred); }
8918 template<typename _Arg, typename _Result>
8919 class pointer_to_unary_function : public unary_function<_Arg, _Result>
8920 {
8921 protected:
8922 _Result (*_M_ptr)(_Arg);
8923 public:
8924 pointer_to_unary_function() { }
8925 explicit
8926 pointer_to_unary_function(_Result (*__x)(_Arg))
8927 : _M_ptr(__x) { }
8928 _Result
8929 operator()(_Arg __x) const
8930 { return _M_ptr(__x); }
8931 };
8932 template<typename _Arg, typename _Result>
8933 inline pointer_to_unary_function<_Arg, _Result>
8934 ptr_fun(_Result (*__x)(_Arg))
8935 { return pointer_to_unary_function<_Arg, _Result>(__x); }
8936 template<typename _Arg1, typename _Arg2, typename _Result>
8937 class pointer_to_binary_function
8938 : public binary_function<_Arg1, _Arg2, _Result>
8939 {
8940 protected:
8941 _Result (*_M_ptr)(_Arg1, _Arg2);
8942 public:
8943 pointer_to_binary_function() { }
8944 explicit
8945 pointer_to_binary_function(_Result (*__x)(_Arg1, _Arg2))
8946 : _M_ptr(__x) { }
8947 _Result
8948 operator()(_Arg1 __x, _Arg2 __y) const
8949 { return _M_ptr(__x, __y); }
8950 };
8951 template<typename _Arg1, typename _Arg2, typename _Result>
8952 inline pointer_to_binary_function<_Arg1, _Arg2, _Result>
8953 ptr_fun(_Result (*__x)(_Arg1, _Arg2))
8954 { return pointer_to_binary_function<_Arg1, _Arg2, _Result>(__x); }
8955 template<typename _Tp>
8956 struct _Identity : public unary_function<_Tp,_Tp>
8957 {
8958 _Tp&
8959 operator()(_Tp& __x) const
8960 { return __x; }
8961 const _Tp&
8962 operator()(const _Tp& __x) const
8963 { return __x; }
8964 };
8965 template<typename _Pair>
8966 struct _Select1st : public unary_function<_Pair,
8967 typename _Pair::first_type>
8968 {
8969 typename _Pair::first_type&
8970 operator()(_Pair& __x) const
8971 { return __x.first; }
8972 const typename _Pair::first_type&
8973 operator()(const _Pair& __x) const
8974 { return __x.first; }
8975 };
8976 template<typename _Pair>
8977 struct _Select2nd : public unary_function<_Pair,
8978 typename _Pair::second_type>
8979 {
8980 typename _Pair::second_type&
8981 operator()(_Pair& __x) const
8982 { return __x.second; }
8983 const typename _Pair::second_type&
8984 operator()(const _Pair& __x) const
8985 { return __x.second; }
8986 };
8987 template<typename _Ret, typename _Tp>
8988 class mem_fun_t : public unary_function<_Tp*, _Ret>
8989 {
8990 public:
8991 explicit
8992 mem_fun_t(_Ret (_Tp::*__pf)())
8993 : _M_f(__pf) { }
8994 _Ret
8995 operator()(_Tp* __p) const
8996 { return (__p->*_M_f)(); }
8997 private:
8998 _Ret (_Tp::*_M_f)();
8999 };
9000 template<typename _Ret, typename _Tp>
9001 class const_mem_fun_t : public unary_function<const _Tp*, _Ret>
9002 {
9003 public:
9004 explicit
9005 const_mem_fun_t(_Ret (_Tp::*__pf)() const)
9006 : _M_f(__pf) { }
9007 _Ret
9008 operator()(const _Tp* __p) const
9009 { return (__p->*_M_f)(); }
9010 private:
9011 _Ret (_Tp::*_M_f)() const;
9012 };
9013 template<typename _Ret, typename _Tp>
9014 class mem_fun_ref_t : public unary_function<_Tp, _Ret>
9015 {
9016 public:
9017 explicit
9018 mem_fun_ref_t(_Ret (_Tp::*__pf)())
9019 : _M_f(__pf) { }
9020 _Ret
9021 operator()(_Tp& __r) const
9022 { return (__r.*_M_f)(); }
9023 private:
9024 _Ret (_Tp::*_M_f)();
9025 };
9026 template<typename _Ret, typename _Tp>
9027 class const_mem_fun_ref_t : public unary_function<_Tp, _Ret>
9028 {
9029 public:
9030 explicit
9031 const_mem_fun_ref_t(_Ret (_Tp::*__pf)() const)
9032 : _M_f(__pf) { }
9033 _Ret
9034 operator()(const _Tp& __r) const
9035 { return (__r.*_M_f)(); }
9036 private:
9037 _Ret (_Tp::*_M_f)() const;
9038 };
9039 template<typename _Ret, typename _Tp, typename _Arg>
9040 class mem_fun1_t : public binary_function<_Tp*, _Arg, _Ret>
9041 {
9042 public:
9043 explicit
9044 mem_fun1_t(_Ret (_Tp::*__pf)(_Arg))
9045 : _M_f(__pf) { }
9046 _Ret
9047 operator()(_Tp* __p, _Arg __x) const
9048 { return (__p->*_M_f)(__x); }
9049 private:
9050 _Ret (_Tp::*_M_f)(_Arg);
9051 };
9052 template<typename _Ret, typename _Tp, typename _Arg>
9053 class const_mem_fun1_t : public binary_function<const _Tp*, _Arg, _Ret>
9054 {
9055 public:
9056 explicit
9057 const_mem_fun1_t(_Ret (_Tp::*__pf)(_Arg) const)
9058 : _M_f(__pf) { }
9059 _Ret
9060 operator()(const _Tp* __p, _Arg __x) const
9061 { return (__p->*_M_f)(__x); }
9062 private:
9063 _Ret (_Tp::*_M_f)(_Arg) const;
9064 };
9065 template<typename _Ret, typename _Tp, typename _Arg>
9066 class mem_fun1_ref_t : public binary_function<_Tp, _Arg, _Ret>
9067 {
9068 public:
9069 explicit
9070 mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg))
9071 : _M_f(__pf) { }
9072 _Ret
9073 operator()(_Tp& __r, _Arg __x) const
9074 { return (__r.*_M_f)(__x); }
9075 private:
9076 _Ret (_Tp::*_M_f)(_Arg);
9077 };
9078 template<typename _Ret, typename _Tp, typename _Arg>
9079 class const_mem_fun1_ref_t : public binary_function<_Tp, _Arg, _Ret>
9080 {
9081 public:
9082 explicit
9083 const_mem_fun1_ref_t(_Ret (_Tp::*__pf)(_Arg) const)
9084 : _M_f(__pf) { }
9085 _Ret
9086 operator()(const _Tp& __r, _Arg __x) const
9087 { return (__r.*_M_f)(__x); }
9088 private:
9089 _Ret (_Tp::*_M_f)(_Arg) const;
9090 };
9091 template<typename _Ret, typename _Tp>
9092 inline mem_fun_t<_Ret, _Tp>
9093 mem_fun(_Ret (_Tp::*__f)())
9094 { return mem_fun_t<_Ret, _Tp>(__f); }
9095 template<typename _Ret, typename _Tp>
9096 inline const_mem_fun_t<_Ret, _Tp>
9097 mem_fun(_Ret (_Tp::*__f)() const)
9098 { return const_mem_fun_t<_Ret, _Tp>(__f); }
9099 template<typename _Ret, typename _Tp>
9100 inline mem_fun_ref_t<_Ret, _Tp>
9101 mem_fun_ref(_Ret (_Tp::*__f)())
9102 { return mem_fun_ref_t<_Ret, _Tp>(__f); }
9103 template<typename _Ret, typename _Tp>
9104 inline const_mem_fun_ref_t<_Ret, _Tp>
9105 mem_fun_ref(_Ret (_Tp::*__f)() const)
9106 { return const_mem_fun_ref_t<_Ret, _Tp>(__f); }
9107 template<typename _Ret, typename _Tp, typename _Arg>
9108 inline mem_fun1_t<_Ret, _Tp, _Arg>
9109 mem_fun(_Ret (_Tp::*__f)(_Arg))
9110 { return mem_fun1_t<_Ret, _Tp, _Arg>(__f); }
9111 template<typename _Ret, typename _Tp, typename _Arg>
9112 inline const_mem_fun1_t<_Ret, _Tp, _Arg>
9113 mem_fun(_Ret (_Tp::*__f)(_Arg) const)
9114 { return const_mem_fun1_t<_Ret, _Tp, _Arg>(__f); }
9115 template<typename _Ret, typename _Tp, typename _Arg>
9116 inline mem_fun1_ref_t<_Ret, _Tp, _Arg>
9117 mem_fun_ref(_Ret (_Tp::*__f)(_Arg))
9118 { return mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); }
9119 template<typename _Ret, typename _Tp, typename _Arg>
9120 inline const_mem_fun1_ref_t<_Ret, _Tp, _Arg>
9121 mem_fun_ref(_Ret (_Tp::*__f)(_Arg) const)
9122 { return const_mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); }
9123}
9124namespace std __attribute__ ((__visibility__ ("default"))) {
9125 template<typename _Operation>
9126 class binder1st
9127 : public unary_function<typename _Operation::second_argument_type,
9128 typename _Operation::result_type>
9129 {
9130 protected:
9131 _Operation op;
9132 typename _Operation::first_argument_type value;
9133 public:
9134 binder1st(const _Operation& __x,
9135 const typename _Operation::first_argument_type& __y)
9136 : op(__x), value(__y) { }
9137 typename _Operation::result_type
9138 operator()(const typename _Operation::second_argument_type& __x) const
9139 { return op(value, __x); }
9140 typename _Operation::result_type
9141 operator()(typename _Operation::second_argument_type& __x) const
9142 { return op(value, __x); }
9143 } ;
9144 template<typename _Operation, typename _Tp>
9145 inline binder1st<_Operation>
9146 bind1st(const _Operation& __fn, const _Tp& __x)
9147 {
9148 typedef typename _Operation::first_argument_type _Arg1_type;
9149 return binder1st<_Operation>(__fn, _Arg1_type(__x));
9150 }
9151 template<typename _Operation>
9152 class binder2nd
9153 : public unary_function<typename _Operation::first_argument_type,
9154 typename _Operation::result_type>
9155 {
9156 protected:
9157 _Operation op;
9158 typename _Operation::second_argument_type value;
9159 public:
9160 binder2nd(const _Operation& __x,
9161 const typename _Operation::second_argument_type& __y)
9162 : op(__x), value(__y) { }
9163 typename _Operation::result_type
9164 operator()(const typename _Operation::first_argument_type& __x) const
9165 { return op(__x, value); }
9166 typename _Operation::result_type
9167 operator()(typename _Operation::first_argument_type& __x) const
9168 { return op(__x, value); }
9169 } ;
9170 template<typename _Operation, typename _Tp>
9171 inline binder2nd<_Operation>
9172 bind2nd(const _Operation& __fn, const _Tp& __x)
9173 {
9174 typedef typename _Operation::second_argument_type _Arg2_type;
9175 return binder2nd<_Operation>(__fn, _Arg2_type(__x));
9176 }
9177}
9178
9179struct sched_param
9180 {
9181 int __sched_priority;
9182 };
9183extern "C" {
9184extern int clone (int (*__fn) (void *__arg), void *__child_stack,
9185 int __flags, void *__arg, ...) throw ();
9186extern int unshare (int __flags) throw ();
9187extern int sched_getcpu (void) throw ();
9188}
9189struct __sched_param
9190 {
9191 int __sched_priority;
9192 };
9193typedef unsigned long int __cpu_mask;
9194typedef struct
9195{
9196 __cpu_mask __bits[1024 / (8 * sizeof (__cpu_mask))];
9197} cpu_set_t;
9198extern "C" {
9199extern int __sched_cpucount (size_t __setsize, const cpu_set_t *__setp)
9200 throw ();
9201extern cpu_set_t *__sched_cpualloc (size_t __count) throw () ;
9202extern void __sched_cpufree (cpu_set_t *__set) throw ();
9203}
9204extern "C" {
9205extern int sched_setparam (__pid_t __pid, __const struct sched_param *__param)
9206 throw ();
9207extern int sched_getparam (__pid_t __pid, struct sched_param *__param) throw ();
9208extern int sched_setscheduler (__pid_t __pid, int __policy,
9209 __const struct sched_param *__param) throw ();
9210extern int sched_getscheduler (__pid_t __pid) throw ();
9211extern int sched_yield (void) throw ();
9212extern int sched_get_priority_max (int __algorithm) throw ();
9213extern int sched_get_priority_min (int __algorithm) throw ();
9214extern int sched_rr_get_interval (__pid_t __pid, struct timespec *__t) throw ();
9215extern int sched_setaffinity (__pid_t __pid, size_t __cpusetsize,
9216 __const cpu_set_t *__cpuset) throw ();
9217extern int sched_getaffinity (__pid_t __pid, size_t __cpusetsize,
9218 cpu_set_t *__cpuset) throw ();
9219}
9220enum
9221{
9222 PTHREAD_CREATE_JOINABLE,
9223 PTHREAD_CREATE_DETACHED
9224};
9225enum
9226{
9227 PTHREAD_MUTEX_TIMED_NP,
9228 PTHREAD_MUTEX_RECURSIVE_NP,
9229 PTHREAD_MUTEX_ERRORCHECK_NP,
9230 PTHREAD_MUTEX_ADAPTIVE_NP
9231 ,
9232 PTHREAD_MUTEX_NORMAL = PTHREAD_MUTEX_TIMED_NP,
9233 PTHREAD_MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE_NP,
9234 PTHREAD_MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK_NP,
9235 PTHREAD_MUTEX_DEFAULT = PTHREAD_MUTEX_NORMAL
9236 , PTHREAD_MUTEX_FAST_NP = PTHREAD_MUTEX_TIMED_NP
9237};
9238enum
9239{
9240 PTHREAD_MUTEX_STALLED,
9241 PTHREAD_MUTEX_STALLED_NP = PTHREAD_MUTEX_STALLED,
9242 PTHREAD_MUTEX_ROBUST,
9243 PTHREAD_MUTEX_ROBUST_NP = PTHREAD_MUTEX_ROBUST
9244};
9245enum
9246{
9247 PTHREAD_PRIO_NONE,
9248 PTHREAD_PRIO_INHERIT,
9249 PTHREAD_PRIO_PROTECT
9250};
9251enum
9252{
9253 PTHREAD_RWLOCK_PREFER_READER_NP,
9254 PTHREAD_RWLOCK_PREFER_WRITER_NP,
9255 PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP,
9256 PTHREAD_RWLOCK_DEFAULT_NP = PTHREAD_RWLOCK_PREFER_READER_NP
9257};
9258enum
9259{
9260 PTHREAD_INHERIT_SCHED,
9261 PTHREAD_EXPLICIT_SCHED
9262};
9263enum
9264{
9265 PTHREAD_SCOPE_SYSTEM,
9266 PTHREAD_SCOPE_PROCESS
9267};
9268enum
9269{
9270 PTHREAD_PROCESS_PRIVATE,
9271 PTHREAD_PROCESS_SHARED
9272};
9273struct _pthread_cleanup_buffer
9274{
9275 void (*__routine) (void *);
9276 void *__arg;
9277 int __canceltype;
9278 struct _pthread_cleanup_buffer *__prev;
9279};
9280enum
9281{
9282 PTHREAD_CANCEL_ENABLE,
9283 PTHREAD_CANCEL_DISABLE
9284};
9285enum
9286{
9287 PTHREAD_CANCEL_DEFERRED,
9288 PTHREAD_CANCEL_ASYNCHRONOUS
9289};
9290extern "C" {
9291extern int pthread_create (pthread_t *__restrict __newthread,
9292 __const pthread_attr_t *__restrict __attr,
9293 void *(*__start_routine) (void *),
9294 void *__restrict __arg) throw () __attribute__ ((__nonnull__ (1, 3)));
9295extern void pthread_exit (void *__retval) __attribute__ ((__noreturn__));
9296extern int pthread_join (pthread_t __th, void **__thread_return);
9297extern int pthread_tryjoin_np (pthread_t __th, void **__thread_return) throw ();
9298extern int pthread_timedjoin_np (pthread_t __th, void **__thread_return,
9299 __const struct timespec *__abstime);
9300extern int pthread_detach (pthread_t __th) throw ();
9301extern pthread_t pthread_self (void) throw () __attribute__ ((__const__));
9302extern int pthread_equal (pthread_t __thread1, pthread_t __thread2) throw ();
9303extern int pthread_attr_init (pthread_attr_t *__attr) throw () __attribute__ ((__nonnull__ (1)));
9304extern int pthread_attr_destroy (pthread_attr_t *__attr)
9305 throw () __attribute__ ((__nonnull__ (1)));
9306extern int pthread_attr_getdetachstate (__const pthread_attr_t *__attr,
9307 int *__detachstate)
9308 throw () __attribute__ ((__nonnull__ (1, 2)));
9309extern int pthread_attr_setdetachstate (pthread_attr_t *__attr,
9310 int __detachstate)
9311 throw () __attribute__ ((__nonnull__ (1)));
9312extern int pthread_attr_getguardsize (__const pthread_attr_t *__attr,
9313 size_t *__guardsize)
9314 throw () __attribute__ ((__nonnull__ (1, 2)));
9315extern int pthread_attr_setguardsize (pthread_attr_t *__attr,
9316 size_t __guardsize)
9317 throw () __attribute__ ((__nonnull__ (1)));
9318extern int pthread_attr_getschedparam (__const pthread_attr_t *__restrict
9319 __attr,
9320 struct sched_param *__restrict __param)
9321 throw () __attribute__ ((__nonnull__ (1, 2)));
9322extern int pthread_attr_setschedparam (pthread_attr_t *__restrict __attr,
9323 __const struct sched_param *__restrict
9324 __param) throw () __attribute__ ((__nonnull__ (1, 2)));
9325extern int pthread_attr_getschedpolicy (__const pthread_attr_t *__restrict
9326 __attr, int *__restrict __policy)
9327 throw () __attribute__ ((__nonnull__ (1, 2)));
9328extern int pthread_attr_setschedpolicy (pthread_attr_t *__attr, int __policy)
9329 throw () __attribute__ ((__nonnull__ (1)));
9330extern int pthread_attr_getinheritsched (__const pthread_attr_t *__restrict
9331 __attr, int *__restrict __inherit)
9332 throw () __attribute__ ((__nonnull__ (1, 2)));
9333extern int pthread_attr_setinheritsched (pthread_attr_t *__attr,
9334 int __inherit)
9335 throw () __attribute__ ((__nonnull__ (1)));
9336extern int pthread_attr_getscope (__const pthread_attr_t *__restrict __attr,
9337 int *__restrict __scope)
9338 throw () __attribute__ ((__nonnull__ (1, 2)));
9339extern int pthread_attr_setscope (pthread_attr_t *__attr, int __scope)
9340 throw () __attribute__ ((__nonnull__ (1)));
9341extern int pthread_attr_getstackaddr (__const pthread_attr_t *__restrict
9342 __attr, void **__restrict __stackaddr)
9343 throw () __attribute__ ((__nonnull__ (1, 2))) __attribute__ ((__deprecated__));
9344extern int pthread_attr_setstackaddr (pthread_attr_t *__attr,
9345 void *__stackaddr)
9346 throw () __attribute__ ((__nonnull__ (1))) __attribute__ ((__deprecated__));
9347extern int pthread_attr_getstacksize (__const pthread_attr_t *__restrict
9348 __attr, size_t *__restrict __stacksize)
9349 throw () __attribute__ ((__nonnull__ (1, 2)));
9350extern int pthread_attr_setstacksize (pthread_attr_t *__attr,
9351 size_t __stacksize)
9352 throw () __attribute__ ((__nonnull__ (1)));
9353extern int pthread_attr_getstack (__const pthread_attr_t *__restrict __attr,
9354 void **__restrict __stackaddr,
9355 size_t *__restrict __stacksize)
9356 throw () __attribute__ ((__nonnull__ (1, 2, 3)));
9357extern int pthread_attr_setstack (pthread_attr_t *__attr, void *__stackaddr,
9358 size_t __stacksize) throw () __attribute__ ((__nonnull__ (1)));
9359extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr,
9360 size_t __cpusetsize,
9361 __const cpu_set_t *__cpuset)
9362 throw () __attribute__ ((__nonnull__ (1, 3)));
9363extern int pthread_attr_getaffinity_np (__const pthread_attr_t *__attr,
9364 size_t __cpusetsize,
9365 cpu_set_t *__cpuset)
9366 throw () __attribute__ ((__nonnull__ (1, 3)));
9367extern int pthread_getattr_np (pthread_t __th, pthread_attr_t *__attr)
9368 throw () __attribute__ ((__nonnull__ (2)));
9369extern int pthread_setschedparam (pthread_t __target_thread, int __policy,
9370 __const struct sched_param *__param)
9371 throw () __attribute__ ((__nonnull__ (3)));
9372extern int pthread_getschedparam (pthread_t __target_thread,
9373 int *__restrict __policy,
9374 struct sched_param *__restrict __param)
9375 throw () __attribute__ ((__nonnull__ (2, 3)));
9376extern int pthread_setschedprio (pthread_t __target_thread, int __prio)
9377 throw ();
9378extern int pthread_getconcurrency (void) throw ();
9379extern int pthread_setconcurrency (int __level) throw ();
9380extern int pthread_yield (void) throw ();
9381extern int pthread_setaffinity_np (pthread_t __th, size_t __cpusetsize,
9382 __const cpu_set_t *__cpuset)
9383 throw () __attribute__ ((__nonnull__ (3)));
9384extern int pthread_getaffinity_np (pthread_t __th, size_t __cpusetsize,
9385 cpu_set_t *__cpuset)
9386 throw () __attribute__ ((__nonnull__ (3)));
9387extern int pthread_once (pthread_once_t *__once_control,
9388 void (*__init_routine) (void)) __attribute__ ((__nonnull__ (1, 2)));
9389extern int pthread_setcancelstate (int __state, int *__oldstate);
9390extern int pthread_setcanceltype (int __type, int *__oldtype);
9391extern int pthread_cancel (pthread_t __th);
9392extern void pthread_testcancel (void);
9393typedef struct
9394{
9395 struct
9396 {
9397 __jmp_buf __cancel_jmp_buf;
9398 int __mask_was_saved;
9399 } __cancel_jmp_buf[1];
9400 void *__pad[4];
9401} __pthread_unwind_buf_t __attribute__ ((__aligned__));
9402struct __pthread_cleanup_frame
9403{
9404 void (*__cancel_routine) (void *);
9405 void *__cancel_arg;
9406 int __do_it;
9407 int __cancel_type;
9408};
9409class __pthread_cleanup_class
9410{
9411 void (*__cancel_routine) (void *);
9412 void *__cancel_arg;
9413 int __do_it;
9414 int __cancel_type;
9415 public:
9416 __pthread_cleanup_class (void (*__fct) (void *), void *__arg)
9417 : __cancel_routine (__fct), __cancel_arg (__arg), __do_it (1) { }
9418 ~__pthread_cleanup_class () { if (__do_it) __cancel_routine (__cancel_arg); }
9419 void __setdoit (int __newval) { __do_it = __newval; }
9420 void __defer () { pthread_setcanceltype (PTHREAD_CANCEL_DEFERRED,
9421 &__cancel_type); }
9422 void __restore () const { pthread_setcanceltype (__cancel_type, 0); }
9423};
9424struct __jmp_buf_tag;
9425extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask) throw ();
9426extern int pthread_mutex_init (pthread_mutex_t *__mutex,
9427 __const pthread_mutexattr_t *__mutexattr)
9428 throw () __attribute__ ((__nonnull__ (1)));
9429extern int pthread_mutex_destroy (pthread_mutex_t *__mutex)
9430 throw () __attribute__ ((__nonnull__ (1)));
9431extern int pthread_mutex_trylock (pthread_mutex_t *__mutex)
9432 throw () __attribute__ ((__nonnull__ (1)));
9433extern int pthread_mutex_lock (pthread_mutex_t *__mutex)
9434 throw () __attribute__ ((__nonnull__ (1)));
9435extern int pthread_mutex_timedlock (pthread_mutex_t *__restrict __mutex,
9436 __const struct timespec *__restrict
9437 __abstime) throw () __attribute__ ((__nonnull__ (1, 2)));
9438extern int pthread_mutex_unlock (pthread_mutex_t *__mutex)
9439 throw () __attribute__ ((__nonnull__ (1)));
9440extern int pthread_mutex_getprioceiling (__const pthread_mutex_t *
9441 __restrict __mutex,
9442 int *__restrict __prioceiling)
9443 throw () __attribute__ ((__nonnull__ (1, 2)));
9444extern int pthread_mutex_setprioceiling (pthread_mutex_t *__restrict __mutex,
9445 int __prioceiling,
9446 int *__restrict __old_ceiling)
9447 throw () __attribute__ ((__nonnull__ (1, 3)));
9448extern int pthread_mutex_consistent_np (pthread_mutex_t *__mutex)
9449 throw () __attribute__ ((__nonnull__ (1)));
9450extern int pthread_mutex_consistent_np (pthread_mutex_t *__mutex)
9451 throw () __attribute__ ((__nonnull__ (1)));
9452extern int pthread_mutexattr_init (pthread_mutexattr_t *__attr)
9453 throw () __attribute__ ((__nonnull__ (1)));
9454extern int pthread_mutexattr_destroy (pthread_mutexattr_t *__attr)
9455 throw () __attribute__ ((__nonnull__ (1)));
9456extern int pthread_mutexattr_getpshared (__const pthread_mutexattr_t *
9457 __restrict __attr,
9458 int *__restrict __pshared)
9459 throw () __attribute__ ((__nonnull__ (1, 2)));
9460extern int pthread_mutexattr_setpshared (pthread_mutexattr_t *__attr,
9461 int __pshared)
9462 throw () __attribute__ ((__nonnull__ (1)));
9463extern int pthread_mutexattr_gettype (__const pthread_mutexattr_t *__restrict
9464 __attr, int *__restrict __kind)
9465 throw () __attribute__ ((__nonnull__ (1, 2)));
9466extern int pthread_mutexattr_settype (pthread_mutexattr_t *__attr, int __kind)
9467 throw () __attribute__ ((__nonnull__ (1)));
9468extern int pthread_mutexattr_getprotocol (__const pthread_mutexattr_t *
9469 __restrict __attr,
9470 int *__restrict __protocol)
9471 throw () __attribute__ ((__nonnull__ (1, 2)));
9472extern int pthread_mutexattr_setprotocol (pthread_mutexattr_t *__attr,
9473 int __protocol)
9474 throw () __attribute__ ((__nonnull__ (1)));
9475extern int pthread_mutexattr_getprioceiling (__const pthread_mutexattr_t *
9476 __restrict __attr,
9477 int *__restrict __prioceiling)
9478 throw () __attribute__ ((__nonnull__ (1, 2)));
9479extern int pthread_mutexattr_setprioceiling (pthread_mutexattr_t *__attr,
9480 int __prioceiling)
9481 throw () __attribute__ ((__nonnull__ (1)));
9482extern int pthread_mutexattr_getrobust (__const pthread_mutexattr_t *__attr,
9483 int *__robustness)
9484 throw () __attribute__ ((__nonnull__ (1, 2)));
9485extern int pthread_mutexattr_getrobust_np (__const pthread_mutexattr_t *__attr,
9486 int *__robustness)
9487 throw () __attribute__ ((__nonnull__ (1, 2)));
9488extern int pthread_mutexattr_setrobust (pthread_mutexattr_t *__attr,
9489 int __robustness)
9490 throw () __attribute__ ((__nonnull__ (1)));
9491extern int pthread_mutexattr_setrobust_np (pthread_mutexattr_t *__attr,
9492 int __robustness)
9493 throw () __attribute__ ((__nonnull__ (1)));
9494extern int pthread_rwlock_init (pthread_rwlock_t *__restrict __rwlock,
9495 __const pthread_rwlockattr_t *__restrict
9496 __attr) throw () __attribute__ ((__nonnull__ (1)));
9497extern int pthread_rwlock_destroy (pthread_rwlock_t *__rwlock)
9498 throw () __attribute__ ((__nonnull__ (1)));
9499extern int pthread_rwlock_rdlock (pthread_rwlock_t *__rwlock)
9500 throw () __attribute__ ((__nonnull__ (1)));
9501extern int pthread_rwlock_tryrdlock (pthread_rwlock_t *__rwlock)
9502 throw () __attribute__ ((__nonnull__ (1)));
9503extern int pthread_rwlock_timedrdlock (pthread_rwlock_t *__restrict __rwlock,
9504 __const struct timespec *__restrict
9505 __abstime) throw () __attribute__ ((__nonnull__ (1, 2)));
9506extern int pthread_rwlock_wrlock (pthread_rwlock_t *__rwlock)
9507 throw () __attribute__ ((__nonnull__ (1)));
9508extern int pthread_rwlock_trywrlock (pthread_rwlock_t *__rwlock)
9509 throw () __attribute__ ((__nonnull__ (1)));
9510extern int pthread_rwlock_timedwrlock (pthread_rwlock_t *__restrict __rwlock,
9511 __const struct timespec *__restrict
9512 __abstime) throw () __attribute__ ((__nonnull__ (1, 2)));
9513extern int pthread_rwlock_unlock (pthread_rwlock_t *__rwlock)
9514 throw () __attribute__ ((__nonnull__ (1)));
9515extern int pthread_rwlockattr_init (pthread_rwlockattr_t *__attr)
9516 throw () __attribute__ ((__nonnull__ (1)));
9517extern int pthread_rwlockattr_destroy (pthread_rwlockattr_t *__attr)
9518 throw () __attribute__ ((__nonnull__ (1)));
9519extern int pthread_rwlockattr_getpshared (__const pthread_rwlockattr_t *
9520 __restrict __attr,
9521 int *__restrict __pshared)
9522 throw () __attribute__ ((__nonnull__ (1, 2)));
9523extern int pthread_rwlockattr_setpshared (pthread_rwlockattr_t *__attr,
9524 int __pshared)
9525 throw () __attribute__ ((__nonnull__ (1)));
9526extern int pthread_rwlockattr_getkind_np (__const pthread_rwlockattr_t *
9527 __restrict __attr,
9528 int *__restrict __pref)
9529 throw () __attribute__ ((__nonnull__ (1, 2)));
9530extern int pthread_rwlockattr_setkind_np (pthread_rwlockattr_t *__attr,
9531 int __pref) throw () __attribute__ ((__nonnull__ (1)));
9532extern int pthread_cond_init (pthread_cond_t *__restrict __cond,
9533 __const pthread_condattr_t *__restrict
9534 __cond_attr) throw () __attribute__ ((__nonnull__ (1)));
9535extern int pthread_cond_destroy (pthread_cond_t *__cond)
9536 throw () __attribute__ ((__nonnull__ (1)));
9537extern int pthread_cond_signal (pthread_cond_t *__cond)
9538 throw () __attribute__ ((__nonnull__ (1)));
9539extern int pthread_cond_broadcast (pthread_cond_t *__cond)
9540 throw () __attribute__ ((__nonnull__ (1)));
9541extern int pthread_cond_wait (pthread_cond_t *__restrict __cond,
9542 pthread_mutex_t *__restrict __mutex)
9543 __attribute__ ((__nonnull__ (1, 2)));
9544extern int pthread_cond_timedwait (pthread_cond_t *__restrict __cond,
9545 pthread_mutex_t *__restrict __mutex,
9546 __const struct timespec *__restrict
9547 __abstime) __attribute__ ((__nonnull__ (1, 2, 3)));
9548extern int pthread_condattr_init (pthread_condattr_t *__attr)
9549 throw () __attribute__ ((__nonnull__ (1)));
9550extern int pthread_condattr_destroy (pthread_condattr_t *__attr)
9551 throw () __attribute__ ((__nonnull__ (1)));
9552extern int pthread_condattr_getpshared (__const pthread_condattr_t *
9553 __restrict __attr,
9554 int *__restrict __pshared)
9555 throw () __attribute__ ((__nonnull__ (1, 2)));
9556extern int pthread_condattr_setpshared (pthread_condattr_t *__attr,
9557 int __pshared) throw () __attribute__ ((__nonnull__ (1)));
9558extern int pthread_condattr_getclock (__const pthread_condattr_t *
9559 __restrict __attr,
9560 __clockid_t *__restrict __clock_id)
9561 throw () __attribute__ ((__nonnull__ (1, 2)));
9562extern int pthread_condattr_setclock (pthread_condattr_t *__attr,
9563 __clockid_t __clock_id)
9564 throw () __attribute__ ((__nonnull__ (1)));
9565extern int pthread_spin_init (pthread_spinlock_t *__lock, int __pshared)
9566 throw () __attribute__ ((__nonnull__ (1)));
9567extern int pthread_spin_destroy (pthread_spinlock_t *__lock)
9568 throw () __attribute__ ((__nonnull__ (1)));
9569extern int pthread_spin_lock (pthread_spinlock_t *__lock)
9570 throw () __attribute__ ((__nonnull__ (1)));
9571extern int pthread_spin_trylock (pthread_spinlock_t *__lock)
9572 throw () __attribute__ ((__nonnull__ (1)));
9573extern int pthread_spin_unlock (pthread_spinlock_t *__lock)
9574 throw () __attribute__ ((__nonnull__ (1)));
9575extern int pthread_barrier_init (pthread_barrier_t *__restrict __barrier,
9576 __const pthread_barrierattr_t *__restrict
9577 __attr, unsigned int __count)
9578 throw () __attribute__ ((__nonnull__ (1)));
9579extern int pthread_barrier_destroy (pthread_barrier_t *__barrier)
9580 throw () __attribute__ ((__nonnull__ (1)));
9581extern int pthread_barrier_wait (pthread_barrier_t *__barrier)
9582 throw () __attribute__ ((__nonnull__ (1)));
9583extern int pthread_barrierattr_init (pthread_barrierattr_t *__attr)
9584 throw () __attribute__ ((__nonnull__ (1)));
9585extern int pthread_barrierattr_destroy (pthread_barrierattr_t *__attr)
9586 throw () __attribute__ ((__nonnull__ (1)));
9587extern int pthread_barrierattr_getpshared (__const pthread_barrierattr_t *
9588 __restrict __attr,
9589 int *__restrict __pshared)
9590 throw () __attribute__ ((__nonnull__ (1, 2)));
9591extern int pthread_barrierattr_setpshared (pthread_barrierattr_t *__attr,
9592 int __pshared)
9593 throw () __attribute__ ((__nonnull__ (1)));
9594extern int pthread_key_create (pthread_key_t *__key,
9595 void (*__destr_function) (void *))
9596 throw () __attribute__ ((__nonnull__ (1)));
9597extern int pthread_key_delete (pthread_key_t __key) throw ();
9598extern void *pthread_getspecific (pthread_key_t __key) throw ();
9599extern int pthread_setspecific (pthread_key_t __key,
9600 __const void *__pointer) throw () ;
9601extern int pthread_getcpuclockid (pthread_t __thread_id,
9602 __clockid_t *__clock_id)
9603 throw () __attribute__ ((__nonnull__ (2)));
9604extern int pthread_atfork (void (*__prepare) (void),
9605 void (*__parent) (void),
9606 void (*__child) (void)) throw ();
9607}
9608typedef pthread_t __gthread_t;
9609typedef pthread_key_t __gthread_key_t;
9610typedef pthread_once_t __gthread_once_t;
9611typedef pthread_mutex_t __gthread_mutex_t;
9612typedef pthread_mutex_t __gthread_recursive_mutex_t;
9613typedef pthread_cond_t __gthread_cond_t;
9614typedef struct timespec __gthread_time_t;
9615static __typeof(pthread_once) __gthrw_pthread_once __attribute__ ((__weakref__("pthread_once")));
9616static __typeof(pthread_getspecific) __gthrw_pthread_getspecific __attribute__ ((__weakref__("pthread_getspecific")));
9617static __typeof(pthread_setspecific) __gthrw_pthread_setspecific __attribute__ ((__weakref__("pthread_setspecific")));
9618static __typeof(pthread_create) __gthrw_pthread_create __attribute__ ((__weakref__("pthread_create")));
9619static __typeof(pthread_join) __gthrw_pthread_join __attribute__ ((__weakref__("pthread_join")));
9620static __typeof(pthread_equal) __gthrw_pthread_equal __attribute__ ((__weakref__("pthread_equal")));
9621static __typeof(pthread_self) __gthrw_pthread_self __attribute__ ((__weakref__("pthread_self")));
9622static __typeof(pthread_detach) __gthrw_pthread_detach __attribute__ ((__weakref__("pthread_detach")));
9623static __typeof(pthread_cancel) __gthrw_pthread_cancel __attribute__ ((__weakref__("pthread_cancel")));
9624static __typeof(sched_yield) __gthrw_sched_yield __attribute__ ((__weakref__("sched_yield")));
9625static __typeof(pthread_mutex_lock) __gthrw_pthread_mutex_lock __attribute__ ((__weakref__("pthread_mutex_lock")));
9626static __typeof(pthread_mutex_trylock) __gthrw_pthread_mutex_trylock __attribute__ ((__weakref__("pthread_mutex_trylock")));
9627static __typeof(pthread_mutex_timedlock) __gthrw_pthread_mutex_timedlock __attribute__ ((__weakref__("pthread_mutex_timedlock")));
9628static __typeof(pthread_mutex_unlock) __gthrw_pthread_mutex_unlock __attribute__ ((__weakref__("pthread_mutex_unlock")));
9629static __typeof(pthread_mutex_init) __gthrw_pthread_mutex_init __attribute__ ((__weakref__("pthread_mutex_init")));
9630static __typeof(pthread_mutex_destroy) __gthrw_pthread_mutex_destroy __attribute__ ((__weakref__("pthread_mutex_destroy")));
9631static __typeof(pthread_cond_broadcast) __gthrw_pthread_cond_broadcast __attribute__ ((__weakref__("pthread_cond_broadcast")));
9632static __typeof(pthread_cond_signal) __gthrw_pthread_cond_signal __attribute__ ((__weakref__("pthread_cond_signal")));
9633static __typeof(pthread_cond_wait) __gthrw_pthread_cond_wait __attribute__ ((__weakref__("pthread_cond_wait")));
9634static __typeof(pthread_cond_timedwait) __gthrw_pthread_cond_timedwait __attribute__ ((__weakref__("pthread_cond_timedwait")));
9635static __typeof(pthread_cond_destroy) __gthrw_pthread_cond_destroy __attribute__ ((__weakref__("pthread_cond_destroy")));
9636static __typeof(pthread_key_create) __gthrw_pthread_key_create __attribute__ ((__weakref__("pthread_key_create")));
9637static __typeof(pthread_key_delete) __gthrw_pthread_key_delete __attribute__ ((__weakref__("pthread_key_delete")));
9638static __typeof(pthread_mutexattr_init) __gthrw_pthread_mutexattr_init __attribute__ ((__weakref__("pthread_mutexattr_init")));
9639static __typeof(pthread_mutexattr_settype) __gthrw_pthread_mutexattr_settype __attribute__ ((__weakref__("pthread_mutexattr_settype")));
9640static __typeof(pthread_mutexattr_destroy) __gthrw_pthread_mutexattr_destroy __attribute__ ((__weakref__("pthread_mutexattr_destroy")));
9641static inline int
9642__gthread_active_p (void)
9643{
9644 static void *const __gthread_active_ptr
9645 = __extension__ (void *) &__gthrw_pthread_cancel;
9646 return __gthread_active_ptr != 0;
9647}
9648static inline int
9649__gthread_create (__gthread_t *__threadid, void *(*__func) (void*),
9650 void *__args)
9651{
9652 return __gthrw_pthread_create (__threadid, __null, __func, __args);
9653}
9654static inline int
9655__gthread_join (__gthread_t __threadid, void **__value_ptr)
9656{
9657 return __gthrw_pthread_join (__threadid, __value_ptr);
9658}
9659static inline int
9660__gthread_detach (__gthread_t __threadid)
9661{
9662 return __gthrw_pthread_detach (__threadid);
9663}
9664static inline int
9665__gthread_equal (__gthread_t __t1, __gthread_t __t2)
9666{
9667 return __gthrw_pthread_equal (__t1, __t2);
9668}
9669static inline __gthread_t
9670__gthread_self (void)
9671{
9672 return __gthrw_pthread_self ();
9673}
9674static inline int
9675__gthread_yield (void)
9676{
9677 return __gthrw_sched_yield ();
9678}
9679static inline int
9680__gthread_once (__gthread_once_t *__once, void (*__func) (void))
9681{
9682 if (__gthread_active_p ())
9683 return __gthrw_pthread_once (__once, __func);
9684 else
9685 return -1;
9686}
9687static inline int
9688__gthread_key_create (__gthread_key_t *__key, void (*__dtor) (void *))
9689{
9690 return __gthrw_pthread_key_create (__key, __dtor);
9691}
9692static inline int
9693__gthread_key_delete (__gthread_key_t __key)
9694{
9695 return __gthrw_pthread_key_delete (__key);
9696}
9697static inline void *
9698__gthread_getspecific (__gthread_key_t __key)
9699{
9700 return __gthrw_pthread_getspecific (__key);
9701}
9702static inline int
9703__gthread_setspecific (__gthread_key_t __key, const void *__ptr)
9704{
9705 return __gthrw_pthread_setspecific (__key, __ptr);
9706}
9707static inline int
9708__gthread_mutex_destroy (__gthread_mutex_t *__mutex)
9709{
9710 if (__gthread_active_p ())
9711 return __gthrw_pthread_mutex_destroy (__mutex);
9712 else
9713 return 0;
9714}
9715static inline int
9716__gthread_mutex_lock (__gthread_mutex_t *__mutex)
9717{
9718 if (__gthread_active_p ())
9719 return __gthrw_pthread_mutex_lock (__mutex);
9720 else
9721 return 0;
9722}
9723static inline int
9724__gthread_mutex_trylock (__gthread_mutex_t *__mutex)
9725{
9726 if (__gthread_active_p ())
9727 return __gthrw_pthread_mutex_trylock (__mutex);
9728 else
9729 return 0;
9730}
9731static inline int
9732__gthread_mutex_timedlock (__gthread_mutex_t *__mutex,
9733 const __gthread_time_t *__abs_timeout)
9734{
9735 if (__gthread_active_p ())
9736 return __gthrw_pthread_mutex_timedlock (__mutex, __abs_timeout);
9737 else
9738 return 0;
9739}
9740static inline int
9741__gthread_mutex_unlock (__gthread_mutex_t *__mutex)
9742{
9743 if (__gthread_active_p ())
9744 return __gthrw_pthread_mutex_unlock (__mutex);
9745 else
9746 return 0;
9747}
9748static inline int
9749__gthread_recursive_mutex_lock (__gthread_recursive_mutex_t *__mutex)
9750{
9751 return __gthread_mutex_lock (__mutex);
9752}
9753static inline int
9754__gthread_recursive_mutex_trylock (__gthread_recursive_mutex_t *__mutex)
9755{
9756 return __gthread_mutex_trylock (__mutex);
9757}
9758static inline int
9759__gthread_recursive_mutex_timedlock (__gthread_recursive_mutex_t *__mutex,
9760 const __gthread_time_t *__abs_timeout)
9761{
9762 return __gthread_mutex_timedlock (__mutex, __abs_timeout);
9763}
9764static inline int
9765__gthread_recursive_mutex_unlock (__gthread_recursive_mutex_t *__mutex)
9766{
9767 return __gthread_mutex_unlock (__mutex);
9768}
9769static inline int
9770__gthread_cond_broadcast (__gthread_cond_t *__cond)
9771{
9772 return __gthrw_pthread_cond_broadcast (__cond);
9773}
9774static inline int
9775__gthread_cond_signal (__gthread_cond_t *__cond)
9776{
9777 return __gthrw_pthread_cond_signal (__cond);
9778}
9779static inline int
9780__gthread_cond_wait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex)
9781{
9782 return __gthrw_pthread_cond_wait (__cond, __mutex);
9783}
9784static inline int
9785__gthread_cond_timedwait (__gthread_cond_t *__cond, __gthread_mutex_t *__mutex,
9786 const __gthread_time_t *__abs_timeout)
9787{
9788 return __gthrw_pthread_cond_timedwait (__cond, __mutex, __abs_timeout);
9789}
9790static inline int
9791__gthread_cond_wait_recursive (__gthread_cond_t *__cond,
9792 __gthread_recursive_mutex_t *__mutex)
9793{
9794 return __gthread_cond_wait (__cond, __mutex);
9795}
9796static inline int
9797__gthread_cond_timedwait_recursive (__gthread_cond_t *__cond,
9798 __gthread_recursive_mutex_t *__mutex,
9799 const __gthread_time_t *__abs_timeout)
9800{
9801 return __gthread_cond_timedwait (__cond, __mutex, __abs_timeout);
9802}
9803static inline int
9804__gthread_cond_destroy (__gthread_cond_t* __cond)
9805{
9806 return __gthrw_pthread_cond_destroy (__cond);
9807}
9808typedef int _Atomic_word;
9809namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
9810 static inline _Atomic_word
9811 __exchange_and_add(volatile _Atomic_word* __mem, int __val)
9812 { return __sync_fetch_and_add(__mem, __val); }
9813 static inline void
9814 __atomic_add(volatile _Atomic_word* __mem, int __val)
9815 { __sync_fetch_and_add(__mem, __val); }
9816 static inline _Atomic_word
9817 __exchange_and_add_single(_Atomic_word* __mem, int __val)
9818 {
9819 _Atomic_word __result = *__mem;
9820 *__mem += __val;
9821 return __result;
9822 }
9823 static inline void
9824 __atomic_add_single(_Atomic_word* __mem, int __val)
9825 { *__mem += __val; }
9826 static inline _Atomic_word
9827 __attribute__ ((__unused__))
9828 __exchange_and_add_dispatch(_Atomic_word* __mem, int __val)
9829 {
9830 if (__gthread_active_p())
9831 return __exchange_and_add(__mem, __val);
9832 else
9833 return __exchange_and_add_single(__mem, __val);
9834 }
9835 static inline void
9836 __attribute__ ((__unused__))
9837 __atomic_add_dispatch(_Atomic_word* __mem, int __val)
9838 {
9839 if (__gthread_active_p())
9840 __atomic_add(__mem, __val);
9841 else
9842 __atomic_add_single(__mem, __val);
9843 }
9844}
9845namespace std __attribute__ ((__visibility__ ("default"))) {
9846 template<typename _CharT, typename _Traits, typename _Alloc>
9847 class basic_string
9848 {
9849 typedef typename _Alloc::template rebind<_CharT>::other _CharT_alloc_type;
9850 public:
9851 typedef _Traits traits_type;
9852 typedef typename _Traits::char_type value_type;
9853 typedef _Alloc allocator_type;
9854 typedef typename _CharT_alloc_type::size_type size_type;
9855 typedef typename _CharT_alloc_type::difference_type difference_type;
9856 typedef typename _CharT_alloc_type::reference reference;
9857 typedef typename _CharT_alloc_type::const_reference const_reference;
9858 typedef typename _CharT_alloc_type::pointer pointer;
9859 typedef typename _CharT_alloc_type::const_pointer const_pointer;
9860 typedef __gnu_cxx::__normal_iterator<pointer, basic_string> iterator;
9861 typedef __gnu_cxx::__normal_iterator<const_pointer, basic_string>
9862 const_iterator;
9863 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
9864 typedef std::reverse_iterator<iterator> reverse_iterator;
9865 private:
9866 struct _Rep_base
9867 {
9868 size_type _M_length;
9869 size_type _M_capacity;
9870 _Atomic_word _M_refcount;
9871 };
9872 struct _Rep : _Rep_base
9873 {
9874 typedef typename _Alloc::template rebind<char>::other _Raw_bytes_alloc;
9875 static const size_type _S_max_size;
9876 static const _CharT _S_terminal;
9877 static size_type _S_empty_rep_storage[];
9878 static _Rep&
9879 _S_empty_rep()
9880 {
9881 void* __p = reinterpret_cast<void*>(&_S_empty_rep_storage);
9882 return *reinterpret_cast<_Rep*>(__p);
9883 }
9884 bool
9885 _M_is_leaked() const
9886 { return this->_M_refcount < 0; }
9887 bool
9888 _M_is_shared() const
9889 { return this->_M_refcount > 0; }
9890 void
9891 _M_set_leaked()
9892 { this->_M_refcount = -1; }
9893 void
9894 _M_set_sharable()
9895 { this->_M_refcount = 0; }
9896 void
9897 _M_set_length_and_sharable(size_type __n)
9898 {
9899 if (__builtin_expect(this != &_S_empty_rep(), false))
9900 {
9901 this->_M_set_sharable();
9902 this->_M_length = __n;
9903 traits_type::assign(this->_M_refdata()[__n], _S_terminal);
9904 }
9905 }
9906 _CharT*
9907 _M_refdata() throw()
9908 { return reinterpret_cast<_CharT*>(this + 1); }
9909 _CharT*
9910 _M_grab(const _Alloc& __alloc1, const _Alloc& __alloc2)
9911 {
9912 return (!_M_is_leaked() && __alloc1 == __alloc2)
9913 ? _M_refcopy() : _M_clone(__alloc1);
9914 }
9915 static _Rep*
9916 _S_create(size_type, size_type, const _Alloc&);
9917 void
9918 _M_dispose(const _Alloc& __a)
9919 {
9920 if (__builtin_expect(this != &_S_empty_rep(), false))
9921 if (__gnu_cxx::__exchange_and_add_dispatch(&this->_M_refcount,
9922 -1) <= 0)
9923 _M_destroy(__a);
9924 }
9925 void
9926 _M_destroy(const _Alloc&) throw();
9927 _CharT*
9928 _M_refcopy() throw()
9929 {
9930 if (__builtin_expect(this != &_S_empty_rep(), false))
9931 __gnu_cxx::__atomic_add_dispatch(&this->_M_refcount, 1);
9932 return _M_refdata();
9933 }
9934 _CharT*
9935 _M_clone(const _Alloc&, size_type __res = 0);
9936 };
9937 struct _Alloc_hider : _Alloc
9938 {
9939 _Alloc_hider(_CharT* __dat, const _Alloc& __a)
9940 : _Alloc(__a), _M_p(__dat) { }
9941 _CharT* _M_p;
9942 };
9943 public:
9944 static const size_type npos = static_cast<size_type>(-1);
9945 private:
9946 mutable _Alloc_hider _M_dataplus;
9947 _CharT*
9948 _M_data() const
9949 { return _M_dataplus._M_p; }
9950 _CharT*
9951 _M_data(_CharT* __p)
9952 { return (_M_dataplus._M_p = __p); }
9953 _Rep*
9954 _M_rep() const
9955 { return &((reinterpret_cast<_Rep*> (_M_data()))[-1]); }
9956 iterator
9957 _M_ibegin() const
9958 { return iterator(_M_data()); }
9959 iterator
9960 _M_iend() const
9961 { return iterator(_M_data() + this->size()); }
9962 void
9963 _M_leak()
9964 {
9965 if (!_M_rep()->_M_is_leaked())
9966 _M_leak_hard();
9967 }
9968 size_type
9969 _M_check(size_type __pos, const char* __s) const
9970 {
9971 if (__pos > this->size())
9972 __throw_out_of_range((__s));
9973 return __pos;
9974 }
9975 void
9976 _M_check_length(size_type __n1, size_type __n2, const char* __s) const
9977 {
9978 if (this->max_size() - (this->size() - __n1) < __n2)
9979 __throw_length_error((__s));
9980 }
9981 size_type
9982 _M_limit(size_type __pos, size_type __off) const
9983 {
9984 const bool __testoff = __off < this->size() - __pos;
9985 return __testoff ? __off : this->size() - __pos;
9986 }
9987 bool
9988 _M_disjunct(const _CharT* __s) const
9989 {
9990 return (less<const _CharT*>()(__s, _M_data())
9991 || less<const _CharT*>()(_M_data() + this->size(), __s));
9992 }
9993 static void
9994 _M_copy(_CharT* __d, const _CharT* __s, size_type __n)
9995 {
9996 if (__n == 1)
9997 traits_type::assign(*__d, *__s);
9998 else
9999 traits_type::copy(__d, __s, __n);
10000 }
10001 static void
10002 _M_move(_CharT* __d, const _CharT* __s, size_type __n)
10003 {
10004 if (__n == 1)
10005 traits_type::assign(*__d, *__s);
10006 else
10007 traits_type::move(__d, __s, __n);
10008 }
10009 static void
10010 _M_assign(_CharT* __d, size_type __n, _CharT __c)
10011 {
10012 if (__n == 1)
10013 traits_type::assign(*__d, __c);
10014 else
10015 traits_type::assign(__d, __n, __c);
10016 }
10017 template<class _Iterator>
10018 static void
10019 _S_copy_chars(_CharT* __p, _Iterator __k1, _Iterator __k2)
10020 {
10021 for (; __k1 != __k2; ++__k1, ++__p)
10022 traits_type::assign(*__p, *__k1);
10023 }
10024 static void
10025 _S_copy_chars(_CharT* __p, iterator __k1, iterator __k2)
10026 { _S_copy_chars(__p, __k1.base(), __k2.base()); }
10027 static void
10028 _S_copy_chars(_CharT* __p, const_iterator __k1, const_iterator __k2)
10029 { _S_copy_chars(__p, __k1.base(), __k2.base()); }
10030 static void
10031 _S_copy_chars(_CharT* __p, _CharT* __k1, _CharT* __k2)
10032 { _M_copy(__p, __k1, __k2 - __k1); }
10033 static void
10034 _S_copy_chars(_CharT* __p, const _CharT* __k1, const _CharT* __k2)
10035 { _M_copy(__p, __k1, __k2 - __k1); }
10036 static int
10037 _S_compare(size_type __n1, size_type __n2)
10038 {
10039 const difference_type __d = difference_type(__n1 - __n2);
10040 if (__d > __gnu_cxx::__numeric_traits<int>::__max)
10041 return __gnu_cxx::__numeric_traits<int>::__max;
10042 else if (__d < __gnu_cxx::__numeric_traits<int>::__min)
10043 return __gnu_cxx::__numeric_traits<int>::__min;
10044 else
10045 return int(__d);
10046 }
10047 void
10048 _M_mutate(size_type __pos, size_type __len1, size_type __len2);
10049 void
10050 _M_leak_hard();
10051 static _Rep&
10052 _S_empty_rep()
10053 { return _Rep::_S_empty_rep(); }
10054 public:
10055 inline
10056 basic_string();
10057 explicit
10058 basic_string(const _Alloc& __a);
10059 basic_string(const basic_string& __str);
10060 basic_string(const basic_string& __str, size_type __pos,
10061 size_type __n = npos);
10062 basic_string(const basic_string& __str, size_type __pos,
10063 size_type __n, const _Alloc& __a);
10064 basic_string(const _CharT* __s, size_type __n,
10065 const _Alloc& __a = _Alloc());
10066 basic_string(const _CharT* __s, const _Alloc& __a = _Alloc());
10067 basic_string(size_type __n, _CharT __c, const _Alloc& __a = _Alloc());
10068 template<class _InputIterator>
10069 basic_string(_InputIterator __beg, _InputIterator __end,
10070 const _Alloc& __a = _Alloc());
10071 ~basic_string()
10072 { _M_rep()->_M_dispose(this->get_allocator()); }
10073 basic_string&
10074 operator=(const basic_string& __str)
10075 { return this->assign(__str); }
10076 basic_string&
10077 operator=(const _CharT* __s)
10078 { return this->assign(__s); }
10079 basic_string&
10080 operator=(_CharT __c)
10081 {
10082 this->assign(1, __c);
10083 return *this;
10084 }
10085 iterator
10086 begin()
10087 {
10088 _M_leak();
10089 return iterator(_M_data());
10090 }
10091 const_iterator
10092 begin() const
10093 { return const_iterator(_M_data()); }
10094 iterator
10095 end()
10096 {
10097 _M_leak();
10098 return iterator(_M_data() + this->size());
10099 }
10100 const_iterator
10101 end() const
10102 { return const_iterator(_M_data() + this->size()); }
10103 reverse_iterator
10104 rbegin()
10105 { return reverse_iterator(this->end()); }
10106 const_reverse_iterator
10107 rbegin() const
10108 { return const_reverse_iterator(this->end()); }
10109 reverse_iterator
10110 rend()
10111 { return reverse_iterator(this->begin()); }
10112 const_reverse_iterator
10113 rend() const
10114 { return const_reverse_iterator(this->begin()); }
10115 public:
10116 size_type
10117 size() const
10118 { return _M_rep()->_M_length; }
10119 size_type
10120 length() const
10121 { return _M_rep()->_M_length; }
10122 size_type
10123 max_size() const
10124 { return _Rep::_S_max_size; }
10125 void
10126 resize(size_type __n, _CharT __c);
10127 void
10128 resize(size_type __n)
10129 { this->resize(__n, _CharT()); }
10130 size_type
10131 capacity() const
10132 { return _M_rep()->_M_capacity; }
10133 void
10134 reserve(size_type __res_arg = 0);
10135 void
10136 clear()
10137 { _M_mutate(0, this->size(), 0); }
10138 bool
10139 empty() const
10140 { return this->size() == 0; }
10141 const_reference
10142 operator[] (size_type __pos) const
10143 {
10144 ;
10145 return _M_data()[__pos];
10146 }
10147 reference
10148 operator[](size_type __pos)
10149 {
10150 ;
10151 ;
10152 _M_leak();
10153 return _M_data()[__pos];
10154 }
10155 const_reference
10156 at(size_type __n) const
10157 {
10158 if (__n >= this->size())
10159 __throw_out_of_range(("basic_string::at"));
10160 return _M_data()[__n];
10161 }
10162 reference
10163 at(size_type __n)
10164 {
10165 if (__n >= size())
10166 __throw_out_of_range(("basic_string::at"));
10167 _M_leak();
10168 return _M_data()[__n];
10169 }
10170 basic_string&
10171 operator+=(const basic_string& __str)
10172 { return this->append(__str); }
10173 basic_string&
10174 operator+=(const _CharT* __s)
10175 { return this->append(__s); }
10176 basic_string&
10177 operator+=(_CharT __c)
10178 {
10179 this->push_back(__c);
10180 return *this;
10181 }
10182 basic_string&
10183 append(const basic_string& __str);
10184 basic_string&
10185 append(const basic_string& __str, size_type __pos, size_type __n);
10186 basic_string&
10187 append(const _CharT* __s, size_type __n);
10188 basic_string&
10189 append(const _CharT* __s)
10190 {
10191 ;
10192 return this->append(__s, traits_type::length(__s));
10193 }
10194 basic_string&
10195 append(size_type __n, _CharT __c);
10196 template<class _InputIterator>
10197 basic_string&
10198 append(_InputIterator __first, _InputIterator __last)
10199 { return this->replace(_M_iend(), _M_iend(), __first, __last); }
10200 void
10201 push_back(_CharT __c)
10202 {
10203 const size_type __len = 1 + this->size();
10204 if (__len > this->capacity() || _M_rep()->_M_is_shared())
10205 this->reserve(__len);
10206 traits_type::assign(_M_data()[this->size()], __c);
10207 _M_rep()->_M_set_length_and_sharable(__len);
10208 }
10209 basic_string&
10210 assign(const basic_string& __str);
10211 basic_string&
10212 assign(const basic_string& __str, size_type __pos, size_type __n)
10213 { return this->assign(__str._M_data()
10214 + __str._M_check(__pos, "basic_string::assign"),
10215 __str._M_limit(__pos, __n)); }
10216 basic_string&
10217 assign(const _CharT* __s, size_type __n);
10218 basic_string&
10219 assign(const _CharT* __s)
10220 {
10221 ;
10222 return this->assign(__s, traits_type::length(__s));
10223 }
10224 basic_string&
10225 assign(size_type __n, _CharT __c)
10226 { return _M_replace_aux(size_type(0), this->size(), __n, __c); }
10227 template<class _InputIterator>
10228 basic_string&
10229 assign(_InputIterator __first, _InputIterator __last)
10230 { return this->replace(_M_ibegin(), _M_iend(), __first, __last); }
10231 void
10232 insert(iterator __p, size_type __n, _CharT __c)
10233 { this->replace(__p, __p, __n, __c); }
10234 template<class _InputIterator>
10235 void
10236 insert(iterator __p, _InputIterator __beg, _InputIterator __end)
10237 { this->replace(__p, __p, __beg, __end); }
10238 basic_string&
10239 insert(size_type __pos1, const basic_string& __str)
10240 { return this->insert(__pos1, __str, size_type(0), __str.size()); }
10241 basic_string&
10242 insert(size_type __pos1, const basic_string& __str,
10243 size_type __pos2, size_type __n)
10244 { return this->insert(__pos1, __str._M_data()
10245 + __str._M_check(__pos2, "basic_string::insert"),
10246 __str._M_limit(__pos2, __n)); }
10247 basic_string&
10248 insert(size_type __pos, const _CharT* __s, size_type __n);
10249 basic_string&
10250 insert(size_type __pos, const _CharT* __s)
10251 {
10252 ;
10253 return this->insert(__pos, __s, traits_type::length(__s));
10254 }
10255 basic_string&
10256 insert(size_type __pos, size_type __n, _CharT __c)
10257 { return _M_replace_aux(_M_check(__pos, "basic_string::insert"),
10258 size_type(0), __n, __c); }
10259 iterator
10260 insert(iterator __p, _CharT __c)
10261 {
10262 ;
10263 const size_type __pos = __p - _M_ibegin();
10264 _M_replace_aux(__pos, size_type(0), size_type(1), __c);
10265 _M_rep()->_M_set_leaked();
10266 return iterator(_M_data() + __pos);
10267 }
10268 basic_string&
10269 erase(size_type __pos = 0, size_type __n = npos)
10270 {
10271 _M_mutate(_M_check(__pos, "basic_string::erase"),
10272 _M_limit(__pos, __n), size_type(0));
10273 return *this;
10274 }
10275 iterator
10276 erase(iterator __position)
10277 {
10278 ;
10279 const size_type __pos = __position - _M_ibegin();
10280 _M_mutate(__pos, size_type(1), size_type(0));
10281 _M_rep()->_M_set_leaked();
10282 return iterator(_M_data() + __pos);
10283 }
10284 iterator
10285 erase(iterator __first, iterator __last);
10286 basic_string&
10287 replace(size_type __pos, size_type __n, const basic_string& __str)
10288 { return this->replace(__pos, __n, __str._M_data(), __str.size()); }
10289 basic_string&
10290 replace(size_type __pos1, size_type __n1, const basic_string& __str,
10291 size_type __pos2, size_type __n2)
10292 { return this->replace(__pos1, __n1, __str._M_data()
10293 + __str._M_check(__pos2, "basic_string::replace"),
10294 __str._M_limit(__pos2, __n2)); }
10295 basic_string&
10296 replace(size_type __pos, size_type __n1, const _CharT* __s,
10297 size_type __n2);
10298 basic_string&
10299 replace(size_type __pos, size_type __n1, const _CharT* __s)
10300 {
10301 ;
10302 return this->replace(__pos, __n1, __s, traits_type::length(__s));
10303 }
10304 basic_string&
10305 replace(size_type __pos, size_type __n1, size_type __n2, _CharT __c)
10306 { return _M_replace_aux(_M_check(__pos, "basic_string::replace"),
10307 _M_limit(__pos, __n1), __n2, __c); }
10308 basic_string&
10309 replace(iterator __i1, iterator __i2, const basic_string& __str)
10310 { return this->replace(__i1, __i2, __str._M_data(), __str.size()); }
10311 basic_string&
10312 replace(iterator __i1, iterator __i2, const _CharT* __s, size_type __n)
10313 {
10314 ;
10315 return this->replace(__i1 - _M_ibegin(), __i2 - __i1, __s, __n);
10316 }
10317 basic_string&
10318 replace(iterator __i1, iterator __i2, const _CharT* __s)
10319 {
10320 ;
10321 return this->replace(__i1, __i2, __s, traits_type::length(__s));
10322 }
10323 basic_string&
10324 replace(iterator __i1, iterator __i2, size_type __n, _CharT __c)
10325 {
10326 ;
10327 return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __c);
10328 }
10329 template<class _InputIterator>
10330 basic_string&
10331 replace(iterator __i1, iterator __i2,
10332 _InputIterator __k1, _InputIterator __k2)
10333 {
10334 ;
10335 ;
10336 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
10337 return _M_replace_dispatch(__i1, __i2, __k1, __k2, _Integral());
10338 }
10339 basic_string&
10340 replace(iterator __i1, iterator __i2, _CharT* __k1, _CharT* __k2)
10341 {
10342 ;
10343 ;
10344 return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
10345 __k1, __k2 - __k1);
10346 }
10347 basic_string&
10348 replace(iterator __i1, iterator __i2,
10349 const _CharT* __k1, const _CharT* __k2)
10350 {
10351 ;
10352 ;
10353 return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
10354 __k1, __k2 - __k1);
10355 }
10356 basic_string&
10357 replace(iterator __i1, iterator __i2, iterator __k1, iterator __k2)
10358 {
10359 ;
10360 ;
10361 return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
10362 __k1.base(), __k2 - __k1);
10363 }
10364 basic_string&
10365 replace(iterator __i1, iterator __i2,
10366 const_iterator __k1, const_iterator __k2)
10367 {
10368 ;
10369 ;
10370 return this->replace(__i1 - _M_ibegin(), __i2 - __i1,
10371 __k1.base(), __k2 - __k1);
10372 }
10373 private:
10374 template<class _Integer>
10375 basic_string&
10376 _M_replace_dispatch(iterator __i1, iterator __i2, _Integer __n,
10377 _Integer __val, __true_type)
10378 { return _M_replace_aux(__i1 - _M_ibegin(), __i2 - __i1, __n, __val); }
10379 template<class _InputIterator>
10380 basic_string&
10381 _M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
10382 _InputIterator __k2, __false_type);
10383 basic_string&
10384 _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
10385 _CharT __c);
10386 basic_string&
10387 _M_replace_safe(size_type __pos1, size_type __n1, const _CharT* __s,
10388 size_type __n2);
10389 template<class _InIterator>
10390 static _CharT*
10391 _S_construct_aux(_InIterator __beg, _InIterator __end,
10392 const _Alloc& __a, __false_type)
10393 {
10394 typedef typename iterator_traits<_InIterator>::iterator_category _Tag;
10395 return _S_construct(__beg, __end, __a, _Tag());
10396 }
10397 template<class _Integer>
10398 static _CharT*
10399 _S_construct_aux(_Integer __beg, _Integer __end,
10400 const _Alloc& __a, __true_type)
10401 { return _S_construct(static_cast<size_type>(__beg), __end, __a); }
10402 template<class _InIterator>
10403 static _CharT*
10404 _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a)
10405 {
10406 typedef typename std::__is_integer<_InIterator>::__type _Integral;
10407 return _S_construct_aux(__beg, __end, __a, _Integral());
10408 }
10409 template<class _InIterator>
10410 static _CharT*
10411 _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a,
10412 input_iterator_tag);
10413 template<class _FwdIterator>
10414 static _CharT*
10415 _S_construct(_FwdIterator __beg, _FwdIterator __end, const _Alloc& __a,
10416 forward_iterator_tag);
10417 static _CharT*
10418 _S_construct(size_type __req, _CharT __c, const _Alloc& __a);
10419 public:
10420 size_type
10421 copy(_CharT* __s, size_type __n, size_type __pos = 0) const;
10422 void
10423 swap(basic_string& __s);
10424 const _CharT*
10425 c_str() const
10426 { return _M_data(); }
10427 const _CharT*
10428 data() const
10429 { return _M_data(); }
10430 allocator_type
10431 get_allocator() const
10432 { return _M_dataplus; }
10433 size_type
10434 find(const _CharT* __s, size_type __pos, size_type __n) const;
10435 size_type
10436 find(const basic_string& __str, size_type __pos = 0) const
10437 { return this->find(__str.data(), __pos, __str.size()); }
10438 size_type
10439 find(const _CharT* __s, size_type __pos = 0) const
10440 {
10441 ;
10442 return this->find(__s, __pos, traits_type::length(__s));
10443 }
10444 size_type
10445 find(_CharT __c, size_type __pos = 0) const;
10446 size_type
10447 rfind(const basic_string& __str, size_type __pos = npos) const
10448 { return this->rfind(__str.data(), __pos, __str.size()); }
10449 size_type
10450 rfind(const _CharT* __s, size_type __pos, size_type __n) const;
10451 size_type
10452 rfind(const _CharT* __s, size_type __pos = npos) const
10453 {
10454 ;
10455 return this->rfind(__s, __pos, traits_type::length(__s));
10456 }
10457 size_type
10458 rfind(_CharT __c, size_type __pos = npos) const;
10459 size_type
10460 find_first_of(const basic_string& __str, size_type __pos = 0) const
10461 { return this->find_first_of(__str.data(), __pos, __str.size()); }
10462 size_type
10463 find_first_of(const _CharT* __s, size_type __pos, size_type __n) const;
10464 size_type
10465 find_first_of(const _CharT* __s, size_type __pos = 0) const
10466 {
10467 ;
10468 return this->find_first_of(__s, __pos, traits_type::length(__s));
10469 }
10470 size_type
10471 find_first_of(_CharT __c, size_type __pos = 0) const
10472 { return this->find(__c, __pos); }
10473 size_type
10474 find_last_of(const basic_string& __str, size_type __pos = npos) const
10475 { return this->find_last_of(__str.data(), __pos, __str.size()); }
10476 size_type
10477 find_last_of(const _CharT* __s, size_type __pos, size_type __n) const;
10478 size_type
10479 find_last_of(const _CharT* __s, size_type __pos = npos) const
10480 {
10481 ;
10482 return this->find_last_of(__s, __pos, traits_type::length(__s));
10483 }
10484 size_type
10485 find_last_of(_CharT __c, size_type __pos = npos) const
10486 { return this->rfind(__c, __pos); }
10487 size_type
10488 find_first_not_of(const basic_string& __str, size_type __pos = 0) const
10489 { return this->find_first_not_of(__str.data(), __pos, __str.size()); }
10490 size_type
10491 find_first_not_of(const _CharT* __s, size_type __pos,
10492 size_type __n) const;
10493 size_type
10494 find_first_not_of(const _CharT* __s, size_type __pos = 0) const
10495 {
10496 ;
10497 return this->find_first_not_of(__s, __pos, traits_type::length(__s));
10498 }
10499 size_type
10500 find_first_not_of(_CharT __c, size_type __pos = 0) const;
10501 size_type
10502 find_last_not_of(const basic_string& __str, size_type __pos = npos) const
10503 { return this->find_last_not_of(__str.data(), __pos, __str.size()); }
10504 size_type
10505 find_last_not_of(const _CharT* __s, size_type __pos,
10506 size_type __n) const;
10507 size_type
10508 find_last_not_of(const _CharT* __s, size_type __pos = npos) const
10509 {
10510 ;
10511 return this->find_last_not_of(__s, __pos, traits_type::length(__s));
10512 }
10513 size_type
10514 find_last_not_of(_CharT __c, size_type __pos = npos) const;
10515 basic_string
10516 substr(size_type __pos = 0, size_type __n = npos) const
10517 { return basic_string(*this,
10518 _M_check(__pos, "basic_string::substr"), __n); }
10519 int
10520 compare(const basic_string& __str) const
10521 {
10522 const size_type __size = this->size();
10523 const size_type __osize = __str.size();
10524 const size_type __len = std::min(__size, __osize);
10525 int __r = traits_type::compare(_M_data(), __str.data(), __len);
10526 if (!__r)
10527 __r = _S_compare(__size, __osize);
10528 return __r;
10529 }
10530 int
10531 compare(size_type __pos, size_type __n, const basic_string& __str) const;
10532 int
10533 compare(size_type __pos1, size_type __n1, const basic_string& __str,
10534 size_type __pos2, size_type __n2) const;
10535 int
10536 compare(const _CharT* __s) const;
10537 int
10538 compare(size_type __pos, size_type __n1, const _CharT* __s) const;
10539 int
10540 compare(size_type __pos, size_type __n1, const _CharT* __s,
10541 size_type __n2) const;
10542 };
10543 template<typename _CharT, typename _Traits, typename _Alloc>
10544 inline basic_string<_CharT, _Traits, _Alloc>::
10545 basic_string()
10546 : _M_dataplus(_S_empty_rep()._M_refdata(), _Alloc()) { }
10547 template<typename _CharT, typename _Traits, typename _Alloc>
10548 basic_string<_CharT, _Traits, _Alloc>
10549 operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10550 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10551 {
10552 basic_string<_CharT, _Traits, _Alloc> __str(__lhs);
10553 __str.append(__rhs);
10554 return __str;
10555 }
10556 template<typename _CharT, typename _Traits, typename _Alloc>
10557 basic_string<_CharT,_Traits,_Alloc>
10558 operator+(const _CharT* __lhs,
10559 const basic_string<_CharT,_Traits,_Alloc>& __rhs);
10560 template<typename _CharT, typename _Traits, typename _Alloc>
10561 basic_string<_CharT,_Traits,_Alloc>
10562 operator+(_CharT __lhs, const basic_string<_CharT,_Traits,_Alloc>& __rhs);
10563 template<typename _CharT, typename _Traits, typename _Alloc>
10564 inline basic_string<_CharT, _Traits, _Alloc>
10565 operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10566 const _CharT* __rhs)
10567 {
10568 basic_string<_CharT, _Traits, _Alloc> __str(__lhs);
10569 __str.append(__rhs);
10570 return __str;
10571 }
10572 template<typename _CharT, typename _Traits, typename _Alloc>
10573 inline basic_string<_CharT, _Traits, _Alloc>
10574 operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs, _CharT __rhs)
10575 {
10576 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
10577 typedef typename __string_type::size_type __size_type;
10578 __string_type __str(__lhs);
10579 __str.append(__size_type(1), __rhs);
10580 return __str;
10581 }
10582 template<typename _CharT, typename _Traits, typename _Alloc>
10583 inline bool
10584 operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10585 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10586 { return __lhs.compare(__rhs) == 0; }
10587 template<typename _CharT>
10588 inline
10589 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value, bool>::__type
10590 operator==(const basic_string<_CharT>& __lhs,
10591 const basic_string<_CharT>& __rhs)
10592 { return (__lhs.size() == __rhs.size()
10593 && !std::char_traits<_CharT>::compare(__lhs.data(), __rhs.data(),
10594 __lhs.size())); }
10595 template<typename _CharT, typename _Traits, typename _Alloc>
10596 inline bool
10597 operator==(const _CharT* __lhs,
10598 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10599 { return __rhs.compare(__lhs) == 0; }
10600 template<typename _CharT, typename _Traits, typename _Alloc>
10601 inline bool
10602 operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10603 const _CharT* __rhs)
10604 { return __lhs.compare(__rhs) == 0; }
10605 template<typename _CharT, typename _Traits, typename _Alloc>
10606 inline bool
10607 operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10608 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10609 { return !(__lhs == __rhs); }
10610 template<typename _CharT, typename _Traits, typename _Alloc>
10611 inline bool
10612 operator!=(const _CharT* __lhs,
10613 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10614 { return !(__lhs == __rhs); }
10615 template<typename _CharT, typename _Traits, typename _Alloc>
10616 inline bool
10617 operator!=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10618 const _CharT* __rhs)
10619 { return !(__lhs == __rhs); }
10620 template<typename _CharT, typename _Traits, typename _Alloc>
10621 inline bool
10622 operator<(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10623 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10624 { return __lhs.compare(__rhs) < 0; }
10625 template<typename _CharT, typename _Traits, typename _Alloc>
10626 inline bool
10627 operator<(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10628 const _CharT* __rhs)
10629 { return __lhs.compare(__rhs) < 0; }
10630 template<typename _CharT, typename _Traits, typename _Alloc>
10631 inline bool
10632 operator<(const _CharT* __lhs,
10633 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10634 { return __rhs.compare(__lhs) > 0; }
10635 template<typename _CharT, typename _Traits, typename _Alloc>
10636 inline bool
10637 operator>(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10638 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10639 { return __lhs.compare(__rhs) > 0; }
10640 template<typename _CharT, typename _Traits, typename _Alloc>
10641 inline bool
10642 operator>(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10643 const _CharT* __rhs)
10644 { return __lhs.compare(__rhs) > 0; }
10645 template<typename _CharT, typename _Traits, typename _Alloc>
10646 inline bool
10647 operator>(const _CharT* __lhs,
10648 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10649 { return __rhs.compare(__lhs) < 0; }
10650 template<typename _CharT, typename _Traits, typename _Alloc>
10651 inline bool
10652 operator<=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10653 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10654 { return __lhs.compare(__rhs) <= 0; }
10655 template<typename _CharT, typename _Traits, typename _Alloc>
10656 inline bool
10657 operator<=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10658 const _CharT* __rhs)
10659 { return __lhs.compare(__rhs) <= 0; }
10660 template<typename _CharT, typename _Traits, typename _Alloc>
10661 inline bool
10662 operator<=(const _CharT* __lhs,
10663 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10664 { return __rhs.compare(__lhs) >= 0; }
10665 template<typename _CharT, typename _Traits, typename _Alloc>
10666 inline bool
10667 operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10668 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10669 { return __lhs.compare(__rhs) >= 0; }
10670 template<typename _CharT, typename _Traits, typename _Alloc>
10671 inline bool
10672 operator>=(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
10673 const _CharT* __rhs)
10674 { return __lhs.compare(__rhs) >= 0; }
10675 template<typename _CharT, typename _Traits, typename _Alloc>
10676 inline bool
10677 operator>=(const _CharT* __lhs,
10678 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
10679 { return __rhs.compare(__lhs) <= 0; }
10680 template<typename _CharT, typename _Traits, typename _Alloc>
10681 inline void
10682 swap(basic_string<_CharT, _Traits, _Alloc>& __lhs,
10683 basic_string<_CharT, _Traits, _Alloc>& __rhs)
10684 { __lhs.swap(__rhs); }
10685 template<typename _CharT, typename _Traits, typename _Alloc>
10686 basic_istream<_CharT, _Traits>&
10687 operator>>(basic_istream<_CharT, _Traits>& __is,
10688 basic_string<_CharT, _Traits, _Alloc>& __str);
10689 template<>
10690 basic_istream<char>&
10691 operator>>(basic_istream<char>& __is, basic_string<char>& __str);
10692 template<typename _CharT, typename _Traits, typename _Alloc>
10693 inline basic_ostream<_CharT, _Traits>&
10694 operator<<(basic_ostream<_CharT, _Traits>& __os,
10695 const basic_string<_CharT, _Traits, _Alloc>& __str)
10696 {
10697 return __ostream_insert(__os, __str.data(), __str.size());
10698 }
10699 template<typename _CharT, typename _Traits, typename _Alloc>
10700 basic_istream<_CharT, _Traits>&
10701 getline(basic_istream<_CharT, _Traits>& __is,
10702 basic_string<_CharT, _Traits, _Alloc>& __str, _CharT __delim);
10703 template<typename _CharT, typename _Traits, typename _Alloc>
10704 inline basic_istream<_CharT, _Traits>&
10705 getline(basic_istream<_CharT, _Traits>& __is,
10706 basic_string<_CharT, _Traits, _Alloc>& __str)
10707 { return getline(__is, __str, __is.widen('\n')); }
10708 template<>
10709 basic_istream<char>&
10710 getline(basic_istream<char>& __in, basic_string<char>& __str,
10711 char __delim);
10712 template<>
10713 basic_istream<wchar_t>&
10714 getline(basic_istream<wchar_t>& __in, basic_string<wchar_t>& __str,
10715 wchar_t __delim);
10716}
10717
10718namespace std __attribute__ ((__visibility__ ("default"))) {
10719 template<typename _CharT, typename _Traits, typename _Alloc>
10720 const typename basic_string<_CharT, _Traits, _Alloc>::size_type
10721 basic_string<_CharT, _Traits, _Alloc>::
10722 _Rep::_S_max_size = (((npos - sizeof(_Rep_base))/sizeof(_CharT)) - 1) / 4;
10723 template<typename _CharT, typename _Traits, typename _Alloc>
10724 const _CharT
10725 basic_string<_CharT, _Traits, _Alloc>::
10726 _Rep::_S_terminal = _CharT();
10727 template<typename _CharT, typename _Traits, typename _Alloc>
10728 const typename basic_string<_CharT, _Traits, _Alloc>::size_type
10729 basic_string<_CharT, _Traits, _Alloc>::npos;
10730 template<typename _CharT, typename _Traits, typename _Alloc>
10731 typename basic_string<_CharT, _Traits, _Alloc>::size_type
10732 basic_string<_CharT, _Traits, _Alloc>::_Rep::_S_empty_rep_storage[
10733 (sizeof(_Rep_base) + sizeof(_CharT) + sizeof(size_type) - 1) /
10734 sizeof(size_type)];
10735 template<typename _CharT, typename _Traits, typename _Alloc>
10736 template<typename _InIterator>
10737 _CharT*
10738 basic_string<_CharT, _Traits, _Alloc>::
10739 _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a,
10740 input_iterator_tag)
10741 {
10742 if (__beg == __end && __a == _Alloc())
10743 return _S_empty_rep()._M_refdata();
10744 _CharT __buf[128];
10745 size_type __len = 0;
10746 while (__beg != __end && __len < sizeof(__buf) / sizeof(_CharT))
10747 {
10748 __buf[__len++] = *__beg;
10749 ++__beg;
10750 }
10751 _Rep* __r = _Rep::_S_create(__len, size_type(0), __a);
10752 _M_copy(__r->_M_refdata(), __buf, __len);
10753 try
10754 {
10755 while (__beg != __end)
10756 {
10757 if (__len == __r->_M_capacity)
10758 {
10759 _Rep* __another = _Rep::_S_create(__len + 1, __len, __a);
10760 _M_copy(__another->_M_refdata(), __r->_M_refdata(), __len);
10761 __r->_M_destroy(__a);
10762 __r = __another;
10763 }
10764 __r->_M_refdata()[__len++] = *__beg;
10765 ++__beg;
10766 }
10767 }
10768 catch(...)
10769 {
10770 __r->_M_destroy(__a);
10771 throw;
10772 }
10773 __r->_M_set_length_and_sharable(__len);
10774 return __r->_M_refdata();
10775 }
10776 template<typename _CharT, typename _Traits, typename _Alloc>
10777 template <typename _InIterator>
10778 _CharT*
10779 basic_string<_CharT, _Traits, _Alloc>::
10780 _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a,
10781 forward_iterator_tag)
10782 {
10783 if (__beg == __end && __a == _Alloc())
10784 return _S_empty_rep()._M_refdata();
10785 if (__builtin_expect(__gnu_cxx::__is_null_pointer(__beg)
10786 && __beg != __end, 0))
10787 __throw_logic_error(("basic_string::_S_construct NULL not valid"));
10788 const size_type __dnew = static_cast<size_type>(std::distance(__beg,
10789 __end));
10790 _Rep* __r = _Rep::_S_create(__dnew, size_type(0), __a);
10791 try
10792 { _S_copy_chars(__r->_M_refdata(), __beg, __end); }
10793 catch(...)
10794 {
10795 __r->_M_destroy(__a);
10796 throw;
10797 }
10798 __r->_M_set_length_and_sharable(__dnew);
10799 return __r->_M_refdata();
10800 }
10801 template<typename _CharT, typename _Traits, typename _Alloc>
10802 _CharT*
10803 basic_string<_CharT, _Traits, _Alloc>::
10804 _S_construct(size_type __n, _CharT __c, const _Alloc& __a)
10805 {
10806 if (__n == 0 && __a == _Alloc())
10807 return _S_empty_rep()._M_refdata();
10808 _Rep* __r = _Rep::_S_create(__n, size_type(0), __a);
10809 if (__n)
10810 _M_assign(__r->_M_refdata(), __n, __c);
10811 __r->_M_set_length_and_sharable(__n);
10812 return __r->_M_refdata();
10813 }
10814 template<typename _CharT, typename _Traits, typename _Alloc>
10815 basic_string<_CharT, _Traits, _Alloc>::
10816 basic_string(const basic_string& __str)
10817 : _M_dataplus(__str._M_rep()->_M_grab(_Alloc(__str.get_allocator()),
10818 __str.get_allocator()),
10819 __str.get_allocator())
10820 { }
10821 template<typename _CharT, typename _Traits, typename _Alloc>
10822 basic_string<_CharT, _Traits, _Alloc>::
10823 basic_string(const _Alloc& __a)
10824 : _M_dataplus(_S_construct(size_type(), _CharT(), __a), __a)
10825 { }
10826 template<typename _CharT, typename _Traits, typename _Alloc>
10827 basic_string<_CharT, _Traits, _Alloc>::
10828 basic_string(const basic_string& __str, size_type __pos, size_type __n)
10829 : _M_dataplus(_S_construct(__str._M_data()
10830 + __str._M_check(__pos,
10831 "basic_string::basic_string"),
10832 __str._M_data() + __str._M_limit(__pos, __n)
10833 + __pos, _Alloc()), _Alloc())
10834 { }
10835 template<typename _CharT, typename _Traits, typename _Alloc>
10836 basic_string<_CharT, _Traits, _Alloc>::
10837 basic_string(const basic_string& __str, size_type __pos,
10838 size_type __n, const _Alloc& __a)
10839 : _M_dataplus(_S_construct(__str._M_data()
10840 + __str._M_check(__pos,
10841 "basic_string::basic_string"),
10842 __str._M_data() + __str._M_limit(__pos, __n)
10843 + __pos, __a), __a)
10844 { }
10845 template<typename _CharT, typename _Traits, typename _Alloc>
10846 basic_string<_CharT, _Traits, _Alloc>::
10847 basic_string(const _CharT* __s, size_type __n, const _Alloc& __a)
10848 : _M_dataplus(_S_construct(__s, __s + __n, __a), __a)
10849 { }
10850 template<typename _CharT, typename _Traits, typename _Alloc>
10851 basic_string<_CharT, _Traits, _Alloc>::
10852 basic_string(const _CharT* __s, const _Alloc& __a)
10853 : _M_dataplus(_S_construct(__s, __s ? __s + traits_type::length(__s) :
10854 __s + npos, __a), __a)
10855 { }
10856 template<typename _CharT, typename _Traits, typename _Alloc>
10857 basic_string<_CharT, _Traits, _Alloc>::
10858 basic_string(size_type __n, _CharT __c, const _Alloc& __a)
10859 : _M_dataplus(_S_construct(__n, __c, __a), __a)
10860 { }
10861 template<typename _CharT, typename _Traits, typename _Alloc>
10862 template<typename _InputIterator>
10863 basic_string<_CharT, _Traits, _Alloc>::
10864 basic_string(_InputIterator __beg, _InputIterator __end, const _Alloc& __a)
10865 : _M_dataplus(_S_construct(__beg, __end, __a), __a)
10866 { }
10867 template<typename _CharT, typename _Traits, typename _Alloc>
10868 basic_string<_CharT, _Traits, _Alloc>&
10869 basic_string<_CharT, _Traits, _Alloc>::
10870 assign(const basic_string& __str)
10871 {
10872 if (_M_rep() != __str._M_rep())
10873 {
10874 const allocator_type __a = this->get_allocator();
10875 _CharT* __tmp = __str._M_rep()->_M_grab(__a, __str.get_allocator());
10876 _M_rep()->_M_dispose(__a);
10877 _M_data(__tmp);
10878 }
10879 return *this;
10880 }
10881 template<typename _CharT, typename _Traits, typename _Alloc>
10882 basic_string<_CharT, _Traits, _Alloc>&
10883 basic_string<_CharT, _Traits, _Alloc>::
10884 assign(const _CharT* __s, size_type __n)
10885 {
10886 ;
10887 _M_check_length(this->size(), __n, "basic_string::assign");
10888 if (_M_disjunct(__s) || _M_rep()->_M_is_shared())
10889 return _M_replace_safe(size_type(0), this->size(), __s, __n);
10890 else
10891 {
10892 const size_type __pos = __s - _M_data();
10893 if (__pos >= __n)
10894 _M_copy(_M_data(), __s, __n);
10895 else if (__pos)
10896 _M_move(_M_data(), __s, __n);
10897 _M_rep()->_M_set_length_and_sharable(__n);
10898 return *this;
10899 }
10900 }
10901 template<typename _CharT, typename _Traits, typename _Alloc>
10902 basic_string<_CharT, _Traits, _Alloc>&
10903 basic_string<_CharT, _Traits, _Alloc>::
10904 append(size_type __n, _CharT __c)
10905 {
10906 if (__n)
10907 {
10908 _M_check_length(size_type(0), __n, "basic_string::append");
10909 const size_type __len = __n + this->size();
10910 if (__len > this->capacity() || _M_rep()->_M_is_shared())
10911 this->reserve(__len);
10912 _M_assign(_M_data() + this->size(), __n, __c);
10913 _M_rep()->_M_set_length_and_sharable(__len);
10914 }
10915 return *this;
10916 }
10917 template<typename _CharT, typename _Traits, typename _Alloc>
10918 basic_string<_CharT, _Traits, _Alloc>&
10919 basic_string<_CharT, _Traits, _Alloc>::
10920 append(const _CharT* __s, size_type __n)
10921 {
10922 ;
10923 if (__n)
10924 {
10925 _M_check_length(size_type(0), __n, "basic_string::append");
10926 const size_type __len = __n + this->size();
10927 if (__len > this->capacity() || _M_rep()->_M_is_shared())
10928 {
10929 if (_M_disjunct(__s))
10930 this->reserve(__len);
10931 else
10932 {
10933 const size_type __off = __s - _M_data();
10934 this->reserve(__len);
10935 __s = _M_data() + __off;
10936 }
10937 }
10938 _M_copy(_M_data() + this->size(), __s, __n);
10939 _M_rep()->_M_set_length_and_sharable(__len);
10940 }
10941 return *this;
10942 }
10943 template<typename _CharT, typename _Traits, typename _Alloc>
10944 basic_string<_CharT, _Traits, _Alloc>&
10945 basic_string<_CharT, _Traits, _Alloc>::
10946 append(const basic_string& __str)
10947 {
10948 const size_type __size = __str.size();
10949 if (__size)
10950 {
10951 const size_type __len = __size + this->size();
10952 if (__len > this->capacity() || _M_rep()->_M_is_shared())
10953 this->reserve(__len);
10954 _M_copy(_M_data() + this->size(), __str._M_data(), __size);
10955 _M_rep()->_M_set_length_and_sharable(__len);
10956 }
10957 return *this;
10958 }
10959 template<typename _CharT, typename _Traits, typename _Alloc>
10960 basic_string<_CharT, _Traits, _Alloc>&
10961 basic_string<_CharT, _Traits, _Alloc>::
10962 append(const basic_string& __str, size_type __pos, size_type __n)
10963 {
10964 __str._M_check(__pos, "basic_string::append");
10965 __n = __str._M_limit(__pos, __n);
10966 if (__n)
10967 {
10968 const size_type __len = __n + this->size();
10969 if (__len > this->capacity() || _M_rep()->_M_is_shared())
10970 this->reserve(__len);
10971 _M_copy(_M_data() + this->size(), __str._M_data() + __pos, __n);
10972 _M_rep()->_M_set_length_and_sharable(__len);
10973 }
10974 return *this;
10975 }
10976 template<typename _CharT, typename _Traits, typename _Alloc>
10977 basic_string<_CharT, _Traits, _Alloc>&
10978 basic_string<_CharT, _Traits, _Alloc>::
10979 insert(size_type __pos, const _CharT* __s, size_type __n)
10980 {
10981 ;
10982 _M_check(__pos, "basic_string::insert");
10983 _M_check_length(size_type(0), __n, "basic_string::insert");
10984 if (_M_disjunct(__s) || _M_rep()->_M_is_shared())
10985 return _M_replace_safe(__pos, size_type(0), __s, __n);
10986 else
10987 {
10988 const size_type __off = __s - _M_data();
10989 _M_mutate(__pos, 0, __n);
10990 __s = _M_data() + __off;
10991 _CharT* __p = _M_data() + __pos;
10992 if (__s + __n <= __p)
10993 _M_copy(__p, __s, __n);
10994 else if (__s >= __p)
10995 _M_copy(__p, __s + __n, __n);
10996 else
10997 {
10998 const size_type __nleft = __p - __s;
10999 _M_copy(__p, __s, __nleft);
11000 _M_copy(__p + __nleft, __p + __n, __n - __nleft);
11001 }
11002 return *this;
11003 }
11004 }
11005 template<typename _CharT, typename _Traits, typename _Alloc>
11006 typename basic_string<_CharT, _Traits, _Alloc>::iterator
11007 basic_string<_CharT, _Traits, _Alloc>::
11008 erase(iterator __first, iterator __last)
11009 {
11010 ;
11011 const size_type __size = __last - __first;
11012 if (__size)
11013 {
11014 const size_type __pos = __first - _M_ibegin();
11015 _M_mutate(__pos, __size, size_type(0));
11016 _M_rep()->_M_set_leaked();
11017 return iterator(_M_data() + __pos);
11018 }
11019 else
11020 return __first;
11021 }
11022 template<typename _CharT, typename _Traits, typename _Alloc>
11023 basic_string<_CharT, _Traits, _Alloc>&
11024 basic_string<_CharT, _Traits, _Alloc>::
11025 replace(size_type __pos, size_type __n1, const _CharT* __s,
11026 size_type __n2)
11027 {
11028 ;
11029 _M_check(__pos, "basic_string::replace");
11030 __n1 = _M_limit(__pos, __n1);
11031 _M_check_length(__n1, __n2, "basic_string::replace");
11032 bool __left;
11033 if (_M_disjunct(__s) || _M_rep()->_M_is_shared())
11034 return _M_replace_safe(__pos, __n1, __s, __n2);
11035 else if ((__left = __s + __n2 <= _M_data() + __pos)
11036 || _M_data() + __pos + __n1 <= __s)
11037 {
11038 size_type __off = __s - _M_data();
11039 __left ? __off : (__off += __n2 - __n1);
11040 _M_mutate(__pos, __n1, __n2);
11041 _M_copy(_M_data() + __pos, _M_data() + __off, __n2);
11042 return *this;
11043 }
11044 else
11045 {
11046 const basic_string __tmp(__s, __n2);
11047 return _M_replace_safe(__pos, __n1, __tmp._M_data(), __n2);
11048 }
11049 }
11050 template<typename _CharT, typename _Traits, typename _Alloc>
11051 void
11052 basic_string<_CharT, _Traits, _Alloc>::_Rep::
11053 _M_destroy(const _Alloc& __a) throw ()
11054 {
11055 const size_type __size = sizeof(_Rep_base) +
11056 (this->_M_capacity + 1) * sizeof(_CharT);
11057 _Raw_bytes_alloc(__a).deallocate(reinterpret_cast<char*>(this), __size);
11058 }
11059 template<typename _CharT, typename _Traits, typename _Alloc>
11060 void
11061 basic_string<_CharT, _Traits, _Alloc>::
11062 _M_leak_hard()
11063 {
11064 if (_M_rep() == &_S_empty_rep())
11065 return;
11066 if (_M_rep()->_M_is_shared())
11067 _M_mutate(0, 0, 0);
11068 _M_rep()->_M_set_leaked();
11069 }
11070 template<typename _CharT, typename _Traits, typename _Alloc>
11071 void
11072 basic_string<_CharT, _Traits, _Alloc>::
11073 _M_mutate(size_type __pos, size_type __len1, size_type __len2)
11074 {
11075 const size_type __old_size = this->size();
11076 const size_type __new_size = __old_size + __len2 - __len1;
11077 const size_type __how_much = __old_size - __pos - __len1;
11078 if (__new_size > this->capacity() || _M_rep()->_M_is_shared())
11079 {
11080 const allocator_type __a = get_allocator();
11081 _Rep* __r = _Rep::_S_create(__new_size, this->capacity(), __a);
11082 if (__pos)
11083 _M_copy(__r->_M_refdata(), _M_data(), __pos);
11084 if (__how_much)
11085 _M_copy(__r->_M_refdata() + __pos + __len2,
11086 _M_data() + __pos + __len1, __how_much);
11087 _M_rep()->_M_dispose(__a);
11088 _M_data(__r->_M_refdata());
11089 }
11090 else if (__how_much && __len1 != __len2)
11091 {
11092 _M_move(_M_data() + __pos + __len2,
11093 _M_data() + __pos + __len1, __how_much);
11094 }
11095 _M_rep()->_M_set_length_and_sharable(__new_size);
11096 }
11097 template<typename _CharT, typename _Traits, typename _Alloc>
11098 void
11099 basic_string<_CharT, _Traits, _Alloc>::
11100 reserve(size_type __res)
11101 {
11102 if (__res != this->capacity() || _M_rep()->_M_is_shared())
11103 {
11104 if (__res < this->size())
11105 __res = this->size();
11106 const allocator_type __a = get_allocator();
11107 _CharT* __tmp = _M_rep()->_M_clone(__a, __res - this->size());
11108 _M_rep()->_M_dispose(__a);
11109 _M_data(__tmp);
11110 }
11111 }
11112 template<typename _CharT, typename _Traits, typename _Alloc>
11113 void
11114 basic_string<_CharT, _Traits, _Alloc>::
11115 swap(basic_string& __s)
11116 {
11117 if (_M_rep()->_M_is_leaked())
11118 _M_rep()->_M_set_sharable();
11119 if (__s._M_rep()->_M_is_leaked())
11120 __s._M_rep()->_M_set_sharable();
11121 if (this->get_allocator() == __s.get_allocator())
11122 {
11123 _CharT* __tmp = _M_data();
11124 _M_data(__s._M_data());
11125 __s._M_data(__tmp);
11126 }
11127 else
11128 {
11129 const basic_string __tmp1(_M_ibegin(), _M_iend(),
11130 __s.get_allocator());
11131 const basic_string __tmp2(__s._M_ibegin(), __s._M_iend(),
11132 this->get_allocator());
11133 *this = __tmp2;
11134 __s = __tmp1;
11135 }
11136 }
11137 template<typename _CharT, typename _Traits, typename _Alloc>
11138 typename basic_string<_CharT, _Traits, _Alloc>::_Rep*
11139 basic_string<_CharT, _Traits, _Alloc>::_Rep::
11140 _S_create(size_type __capacity, size_type __old_capacity,
11141 const _Alloc& __alloc)
11142 {
11143 if (__capacity > _S_max_size)
11144 __throw_length_error(("basic_string::_S_create"));
11145 const size_type __pagesize = 4096;
11146 const size_type __malloc_header_size = 4 * sizeof(void*);
11147 if (__capacity > __old_capacity && __capacity < 2 * __old_capacity)
11148 __capacity = 2 * __old_capacity;
11149 size_type __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep);
11150 const size_type __adj_size = __size + __malloc_header_size;
11151 if (__adj_size > __pagesize && __capacity > __old_capacity)
11152 {
11153 const size_type __extra = __pagesize - __adj_size % __pagesize;
11154 __capacity += __extra / sizeof(_CharT);
11155 if (__capacity > _S_max_size)
11156 __capacity = _S_max_size;
11157 __size = (__capacity + 1) * sizeof(_CharT) + sizeof(_Rep);
11158 }
11159 void* __place = _Raw_bytes_alloc(__alloc).allocate(__size);
11160 _Rep *__p = new (__place) _Rep;
11161 __p->_M_capacity = __capacity;
11162 __p->_M_set_sharable();
11163 return __p;
11164 }
11165 template<typename _CharT, typename _Traits, typename _Alloc>
11166 _CharT*
11167 basic_string<_CharT, _Traits, _Alloc>::_Rep::
11168 _M_clone(const _Alloc& __alloc, size_type __res)
11169 {
11170 const size_type __requested_cap = this->_M_length + __res;
11171 _Rep* __r = _Rep::_S_create(__requested_cap, this->_M_capacity,
11172 __alloc);
11173 if (this->_M_length)
11174 _M_copy(__r->_M_refdata(), _M_refdata(), this->_M_length);
11175 __r->_M_set_length_and_sharable(this->_M_length);
11176 return __r->_M_refdata();
11177 }
11178 template<typename _CharT, typename _Traits, typename _Alloc>
11179 void
11180 basic_string<_CharT, _Traits, _Alloc>::
11181 resize(size_type __n, _CharT __c)
11182 {
11183 const size_type __size = this->size();
11184 _M_check_length(__size, __n, "basic_string::resize");
11185 if (__size < __n)
11186 this->append(__n - __size, __c);
11187 else if (__n < __size)
11188 this->erase(__n);
11189 }
11190 template<typename _CharT, typename _Traits, typename _Alloc>
11191 template<typename _InputIterator>
11192 basic_string<_CharT, _Traits, _Alloc>&
11193 basic_string<_CharT, _Traits, _Alloc>::
11194 _M_replace_dispatch(iterator __i1, iterator __i2, _InputIterator __k1,
11195 _InputIterator __k2, __false_type)
11196 {
11197 const basic_string __s(__k1, __k2);
11198 const size_type __n1 = __i2 - __i1;
11199 _M_check_length(__n1, __s.size(), "basic_string::_M_replace_dispatch");
11200 return _M_replace_safe(__i1 - _M_ibegin(), __n1, __s._M_data(),
11201 __s.size());
11202 }
11203 template<typename _CharT, typename _Traits, typename _Alloc>
11204 basic_string<_CharT, _Traits, _Alloc>&
11205 basic_string<_CharT, _Traits, _Alloc>::
11206 _M_replace_aux(size_type __pos1, size_type __n1, size_type __n2,
11207 _CharT __c)
11208 {
11209 _M_check_length(__n1, __n2, "basic_string::_M_replace_aux");
11210 _M_mutate(__pos1, __n1, __n2);
11211 if (__n2)
11212 _M_assign(_M_data() + __pos1, __n2, __c);
11213 return *this;
11214 }
11215 template<typename _CharT, typename _Traits, typename _Alloc>
11216 basic_string<_CharT, _Traits, _Alloc>&
11217 basic_string<_CharT, _Traits, _Alloc>::
11218 _M_replace_safe(size_type __pos1, size_type __n1, const _CharT* __s,
11219 size_type __n2)
11220 {
11221 _M_mutate(__pos1, __n1, __n2);
11222 if (__n2)
11223 _M_copy(_M_data() + __pos1, __s, __n2);
11224 return *this;
11225 }
11226 template<typename _CharT, typename _Traits, typename _Alloc>
11227 basic_string<_CharT, _Traits, _Alloc>
11228 operator+(const _CharT* __lhs,
11229 const basic_string<_CharT, _Traits, _Alloc>& __rhs)
11230 {
11231 ;
11232 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
11233 typedef typename __string_type::size_type __size_type;
11234 const __size_type __len = _Traits::length(__lhs);
11235 __string_type __str;
11236 __str.reserve(__len + __rhs.size());
11237 __str.append(__lhs, __len);
11238 __str.append(__rhs);
11239 return __str;
11240 }
11241 template<typename _CharT, typename _Traits, typename _Alloc>
11242 basic_string<_CharT, _Traits, _Alloc>
11243 operator+(_CharT __lhs, const basic_string<_CharT, _Traits, _Alloc>& __rhs)
11244 {
11245 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
11246 typedef typename __string_type::size_type __size_type;
11247 __string_type __str;
11248 const __size_type __len = __rhs.size();
11249 __str.reserve(__len + 1);
11250 __str.append(__size_type(1), __lhs);
11251 __str.append(__rhs);
11252 return __str;
11253 }
11254 template<typename _CharT, typename _Traits, typename _Alloc>
11255 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11256 basic_string<_CharT, _Traits, _Alloc>::
11257 copy(_CharT* __s, size_type __n, size_type __pos) const
11258 {
11259 _M_check(__pos, "basic_string::copy");
11260 __n = _M_limit(__pos, __n);
11261 ;
11262 if (__n)
11263 _M_copy(__s, _M_data() + __pos, __n);
11264 return __n;
11265 }
11266 template<typename _CharT, typename _Traits, typename _Alloc>
11267 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11268 basic_string<_CharT, _Traits, _Alloc>::
11269 find(const _CharT* __s, size_type __pos, size_type __n) const
11270 {
11271 ;
11272 const size_type __size = this->size();
11273 const _CharT* __data = _M_data();
11274 if (__n == 0)
11275 return __pos <= __size ? __pos : npos;
11276 if (__n <= __size)
11277 {
11278 for (; __pos <= __size - __n; ++__pos)
11279 if (traits_type::eq(__data[__pos], __s[0])
11280 && traits_type::compare(__data + __pos + 1,
11281 __s + 1, __n - 1) == 0)
11282 return __pos;
11283 }
11284 return npos;
11285 }
11286 template<typename _CharT, typename _Traits, typename _Alloc>
11287 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11288 basic_string<_CharT, _Traits, _Alloc>::
11289 find(_CharT __c, size_type __pos) const
11290 {
11291 size_type __ret = npos;
11292 const size_type __size = this->size();
11293 if (__pos < __size)
11294 {
11295 const _CharT* __data = _M_data();
11296 const size_type __n = __size - __pos;
11297 const _CharT* __p = traits_type::find(__data + __pos, __n, __c);
11298 if (__p)
11299 __ret = __p - __data;
11300 }
11301 return __ret;
11302 }
11303 template<typename _CharT, typename _Traits, typename _Alloc>
11304 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11305 basic_string<_CharT, _Traits, _Alloc>::
11306 rfind(const _CharT* __s, size_type __pos, size_type __n) const
11307 {
11308 ;
11309 const size_type __size = this->size();
11310 if (__n <= __size)
11311 {
11312 __pos = std::min(size_type(__size - __n), __pos);
11313 const _CharT* __data = _M_data();
11314 do
11315 {
11316 if (traits_type::compare(__data + __pos, __s, __n) == 0)
11317 return __pos;
11318 }
11319 while (__pos-- > 0);
11320 }
11321 return npos;
11322 }
11323 template<typename _CharT, typename _Traits, typename _Alloc>
11324 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11325 basic_string<_CharT, _Traits, _Alloc>::
11326 rfind(_CharT __c, size_type __pos) const
11327 {
11328 size_type __size = this->size();
11329 if (__size)
11330 {
11331 if (--__size > __pos)
11332 __size = __pos;
11333 for (++__size; __size-- > 0; )
11334 if (traits_type::eq(_M_data()[__size], __c))
11335 return __size;
11336 }
11337 return npos;
11338 }
11339 template<typename _CharT, typename _Traits, typename _Alloc>
11340 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11341 basic_string<_CharT, _Traits, _Alloc>::
11342 find_first_of(const _CharT* __s, size_type __pos, size_type __n) const
11343 {
11344 ;
11345 for (; __n && __pos < this->size(); ++__pos)
11346 {
11347 const _CharT* __p = traits_type::find(__s, __n, _M_data()[__pos]);
11348 if (__p)
11349 return __pos;
11350 }
11351 return npos;
11352 }
11353 template<typename _CharT, typename _Traits, typename _Alloc>
11354 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11355 basic_string<_CharT, _Traits, _Alloc>::
11356 find_last_of(const _CharT* __s, size_type __pos, size_type __n) const
11357 {
11358 ;
11359 size_type __size = this->size();
11360 if (__size && __n)
11361 {
11362 if (--__size > __pos)
11363 __size = __pos;
11364 do
11365 {
11366 if (traits_type::find(__s, __n, _M_data()[__size]))
11367 return __size;
11368 }
11369 while (__size-- != 0);
11370 }
11371 return npos;
11372 }
11373 template<typename _CharT, typename _Traits, typename _Alloc>
11374 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11375 basic_string<_CharT, _Traits, _Alloc>::
11376 find_first_not_of(const _CharT* __s, size_type __pos, size_type __n) const
11377 {
11378 ;
11379 for (; __pos < this->size(); ++__pos)
11380 if (!traits_type::find(__s, __n, _M_data()[__pos]))
11381 return __pos;
11382 return npos;
11383 }
11384 template<typename _CharT, typename _Traits, typename _Alloc>
11385 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11386 basic_string<_CharT, _Traits, _Alloc>::
11387 find_first_not_of(_CharT __c, size_type __pos) const
11388 {
11389 for (; __pos < this->size(); ++__pos)
11390 if (!traits_type::eq(_M_data()[__pos], __c))
11391 return __pos;
11392 return npos;
11393 }
11394 template<typename _CharT, typename _Traits, typename _Alloc>
11395 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11396 basic_string<_CharT, _Traits, _Alloc>::
11397 find_last_not_of(const _CharT* __s, size_type __pos, size_type __n) const
11398 {
11399 ;
11400 size_type __size = this->size();
11401 if (__size)
11402 {
11403 if (--__size > __pos)
11404 __size = __pos;
11405 do
11406 {
11407 if (!traits_type::find(__s, __n, _M_data()[__size]))
11408 return __size;
11409 }
11410 while (__size--);
11411 }
11412 return npos;
11413 }
11414 template<typename _CharT, typename _Traits, typename _Alloc>
11415 typename basic_string<_CharT, _Traits, _Alloc>::size_type
11416 basic_string<_CharT, _Traits, _Alloc>::
11417 find_last_not_of(_CharT __c, size_type __pos) const
11418 {
11419 size_type __size = this->size();
11420 if (__size)
11421 {
11422 if (--__size > __pos)
11423 __size = __pos;
11424 do
11425 {
11426 if (!traits_type::eq(_M_data()[__size], __c))
11427 return __size;
11428 }
11429 while (__size--);
11430 }
11431 return npos;
11432 }
11433 template<typename _CharT, typename _Traits, typename _Alloc>
11434 int
11435 basic_string<_CharT, _Traits, _Alloc>::
11436 compare(size_type __pos, size_type __n, const basic_string& __str) const
11437 {
11438 _M_check(__pos, "basic_string::compare");
11439 __n = _M_limit(__pos, __n);
11440 const size_type __osize = __str.size();
11441 const size_type __len = std::min(__n, __osize);
11442 int __r = traits_type::compare(_M_data() + __pos, __str.data(), __len);
11443 if (!__r)
11444 __r = _S_compare(__n, __osize);
11445 return __r;
11446 }
11447 template<typename _CharT, typename _Traits, typename _Alloc>
11448 int
11449 basic_string<_CharT, _Traits, _Alloc>::
11450 compare(size_type __pos1, size_type __n1, const basic_string& __str,
11451 size_type __pos2, size_type __n2) const
11452 {
11453 _M_check(__pos1, "basic_string::compare");
11454 __str._M_check(__pos2, "basic_string::compare");
11455 __n1 = _M_limit(__pos1, __n1);
11456 __n2 = __str._M_limit(__pos2, __n2);
11457 const size_type __len = std::min(__n1, __n2);
11458 int __r = traits_type::compare(_M_data() + __pos1,
11459 __str.data() + __pos2, __len);
11460 if (!__r)
11461 __r = _S_compare(__n1, __n2);
11462 return __r;
11463 }
11464 template<typename _CharT, typename _Traits, typename _Alloc>
11465 int
11466 basic_string<_CharT, _Traits, _Alloc>::
11467 compare(const _CharT* __s) const
11468 {
11469 ;
11470 const size_type __size = this->size();
11471 const size_type __osize = traits_type::length(__s);
11472 const size_type __len = std::min(__size, __osize);
11473 int __r = traits_type::compare(_M_data(), __s, __len);
11474 if (!__r)
11475 __r = _S_compare(__size, __osize);
11476 return __r;
11477 }
11478 template<typename _CharT, typename _Traits, typename _Alloc>
11479 int
11480 basic_string <_CharT, _Traits, _Alloc>::
11481 compare(size_type __pos, size_type __n1, const _CharT* __s) const
11482 {
11483 ;
11484 _M_check(__pos, "basic_string::compare");
11485 __n1 = _M_limit(__pos, __n1);
11486 const size_type __osize = traits_type::length(__s);
11487 const size_type __len = std::min(__n1, __osize);
11488 int __r = traits_type::compare(_M_data() + __pos, __s, __len);
11489 if (!__r)
11490 __r = _S_compare(__n1, __osize);
11491 return __r;
11492 }
11493 template<typename _CharT, typename _Traits, typename _Alloc>
11494 int
11495 basic_string <_CharT, _Traits, _Alloc>::
11496 compare(size_type __pos, size_type __n1, const _CharT* __s,
11497 size_type __n2) const
11498 {
11499 ;
11500 _M_check(__pos, "basic_string::compare");
11501 __n1 = _M_limit(__pos, __n1);
11502 const size_type __len = std::min(__n1, __n2);
11503 int __r = traits_type::compare(_M_data() + __pos, __s, __len);
11504 if (!__r)
11505 __r = _S_compare(__n1, __n2);
11506 return __r;
11507 }
11508 template<typename _CharT, typename _Traits, typename _Alloc>
11509 basic_istream<_CharT, _Traits>&
11510 operator>>(basic_istream<_CharT, _Traits>& __in,
11511 basic_string<_CharT, _Traits, _Alloc>& __str)
11512 {
11513 typedef basic_istream<_CharT, _Traits> __istream_type;
11514 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
11515 typedef typename __istream_type::ios_base __ios_base;
11516 typedef typename __istream_type::int_type __int_type;
11517 typedef typename __string_type::size_type __size_type;
11518 typedef ctype<_CharT> __ctype_type;
11519 typedef typename __ctype_type::ctype_base __ctype_base;
11520 __size_type __extracted = 0;
11521 typename __ios_base::iostate __err = __ios_base::goodbit;
11522 typename __istream_type::sentry __cerb(__in, false);
11523 if (__cerb)
11524 {
11525 try
11526 {
11527 __str.erase();
11528 _CharT __buf[128];
11529 __size_type __len = 0;
11530 const streamsize __w = __in.width();
11531 const __size_type __n = __w > 0 ? static_cast<__size_type>(__w)
11532 : __str.max_size();
11533 const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
11534 const __int_type __eof = _Traits::eof();
11535 __int_type __c = __in.rdbuf()->sgetc();
11536 while (__extracted < __n
11537 && !_Traits::eq_int_type(__c, __eof)
11538 && !__ct.is(__ctype_base::space,
11539 _Traits::to_char_type(__c)))
11540 {
11541 if (__len == sizeof(__buf) / sizeof(_CharT))
11542 {
11543 __str.append(__buf, sizeof(__buf) / sizeof(_CharT));
11544 __len = 0;
11545 }
11546 __buf[__len++] = _Traits::to_char_type(__c);
11547 ++__extracted;
11548 __c = __in.rdbuf()->snextc();
11549 }
11550 __str.append(__buf, __len);
11551 if (_Traits::eq_int_type(__c, __eof))
11552 __err |= __ios_base::eofbit;
11553 __in.width(0);
11554 }
11555 catch(__cxxabiv1::__forced_unwind&)
11556 {
11557 __in._M_setstate(__ios_base::badbit);
11558 throw;
11559 }
11560 catch(...)
11561 {
11562 __in._M_setstate(__ios_base::badbit);
11563 }
11564 }
11565 if (!__extracted)
11566 __err |= __ios_base::failbit;
11567 if (__err)
11568 __in.setstate(__err);
11569 return __in;
11570 }
11571 template<typename _CharT, typename _Traits, typename _Alloc>
11572 basic_istream<_CharT, _Traits>&
11573 getline(basic_istream<_CharT, _Traits>& __in,
11574 basic_string<_CharT, _Traits, _Alloc>& __str, _CharT __delim)
11575 {
11576 typedef basic_istream<_CharT, _Traits> __istream_type;
11577 typedef basic_string<_CharT, _Traits, _Alloc> __string_type;
11578 typedef typename __istream_type::ios_base __ios_base;
11579 typedef typename __istream_type::int_type __int_type;
11580 typedef typename __string_type::size_type __size_type;
11581 __size_type __extracted = 0;
11582 const __size_type __n = __str.max_size();
11583 typename __ios_base::iostate __err = __ios_base::goodbit;
11584 typename __istream_type::sentry __cerb(__in, true);
11585 if (__cerb)
11586 {
11587 try
11588 {
11589 __str.erase();
11590 const __int_type __idelim = _Traits::to_int_type(__delim);
11591 const __int_type __eof = _Traits::eof();
11592 __int_type __c = __in.rdbuf()->sgetc();
11593 while (__extracted < __n
11594 && !_Traits::eq_int_type(__c, __eof)
11595 && !_Traits::eq_int_type(__c, __idelim))
11596 {
11597 __str += _Traits::to_char_type(__c);
11598 ++__extracted;
11599 __c = __in.rdbuf()->snextc();
11600 }
11601 if (_Traits::eq_int_type(__c, __eof))
11602 __err |= __ios_base::eofbit;
11603 else if (_Traits::eq_int_type(__c, __idelim))
11604 {
11605 ++__extracted;
11606 __in.rdbuf()->sbumpc();
11607 }
11608 else
11609 __err |= __ios_base::failbit;
11610 }
11611 catch(__cxxabiv1::__forced_unwind&)
11612 {
11613 __in._M_setstate(__ios_base::badbit);
11614 throw;
11615 }
11616 catch(...)
11617 {
11618 __in._M_setstate(__ios_base::badbit);
11619 }
11620 }
11621 if (!__extracted)
11622 __err |= __ios_base::failbit;
11623 if (__err)
11624 __in.setstate(__err);
11625 return __in;
11626 }
11627 extern template class basic_string<char>;
11628 extern template
11629 basic_istream<char>&
11630 operator>>(basic_istream<char>&, string&);
11631 extern template
11632 basic_ostream<char>&
11633 operator<<(basic_ostream<char>&, const string&);
11634 extern template
11635 basic_istream<char>&
11636 getline(basic_istream<char>&, string&, char);
11637 extern template
11638 basic_istream<char>&
11639 getline(basic_istream<char>&, string&);
11640 extern template class basic_string<wchar_t>;
11641 extern template
11642 basic_istream<wchar_t>&
11643 operator>>(basic_istream<wchar_t>&, wstring&);
11644 extern template
11645 basic_ostream<wchar_t>&
11646 operator<<(basic_ostream<wchar_t>&, const wstring&);
11647 extern template
11648 basic_istream<wchar_t>&
11649 getline(basic_istream<wchar_t>&, wstring&, wchar_t);
11650 extern template
11651 basic_istream<wchar_t>&
11652 getline(basic_istream<wchar_t>&, wstring&);
11653}
11654
11655
11656
11657
11658
11659namespace std __attribute__ ((__visibility__ ("default"))) {
11660 class locale
11661 {
11662 public:
11663 typedef int category;
11664 class facet;
11665 class id;
11666 class _Impl;
11667 friend class facet;
11668 friend class _Impl;
11669 template<typename _Facet>
11670 friend bool
11671 has_facet(const locale&) throw();
11672 template<typename _Facet>
11673 friend const _Facet&
11674 use_facet(const locale&);
11675 template<typename _Cache>
11676 friend struct __use_cache;
11677 static const category none = 0;
11678 static const category ctype = 1L << 0;
11679 static const category numeric = 1L << 1;
11680 static const category collate = 1L << 2;
11681 static const category time = 1L << 3;
11682 static const category monetary = 1L << 4;
11683 static const category messages = 1L << 5;
11684 static const category all = (ctype | numeric | collate |
11685 time | monetary | messages);
11686 locale() throw();
11687 locale(const locale& __other) throw();
11688 explicit
11689 locale(const char* __s);
11690 locale(const locale& __base, const char* __s, category __cat);
11691 locale(const locale& __base, const locale& __add, category __cat);
11692 template<typename _Facet>
11693 locale(const locale& __other, _Facet* __f);
11694 ~locale() throw();
11695 const locale&
11696 operator=(const locale& __other) throw();
11697 template<typename _Facet>
11698 locale
11699 combine(const locale& __other) const;
11700 string
11701 name() const;
11702 bool
11703 operator==(const locale& __other) const throw ();
11704 bool
11705 operator!=(const locale& __other) const throw ()
11706 { return !(this->operator==(__other)); }
11707 template<typename _Char, typename _Traits, typename _Alloc>
11708 bool
11709 operator()(const basic_string<_Char, _Traits, _Alloc>& __s1,
11710 const basic_string<_Char, _Traits, _Alloc>& __s2) const;
11711 static locale
11712 global(const locale&);
11713 static const locale&
11714 classic();
11715 private:
11716 _Impl* _M_impl;
11717 static _Impl* _S_classic;
11718 static _Impl* _S_global;
11719 static const char* const* const _S_categories;
11720 enum { _S_categories_size = 6 + 6 };
11721 static __gthread_once_t _S_once;
11722 explicit
11723 locale(_Impl*) throw();
11724 static void
11725 _S_initialize();
11726 static void
11727 _S_initialize_once();
11728 static category
11729 _S_normalize_category(category);
11730 void
11731 _M_coalesce(const locale& __base, const locale& __add, category __cat);
11732 };
11733 class locale::facet
11734 {
11735 private:
11736 friend class locale;
11737 friend class locale::_Impl;
11738 mutable _Atomic_word _M_refcount;
11739 static __c_locale _S_c_locale;
11740 static const char _S_c_name[2];
11741 static __gthread_once_t _S_once;
11742 static void
11743 _S_initialize_once();
11744 protected:
11745 explicit
11746 facet(size_t __refs = 0) throw() : _M_refcount(__refs ? 1 : 0)
11747 { }
11748 virtual
11749 ~facet();
11750 static void
11751 _S_create_c_locale(__c_locale& __cloc, const char* __s,
11752 __c_locale __old = 0);
11753 static __c_locale
11754 _S_clone_c_locale(__c_locale& __cloc);
11755 static void
11756 _S_destroy_c_locale(__c_locale& __cloc);
11757 static __c_locale
11758 _S_get_c_locale();
11759 static const char*
11760 _S_get_c_name();
11761 private:
11762 void
11763 _M_add_reference() const throw()
11764 { __gnu_cxx::__atomic_add_dispatch(&_M_refcount, 1); }
11765 void
11766 _M_remove_reference() const throw()
11767 {
11768 if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1)
11769 {
11770 try
11771 { delete this; }
11772 catch(...)
11773 { }
11774 }
11775 }
11776 facet(const facet&);
11777 facet&
11778 operator=(const facet&);
11779 };
11780 class locale::id
11781 {
11782 private:
11783 friend class locale;
11784 friend class locale::_Impl;
11785 template<typename _Facet>
11786 friend const _Facet&
11787 use_facet(const locale&);
11788 template<typename _Facet>
11789 friend bool
11790 has_facet(const locale&) throw ();
11791 mutable size_t _M_index;
11792 static _Atomic_word _S_refcount;
11793 void
11794 operator=(const id&);
11795 id(const id&);
11796 public:
11797 id() { }
11798 size_t
11799 _M_id() const;
11800 };
11801 class locale::_Impl
11802 {
11803 public:
11804 friend class locale;
11805 friend class locale::facet;
11806 template<typename _Facet>
11807 friend bool
11808 has_facet(const locale&) throw();
11809 template<typename _Facet>
11810 friend const _Facet&
11811 use_facet(const locale&);
11812 template<typename _Cache>
11813 friend struct __use_cache;
11814 private:
11815 _Atomic_word _M_refcount;
11816 const facet** _M_facets;
11817 size_t _M_facets_size;
11818 const facet** _M_caches;
11819 char** _M_names;
11820 static const locale::id* const _S_id_ctype[];
11821 static const locale::id* const _S_id_numeric[];
11822 static const locale::id* const _S_id_collate[];
11823 static const locale::id* const _S_id_time[];
11824 static const locale::id* const _S_id_monetary[];
11825 static const locale::id* const _S_id_messages[];
11826 static const locale::id* const* const _S_facet_categories[];
11827 void
11828 _M_add_reference() throw()
11829 { __gnu_cxx::__atomic_add_dispatch(&_M_refcount, 1); }
11830 void
11831 _M_remove_reference() throw()
11832 {
11833 if (__gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1) == 1)
11834 {
11835 try
11836 { delete this; }
11837 catch(...)
11838 { }
11839 }
11840 }
11841 _Impl(const _Impl&, size_t);
11842 _Impl(const char*, size_t);
11843 _Impl(size_t) throw();
11844 ~_Impl() throw();
11845 _Impl(const _Impl&);
11846 void
11847 operator=(const _Impl&);
11848 bool
11849 _M_check_same_name()
11850 {
11851 bool __ret = true;
11852 if (_M_names[1])
11853 for (size_t __i = 0; __ret && __i < _S_categories_size - 1; ++__i)
11854 __ret = __builtin_strcmp(_M_names[__i], _M_names[__i + 1]) == 0;
11855 return __ret;
11856 }
11857 void
11858 _M_replace_categories(const _Impl*, category);
11859 void
11860 _M_replace_category(const _Impl*, const locale::id* const*);
11861 void
11862 _M_replace_facet(const _Impl*, const locale::id*);
11863 void
11864 _M_install_facet(const locale::id*, const facet*);
11865 template<typename _Facet>
11866 void
11867 _M_init_facet(_Facet* __facet)
11868 { _M_install_facet(&_Facet::id, __facet); }
11869 void
11870 _M_install_cache(const facet*, size_t);
11871 };
11872 template<typename _Facet>
11873 bool
11874 has_facet(const locale& __loc) throw();
11875 template<typename _Facet>
11876 const _Facet&
11877 use_facet(const locale& __loc);
11878 template<typename _CharT>
11879 class collate : public locale::facet
11880 {
11881 public:
11882 typedef _CharT char_type;
11883 typedef basic_string<_CharT> string_type;
11884 protected:
11885 __c_locale _M_c_locale_collate;
11886 public:
11887 static locale::id id;
11888 explicit
11889 collate(size_t __refs = 0)
11890 : facet(__refs), _M_c_locale_collate(_S_get_c_locale())
11891 { }
11892 explicit
11893 collate(__c_locale __cloc, size_t __refs = 0)
11894 : facet(__refs), _M_c_locale_collate(_S_clone_c_locale(__cloc))
11895 { }
11896 int
11897 compare(const _CharT* __lo1, const _CharT* __hi1,
11898 const _CharT* __lo2, const _CharT* __hi2) const
11899 { return this->do_compare(__lo1, __hi1, __lo2, __hi2); }
11900 string_type
11901 transform(const _CharT* __lo, const _CharT* __hi) const
11902 { return this->do_transform(__lo, __hi); }
11903 long
11904 hash(const _CharT* __lo, const _CharT* __hi) const
11905 { return this->do_hash(__lo, __hi); }
11906 int
11907 _M_compare(const _CharT*, const _CharT*) const;
11908 size_t
11909 _M_transform(_CharT*, const _CharT*, size_t) const;
11910 protected:
11911 virtual
11912 ~collate()
11913 { _S_destroy_c_locale(_M_c_locale_collate); }
11914 virtual int
11915 do_compare(const _CharT* __lo1, const _CharT* __hi1,
11916 const _CharT* __lo2, const _CharT* __hi2) const;
11917 virtual string_type
11918 do_transform(const _CharT* __lo, const _CharT* __hi) const;
11919 virtual long
11920 do_hash(const _CharT* __lo, const _CharT* __hi) const;
11921 };
11922 template<typename _CharT>
11923 locale::id collate<_CharT>::id;
11924 template<>
11925 int
11926 collate<char>::_M_compare(const char*, const char*) const;
11927 template<>
11928 size_t
11929 collate<char>::_M_transform(char*, const char*, size_t) const;
11930 template<>
11931 int
11932 collate<wchar_t>::_M_compare(const wchar_t*, const wchar_t*) const;
11933 template<>
11934 size_t
11935 collate<wchar_t>::_M_transform(wchar_t*, const wchar_t*, size_t) const;
11936 template<typename _CharT>
11937 class collate_byname : public collate<_CharT>
11938 {
11939 public:
11940 typedef _CharT char_type;
11941 typedef basic_string<_CharT> string_type;
11942 explicit
11943 collate_byname(const char* __s, size_t __refs = 0)
11944 : collate<_CharT>(__refs)
11945 {
11946 if (__builtin_strcmp(__s, "C") != 0
11947 && __builtin_strcmp(__s, "POSIX") != 0)
11948 {
11949 this->_S_destroy_c_locale(this->_M_c_locale_collate);
11950 this->_S_create_c_locale(this->_M_c_locale_collate, __s);
11951 }
11952 }
11953 protected:
11954 virtual
11955 ~collate_byname() { }
11956 };
11957}
11958
11959namespace std __attribute__ ((__visibility__ ("default"))) {
11960 template<typename _Facet>
11961 locale::
11962 locale(const locale& __other, _Facet* __f)
11963 {
11964 _M_impl = new _Impl(*__other._M_impl, 1);
11965 try
11966 { _M_impl->_M_install_facet(&_Facet::id, __f); }
11967 catch(...)
11968 {
11969 _M_impl->_M_remove_reference();
11970 throw;
11971 }
11972 delete [] _M_impl->_M_names[0];
11973 _M_impl->_M_names[0] = 0;
11974 }
11975 template<typename _Facet>
11976 locale
11977 locale::
11978 combine(const locale& __other) const
11979 {
11980 _Impl* __tmp = new _Impl(*_M_impl, 1);
11981 try
11982 {
11983 __tmp->_M_replace_facet(__other._M_impl, &_Facet::id);
11984 }
11985 catch(...)
11986 {
11987 __tmp->_M_remove_reference();
11988 throw;
11989 }
11990 return locale(__tmp);
11991 }
11992 template<typename _CharT, typename _Traits, typename _Alloc>
11993 bool
11994 locale::
11995 operator()(const basic_string<_CharT, _Traits, _Alloc>& __s1,
11996 const basic_string<_CharT, _Traits, _Alloc>& __s2) const
11997 {
11998 typedef std::collate<_CharT> __collate_type;
11999 const __collate_type& __collate = use_facet<__collate_type>(*this);
12000 return (__collate.compare(__s1.data(), __s1.data() + __s1.length(),
12001 __s2.data(), __s2.data() + __s2.length()) < 0);
12002 }
12003 template<typename _Facet>
12004 bool
12005 has_facet(const locale& __loc) throw()
12006 {
12007 const size_t __i = _Facet::id._M_id();
12008 const locale::facet** __facets = __loc._M_impl->_M_facets;
12009 return (__i < __loc._M_impl->_M_facets_size
12010 && dynamic_cast<const _Facet*>(__facets[__i]));
12011 }
12012 template<typename _Facet>
12013 const _Facet&
12014 use_facet(const locale& __loc)
12015 {
12016 const size_t __i = _Facet::id._M_id();
12017 const locale::facet** __facets = __loc._M_impl->_M_facets;
12018 if (__i >= __loc._M_impl->_M_facets_size || !__facets[__i])
12019 __throw_bad_cast();
12020 return dynamic_cast<const _Facet&>(*__facets[__i]);
12021 }
12022 template<typename _CharT>
12023 int
12024 collate<_CharT>::_M_compare(const _CharT*, const _CharT*) const
12025 { return 0; }
12026 template<typename _CharT>
12027 size_t
12028 collate<_CharT>::_M_transform(_CharT*, const _CharT*, size_t) const
12029 { return 0; }
12030 template<typename _CharT>
12031 int
12032 collate<_CharT>::
12033 do_compare(const _CharT* __lo1, const _CharT* __hi1,
12034 const _CharT* __lo2, const _CharT* __hi2) const
12035 {
12036 const string_type __one(__lo1, __hi1);
12037 const string_type __two(__lo2, __hi2);
12038 const _CharT* __p = __one.c_str();
12039 const _CharT* __pend = __one.data() + __one.length();
12040 const _CharT* __q = __two.c_str();
12041 const _CharT* __qend = __two.data() + __two.length();
12042 for (;;)
12043 {
12044 const int __res = _M_compare(__p, __q);
12045 if (__res)
12046 return __res;
12047 __p += char_traits<_CharT>::length(__p);
12048 __q += char_traits<_CharT>::length(__q);
12049 if (__p == __pend && __q == __qend)
12050 return 0;
12051 else if (__p == __pend)
12052 return -1;
12053 else if (__q == __qend)
12054 return 1;
12055 __p++;
12056 __q++;
12057 }
12058 }
12059 template<typename _CharT>
12060 typename collate<_CharT>::string_type
12061 collate<_CharT>::
12062 do_transform(const _CharT* __lo, const _CharT* __hi) const
12063 {
12064 string_type __ret;
12065 const string_type __str(__lo, __hi);
12066 const _CharT* __p = __str.c_str();
12067 const _CharT* __pend = __str.data() + __str.length();
12068 size_t __len = (__hi - __lo) * 2;
12069 _CharT* __c = new _CharT[__len];
12070 try
12071 {
12072 for (;;)
12073 {
12074 size_t __res = _M_transform(__c, __p, __len);
12075 if (__res >= __len)
12076 {
12077 __len = __res + 1;
12078 delete [] __c, __c = 0;
12079 __c = new _CharT[__len];
12080 __res = _M_transform(__c, __p, __len);
12081 }
12082 __ret.append(__c, __res);
12083 __p += char_traits<_CharT>::length(__p);
12084 if (__p == __pend)
12085 break;
12086 __p++;
12087 __ret.push_back(_CharT());
12088 }
12089 }
12090 catch(...)
12091 {
12092 delete [] __c;
12093 throw;
12094 }
12095 delete [] __c;
12096 return __ret;
12097 }
12098 template<typename _CharT>
12099 long
12100 collate<_CharT>::
12101 do_hash(const _CharT* __lo, const _CharT* __hi) const
12102 {
12103 unsigned long __val = 0;
12104 for (; __lo < __hi; ++__lo)
12105 __val =
12106 *__lo + ((__val << 7)
12107 | (__val >> (__gnu_cxx::__numeric_traits<unsigned long>::
12108 __digits - 7)));
12109 return static_cast<long>(__val);
12110 }
12111 extern template class collate<char>;
12112 extern template class collate_byname<char>;
12113 extern template
12114 const collate<char>&
12115 use_facet<collate<char> >(const locale&);
12116 extern template
12117 bool
12118 has_facet<collate<char> >(const locale&);
12119 extern template class collate<wchar_t>;
12120 extern template class collate_byname<wchar_t>;
12121 extern template
12122 const collate<wchar_t>&
12123 use_facet<collate<wchar_t> >(const locale&);
12124 extern template
12125 bool
12126 has_facet<collate<wchar_t> >(const locale&);
12127}
12128namespace std __attribute__ ((__visibility__ ("default"))) {
12129 enum _Ios_Fmtflags
12130 {
12131 _S_boolalpha = 1L << 0,
12132 _S_dec = 1L << 1,
12133 _S_fixed = 1L << 2,
12134 _S_hex = 1L << 3,
12135 _S_internal = 1L << 4,
12136 _S_left = 1L << 5,
12137 _S_oct = 1L << 6,
12138 _S_right = 1L << 7,
12139 _S_scientific = 1L << 8,
12140 _S_showbase = 1L << 9,
12141 _S_showpoint = 1L << 10,
12142 _S_showpos = 1L << 11,
12143 _S_skipws = 1L << 12,
12144 _S_unitbuf = 1L << 13,
12145 _S_uppercase = 1L << 14,
12146 _S_adjustfield = _S_left | _S_right | _S_internal,
12147 _S_basefield = _S_dec | _S_oct | _S_hex,
12148 _S_floatfield = _S_scientific | _S_fixed,
12149 _S_ios_fmtflags_end = 1L << 16
12150 };
12151 inline _Ios_Fmtflags
12152 operator&(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
12153 { return _Ios_Fmtflags(static_cast<int>(__a) & static_cast<int>(__b)); }
12154 inline _Ios_Fmtflags
12155 operator|(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
12156 { return _Ios_Fmtflags(static_cast<int>(__a) | static_cast<int>(__b)); }
12157 inline _Ios_Fmtflags
12158 operator^(_Ios_Fmtflags __a, _Ios_Fmtflags __b)
12159 { return _Ios_Fmtflags(static_cast<int>(__a) ^ static_cast<int>(__b)); }
12160 inline _Ios_Fmtflags&
12161 operator|=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
12162 { return __a = __a | __b; }
12163 inline _Ios_Fmtflags&
12164 operator&=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
12165 { return __a = __a & __b; }
12166 inline _Ios_Fmtflags&
12167 operator^=(_Ios_Fmtflags& __a, _Ios_Fmtflags __b)
12168 { return __a = __a ^ __b; }
12169 inline _Ios_Fmtflags
12170 operator~(_Ios_Fmtflags __a)
12171 { return _Ios_Fmtflags(~static_cast<int>(__a)); }
12172 enum _Ios_Openmode
12173 {
12174 _S_app = 1L << 0,
12175 _S_ate = 1L << 1,
12176 _S_bin = 1L << 2,
12177 _S_in = 1L << 3,
12178 _S_out = 1L << 4,
12179 _S_trunc = 1L << 5,
12180 _S_ios_openmode_end = 1L << 16
12181 };
12182 inline _Ios_Openmode
12183 operator&(_Ios_Openmode __a, _Ios_Openmode __b)
12184 { return _Ios_Openmode(static_cast<int>(__a) & static_cast<int>(__b)); }
12185 inline _Ios_Openmode
12186 operator|(_Ios_Openmode __a, _Ios_Openmode __b)
12187 { return _Ios_Openmode(static_cast<int>(__a) | static_cast<int>(__b)); }
12188 inline _Ios_Openmode
12189 operator^(_Ios_Openmode __a, _Ios_Openmode __b)
12190 { return _Ios_Openmode(static_cast<int>(__a) ^ static_cast<int>(__b)); }
12191 inline _Ios_Openmode&
12192 operator|=(_Ios_Openmode& __a, _Ios_Openmode __b)
12193 { return __a = __a | __b; }
12194 inline _Ios_Openmode&
12195 operator&=(_Ios_Openmode& __a, _Ios_Openmode __b)
12196 { return __a = __a & __b; }
12197 inline _Ios_Openmode&
12198 operator^=(_Ios_Openmode& __a, _Ios_Openmode __b)
12199 { return __a = __a ^ __b; }
12200 inline _Ios_Openmode
12201 operator~(_Ios_Openmode __a)
12202 { return _Ios_Openmode(~static_cast<int>(__a)); }
12203 enum _Ios_Iostate
12204 {
12205 _S_goodbit = 0,
12206 _S_badbit = 1L << 0,
12207 _S_eofbit = 1L << 1,
12208 _S_failbit = 1L << 2,
12209 _S_ios_iostate_end = 1L << 16
12210 };
12211 inline _Ios_Iostate
12212 operator&(_Ios_Iostate __a, _Ios_Iostate __b)
12213 { return _Ios_Iostate(static_cast<int>(__a) & static_cast<int>(__b)); }
12214 inline _Ios_Iostate
12215 operator|(_Ios_Iostate __a, _Ios_Iostate __b)
12216 { return _Ios_Iostate(static_cast<int>(__a) | static_cast<int>(__b)); }
12217 inline _Ios_Iostate
12218 operator^(_Ios_Iostate __a, _Ios_Iostate __b)
12219 { return _Ios_Iostate(static_cast<int>(__a) ^ static_cast<int>(__b)); }
12220 inline _Ios_Iostate&
12221 operator|=(_Ios_Iostate& __a, _Ios_Iostate __b)
12222 { return __a = __a | __b; }
12223 inline _Ios_Iostate&
12224 operator&=(_Ios_Iostate& __a, _Ios_Iostate __b)
12225 { return __a = __a & __b; }
12226 inline _Ios_Iostate&
12227 operator^=(_Ios_Iostate& __a, _Ios_Iostate __b)
12228 { return __a = __a ^ __b; }
12229 inline _Ios_Iostate
12230 operator~(_Ios_Iostate __a)
12231 { return _Ios_Iostate(~static_cast<int>(__a)); }
12232 enum _Ios_Seekdir
12233 {
12234 _S_beg = 0,
12235 _S_cur = 1,
12236 _S_end = 2,
12237 _S_ios_seekdir_end = 1L << 16
12238 };
12239 class ios_base
12240 {
12241 public:
12242 class failure : public exception
12243 {
12244 public:
12245 explicit
12246 failure(const string& __str) throw();
12247 virtual
12248 ~failure() throw();
12249 virtual const char*
12250 what() const throw();
12251 private:
12252 string _M_msg;
12253 };
12254 typedef _Ios_Fmtflags fmtflags;
12255 static const fmtflags boolalpha = _S_boolalpha;
12256 static const fmtflags dec = _S_dec;
12257 static const fmtflags fixed = _S_fixed;
12258 static const fmtflags hex = _S_hex;
12259 static const fmtflags internal = _S_internal;
12260 static const fmtflags left = _S_left;
12261 static const fmtflags oct = _S_oct;
12262 static const fmtflags right = _S_right;
12263 static const fmtflags scientific = _S_scientific;
12264 static const fmtflags showbase = _S_showbase;
12265 static const fmtflags showpoint = _S_showpoint;
12266 static const fmtflags showpos = _S_showpos;
12267 static const fmtflags skipws = _S_skipws;
12268 static const fmtflags unitbuf = _S_unitbuf;
12269 static const fmtflags uppercase = _S_uppercase;
12270 static const fmtflags adjustfield = _S_adjustfield;
12271 static const fmtflags basefield = _S_basefield;
12272 static const fmtflags floatfield = _S_floatfield;
12273 typedef _Ios_Iostate iostate;
12274 static const iostate badbit = _S_badbit;
12275 static const iostate eofbit = _S_eofbit;
12276 static const iostate failbit = _S_failbit;
12277 static const iostate goodbit = _S_goodbit;
12278 typedef _Ios_Openmode openmode;
12279 static const openmode app = _S_app;
12280 static const openmode ate = _S_ate;
12281 static const openmode binary = _S_bin;
12282 static const openmode in = _S_in;
12283 static const openmode out = _S_out;
12284 static const openmode trunc = _S_trunc;
12285 typedef _Ios_Seekdir seekdir;
12286 static const seekdir beg = _S_beg;
12287 static const seekdir cur = _S_cur;
12288 static const seekdir end = _S_end;
12289 typedef int io_state;
12290 typedef int open_mode;
12291 typedef int seek_dir;
12292 typedef std::streampos streampos;
12293 typedef std::streamoff streamoff;
12294 enum event
12295 {
12296 erase_event,
12297 imbue_event,
12298 copyfmt_event
12299 };
12300 typedef void (*event_callback) (event, ios_base&, int);
12301 void
12302 register_callback(event_callback __fn, int __index);
12303 protected:
12304 streamsize _M_precision;
12305 streamsize _M_width;
12306 fmtflags _M_flags;
12307 iostate _M_exception;
12308 iostate _M_streambuf_state;
12309 struct _Callback_list
12310 {
12311 _Callback_list* _M_next;
12312 ios_base::event_callback _M_fn;
12313 int _M_index;
12314 _Atomic_word _M_refcount;
12315 _Callback_list(ios_base::event_callback __fn, int __index,
12316 _Callback_list* __cb)
12317 : _M_next(__cb), _M_fn(__fn), _M_index(__index), _M_refcount(0) { }
12318 void
12319 _M_add_reference() { __gnu_cxx::__atomic_add_dispatch(&_M_refcount, 1); }
12320 int
12321 _M_remove_reference()
12322 { return __gnu_cxx::__exchange_and_add_dispatch(&_M_refcount, -1); }
12323 };
12324 _Callback_list* _M_callbacks;
12325 void
12326 _M_call_callbacks(event __ev) throw();
12327 void
12328 _M_dispose_callbacks(void);
12329 struct _Words
12330 {
12331 void* _M_pword;
12332 long _M_iword;
12333 _Words() : _M_pword(0), _M_iword(0) { }
12334 };
12335 _Words _M_word_zero;
12336 enum { _S_local_word_size = 8 };
12337 _Words _M_local_word[_S_local_word_size];
12338 int _M_word_size;
12339 _Words* _M_word;
12340 _Words&
12341 _M_grow_words(int __index, bool __iword);
12342 locale _M_ios_locale;
12343 void
12344 _M_init();
12345 public:
12346 class Init
12347 {
12348 friend class ios_base;
12349 public:
12350 Init();
12351 ~Init();
12352 private:
12353 static _Atomic_word _S_refcount;
12354 static bool _S_synced_with_stdio;
12355 };
12356 fmtflags
12357 flags() const
12358 { return _M_flags; }
12359 fmtflags
12360 flags(fmtflags __fmtfl)
12361 {
12362 fmtflags __old = _M_flags;
12363 _M_flags = __fmtfl;
12364 return __old;
12365 }
12366 fmtflags
12367 setf(fmtflags __fmtfl)
12368 {
12369 fmtflags __old = _M_flags;
12370 _M_flags |= __fmtfl;
12371 return __old;
12372 }
12373 fmtflags
12374 setf(fmtflags __fmtfl, fmtflags __mask)
12375 {
12376 fmtflags __old = _M_flags;
12377 _M_flags &= ~__mask;
12378 _M_flags |= (__fmtfl & __mask);
12379 return __old;
12380 }
12381 void
12382 unsetf(fmtflags __mask)
12383 { _M_flags &= ~__mask; }
12384 streamsize
12385 precision() const
12386 { return _M_precision; }
12387 streamsize
12388 precision(streamsize __prec)
12389 {
12390 streamsize __old = _M_precision;
12391 _M_precision = __prec;
12392 return __old;
12393 }
12394 streamsize
12395 width() const
12396 { return _M_width; }
12397 streamsize
12398 width(streamsize __wide)
12399 {
12400 streamsize __old = _M_width;
12401 _M_width = __wide;
12402 return __old;
12403 }
12404 static bool
12405 sync_with_stdio(bool __sync = true);
12406 locale
12407 imbue(const locale& __loc);
12408 locale
12409 getloc() const
12410 { return _M_ios_locale; }
12411 const locale&
12412 _M_getloc() const
12413 { return _M_ios_locale; }
12414 static int
12415 xalloc() throw();
12416 long&
12417 iword(int __ix)
12418 {
12419 _Words& __word = (__ix < _M_word_size)
12420 ? _M_word[__ix] : _M_grow_words(__ix, true);
12421 return __word._M_iword;
12422 }
12423 void*&
12424 pword(int __ix)
12425 {
12426 _Words& __word = (__ix < _M_word_size)
12427 ? _M_word[__ix] : _M_grow_words(__ix, false);
12428 return __word._M_pword;
12429 }
12430 virtual ~ios_base();
12431 protected:
12432 ios_base();
12433 private:
12434 ios_base(const ios_base&);
12435 ios_base&
12436 operator=(const ios_base&);
12437 };
12438 inline ios_base&
12439 boolalpha(ios_base& __base)
12440 {
12441 __base.setf(ios_base::boolalpha);
12442 return __base;
12443 }
12444 inline ios_base&
12445 noboolalpha(ios_base& __base)
12446 {
12447 __base.unsetf(ios_base::boolalpha);
12448 return __base;
12449 }
12450 inline ios_base&
12451 showbase(ios_base& __base)
12452 {
12453 __base.setf(ios_base::showbase);
12454 return __base;
12455 }
12456 inline ios_base&
12457 noshowbase(ios_base& __base)
12458 {
12459 __base.unsetf(ios_base::showbase);
12460 return __base;
12461 }
12462 inline ios_base&
12463 showpoint(ios_base& __base)
12464 {
12465 __base.setf(ios_base::showpoint);
12466 return __base;
12467 }
12468 inline ios_base&
12469 noshowpoint(ios_base& __base)
12470 {
12471 __base.unsetf(ios_base::showpoint);
12472 return __base;
12473 }
12474 inline ios_base&
12475 showpos(ios_base& __base)
12476 {
12477 __base.setf(ios_base::showpos);
12478 return __base;
12479 }
12480 inline ios_base&
12481 noshowpos(ios_base& __base)
12482 {
12483 __base.unsetf(ios_base::showpos);
12484 return __base;
12485 }
12486 inline ios_base&
12487 skipws(ios_base& __base)
12488 {
12489 __base.setf(ios_base::skipws);
12490 return __base;
12491 }
12492 inline ios_base&
12493 noskipws(ios_base& __base)
12494 {
12495 __base.unsetf(ios_base::skipws);
12496 return __base;
12497 }
12498 inline ios_base&
12499 uppercase(ios_base& __base)
12500 {
12501 __base.setf(ios_base::uppercase);
12502 return __base;
12503 }
12504 inline ios_base&
12505 nouppercase(ios_base& __base)
12506 {
12507 __base.unsetf(ios_base::uppercase);
12508 return __base;
12509 }
12510 inline ios_base&
12511 unitbuf(ios_base& __base)
12512 {
12513 __base.setf(ios_base::unitbuf);
12514 return __base;
12515 }
12516 inline ios_base&
12517 nounitbuf(ios_base& __base)
12518 {
12519 __base.unsetf(ios_base::unitbuf);
12520 return __base;
12521 }
12522 inline ios_base&
12523 internal(ios_base& __base)
12524 {
12525 __base.setf(ios_base::internal, ios_base::adjustfield);
12526 return __base;
12527 }
12528 inline ios_base&
12529 left(ios_base& __base)
12530 {
12531 __base.setf(ios_base::left, ios_base::adjustfield);
12532 return __base;
12533 }
12534 inline ios_base&
12535 right(ios_base& __base)
12536 {
12537 __base.setf(ios_base::right, ios_base::adjustfield);
12538 return __base;
12539 }
12540 inline ios_base&
12541 dec(ios_base& __base)
12542 {
12543 __base.setf(ios_base::dec, ios_base::basefield);
12544 return __base;
12545 }
12546 inline ios_base&
12547 hex(ios_base& __base)
12548 {
12549 __base.setf(ios_base::hex, ios_base::basefield);
12550 return __base;
12551 }
12552 inline ios_base&
12553 oct(ios_base& __base)
12554 {
12555 __base.setf(ios_base::oct, ios_base::basefield);
12556 return __base;
12557 }
12558 inline ios_base&
12559 fixed(ios_base& __base)
12560 {
12561 __base.setf(ios_base::fixed, ios_base::floatfield);
12562 return __base;
12563 }
12564 inline ios_base&
12565 scientific(ios_base& __base)
12566 {
12567 __base.setf(ios_base::scientific, ios_base::floatfield);
12568 return __base;
12569 }
12570}
12571
12572namespace std __attribute__ ((__visibility__ ("default"))) {
12573 template<typename _CharT, typename _Traits>
12574 streamsize
12575 __copy_streambufs_eof(basic_streambuf<_CharT, _Traits>*,
12576 basic_streambuf<_CharT, _Traits>*, bool&);
12577 template<typename _CharT, typename _Traits>
12578 class basic_streambuf
12579 {
12580 public:
12581 typedef _CharT char_type;
12582 typedef _Traits traits_type;
12583 typedef typename traits_type::int_type int_type;
12584 typedef typename traits_type::pos_type pos_type;
12585 typedef typename traits_type::off_type off_type;
12586 typedef basic_streambuf<char_type, traits_type> __streambuf_type;
12587 friend class basic_ios<char_type, traits_type>;
12588 friend class basic_istream<char_type, traits_type>;
12589 friend class basic_ostream<char_type, traits_type>;
12590 friend class istreambuf_iterator<char_type, traits_type>;
12591 friend class ostreambuf_iterator<char_type, traits_type>;
12592 friend streamsize
12593 __copy_streambufs_eof<>(__streambuf_type*, __streambuf_type*, bool&);
12594 template<bool _IsMove, typename _CharT2>
12595 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
12596 _CharT2*>::__type
12597 __copy_move_a2(istreambuf_iterator<_CharT2>,
12598 istreambuf_iterator<_CharT2>, _CharT2*);
12599 template<typename _CharT2>
12600 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
12601 istreambuf_iterator<_CharT2> >::__type
12602 find(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
12603 const _CharT2&);
12604 template<typename _CharT2, typename _Traits2>
12605 friend basic_istream<_CharT2, _Traits2>&
12606 operator>>(basic_istream<_CharT2, _Traits2>&, _CharT2*);
12607 template<typename _CharT2, typename _Traits2, typename _Alloc>
12608 friend basic_istream<_CharT2, _Traits2>&
12609 operator>>(basic_istream<_CharT2, _Traits2>&,
12610 basic_string<_CharT2, _Traits2, _Alloc>&);
12611 template<typename _CharT2, typename _Traits2, typename _Alloc>
12612 friend basic_istream<_CharT2, _Traits2>&
12613 getline(basic_istream<_CharT2, _Traits2>&,
12614 basic_string<_CharT2, _Traits2, _Alloc>&, _CharT2);
12615 protected:
12616 char_type* _M_in_beg;
12617 char_type* _M_in_cur;
12618 char_type* _M_in_end;
12619 char_type* _M_out_beg;
12620 char_type* _M_out_cur;
12621 char_type* _M_out_end;
12622 locale _M_buf_locale;
12623 public:
12624 virtual
12625 ~basic_streambuf()
12626 { }
12627 locale
12628 pubimbue(const locale &__loc)
12629 {
12630 locale __tmp(this->getloc());
12631 this->imbue(__loc);
12632 _M_buf_locale = __loc;
12633 return __tmp;
12634 }
12635 locale
12636 getloc() const
12637 { return _M_buf_locale; }
12638 __streambuf_type*
12639 pubsetbuf(char_type* __s, streamsize __n)
12640 { return this->setbuf(__s, __n); }
12641 pos_type
12642 pubseekoff(off_type __off, ios_base::seekdir __way,
12643 ios_base::openmode __mode = ios_base::in | ios_base::out)
12644 { return this->seekoff(__off, __way, __mode); }
12645 pos_type
12646 pubseekpos(pos_type __sp,
12647 ios_base::openmode __mode = ios_base::in | ios_base::out)
12648 { return this->seekpos(__sp, __mode); }
12649 int
12650 pubsync() { return this->sync(); }
12651 streamsize
12652 in_avail()
12653 {
12654 const streamsize __ret = this->egptr() - this->gptr();
12655 return __ret ? __ret : this->showmanyc();
12656 }
12657 int_type
12658 snextc()
12659 {
12660 int_type __ret = traits_type::eof();
12661 if (__builtin_expect(!traits_type::eq_int_type(this->sbumpc(),
12662 __ret), true))
12663 __ret = this->sgetc();
12664 return __ret;
12665 }
12666 int_type
12667 sbumpc()
12668 {
12669 int_type __ret;
12670 if (__builtin_expect(this->gptr() < this->egptr(), true))
12671 {
12672 __ret = traits_type::to_int_type(*this->gptr());
12673 this->gbump(1);
12674 }
12675 else
12676 __ret = this->uflow();
12677 return __ret;
12678 }
12679 int_type
12680 sgetc()
12681 {
12682 int_type __ret;
12683 if (__builtin_expect(this->gptr() < this->egptr(), true))
12684 __ret = traits_type::to_int_type(*this->gptr());
12685 else
12686 __ret = this->underflow();
12687 return __ret;
12688 }
12689 streamsize
12690 sgetn(char_type* __s, streamsize __n)
12691 { return this->xsgetn(__s, __n); }
12692 int_type
12693 sputbackc(char_type __c)
12694 {
12695 int_type __ret;
12696 const bool __testpos = this->eback() < this->gptr();
12697 if (__builtin_expect(!__testpos ||
12698 !traits_type::eq(__c, this->gptr()[-1]), false))
12699 __ret = this->pbackfail(traits_type::to_int_type(__c));
12700 else
12701 {
12702 this->gbump(-1);
12703 __ret = traits_type::to_int_type(*this->gptr());
12704 }
12705 return __ret;
12706 }
12707 int_type
12708 sungetc()
12709 {
12710 int_type __ret;
12711 if (__builtin_expect(this->eback() < this->gptr(), true))
12712 {
12713 this->gbump(-1);
12714 __ret = traits_type::to_int_type(*this->gptr());
12715 }
12716 else
12717 __ret = this->pbackfail();
12718 return __ret;
12719 }
12720 int_type
12721 sputc(char_type __c)
12722 {
12723 int_type __ret;
12724 if (__builtin_expect(this->pptr() < this->epptr(), true))
12725 {
12726 *this->pptr() = __c;
12727 this->pbump(1);
12728 __ret = traits_type::to_int_type(__c);
12729 }
12730 else
12731 __ret = this->overflow(traits_type::to_int_type(__c));
12732 return __ret;
12733 }
12734 streamsize
12735 sputn(const char_type* __s, streamsize __n)
12736 { return this->xsputn(__s, __n); }
12737 protected:
12738 basic_streambuf()
12739 : _M_in_beg(0), _M_in_cur(0), _M_in_end(0),
12740 _M_out_beg(0), _M_out_cur(0), _M_out_end(0),
12741 _M_buf_locale(locale())
12742 { }
12743 char_type*
12744 eback() const { return _M_in_beg; }
12745 char_type*
12746 gptr() const { return _M_in_cur; }
12747 char_type*
12748 egptr() const { return _M_in_end; }
12749 void
12750 gbump(int __n) { _M_in_cur += __n; }
12751 void
12752 setg(char_type* __gbeg, char_type* __gnext, char_type* __gend)
12753 {
12754 _M_in_beg = __gbeg;
12755 _M_in_cur = __gnext;
12756 _M_in_end = __gend;
12757 }
12758 char_type*
12759 pbase() const { return _M_out_beg; }
12760 char_type*
12761 pptr() const { return _M_out_cur; }
12762 char_type*
12763 epptr() const { return _M_out_end; }
12764 void
12765 pbump(int __n) { _M_out_cur += __n; }
12766 void
12767 setp(char_type* __pbeg, char_type* __pend)
12768 {
12769 _M_out_beg = _M_out_cur = __pbeg;
12770 _M_out_end = __pend;
12771 }
12772 virtual void
12773 imbue(const locale&)
12774 { }
12775 virtual basic_streambuf<char_type,_Traits>*
12776 setbuf(char_type*, streamsize)
12777 { return this; }
12778 virtual pos_type
12779 seekoff(off_type, ios_base::seekdir,
12780 ios_base::openmode = ios_base::in | ios_base::out)
12781 { return pos_type(off_type(-1)); }
12782 virtual pos_type
12783 seekpos(pos_type,
12784 ios_base::openmode = ios_base::in | ios_base::out)
12785 { return pos_type(off_type(-1)); }
12786 virtual int
12787 sync() { return 0; }
12788 virtual streamsize
12789 showmanyc() { return 0; }
12790 virtual streamsize
12791 xsgetn(char_type* __s, streamsize __n);
12792 virtual int_type
12793 underflow()
12794 { return traits_type::eof(); }
12795 virtual int_type
12796 uflow()
12797 {
12798 int_type __ret = traits_type::eof();
12799 const bool __testeof = traits_type::eq_int_type(this->underflow(),
12800 __ret);
12801 if (!__testeof)
12802 {
12803 __ret = traits_type::to_int_type(*this->gptr());
12804 this->gbump(1);
12805 }
12806 return __ret;
12807 }
12808 virtual int_type
12809 pbackfail(int_type = traits_type::eof())
12810 { return traits_type::eof(); }
12811 virtual streamsize
12812 xsputn(const char_type* __s, streamsize __n);
12813 virtual int_type
12814 overflow(int_type = traits_type::eof())
12815 { return traits_type::eof(); }
12816 public:
12817 void
12818 stossc()
12819 {
12820 if (this->gptr() < this->egptr())
12821 this->gbump(1);
12822 else
12823 this->uflow();
12824 }
12825 private:
12826 basic_streambuf(const __streambuf_type& __sb)
12827 : _M_in_beg(__sb._M_in_beg), _M_in_cur(__sb._M_in_cur),
12828 _M_in_end(__sb._M_in_end), _M_out_beg(__sb._M_out_beg),
12829 _M_out_cur(__sb._M_out_cur), _M_out_end(__sb._M_out_cur),
12830 _M_buf_locale(__sb._M_buf_locale)
12831 { }
12832 __streambuf_type&
12833 operator=(const __streambuf_type&) { return *this; };
12834 };
12835 template<>
12836 streamsize
12837 __copy_streambufs_eof(basic_streambuf<char>* __sbin,
12838 basic_streambuf<char>* __sbout, bool& __ineof);
12839 template<>
12840 streamsize
12841 __copy_streambufs_eof(basic_streambuf<wchar_t>* __sbin,
12842 basic_streambuf<wchar_t>* __sbout, bool& __ineof);
12843}
12844
12845namespace std __attribute__ ((__visibility__ ("default"))) {
12846 template<typename _CharT, typename _Traits>
12847 streamsize
12848 basic_streambuf<_CharT, _Traits>::
12849 xsgetn(char_type* __s, streamsize __n)
12850 {
12851 streamsize __ret = 0;
12852 while (__ret < __n)
12853 {
12854 const streamsize __buf_len = this->egptr() - this->gptr();
12855 if (__buf_len)
12856 {
12857 const streamsize __remaining = __n - __ret;
12858 const streamsize __len = std::min(__buf_len, __remaining);
12859 traits_type::copy(__s, this->gptr(), __len);
12860 __ret += __len;
12861 __s += __len;
12862 this->gbump(__len);
12863 }
12864 if (__ret < __n)
12865 {
12866 const int_type __c = this->uflow();
12867 if (!traits_type::eq_int_type(__c, traits_type::eof()))
12868 {
12869 traits_type::assign(*__s++, traits_type::to_char_type(__c));
12870 ++__ret;
12871 }
12872 else
12873 break;
12874 }
12875 }
12876 return __ret;
12877 }
12878 template<typename _CharT, typename _Traits>
12879 streamsize
12880 basic_streambuf<_CharT, _Traits>::
12881 xsputn(const char_type* __s, streamsize __n)
12882 {
12883 streamsize __ret = 0;
12884 while (__ret < __n)
12885 {
12886 const streamsize __buf_len = this->epptr() - this->pptr();
12887 if (__buf_len)
12888 {
12889 const streamsize __remaining = __n - __ret;
12890 const streamsize __len = std::min(__buf_len, __remaining);
12891 traits_type::copy(this->pptr(), __s, __len);
12892 __ret += __len;
12893 __s += __len;
12894 this->pbump(__len);
12895 }
12896 if (__ret < __n)
12897 {
12898 int_type __c = this->overflow(traits_type::to_int_type(*__s));
12899 if (!traits_type::eq_int_type(__c, traits_type::eof()))
12900 {
12901 ++__ret;
12902 ++__s;
12903 }
12904 else
12905 break;
12906 }
12907 }
12908 return __ret;
12909 }
12910 template<typename _CharT, typename _Traits>
12911 streamsize
12912 __copy_streambufs_eof(basic_streambuf<_CharT, _Traits>* __sbin,
12913 basic_streambuf<_CharT, _Traits>* __sbout,
12914 bool& __ineof)
12915 {
12916 streamsize __ret = 0;
12917 __ineof = true;
12918 typename _Traits::int_type __c = __sbin->sgetc();
12919 while (!_Traits::eq_int_type(__c, _Traits::eof()))
12920 {
12921 __c = __sbout->sputc(_Traits::to_char_type(__c));
12922 if (_Traits::eq_int_type(__c, _Traits::eof()))
12923 {
12924 __ineof = false;
12925 break;
12926 }
12927 ++__ret;
12928 __c = __sbin->snextc();
12929 }
12930 return __ret;
12931 }
12932 template<typename _CharT, typename _Traits>
12933 inline streamsize
12934 __copy_streambufs(basic_streambuf<_CharT, _Traits>* __sbin,
12935 basic_streambuf<_CharT, _Traits>* __sbout)
12936 {
12937 bool __ineof;
12938 return __copy_streambufs_eof(__sbin, __sbout, __ineof);
12939 }
12940 extern template class basic_streambuf<char>;
12941 extern template
12942 streamsize
12943 __copy_streambufs(basic_streambuf<char>*,
12944 basic_streambuf<char>*);
12945 extern template
12946 streamsize
12947 __copy_streambufs_eof(basic_streambuf<char>*,
12948 basic_streambuf<char>*, bool&);
12949 extern template class basic_streambuf<wchar_t>;
12950 extern template
12951 streamsize
12952 __copy_streambufs(basic_streambuf<wchar_t>*,
12953 basic_streambuf<wchar_t>*);
12954 extern template
12955 streamsize
12956 __copy_streambufs_eof(basic_streambuf<wchar_t>*,
12957 basic_streambuf<wchar_t>*, bool&);
12958}
12959
12960
12961
12962typedef unsigned long int wctype_t;
12963enum
12964{
12965 __ISwupper = 0,
12966 __ISwlower = 1,
12967 __ISwalpha = 2,
12968 __ISwdigit = 3,
12969 __ISwxdigit = 4,
12970 __ISwspace = 5,
12971 __ISwprint = 6,
12972 __ISwgraph = 7,
12973 __ISwblank = 8,
12974 __ISwcntrl = 9,
12975 __ISwpunct = 10,
12976 __ISwalnum = 11,
12977 _ISwupper = ((__ISwupper) < 8 ? (int) ((1UL << (__ISwupper)) << 24) : ((__ISwupper) < 16 ? (int) ((1UL << (__ISwupper)) << 8) : ((__ISwupper) < 24 ? (int) ((1UL << (__ISwupper)) >> 8) : (int) ((1UL << (__ISwupper)) >> 24)))),
12978 _ISwlower = ((__ISwlower) < 8 ? (int) ((1UL << (__ISwlower)) << 24) : ((__ISwlower) < 16 ? (int) ((1UL << (__ISwlower)) << 8) : ((__ISwlower) < 24 ? (int) ((1UL << (__ISwlower)) >> 8) : (int) ((1UL << (__ISwlower)) >> 24)))),
12979 _ISwalpha = ((__ISwalpha) < 8 ? (int) ((1UL << (__ISwalpha)) << 24) : ((__ISwalpha) < 16 ? (int) ((1UL << (__ISwalpha)) << 8) : ((__ISwalpha) < 24 ? (int) ((1UL << (__ISwalpha)) >> 8) : (int) ((1UL << (__ISwalpha)) >> 24)))),
12980 _ISwdigit = ((__ISwdigit) < 8 ? (int) ((1UL << (__ISwdigit)) << 24) : ((__ISwdigit) < 16 ? (int) ((1UL << (__ISwdigit)) << 8) : ((__ISwdigit) < 24 ? (int) ((1UL << (__ISwdigit)) >> 8) : (int) ((1UL << (__ISwdigit)) >> 24)))),
12981 _ISwxdigit = ((__ISwxdigit) < 8 ? (int) ((1UL << (__ISwxdigit)) << 24) : ((__ISwxdigit) < 16 ? (int) ((1UL << (__ISwxdigit)) << 8) : ((__ISwxdigit) < 24 ? (int) ((1UL << (__ISwxdigit)) >> 8) : (int) ((1UL << (__ISwxdigit)) >> 24)))),
12982 _ISwspace = ((__ISwspace) < 8 ? (int) ((1UL << (__ISwspace)) << 24) : ((__ISwspace) < 16 ? (int) ((1UL << (__ISwspace)) << 8) : ((__ISwspace) < 24 ? (int) ((1UL << (__ISwspace)) >> 8) : (int) ((1UL << (__ISwspace)) >> 24)))),
12983 _ISwprint = ((__ISwprint) < 8 ? (int) ((1UL << (__ISwprint)) << 24) : ((__ISwprint) < 16 ? (int) ((1UL << (__ISwprint)) << 8) : ((__ISwprint) < 24 ? (int) ((1UL << (__ISwprint)) >> 8) : (int) ((1UL << (__ISwprint)) >> 24)))),
12984 _ISwgraph = ((__ISwgraph) < 8 ? (int) ((1UL << (__ISwgraph)) << 24) : ((__ISwgraph) < 16 ? (int) ((1UL << (__ISwgraph)) << 8) : ((__ISwgraph) < 24 ? (int) ((1UL << (__ISwgraph)) >> 8) : (int) ((1UL << (__ISwgraph)) >> 24)))),
12985 _ISwblank = ((__ISwblank) < 8 ? (int) ((1UL << (__ISwblank)) << 24) : ((__ISwblank) < 16 ? (int) ((1UL << (__ISwblank)) << 8) : ((__ISwblank) < 24 ? (int) ((1UL << (__ISwblank)) >> 8) : (int) ((1UL << (__ISwblank)) >> 24)))),
12986 _ISwcntrl = ((__ISwcntrl) < 8 ? (int) ((1UL << (__ISwcntrl)) << 24) : ((__ISwcntrl) < 16 ? (int) ((1UL << (__ISwcntrl)) << 8) : ((__ISwcntrl) < 24 ? (int) ((1UL << (__ISwcntrl)) >> 8) : (int) ((1UL << (__ISwcntrl)) >> 24)))),
12987 _ISwpunct = ((__ISwpunct) < 8 ? (int) ((1UL << (__ISwpunct)) << 24) : ((__ISwpunct) < 16 ? (int) ((1UL << (__ISwpunct)) << 8) : ((__ISwpunct) < 24 ? (int) ((1UL << (__ISwpunct)) >> 8) : (int) ((1UL << (__ISwpunct)) >> 24)))),
12988 _ISwalnum = ((__ISwalnum) < 8 ? (int) ((1UL << (__ISwalnum)) << 24) : ((__ISwalnum) < 16 ? (int) ((1UL << (__ISwalnum)) << 8) : ((__ISwalnum) < 24 ? (int) ((1UL << (__ISwalnum)) >> 8) : (int) ((1UL << (__ISwalnum)) >> 24))))
12989};
12990extern "C" {
12991extern int iswalnum (wint_t __wc) throw ();
12992extern int iswalpha (wint_t __wc) throw ();
12993extern int iswcntrl (wint_t __wc) throw ();
12994extern int iswdigit (wint_t __wc) throw ();
12995extern int iswgraph (wint_t __wc) throw ();
12996extern int iswlower (wint_t __wc) throw ();
12997extern int iswprint (wint_t __wc) throw ();
12998extern int iswpunct (wint_t __wc) throw ();
12999extern int iswspace (wint_t __wc) throw ();
13000extern int iswupper (wint_t __wc) throw ();
13001extern int iswxdigit (wint_t __wc) throw ();
13002extern int iswblank (wint_t __wc) throw ();
13003extern wctype_t wctype (__const char *__property) throw ();
13004extern int iswctype (wint_t __wc, wctype_t __desc) throw ();
13005typedef __const __int32_t *wctrans_t;
13006extern wint_t towlower (wint_t __wc) throw ();
13007extern wint_t towupper (wint_t __wc) throw ();
13008}
13009extern "C" {
13010extern wctrans_t wctrans (__const char *__property) throw ();
13011extern wint_t towctrans (wint_t __wc, wctrans_t __desc) throw ();
13012extern int iswalnum_l (wint_t __wc, __locale_t __locale) throw ();
13013extern int iswalpha_l (wint_t __wc, __locale_t __locale) throw ();
13014extern int iswcntrl_l (wint_t __wc, __locale_t __locale) throw ();
13015extern int iswdigit_l (wint_t __wc, __locale_t __locale) throw ();
13016extern int iswgraph_l (wint_t __wc, __locale_t __locale) throw ();
13017extern int iswlower_l (wint_t __wc, __locale_t __locale) throw ();
13018extern int iswprint_l (wint_t __wc, __locale_t __locale) throw ();
13019extern int iswpunct_l (wint_t __wc, __locale_t __locale) throw ();
13020extern int iswspace_l (wint_t __wc, __locale_t __locale) throw ();
13021extern int iswupper_l (wint_t __wc, __locale_t __locale) throw ();
13022extern int iswxdigit_l (wint_t __wc, __locale_t __locale) throw ();
13023extern int iswblank_l (wint_t __wc, __locale_t __locale) throw ();
13024extern wctype_t wctype_l (__const char *__property, __locale_t __locale)
13025 throw ();
13026extern int iswctype_l (wint_t __wc, wctype_t __desc, __locale_t __locale)
13027 throw ();
13028extern wint_t towlower_l (wint_t __wc, __locale_t __locale) throw ();
13029extern wint_t towupper_l (wint_t __wc, __locale_t __locale) throw ();
13030extern wctrans_t wctrans_l (__const char *__property, __locale_t __locale)
13031 throw ();
13032extern wint_t towctrans_l (wint_t __wc, wctrans_t __desc,
13033 __locale_t __locale) throw ();
13034}
13035namespace std __attribute__ ((__visibility__ ("default"))) {
13036 using ::wctrans_t;
13037 using ::wctype_t;
13038 using ::wint_t;
13039 using ::iswalnum;
13040 using ::iswalpha;
13041 using ::iswblank;
13042 using ::iswcntrl;
13043 using ::iswctype;
13044 using ::iswdigit;
13045 using ::iswgraph;
13046 using ::iswlower;
13047 using ::iswprint;
13048 using ::iswpunct;
13049 using ::iswspace;
13050 using ::iswupper;
13051 using ::iswxdigit;
13052 using ::towctrans;
13053 using ::towlower;
13054 using ::towupper;
13055 using ::wctrans;
13056 using ::wctype;
13057}
13058
13059namespace std __attribute__ ((__visibility__ ("default"))) {
13060 struct ctype_base
13061 {
13062 typedef const int* __to_type;
13063 typedef unsigned short mask;
13064 static const mask upper = _ISupper;
13065 static const mask lower = _ISlower;
13066 static const mask alpha = _ISalpha;
13067 static const mask digit = _ISdigit;
13068 static const mask xdigit = _ISxdigit;
13069 static const mask space = _ISspace;
13070 static const mask print = _ISprint;
13071 static const mask graph = _ISalpha | _ISdigit | _ISpunct;
13072 static const mask cntrl = _IScntrl;
13073 static const mask punct = _ISpunct;
13074 static const mask alnum = _ISalpha | _ISdigit;
13075 };
13076}
13077
13078namespace std __attribute__ ((__visibility__ ("default"))) {
13079 template<typename _CharT, typename _Traits>
13080 class istreambuf_iterator
13081 : public iterator<input_iterator_tag, _CharT, typename _Traits::off_type,
13082 _CharT*, _CharT&>
13083 {
13084 public:
13085 typedef _CharT char_type;
13086 typedef _Traits traits_type;
13087 typedef typename _Traits::int_type int_type;
13088 typedef basic_streambuf<_CharT, _Traits> streambuf_type;
13089 typedef basic_istream<_CharT, _Traits> istream_type;
13090 template<typename _CharT2>
13091 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
13092 ostreambuf_iterator<_CharT2> >::__type
13093 copy(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
13094 ostreambuf_iterator<_CharT2>);
13095 template<bool _IsMove, typename _CharT2>
13096 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
13097 _CharT2*>::__type
13098 __copy_move_a2(istreambuf_iterator<_CharT2>,
13099 istreambuf_iterator<_CharT2>, _CharT2*);
13100 template<typename _CharT2>
13101 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
13102 istreambuf_iterator<_CharT2> >::__type
13103 find(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
13104 const _CharT2&);
13105 private:
13106 mutable streambuf_type* _M_sbuf;
13107 mutable int_type _M_c;
13108 public:
13109 istreambuf_iterator() throw()
13110 : _M_sbuf(0), _M_c(traits_type::eof()) { }
13111 istreambuf_iterator(istream_type& __s) throw()
13112 : _M_sbuf(__s.rdbuf()), _M_c(traits_type::eof()) { }
13113 istreambuf_iterator(streambuf_type* __s) throw()
13114 : _M_sbuf(__s), _M_c(traits_type::eof()) { }
13115 char_type
13116 operator*() const
13117 {
13118 return traits_type::to_char_type(_M_get());
13119 }
13120 istreambuf_iterator&
13121 operator++()
13122 {
13123 ;
13124 if (_M_sbuf)
13125 {
13126 _M_sbuf->sbumpc();
13127 _M_c = traits_type::eof();
13128 }
13129 return *this;
13130 }
13131 istreambuf_iterator
13132 operator++(int)
13133 {
13134 ;
13135 istreambuf_iterator __old = *this;
13136 if (_M_sbuf)
13137 {
13138 __old._M_c = _M_sbuf->sbumpc();
13139 _M_c = traits_type::eof();
13140 }
13141 return __old;
13142 }
13143 bool
13144 equal(const istreambuf_iterator& __b) const
13145 { return _M_at_eof() == __b._M_at_eof(); }
13146 private:
13147 int_type
13148 _M_get() const
13149 {
13150 const int_type __eof = traits_type::eof();
13151 int_type __ret = __eof;
13152 if (_M_sbuf)
13153 {
13154 if (!traits_type::eq_int_type(_M_c, __eof))
13155 __ret = _M_c;
13156 else if (!traits_type::eq_int_type((__ret = _M_sbuf->sgetc()),
13157 __eof))
13158 _M_c = __ret;
13159 else
13160 _M_sbuf = 0;
13161 }
13162 return __ret;
13163 }
13164 bool
13165 _M_at_eof() const
13166 {
13167 const int_type __eof = traits_type::eof();
13168 return traits_type::eq_int_type(_M_get(), __eof);
13169 }
13170 };
13171 template<typename _CharT, typename _Traits>
13172 inline bool
13173 operator==(const istreambuf_iterator<_CharT, _Traits>& __a,
13174 const istreambuf_iterator<_CharT, _Traits>& __b)
13175 { return __a.equal(__b); }
13176 template<typename _CharT, typename _Traits>
13177 inline bool
13178 operator!=(const istreambuf_iterator<_CharT, _Traits>& __a,
13179 const istreambuf_iterator<_CharT, _Traits>& __b)
13180 { return !__a.equal(__b); }
13181 template<typename _CharT, typename _Traits>
13182 class ostreambuf_iterator
13183 : public iterator<output_iterator_tag, void, void, void, void>
13184 {
13185 public:
13186 typedef _CharT char_type;
13187 typedef _Traits traits_type;
13188 typedef basic_streambuf<_CharT, _Traits> streambuf_type;
13189 typedef basic_ostream<_CharT, _Traits> ostream_type;
13190 template<typename _CharT2>
13191 friend typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value,
13192 ostreambuf_iterator<_CharT2> >::__type
13193 copy(istreambuf_iterator<_CharT2>, istreambuf_iterator<_CharT2>,
13194 ostreambuf_iterator<_CharT2>);
13195 private:
13196 streambuf_type* _M_sbuf;
13197 bool _M_failed;
13198 public:
13199 ostreambuf_iterator(ostream_type& __s) throw ()
13200 : _M_sbuf(__s.rdbuf()), _M_failed(!_M_sbuf) { }
13201 ostreambuf_iterator(streambuf_type* __s) throw ()
13202 : _M_sbuf(__s), _M_failed(!_M_sbuf) { }
13203 ostreambuf_iterator&
13204 operator=(_CharT __c)
13205 {
13206 if (!_M_failed &&
13207 _Traits::eq_int_type(_M_sbuf->sputc(__c), _Traits::eof()))
13208 _M_failed = true;
13209 return *this;
13210 }
13211 ostreambuf_iterator&
13212 operator*()
13213 { return *this; }
13214 ostreambuf_iterator&
13215 operator++(int)
13216 { return *this; }
13217 ostreambuf_iterator&
13218 operator++()
13219 { return *this; }
13220 bool
13221 failed() const throw()
13222 { return _M_failed; }
13223 ostreambuf_iterator&
13224 _M_put(const _CharT* __ws, streamsize __len)
13225 {
13226 if (__builtin_expect(!_M_failed, true)
13227 && __builtin_expect(this->_M_sbuf->sputn(__ws, __len) != __len,
13228 false))
13229 _M_failed = true;
13230 return *this;
13231 }
13232 };
13233 template<typename _CharT>
13234 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
13235 ostreambuf_iterator<_CharT> >::__type
13236 copy(istreambuf_iterator<_CharT> __first,
13237 istreambuf_iterator<_CharT> __last,
13238 ostreambuf_iterator<_CharT> __result)
13239 {
13240 if (__first._M_sbuf && !__last._M_sbuf && !__result._M_failed)
13241 {
13242 bool __ineof;
13243 __copy_streambufs_eof(__first._M_sbuf, __result._M_sbuf, __ineof);
13244 if (!__ineof)
13245 __result._M_failed = true;
13246 }
13247 return __result;
13248 }
13249 template<bool _IsMove, typename _CharT>
13250 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
13251 ostreambuf_iterator<_CharT> >::__type
13252 __copy_move_a2(_CharT* __first, _CharT* __last,
13253 ostreambuf_iterator<_CharT> __result)
13254 {
13255 const streamsize __num = __last - __first;
13256 if (__num > 0)
13257 __result._M_put(__first, __num);
13258 return __result;
13259 }
13260 template<bool _IsMove, typename _CharT>
13261 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
13262 ostreambuf_iterator<_CharT> >::__type
13263 __copy_move_a2(const _CharT* __first, const _CharT* __last,
13264 ostreambuf_iterator<_CharT> __result)
13265 {
13266 const streamsize __num = __last - __first;
13267 if (__num > 0)
13268 __result._M_put(__first, __num);
13269 return __result;
13270 }
13271 template<bool _IsMove, typename _CharT>
13272 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
13273 _CharT*>::__type
13274 __copy_move_a2(istreambuf_iterator<_CharT> __first,
13275 istreambuf_iterator<_CharT> __last, _CharT* __result)
13276 {
13277 typedef istreambuf_iterator<_CharT> __is_iterator_type;
13278 typedef typename __is_iterator_type::traits_type traits_type;
13279 typedef typename __is_iterator_type::streambuf_type streambuf_type;
13280 typedef typename traits_type::int_type int_type;
13281 if (__first._M_sbuf && !__last._M_sbuf)
13282 {
13283 streambuf_type* __sb = __first._M_sbuf;
13284 int_type __c = __sb->sgetc();
13285 while (!traits_type::eq_int_type(__c, traits_type::eof()))
13286 {
13287 const streamsize __n = __sb->egptr() - __sb->gptr();
13288 if (__n > 1)
13289 {
13290 traits_type::copy(__result, __sb->gptr(), __n);
13291 __sb->gbump(__n);
13292 __result += __n;
13293 __c = __sb->underflow();
13294 }
13295 else
13296 {
13297 *__result++ = traits_type::to_char_type(__c);
13298 __c = __sb->snextc();
13299 }
13300 }
13301 }
13302 return __result;
13303 }
13304 template<typename _CharT>
13305 typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value,
13306 istreambuf_iterator<_CharT> >::__type
13307 find(istreambuf_iterator<_CharT> __first,
13308 istreambuf_iterator<_CharT> __last, const _CharT& __val)
13309 {
13310 typedef istreambuf_iterator<_CharT> __is_iterator_type;
13311 typedef typename __is_iterator_type::traits_type traits_type;
13312 typedef typename __is_iterator_type::streambuf_type streambuf_type;
13313 typedef typename traits_type::int_type int_type;
13314 if (__first._M_sbuf && !__last._M_sbuf)
13315 {
13316 const int_type __ival = traits_type::to_int_type(__val);
13317 streambuf_type* __sb = __first._M_sbuf;
13318 int_type __c = __sb->sgetc();
13319 while (!traits_type::eq_int_type(__c, traits_type::eof())
13320 && !traits_type::eq_int_type(__c, __ival))
13321 {
13322 streamsize __n = __sb->egptr() - __sb->gptr();
13323 if (__n > 1)
13324 {
13325 const _CharT* __p = traits_type::find(__sb->gptr(),
13326 __n, __val);
13327 if (__p)
13328 __n = __p - __sb->gptr();
13329 __sb->gbump(__n);
13330 __c = __sb->sgetc();
13331 }
13332 else
13333 __c = __sb->snextc();
13334 }
13335 if (!traits_type::eq_int_type(__c, traits_type::eof()))
13336 __first._M_c = __c;
13337 else
13338 __first._M_sbuf = 0;
13339 }
13340 return __first;
13341 }
13342}
13343namespace std __attribute__ ((__visibility__ ("default"))) {
13344 template<typename _Tv>
13345 void
13346 __convert_to_v(const char* __in, _Tv& __out, ios_base::iostate& __err,
13347 const __c_locale& __cloc);
13348 template<>
13349 void
13350 __convert_to_v(const char*, float&, ios_base::iostate&,
13351 const __c_locale&);
13352 template<>
13353 void
13354 __convert_to_v(const char*, double&, ios_base::iostate&,
13355 const __c_locale&);
13356 template<>
13357 void
13358 __convert_to_v(const char*, long double&, ios_base::iostate&,
13359 const __c_locale&);
13360 template<typename _CharT, typename _Traits>
13361 struct __pad
13362 {
13363 static void
13364 _S_pad(ios_base& __io, _CharT __fill, _CharT* __news,
13365 const _CharT* __olds, streamsize __newlen, streamsize __oldlen);
13366 };
13367 template<typename _CharT>
13368 _CharT*
13369 __add_grouping(_CharT* __s, _CharT __sep,
13370 const char* __gbeg, size_t __gsize,
13371 const _CharT* __first, const _CharT* __last);
13372 template<typename _CharT>
13373 inline
13374 ostreambuf_iterator<_CharT>
13375 __write(ostreambuf_iterator<_CharT> __s, const _CharT* __ws, int __len)
13376 {
13377 __s._M_put(__ws, __len);
13378 return __s;
13379 }
13380 template<typename _CharT, typename _OutIter>
13381 inline
13382 _OutIter
13383 __write(_OutIter __s, const _CharT* __ws, int __len)
13384 {
13385 for (int __j = 0; __j < __len; __j++, ++__s)
13386 *__s = __ws[__j];
13387 return __s;
13388 }
13389 template<typename _CharT>
13390 class __ctype_abstract_base : public locale::facet, public ctype_base
13391 {
13392 public:
13393 typedef _CharT char_type;
13394 bool
13395 is(mask __m, char_type __c) const
13396 { return this->do_is(__m, __c); }
13397 const char_type*
13398 is(const char_type *__lo, const char_type *__hi, mask *__vec) const
13399 { return this->do_is(__lo, __hi, __vec); }
13400 const char_type*
13401 scan_is(mask __m, const char_type* __lo, const char_type* __hi) const
13402 { return this->do_scan_is(__m, __lo, __hi); }
13403 const char_type*
13404 scan_not(mask __m, const char_type* __lo, const char_type* __hi) const
13405 { return this->do_scan_not(__m, __lo, __hi); }
13406 char_type
13407 toupper(char_type __c) const
13408 { return this->do_toupper(__c); }
13409 const char_type*
13410 toupper(char_type *__lo, const char_type* __hi) const
13411 { return this->do_toupper(__lo, __hi); }
13412 char_type
13413 tolower(char_type __c) const
13414 { return this->do_tolower(__c); }
13415 const char_type*
13416 tolower(char_type* __lo, const char_type* __hi) const
13417 { return this->do_tolower(__lo, __hi); }
13418 char_type
13419 widen(char __c) const
13420 { return this->do_widen(__c); }
13421 const char*
13422 widen(const char* __lo, const char* __hi, char_type* __to) const
13423 { return this->do_widen(__lo, __hi, __to); }
13424 char
13425 narrow(char_type __c, char __dfault) const
13426 { return this->do_narrow(__c, __dfault); }
13427 const char_type*
13428 narrow(const char_type* __lo, const char_type* __hi,
13429 char __dfault, char *__to) const
13430 { return this->do_narrow(__lo, __hi, __dfault, __to); }
13431 protected:
13432 explicit
13433 __ctype_abstract_base(size_t __refs = 0): facet(__refs) { }
13434 virtual
13435 ~__ctype_abstract_base() { }
13436 virtual bool
13437 do_is(mask __m, char_type __c) const = 0;
13438 virtual const char_type*
13439 do_is(const char_type* __lo, const char_type* __hi,
13440 mask* __vec) const = 0;
13441 virtual const char_type*
13442 do_scan_is(mask __m, const char_type* __lo,
13443 const char_type* __hi) const = 0;
13444 virtual const char_type*
13445 do_scan_not(mask __m, const char_type* __lo,
13446 const char_type* __hi) const = 0;
13447 virtual char_type
13448 do_toupper(char_type) const = 0;
13449 virtual const char_type*
13450 do_toupper(char_type* __lo, const char_type* __hi) const = 0;
13451 virtual char_type
13452 do_tolower(char_type) const = 0;
13453 virtual const char_type*
13454 do_tolower(char_type* __lo, const char_type* __hi) const = 0;
13455 virtual char_type
13456 do_widen(char) const = 0;
13457 virtual const char*
13458 do_widen(const char* __lo, const char* __hi,
13459 char_type* __dest) const = 0;
13460 virtual char
13461 do_narrow(char_type, char __dfault) const = 0;
13462 virtual const char_type*
13463 do_narrow(const char_type* __lo, const char_type* __hi,
13464 char __dfault, char* __dest) const = 0;
13465 };
13466 template<typename _CharT>
13467 class ctype : public __ctype_abstract_base<_CharT>
13468 {
13469 public:
13470 typedef _CharT char_type;
13471 typedef typename __ctype_abstract_base<_CharT>::mask mask;
13472 static locale::id id;
13473 explicit
13474 ctype(size_t __refs = 0) : __ctype_abstract_base<_CharT>(__refs) { }
13475 protected:
13476 virtual
13477 ~ctype();
13478 virtual bool
13479 do_is(mask __m, char_type __c) const;
13480 virtual const char_type*
13481 do_is(const char_type* __lo, const char_type* __hi, mask* __vec) const;
13482 virtual const char_type*
13483 do_scan_is(mask __m, const char_type* __lo, const char_type* __hi) const;
13484 virtual const char_type*
13485 do_scan_not(mask __m, const char_type* __lo,
13486 const char_type* __hi) const;
13487 virtual char_type
13488 do_toupper(char_type __c) const;
13489 virtual const char_type*
13490 do_toupper(char_type* __lo, const char_type* __hi) const;
13491 virtual char_type
13492 do_tolower(char_type __c) const;
13493 virtual const char_type*
13494 do_tolower(char_type* __lo, const char_type* __hi) const;
13495 virtual char_type
13496 do_widen(char __c) const;
13497 virtual const char*
13498 do_widen(const char* __lo, const char* __hi, char_type* __dest) const;
13499 virtual char
13500 do_narrow(char_type, char __dfault) const;
13501 virtual const char_type*
13502 do_narrow(const char_type* __lo, const char_type* __hi,
13503 char __dfault, char* __dest) const;
13504 };
13505 template<typename _CharT>
13506 locale::id ctype<_CharT>::id;
13507 template<>
13508 class ctype<char> : public locale::facet, public ctype_base
13509 {
13510 public:
13511 typedef char char_type;
13512 protected:
13513 __c_locale _M_c_locale_ctype;
13514 bool _M_del;
13515 __to_type _M_toupper;
13516 __to_type _M_tolower;
13517 const mask* _M_table;
13518 mutable char _M_widen_ok;
13519 mutable char _M_widen[1 + static_cast<unsigned char>(-1)];
13520 mutable char _M_narrow[1 + static_cast<unsigned char>(-1)];
13521 mutable char _M_narrow_ok;
13522 public:
13523 static locale::id id;
13524 static const size_t table_size = 1 + static_cast<unsigned char>(-1);
13525 explicit
13526 ctype(const mask* __table = 0, bool __del = false, size_t __refs = 0);
13527 explicit
13528 ctype(__c_locale __cloc, const mask* __table = 0, bool __del = false,
13529 size_t __refs = 0);
13530 inline bool
13531 is(mask __m, char __c) const;
13532 inline const char*
13533 is(const char* __lo, const char* __hi, mask* __vec) const;
13534 inline const char*
13535 scan_is(mask __m, const char* __lo, const char* __hi) const;
13536 inline const char*
13537 scan_not(mask __m, const char* __lo, const char* __hi) const;
13538 char_type
13539 toupper(char_type __c) const
13540 { return this->do_toupper(__c); }
13541 const char_type*
13542 toupper(char_type *__lo, const char_type* __hi) const
13543 { return this->do_toupper(__lo, __hi); }
13544 char_type
13545 tolower(char_type __c) const
13546 { return this->do_tolower(__c); }
13547 const char_type*
13548 tolower(char_type* __lo, const char_type* __hi) const
13549 { return this->do_tolower(__lo, __hi); }
13550 char_type
13551 widen(char __c) const
13552 {
13553 if (_M_widen_ok)
13554 return _M_widen[static_cast<unsigned char>(__c)];
13555 this->_M_widen_init();
13556 return this->do_widen(__c);
13557 }
13558 const char*
13559 widen(const char* __lo, const char* __hi, char_type* __to) const
13560 {
13561 if (_M_widen_ok == 1)
13562 {
13563 __builtin_memcpy(__to, __lo, __hi - __lo);
13564 return __hi;
13565 }
13566 if (!_M_widen_ok)
13567 _M_widen_init();
13568 return this->do_widen(__lo, __hi, __to);
13569 }
13570 char
13571 narrow(char_type __c, char __dfault) const
13572 {
13573 if (_M_narrow[static_cast<unsigned char>(__c)])
13574 return _M_narrow[static_cast<unsigned char>(__c)];
13575 const char __t = do_narrow(__c, __dfault);
13576 if (__t != __dfault)
13577 _M_narrow[static_cast<unsigned char>(__c)] = __t;
13578 return __t;
13579 }
13580 const char_type*
13581 narrow(const char_type* __lo, const char_type* __hi,
13582 char __dfault, char *__to) const
13583 {
13584 if (__builtin_expect(_M_narrow_ok == 1, true))
13585 {
13586 __builtin_memcpy(__to, __lo, __hi - __lo);
13587 return __hi;
13588 }
13589 if (!_M_narrow_ok)
13590 _M_narrow_init();
13591 return this->do_narrow(__lo, __hi, __dfault, __to);
13592 }
13593 const mask*
13594 table() const throw()
13595 { return _M_table; }
13596 static const mask*
13597 classic_table() throw();
13598 protected:
13599 virtual
13600 ~ctype();
13601 virtual char_type
13602 do_toupper(char_type) const;
13603 virtual const char_type*
13604 do_toupper(char_type* __lo, const char_type* __hi) const;
13605 virtual char_type
13606 do_tolower(char_type) const;
13607 virtual const char_type*
13608 do_tolower(char_type* __lo, const char_type* __hi) const;
13609 virtual char_type
13610 do_widen(char __c) const
13611 { return __c; }
13612 virtual const char*
13613 do_widen(const char* __lo, const char* __hi, char_type* __dest) const
13614 {
13615 __builtin_memcpy(__dest, __lo, __hi - __lo);
13616 return __hi;
13617 }
13618 virtual char
13619 do_narrow(char_type __c, char) const
13620 { return __c; }
13621 virtual const char_type*
13622 do_narrow(const char_type* __lo, const char_type* __hi,
13623 char, char* __dest) const
13624 {
13625 __builtin_memcpy(__dest, __lo, __hi - __lo);
13626 return __hi;
13627 }
13628 private:
13629 void _M_narrow_init() const;
13630 void _M_widen_init() const;
13631 };
13632 template<>
13633 class ctype<wchar_t> : public __ctype_abstract_base<wchar_t>
13634 {
13635 public:
13636 typedef wchar_t char_type;
13637 typedef wctype_t __wmask_type;
13638 protected:
13639 __c_locale _M_c_locale_ctype;
13640 bool _M_narrow_ok;
13641 char _M_narrow[128];
13642 wint_t _M_widen[1 + static_cast<unsigned char>(-1)];
13643 mask _M_bit[16];
13644 __wmask_type _M_wmask[16];
13645 public:
13646 static locale::id id;
13647 explicit
13648 ctype(size_t __refs = 0);
13649 explicit
13650 ctype(__c_locale __cloc, size_t __refs = 0);
13651 protected:
13652 __wmask_type
13653 _M_convert_to_wmask(const mask __m) const;
13654 virtual
13655 ~ctype();
13656 virtual bool
13657 do_is(mask __m, char_type __c) const;
13658 virtual const char_type*
13659 do_is(const char_type* __lo, const char_type* __hi, mask* __vec) const;
13660 virtual const char_type*
13661 do_scan_is(mask __m, const char_type* __lo, const char_type* __hi) const;
13662 virtual const char_type*
13663 do_scan_not(mask __m, const char_type* __lo,
13664 const char_type* __hi) const;
13665 virtual char_type
13666 do_toupper(char_type) const;
13667 virtual const char_type*
13668 do_toupper(char_type* __lo, const char_type* __hi) const;
13669 virtual char_type
13670 do_tolower(char_type) const;
13671 virtual const char_type*
13672 do_tolower(char_type* __lo, const char_type* __hi) const;
13673 virtual char_type
13674 do_widen(char) const;
13675 virtual const char*
13676 do_widen(const char* __lo, const char* __hi, char_type* __dest) const;
13677 virtual char
13678 do_narrow(char_type, char __dfault) const;
13679 virtual const char_type*
13680 do_narrow(const char_type* __lo, const char_type* __hi,
13681 char __dfault, char* __dest) const;
13682 void
13683 _M_initialize_ctype();
13684 };
13685 template<typename _CharT>
13686 class ctype_byname : public ctype<_CharT>
13687 {
13688 public:
13689 typedef typename ctype<_CharT>::mask mask;
13690 explicit
13691 ctype_byname(const char* __s, size_t __refs = 0);
13692 protected:
13693 virtual
13694 ~ctype_byname() { };
13695 };
13696 template<>
13697 class ctype_byname<char> : public ctype<char>
13698 {
13699 public:
13700 explicit
13701 ctype_byname(const char* __s, size_t __refs = 0);
13702 protected:
13703 virtual
13704 ~ctype_byname();
13705 };
13706 template<>
13707 class ctype_byname<wchar_t> : public ctype<wchar_t>
13708 {
13709 public:
13710 explicit
13711 ctype_byname(const char* __s, size_t __refs = 0);
13712 protected:
13713 virtual
13714 ~ctype_byname();
13715 };
13716}
13717namespace std __attribute__ ((__visibility__ ("default"))) {
13718 bool
13719 ctype<char>::
13720 is(mask __m, char __c) const
13721 { return _M_table[static_cast<unsigned char>(__c)] & __m; }
13722 const char*
13723 ctype<char>::
13724 is(const char* __low, const char* __high, mask* __vec) const
13725 {
13726 while (__low < __high)
13727 *__vec++ = _M_table[static_cast<unsigned char>(*__low++)];
13728 return __high;
13729 }
13730 const char*
13731 ctype<char>::
13732 scan_is(mask __m, const char* __low, const char* __high) const
13733 {
13734 while (__low < __high
13735 && !(_M_table[static_cast<unsigned char>(*__low)] & __m))
13736 ++__low;
13737 return __low;
13738 }
13739 const char*
13740 ctype<char>::
13741 scan_not(mask __m, const char* __low, const char* __high) const
13742 {
13743 while (__low < __high
13744 && (_M_table[static_cast<unsigned char>(*__low)] & __m) != 0)
13745 ++__low;
13746 return __low;
13747 }
13748}
13749namespace std __attribute__ ((__visibility__ ("default"))) {
13750 class __num_base
13751 {
13752 public:
13753 enum
13754 {
13755 _S_ominus,
13756 _S_oplus,
13757 _S_ox,
13758 _S_oX,
13759 _S_odigits,
13760 _S_odigits_end = _S_odigits + 16,
13761 _S_oudigits = _S_odigits_end,
13762 _S_oudigits_end = _S_oudigits + 16,
13763 _S_oe = _S_odigits + 14,
13764 _S_oE = _S_oudigits + 14,
13765 _S_oend = _S_oudigits_end
13766 };
13767 static const char* _S_atoms_out;
13768 static const char* _S_atoms_in;
13769 enum
13770 {
13771 _S_iminus,
13772 _S_iplus,
13773 _S_ix,
13774 _S_iX,
13775 _S_izero,
13776 _S_ie = _S_izero + 14,
13777 _S_iE = _S_izero + 20,
13778 _S_iend = 26
13779 };
13780 static void
13781 _S_format_float(const ios_base& __io, char* __fptr, char __mod);
13782 };
13783 template<typename _CharT>
13784 struct __numpunct_cache : public locale::facet
13785 {
13786 const char* _M_grouping;
13787 size_t _M_grouping_size;
13788 bool _M_use_grouping;
13789 const _CharT* _M_truename;
13790 size_t _M_truename_size;
13791 const _CharT* _M_falsename;
13792 size_t _M_falsename_size;
13793 _CharT _M_decimal_point;
13794 _CharT _M_thousands_sep;
13795 _CharT _M_atoms_out[__num_base::_S_oend];
13796 _CharT _M_atoms_in[__num_base::_S_iend];
13797 bool _M_allocated;
13798 __numpunct_cache(size_t __refs = 0) : facet(__refs),
13799 _M_grouping(__null), _M_grouping_size(0), _M_use_grouping(false),
13800 _M_truename(__null), _M_truename_size(0), _M_falsename(__null),
13801 _M_falsename_size(0), _M_decimal_point(_CharT()),
13802 _M_thousands_sep(_CharT()), _M_allocated(false)
13803 { }
13804 ~__numpunct_cache();
13805 void
13806 _M_cache(const locale& __loc);
13807 private:
13808 __numpunct_cache&
13809 operator=(const __numpunct_cache&);
13810 explicit
13811 __numpunct_cache(const __numpunct_cache&);
13812 };
13813 template<typename _CharT>
13814 __numpunct_cache<_CharT>::~__numpunct_cache()
13815 {
13816 if (_M_allocated)
13817 {
13818 delete [] _M_grouping;
13819 delete [] _M_truename;
13820 delete [] _M_falsename;
13821 }
13822 }
13823 template<typename _CharT>
13824 class numpunct : public locale::facet
13825 {
13826 public:
13827 typedef _CharT char_type;
13828 typedef basic_string<_CharT> string_type;
13829 typedef __numpunct_cache<_CharT> __cache_type;
13830 protected:
13831 __cache_type* _M_data;
13832 public:
13833 static locale::id id;
13834 explicit
13835 numpunct(size_t __refs = 0) : facet(__refs), _M_data(__null)
13836 { _M_initialize_numpunct(); }
13837 explicit
13838 numpunct(__cache_type* __cache, size_t __refs = 0)
13839 : facet(__refs), _M_data(__cache)
13840 { _M_initialize_numpunct(); }
13841 explicit
13842 numpunct(__c_locale __cloc, size_t __refs = 0)
13843 : facet(__refs), _M_data(__null)
13844 { _M_initialize_numpunct(__cloc); }
13845 char_type
13846 decimal_point() const
13847 { return this->do_decimal_point(); }
13848 char_type
13849 thousands_sep() const
13850 { return this->do_thousands_sep(); }
13851 string
13852 grouping() const
13853 { return this->do_grouping(); }
13854 string_type
13855 truename() const
13856 { return this->do_truename(); }
13857 string_type
13858 falsename() const
13859 { return this->do_falsename(); }
13860 protected:
13861 virtual
13862 ~numpunct();
13863 virtual char_type
13864 do_decimal_point() const
13865 { return _M_data->_M_decimal_point; }
13866 virtual char_type
13867 do_thousands_sep() const
13868 { return _M_data->_M_thousands_sep; }
13869 virtual string
13870 do_grouping() const
13871 { return _M_data->_M_grouping; }
13872 virtual string_type
13873 do_truename() const
13874 { return _M_data->_M_truename; }
13875 virtual string_type
13876 do_falsename() const
13877 { return _M_data->_M_falsename; }
13878 void
13879 _M_initialize_numpunct(__c_locale __cloc = __null);
13880 };
13881 template<typename _CharT>
13882 locale::id numpunct<_CharT>::id;
13883 template<>
13884 numpunct<char>::~numpunct();
13885 template<>
13886 void
13887 numpunct<char>::_M_initialize_numpunct(__c_locale __cloc);
13888 template<>
13889 numpunct<wchar_t>::~numpunct();
13890 template<>
13891 void
13892 numpunct<wchar_t>::_M_initialize_numpunct(__c_locale __cloc);
13893 template<typename _CharT>
13894 class numpunct_byname : public numpunct<_CharT>
13895 {
13896 public:
13897 typedef _CharT char_type;
13898 typedef basic_string<_CharT> string_type;
13899 explicit
13900 numpunct_byname(const char* __s, size_t __refs = 0)
13901 : numpunct<_CharT>(__refs)
13902 {
13903 if (__builtin_strcmp(__s, "C") != 0
13904 && __builtin_strcmp(__s, "POSIX") != 0)
13905 {
13906 __c_locale __tmp;
13907 this->_S_create_c_locale(__tmp, __s);
13908 this->_M_initialize_numpunct(__tmp);
13909 this->_S_destroy_c_locale(__tmp);
13910 }
13911 }
13912 protected:
13913 virtual
13914 ~numpunct_byname() { }
13915 };
13916 template<typename _CharT, typename _InIter>
13917 class num_get : public locale::facet
13918 {
13919 public:
13920 typedef _CharT char_type;
13921 typedef _InIter iter_type;
13922 static locale::id id;
13923 explicit
13924 num_get(size_t __refs = 0) : facet(__refs) { }
13925 iter_type
13926 get(iter_type __in, iter_type __end, ios_base& __io,
13927 ios_base::iostate& __err, bool& __v) const
13928 { return this->do_get(__in, __end, __io, __err, __v); }
13929 iter_type
13930 get(iter_type __in, iter_type __end, ios_base& __io,
13931 ios_base::iostate& __err, long& __v) const
13932 { return this->do_get(__in, __end, __io, __err, __v); }
13933 iter_type
13934 get(iter_type __in, iter_type __end, ios_base& __io,
13935 ios_base::iostate& __err, unsigned short& __v) const
13936 { return this->do_get(__in, __end, __io, __err, __v); }
13937 iter_type
13938 get(iter_type __in, iter_type __end, ios_base& __io,
13939 ios_base::iostate& __err, unsigned int& __v) const
13940 { return this->do_get(__in, __end, __io, __err, __v); }
13941 iter_type
13942 get(iter_type __in, iter_type __end, ios_base& __io,
13943 ios_base::iostate& __err, unsigned long& __v) const
13944 { return this->do_get(__in, __end, __io, __err, __v); }
13945 iter_type
13946 get(iter_type __in, iter_type __end, ios_base& __io,
13947 ios_base::iostate& __err, long long& __v) const
13948 { return this->do_get(__in, __end, __io, __err, __v); }
13949 iter_type
13950 get(iter_type __in, iter_type __end, ios_base& __io,
13951 ios_base::iostate& __err, unsigned long long& __v) const
13952 { return this->do_get(__in, __end, __io, __err, __v); }
13953 iter_type
13954 get(iter_type __in, iter_type __end, ios_base& __io,
13955 ios_base::iostate& __err, float& __v) const
13956 { return this->do_get(__in, __end, __io, __err, __v); }
13957 iter_type
13958 get(iter_type __in, iter_type __end, ios_base& __io,
13959 ios_base::iostate& __err, double& __v) const
13960 { return this->do_get(__in, __end, __io, __err, __v); }
13961 iter_type
13962 get(iter_type __in, iter_type __end, ios_base& __io,
13963 ios_base::iostate& __err, long double& __v) const
13964 { return this->do_get(__in, __end, __io, __err, __v); }
13965 iter_type
13966 get(iter_type __in, iter_type __end, ios_base& __io,
13967 ios_base::iostate& __err, void*& __v) const
13968 { return this->do_get(__in, __end, __io, __err, __v); }
13969 protected:
13970 virtual ~num_get() { }
13971 iter_type
13972 _M_extract_float(iter_type, iter_type, ios_base&, ios_base::iostate&,
13973 string&) const;
13974 template<typename _ValueT>
13975 iter_type
13976 _M_extract_int(iter_type, iter_type, ios_base&, ios_base::iostate&,
13977 _ValueT&) const;
13978 template<typename _CharT2>
13979 typename __gnu_cxx::__enable_if<__is_char<_CharT2>::__value, int>::__type
13980 _M_find(const _CharT2*, size_t __len, _CharT2 __c) const
13981 {
13982 int __ret = -1;
13983 if (__len <= 10)
13984 {
13985 if (__c >= _CharT2('0') && __c < _CharT2(_CharT2('0') + __len))
13986 __ret = __c - _CharT2('0');
13987 }
13988 else
13989 {
13990 if (__c >= _CharT2('0') && __c <= _CharT2('9'))
13991 __ret = __c - _CharT2('0');
13992 else if (__c >= _CharT2('a') && __c <= _CharT2('f'))
13993 __ret = 10 + (__c - _CharT2('a'));
13994 else if (__c >= _CharT2('A') && __c <= _CharT2('F'))
13995 __ret = 10 + (__c - _CharT2('A'));
13996 }
13997 return __ret;
13998 }
13999 template<typename _CharT2>
14000 typename __gnu_cxx::__enable_if<!__is_char<_CharT2>::__value,
14001 int>::__type
14002 _M_find(const _CharT2* __zero, size_t __len, _CharT2 __c) const
14003 {
14004 int __ret = -1;
14005 const char_type* __q = char_traits<_CharT2>::find(__zero, __len, __c);
14006 if (__q)
14007 {
14008 __ret = __q - __zero;
14009 if (__ret > 15)
14010 __ret -= 6;
14011 }
14012 return __ret;
14013 }
14014 virtual iter_type
14015 do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, bool&) const;
14016 virtual iter_type
14017 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14018 ios_base::iostate& __err, long& __v) const
14019 { return _M_extract_int(__beg, __end, __io, __err, __v); }
14020 virtual iter_type
14021 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14022 ios_base::iostate& __err, unsigned short& __v) const
14023 { return _M_extract_int(__beg, __end, __io, __err, __v); }
14024 virtual iter_type
14025 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14026 ios_base::iostate& __err, unsigned int& __v) const
14027 { return _M_extract_int(__beg, __end, __io, __err, __v); }
14028 virtual iter_type
14029 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14030 ios_base::iostate& __err, unsigned long& __v) const
14031 { return _M_extract_int(__beg, __end, __io, __err, __v); }
14032 virtual iter_type
14033 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14034 ios_base::iostate& __err, long long& __v) const
14035 { return _M_extract_int(__beg, __end, __io, __err, __v); }
14036 virtual iter_type
14037 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14038 ios_base::iostate& __err, unsigned long long& __v) const
14039 { return _M_extract_int(__beg, __end, __io, __err, __v); }
14040 virtual iter_type
14041 do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
14042 float&) const;
14043 virtual iter_type
14044 do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
14045 double&) const;
14046 virtual iter_type
14047 do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
14048 long double&) const;
14049 virtual iter_type
14050 do_get(iter_type, iter_type, ios_base&, ios_base::iostate& __err,
14051 void*&) const;
14052 };
14053 template<typename _CharT, typename _InIter>
14054 locale::id num_get<_CharT, _InIter>::id;
14055 template<typename _CharT, typename _OutIter>
14056 class num_put : public locale::facet
14057 {
14058 public:
14059 typedef _CharT char_type;
14060 typedef _OutIter iter_type;
14061 static locale::id id;
14062 explicit
14063 num_put(size_t __refs = 0) : facet(__refs) { }
14064 iter_type
14065 put(iter_type __s, ios_base& __f, char_type __fill, bool __v) const
14066 { return this->do_put(__s, __f, __fill, __v); }
14067 iter_type
14068 put(iter_type __s, ios_base& __f, char_type __fill, long __v) const
14069 { return this->do_put(__s, __f, __fill, __v); }
14070 iter_type
14071 put(iter_type __s, ios_base& __f, char_type __fill,
14072 unsigned long __v) const
14073 { return this->do_put(__s, __f, __fill, __v); }
14074 iter_type
14075 put(iter_type __s, ios_base& __f, char_type __fill, long long __v) const
14076 { return this->do_put(__s, __f, __fill, __v); }
14077 iter_type
14078 put(iter_type __s, ios_base& __f, char_type __fill,
14079 unsigned long long __v) const
14080 { return this->do_put(__s, __f, __fill, __v); }
14081 iter_type
14082 put(iter_type __s, ios_base& __f, char_type __fill, double __v) const
14083 { return this->do_put(__s, __f, __fill, __v); }
14084 iter_type
14085 put(iter_type __s, ios_base& __f, char_type __fill,
14086 long double __v) const
14087 { return this->do_put(__s, __f, __fill, __v); }
14088 iter_type
14089 put(iter_type __s, ios_base& __f, char_type __fill,
14090 const void* __v) const
14091 { return this->do_put(__s, __f, __fill, __v); }
14092 protected:
14093 template<typename _ValueT>
14094 iter_type
14095 _M_insert_float(iter_type, ios_base& __io, char_type __fill,
14096 char __mod, _ValueT __v) const;
14097 void
14098 _M_group_float(const char* __grouping, size_t __grouping_size,
14099 char_type __sep, const char_type* __p, char_type* __new,
14100 char_type* __cs, int& __len) const;
14101 template<typename _ValueT>
14102 iter_type
14103 _M_insert_int(iter_type, ios_base& __io, char_type __fill,
14104 _ValueT __v) const;
14105 void
14106 _M_group_int(const char* __grouping, size_t __grouping_size,
14107 char_type __sep, ios_base& __io, char_type* __new,
14108 char_type* __cs, int& __len) const;
14109 void
14110 _M_pad(char_type __fill, streamsize __w, ios_base& __io,
14111 char_type* __new, const char_type* __cs, int& __len) const;
14112 virtual
14113 ~num_put() { };
14114 virtual iter_type
14115 do_put(iter_type, ios_base&, char_type __fill, bool __v) const;
14116 virtual iter_type
14117 do_put(iter_type __s, ios_base& __io, char_type __fill, long __v) const
14118 { return _M_insert_int(__s, __io, __fill, __v); }
14119 virtual iter_type
14120 do_put(iter_type __s, ios_base& __io, char_type __fill,
14121 unsigned long __v) const
14122 { return _M_insert_int(__s, __io, __fill, __v); }
14123 virtual iter_type
14124 do_put(iter_type __s, ios_base& __io, char_type __fill,
14125 long long __v) const
14126 { return _M_insert_int(__s, __io, __fill, __v); }
14127 virtual iter_type
14128 do_put(iter_type __s, ios_base& __io, char_type __fill,
14129 unsigned long long __v) const
14130 { return _M_insert_int(__s, __io, __fill, __v); }
14131 virtual iter_type
14132 do_put(iter_type, ios_base&, char_type __fill, double __v) const;
14133 virtual iter_type
14134 do_put(iter_type, ios_base&, char_type __fill, long double __v) const;
14135 virtual iter_type
14136 do_put(iter_type, ios_base&, char_type __fill, const void* __v) const;
14137 };
14138 template <typename _CharT, typename _OutIter>
14139 locale::id num_put<_CharT, _OutIter>::id;
14140 template<typename _CharT>
14141 inline bool
14142 isspace(_CharT __c, const locale& __loc)
14143 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::space, __c); }
14144 template<typename _CharT>
14145 inline bool
14146 isprint(_CharT __c, const locale& __loc)
14147 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::print, __c); }
14148 template<typename _CharT>
14149 inline bool
14150 iscntrl(_CharT __c, const locale& __loc)
14151 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::cntrl, __c); }
14152 template<typename _CharT>
14153 inline bool
14154 isupper(_CharT __c, const locale& __loc)
14155 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::upper, __c); }
14156 template<typename _CharT>
14157 inline bool
14158 islower(_CharT __c, const locale& __loc)
14159 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::lower, __c); }
14160 template<typename _CharT>
14161 inline bool
14162 isalpha(_CharT __c, const locale& __loc)
14163 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::alpha, __c); }
14164 template<typename _CharT>
14165 inline bool
14166 isdigit(_CharT __c, const locale& __loc)
14167 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::digit, __c); }
14168 template<typename _CharT>
14169 inline bool
14170 ispunct(_CharT __c, const locale& __loc)
14171 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::punct, __c); }
14172 template<typename _CharT>
14173 inline bool
14174 isxdigit(_CharT __c, const locale& __loc)
14175 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::xdigit, __c); }
14176 template<typename _CharT>
14177 inline bool
14178 isalnum(_CharT __c, const locale& __loc)
14179 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::alnum, __c); }
14180 template<typename _CharT>
14181 inline bool
14182 isgraph(_CharT __c, const locale& __loc)
14183 { return use_facet<ctype<_CharT> >(__loc).is(ctype_base::graph, __c); }
14184 template<typename _CharT>
14185 inline _CharT
14186 toupper(_CharT __c, const locale& __loc)
14187 { return use_facet<ctype<_CharT> >(__loc).toupper(__c); }
14188 template<typename _CharT>
14189 inline _CharT
14190 tolower(_CharT __c, const locale& __loc)
14191 { return use_facet<ctype<_CharT> >(__loc).tolower(__c); }
14192}
14193
14194namespace std __attribute__ ((__visibility__ ("default"))) {
14195 template<typename _Facet>
14196 struct __use_cache
14197 {
14198 const _Facet*
14199 operator() (const locale& __loc) const;
14200 };
14201 template<typename _CharT>
14202 struct __use_cache<__numpunct_cache<_CharT> >
14203 {
14204 const __numpunct_cache<_CharT>*
14205 operator() (const locale& __loc) const
14206 {
14207 const size_t __i = numpunct<_CharT>::id._M_id();
14208 const locale::facet** __caches = __loc._M_impl->_M_caches;
14209 if (!__caches[__i])
14210 {
14211 __numpunct_cache<_CharT>* __tmp = __null;
14212 try
14213 {
14214 __tmp = new __numpunct_cache<_CharT>;
14215 __tmp->_M_cache(__loc);
14216 }
14217 catch(...)
14218 {
14219 delete __tmp;
14220 throw;
14221 }
14222 __loc._M_impl->_M_install_cache(__tmp, __i);
14223 }
14224 return static_cast<const __numpunct_cache<_CharT>*>(__caches[__i]);
14225 }
14226 };
14227 template<typename _CharT>
14228 void
14229 __numpunct_cache<_CharT>::_M_cache(const locale& __loc)
14230 {
14231 _M_allocated = true;
14232 const numpunct<_CharT>& __np = use_facet<numpunct<_CharT> >(__loc);
14233 _M_grouping_size = __np.grouping().size();
14234 char* __grouping = new char[_M_grouping_size];
14235 __np.grouping().copy(__grouping, _M_grouping_size);
14236 _M_grouping = __grouping;
14237 _M_use_grouping = (_M_grouping_size
14238 && static_cast<signed char>(_M_grouping[0]) > 0
14239 && (_M_grouping[0]
14240 != __gnu_cxx::__numeric_traits<char>::__max));
14241 _M_truename_size = __np.truename().size();
14242 _CharT* __truename = new _CharT[_M_truename_size];
14243 __np.truename().copy(__truename, _M_truename_size);
14244 _M_truename = __truename;
14245 _M_falsename_size = __np.falsename().size();
14246 _CharT* __falsename = new _CharT[_M_falsename_size];
14247 __np.falsename().copy(__falsename, _M_falsename_size);
14248 _M_falsename = __falsename;
14249 _M_decimal_point = __np.decimal_point();
14250 _M_thousands_sep = __np.thousands_sep();
14251 const ctype<_CharT>& __ct = use_facet<ctype<_CharT> >(__loc);
14252 __ct.widen(__num_base::_S_atoms_out,
14253 __num_base::_S_atoms_out + __num_base::_S_oend, _M_atoms_out);
14254 __ct.widen(__num_base::_S_atoms_in,
14255 __num_base::_S_atoms_in + __num_base::_S_iend, _M_atoms_in);
14256 }
14257 bool
14258 __verify_grouping(const char* __grouping, size_t __grouping_size,
14259 const string& __grouping_tmp);
14260 template<typename _CharT, typename _InIter>
14261 _InIter
14262 num_get<_CharT, _InIter>::
14263 _M_extract_float(_InIter __beg, _InIter __end, ios_base& __io,
14264 ios_base::iostate& __err, string& __xtrc) const
14265 {
14266 typedef char_traits<_CharT> __traits_type;
14267 typedef __numpunct_cache<_CharT> __cache_type;
14268 __use_cache<__cache_type> __uc;
14269 const locale& __loc = __io._M_getloc();
14270 const __cache_type* __lc = __uc(__loc);
14271 const _CharT* __lit = __lc->_M_atoms_in;
14272 char_type __c = char_type();
14273 bool __testeof = __beg == __end;
14274 if (!__testeof)
14275 {
14276 __c = *__beg;
14277 const bool __plus = __c == __lit[__num_base::_S_iplus];
14278 if ((__plus || __c == __lit[__num_base::_S_iminus])
14279 && !(__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
14280 && !(__c == __lc->_M_decimal_point))
14281 {
14282 __xtrc += __plus ? '+' : '-';
14283 if (++__beg != __end)
14284 __c = *__beg;
14285 else
14286 __testeof = true;
14287 }
14288 }
14289 bool __found_mantissa = false;
14290 int __sep_pos = 0;
14291 while (!__testeof)
14292 {
14293 if ((__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
14294 || __c == __lc->_M_decimal_point)
14295 break;
14296 else if (__c == __lit[__num_base::_S_izero])
14297 {
14298 if (!__found_mantissa)
14299 {
14300 __xtrc += '0';
14301 __found_mantissa = true;
14302 }
14303 ++__sep_pos;
14304 if (++__beg != __end)
14305 __c = *__beg;
14306 else
14307 __testeof = true;
14308 }
14309 else
14310 break;
14311 }
14312 bool __found_dec = false;
14313 bool __found_sci = false;
14314 string __found_grouping;
14315 if (__lc->_M_use_grouping)
14316 __found_grouping.reserve(32);
14317 const char_type* __lit_zero = __lit + __num_base::_S_izero;
14318 if (!__lc->_M_allocated)
14319 while (!__testeof)
14320 {
14321 const int __digit = _M_find(__lit_zero, 10, __c);
14322 if (__digit != -1)
14323 {
14324 __xtrc += '0' + __digit;
14325 __found_mantissa = true;
14326 }
14327 else if (__c == __lc->_M_decimal_point
14328 && !__found_dec && !__found_sci)
14329 {
14330 __xtrc += '.';
14331 __found_dec = true;
14332 }
14333 else if ((__c == __lit[__num_base::_S_ie]
14334 || __c == __lit[__num_base::_S_iE])
14335 && !__found_sci && __found_mantissa)
14336 {
14337 __xtrc += 'e';
14338 __found_sci = true;
14339 if (++__beg != __end)
14340 {
14341 __c = *__beg;
14342 const bool __plus = __c == __lit[__num_base::_S_iplus];
14343 if (__plus || __c == __lit[__num_base::_S_iminus])
14344 __xtrc += __plus ? '+' : '-';
14345 else
14346 continue;
14347 }
14348 else
14349 {
14350 __testeof = true;
14351 break;
14352 }
14353 }
14354 else
14355 break;
14356 if (++__beg != __end)
14357 __c = *__beg;
14358 else
14359 __testeof = true;
14360 }
14361 else
14362 while (!__testeof)
14363 {
14364 if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
14365 {
14366 if (!__found_dec && !__found_sci)
14367 {
14368 if (__sep_pos)
14369 {
14370 __found_grouping += static_cast<char>(__sep_pos);
14371 __sep_pos = 0;
14372 }
14373 else
14374 {
14375 __xtrc.clear();
14376 break;
14377 }
14378 }
14379 else
14380 break;
14381 }
14382 else if (__c == __lc->_M_decimal_point)
14383 {
14384 if (!__found_dec && !__found_sci)
14385 {
14386 if (__found_grouping.size())
14387 __found_grouping += static_cast<char>(__sep_pos);
14388 __xtrc += '.';
14389 __found_dec = true;
14390 }
14391 else
14392 break;
14393 }
14394 else
14395 {
14396 const char_type* __q =
14397 __traits_type::find(__lit_zero, 10, __c);
14398 if (__q)
14399 {
14400 __xtrc += '0' + (__q - __lit_zero);
14401 __found_mantissa = true;
14402 ++__sep_pos;
14403 }
14404 else if ((__c == __lit[__num_base::_S_ie]
14405 || __c == __lit[__num_base::_S_iE])
14406 && !__found_sci && __found_mantissa)
14407 {
14408 if (__found_grouping.size() && !__found_dec)
14409 __found_grouping += static_cast<char>(__sep_pos);
14410 __xtrc += 'e';
14411 __found_sci = true;
14412 if (++__beg != __end)
14413 {
14414 __c = *__beg;
14415 const bool __plus = __c == __lit[__num_base::_S_iplus];
14416 if ((__plus || __c == __lit[__num_base::_S_iminus])
14417 && !(__lc->_M_use_grouping
14418 && __c == __lc->_M_thousands_sep)
14419 && !(__c == __lc->_M_decimal_point))
14420 __xtrc += __plus ? '+' : '-';
14421 else
14422 continue;
14423 }
14424 else
14425 {
14426 __testeof = true;
14427 break;
14428 }
14429 }
14430 else
14431 break;
14432 }
14433 if (++__beg != __end)
14434 __c = *__beg;
14435 else
14436 __testeof = true;
14437 }
14438 if (__found_grouping.size())
14439 {
14440 if (!__found_dec && !__found_sci)
14441 __found_grouping += static_cast<char>(__sep_pos);
14442 if (!std::__verify_grouping(__lc->_M_grouping,
14443 __lc->_M_grouping_size,
14444 __found_grouping))
14445 __err = ios_base::failbit;
14446 }
14447 return __beg;
14448 }
14449 template<typename _CharT, typename _InIter>
14450 template<typename _ValueT>
14451 _InIter
14452 num_get<_CharT, _InIter>::
14453 _M_extract_int(_InIter __beg, _InIter __end, ios_base& __io,
14454 ios_base::iostate& __err, _ValueT& __v) const
14455 {
14456 typedef char_traits<_CharT> __traits_type;
14457 using __gnu_cxx::__add_unsigned;
14458 typedef typename __add_unsigned<_ValueT>::__type __unsigned_type;
14459 typedef __numpunct_cache<_CharT> __cache_type;
14460 __use_cache<__cache_type> __uc;
14461 const locale& __loc = __io._M_getloc();
14462 const __cache_type* __lc = __uc(__loc);
14463 const _CharT* __lit = __lc->_M_atoms_in;
14464 char_type __c = char_type();
14465 const ios_base::fmtflags __basefield = __io.flags()
14466 & ios_base::basefield;
14467 const bool __oct = __basefield == ios_base::oct;
14468 int __base = __oct ? 8 : (__basefield == ios_base::hex ? 16 : 10);
14469 bool __testeof = __beg == __end;
14470 bool __negative = false;
14471 if (!__testeof)
14472 {
14473 __c = *__beg;
14474 __negative = __c == __lit[__num_base::_S_iminus];
14475 if ((__negative || __c == __lit[__num_base::_S_iplus])
14476 && !(__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
14477 && !(__c == __lc->_M_decimal_point))
14478 {
14479 if (++__beg != __end)
14480 __c = *__beg;
14481 else
14482 __testeof = true;
14483 }
14484 }
14485 bool __found_zero = false;
14486 int __sep_pos = 0;
14487 while (!__testeof)
14488 {
14489 if ((__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
14490 || __c == __lc->_M_decimal_point)
14491 break;
14492 else if (__c == __lit[__num_base::_S_izero]
14493 && (!__found_zero || __base == 10))
14494 {
14495 __found_zero = true;
14496 ++__sep_pos;
14497 if (__basefield == 0)
14498 __base = 8;
14499 if (__base == 8)
14500 __sep_pos = 0;
14501 }
14502 else if (__found_zero
14503 && (__c == __lit[__num_base::_S_ix]
14504 || __c == __lit[__num_base::_S_iX]))
14505 {
14506 if (__basefield == 0)
14507 __base = 16;
14508 if (__base == 16)
14509 {
14510 __found_zero = false;
14511 __sep_pos = 0;
14512 }
14513 else
14514 break;
14515 }
14516 else
14517 break;
14518 if (++__beg != __end)
14519 {
14520 __c = *__beg;
14521 if (!__found_zero)
14522 break;
14523 }
14524 else
14525 __testeof = true;
14526 }
14527 const size_t __len = (__base == 16 ? __num_base::_S_iend
14528 - __num_base::_S_izero : __base);
14529 string __found_grouping;
14530 if (__lc->_M_use_grouping)
14531 __found_grouping.reserve(32);
14532 bool __testfail = false;
14533 bool __testoverflow = false;
14534 const __unsigned_type __max =
14535 (__negative && __gnu_cxx::__numeric_traits<_ValueT>::__is_signed)
14536 ? -__gnu_cxx::__numeric_traits<_ValueT>::__min
14537 : __gnu_cxx::__numeric_traits<_ValueT>::__max;
14538 const __unsigned_type __smax = __max / __base;
14539 __unsigned_type __result = 0;
14540 int __digit = 0;
14541 const char_type* __lit_zero = __lit + __num_base::_S_izero;
14542 if (!__lc->_M_allocated)
14543 while (!__testeof)
14544 {
14545 __digit = _M_find(__lit_zero, __len, __c);
14546 if (__digit == -1)
14547 break;
14548 if (__result > __smax)
14549 __testoverflow = true;
14550 else
14551 {
14552 __result *= __base;
14553 __testoverflow |= __result > __max - __digit;
14554 __result += __digit;
14555 ++__sep_pos;
14556 }
14557 if (++__beg != __end)
14558 __c = *__beg;
14559 else
14560 __testeof = true;
14561 }
14562 else
14563 while (!__testeof)
14564 {
14565 if (__lc->_M_use_grouping && __c == __lc->_M_thousands_sep)
14566 {
14567 if (__sep_pos)
14568 {
14569 __found_grouping += static_cast<char>(__sep_pos);
14570 __sep_pos = 0;
14571 }
14572 else
14573 {
14574 __testfail = true;
14575 break;
14576 }
14577 }
14578 else if (__c == __lc->_M_decimal_point)
14579 break;
14580 else
14581 {
14582 const char_type* __q =
14583 __traits_type::find(__lit_zero, __len, __c);
14584 if (!__q)
14585 break;
14586 __digit = __q - __lit_zero;
14587 if (__digit > 15)
14588 __digit -= 6;
14589 if (__result > __smax)
14590 __testoverflow = true;
14591 else
14592 {
14593 __result *= __base;
14594 __testoverflow |= __result > __max - __digit;
14595 __result += __digit;
14596 ++__sep_pos;
14597 }
14598 }
14599 if (++__beg != __end)
14600 __c = *__beg;
14601 else
14602 __testeof = true;
14603 }
14604 if (__found_grouping.size())
14605 {
14606 __found_grouping += static_cast<char>(__sep_pos);
14607 if (!std::__verify_grouping(__lc->_M_grouping,
14608 __lc->_M_grouping_size,
14609 __found_grouping))
14610 __err = ios_base::failbit;
14611 }
14612 if ((!__sep_pos && !__found_zero && !__found_grouping.size())
14613 || __testfail)
14614 {
14615 __v = 0;
14616 __err = ios_base::failbit;
14617 }
14618 else if (__testoverflow)
14619 {
14620 if (__negative
14621 && __gnu_cxx::__numeric_traits<_ValueT>::__is_signed)
14622 __v = __gnu_cxx::__numeric_traits<_ValueT>::__min;
14623 else
14624 __v = __gnu_cxx::__numeric_traits<_ValueT>::__max;
14625 __err = ios_base::failbit;
14626 }
14627 else
14628 __v = __negative ? -__result : __result;
14629 if (__testeof)
14630 __err |= ios_base::eofbit;
14631 return __beg;
14632 }
14633 template<typename _CharT, typename _InIter>
14634 _InIter
14635 num_get<_CharT, _InIter>::
14636 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14637 ios_base::iostate& __err, bool& __v) const
14638 {
14639 if (!(__io.flags() & ios_base::boolalpha))
14640 {
14641 long __l = -1;
14642 __beg = _M_extract_int(__beg, __end, __io, __err, __l);
14643 if (__l == 0 || __l == 1)
14644 __v = bool(__l);
14645 else
14646 {
14647 __v = true;
14648 __err = ios_base::failbit;
14649 if (__beg == __end)
14650 __err |= ios_base::eofbit;
14651 }
14652 }
14653 else
14654 {
14655 typedef __numpunct_cache<_CharT> __cache_type;
14656 __use_cache<__cache_type> __uc;
14657 const locale& __loc = __io._M_getloc();
14658 const __cache_type* __lc = __uc(__loc);
14659 bool __testf = true;
14660 bool __testt = true;
14661 bool __donef = __lc->_M_falsename_size == 0;
14662 bool __donet = __lc->_M_truename_size == 0;
14663 bool __testeof = false;
14664 size_t __n = 0;
14665 while (!__donef || !__donet)
14666 {
14667 if (__beg == __end)
14668 {
14669 __testeof = true;
14670 break;
14671 }
14672 const char_type __c = *__beg;
14673 if (!__donef)
14674 __testf = __c == __lc->_M_falsename[__n];
14675 if (!__testf && __donet)
14676 break;
14677 if (!__donet)
14678 __testt = __c == __lc->_M_truename[__n];
14679 if (!__testt && __donef)
14680 break;
14681 if (!__testt && !__testf)
14682 break;
14683 ++__n;
14684 ++__beg;
14685 __donef = !__testf || __n >= __lc->_M_falsename_size;
14686 __donet = !__testt || __n >= __lc->_M_truename_size;
14687 }
14688 if (__testf && __n == __lc->_M_falsename_size && __n)
14689 {
14690 __v = false;
14691 if (__testt && __n == __lc->_M_truename_size)
14692 __err = ios_base::failbit;
14693 else
14694 __err = __testeof ? ios_base::eofbit : ios_base::goodbit;
14695 }
14696 else if (__testt && __n == __lc->_M_truename_size && __n)
14697 {
14698 __v = true;
14699 __err = __testeof ? ios_base::eofbit : ios_base::goodbit;
14700 }
14701 else
14702 {
14703 __v = false;
14704 __err = ios_base::failbit;
14705 if (__testeof)
14706 __err |= ios_base::eofbit;
14707 }
14708 }
14709 return __beg;
14710 }
14711 template<typename _CharT, typename _InIter>
14712 _InIter
14713 num_get<_CharT, _InIter>::
14714 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14715 ios_base::iostate& __err, float& __v) const
14716 {
14717 string __xtrc;
14718 __xtrc.reserve(32);
14719 __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
14720 std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
14721 if (__beg == __end)
14722 __err |= ios_base::eofbit;
14723 return __beg;
14724 }
14725 template<typename _CharT, typename _InIter>
14726 _InIter
14727 num_get<_CharT, _InIter>::
14728 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14729 ios_base::iostate& __err, double& __v) const
14730 {
14731 string __xtrc;
14732 __xtrc.reserve(32);
14733 __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
14734 std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
14735 if (__beg == __end)
14736 __err |= ios_base::eofbit;
14737 return __beg;
14738 }
14739 template<typename _CharT, typename _InIter>
14740 _InIter
14741 num_get<_CharT, _InIter>::
14742 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14743 ios_base::iostate& __err, long double& __v) const
14744 {
14745 string __xtrc;
14746 __xtrc.reserve(32);
14747 __beg = _M_extract_float(__beg, __end, __io, __err, __xtrc);
14748 std::__convert_to_v(__xtrc.c_str(), __v, __err, _S_get_c_locale());
14749 if (__beg == __end)
14750 __err |= ios_base::eofbit;
14751 return __beg;
14752 }
14753 template<typename _CharT, typename _InIter>
14754 _InIter
14755 num_get<_CharT, _InIter>::
14756 do_get(iter_type __beg, iter_type __end, ios_base& __io,
14757 ios_base::iostate& __err, void*& __v) const
14758 {
14759 typedef ios_base::fmtflags fmtflags;
14760 const fmtflags __fmt = __io.flags();
14761 __io.flags((__fmt & ~ios_base::basefield) | ios_base::hex);
14762 typedef __gnu_cxx::__conditional_type<(sizeof(void*)
14763 <= sizeof(unsigned long)),
14764 unsigned long, unsigned long long>::__type _UIntPtrType;
14765 _UIntPtrType __ul;
14766 __beg = _M_extract_int(__beg, __end, __io, __err, __ul);
14767 __io.flags(__fmt);
14768 __v = reinterpret_cast<void*>(__ul);
14769 return __beg;
14770 }
14771 template<typename _CharT, typename _OutIter>
14772 void
14773 num_put<_CharT, _OutIter>::
14774 _M_pad(_CharT __fill, streamsize __w, ios_base& __io,
14775 _CharT* __new, const _CharT* __cs, int& __len) const
14776 {
14777 __pad<_CharT, char_traits<_CharT> >::_S_pad(__io, __fill, __new,
14778 __cs, __w, __len);
14779 __len = static_cast<int>(__w);
14780 }
14781 template<typename _CharT, typename _ValueT>
14782 int
14783 __int_to_char(_CharT* __bufend, _ValueT __v, const _CharT* __lit,
14784 ios_base::fmtflags __flags, bool __dec)
14785 {
14786 _CharT* __buf = __bufend;
14787 if (__builtin_expect(__dec, true))
14788 {
14789 do
14790 {
14791 *--__buf = __lit[(__v % 10) + __num_base::_S_odigits];
14792 __v /= 10;
14793 }
14794 while (__v != 0);
14795 }
14796 else if ((__flags & ios_base::basefield) == ios_base::oct)
14797 {
14798 do
14799 {
14800 *--__buf = __lit[(__v & 0x7) + __num_base::_S_odigits];
14801 __v >>= 3;
14802 }
14803 while (__v != 0);
14804 }
14805 else
14806 {
14807 const bool __uppercase = __flags & ios_base::uppercase;
14808 const int __case_offset = __uppercase ? __num_base::_S_oudigits
14809 : __num_base::_S_odigits;
14810 do
14811 {
14812 *--__buf = __lit[(__v & 0xf) + __case_offset];
14813 __v >>= 4;
14814 }
14815 while (__v != 0);
14816 }
14817 return __bufend - __buf;
14818 }
14819 template<typename _CharT, typename _OutIter>
14820 void
14821 num_put<_CharT, _OutIter>::
14822 _M_group_int(const char* __grouping, size_t __grouping_size, _CharT __sep,
14823 ios_base&, _CharT* __new, _CharT* __cs, int& __len) const
14824 {
14825 _CharT* __p = std::__add_grouping(__new, __sep, __grouping,
14826 __grouping_size, __cs, __cs + __len);
14827 __len = __p - __new;
14828 }
14829 template<typename _CharT, typename _OutIter>
14830 template<typename _ValueT>
14831 _OutIter
14832 num_put<_CharT, _OutIter>::
14833 _M_insert_int(_OutIter __s, ios_base& __io, _CharT __fill,
14834 _ValueT __v) const
14835 {
14836 using __gnu_cxx::__add_unsigned;
14837 typedef typename __add_unsigned<_ValueT>::__type __unsigned_type;
14838 typedef __numpunct_cache<_CharT> __cache_type;
14839 __use_cache<__cache_type> __uc;
14840 const locale& __loc = __io._M_getloc();
14841 const __cache_type* __lc = __uc(__loc);
14842 const _CharT* __lit = __lc->_M_atoms_out;
14843 const ios_base::fmtflags __flags = __io.flags();
14844 const int __ilen = 5 * sizeof(_ValueT);
14845 _CharT* __cs = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
14846 * __ilen));
14847 const ios_base::fmtflags __basefield = __flags & ios_base::basefield;
14848 const bool __dec = (__basefield != ios_base::oct
14849 && __basefield != ios_base::hex);
14850 const __unsigned_type __u = ((__v > 0 || !__dec)
14851 ? __unsigned_type(__v)
14852 : -__unsigned_type(__v));
14853 int __len = __int_to_char(__cs + __ilen, __u, __lit, __flags, __dec);
14854 __cs += __ilen - __len;
14855 if (__lc->_M_use_grouping)
14856 {
14857 _CharT* __cs2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
14858 * (__len + 1)
14859 * 2));
14860 _M_group_int(__lc->_M_grouping, __lc->_M_grouping_size,
14861 __lc->_M_thousands_sep, __io, __cs2 + 2, __cs, __len);
14862 __cs = __cs2 + 2;
14863 }
14864 if (__builtin_expect(__dec, true))
14865 {
14866 if (__v >= 0)
14867 {
14868 if (bool(__flags & ios_base::showpos)
14869 && __gnu_cxx::__numeric_traits<_ValueT>::__is_signed)
14870 *--__cs = __lit[__num_base::_S_oplus], ++__len;
14871 }
14872 else
14873 *--__cs = __lit[__num_base::_S_ominus], ++__len;
14874 }
14875 else if (bool(__flags & ios_base::showbase) && __v)
14876 {
14877 if (__basefield == ios_base::oct)
14878 *--__cs = __lit[__num_base::_S_odigits], ++__len;
14879 else
14880 {
14881 const bool __uppercase = __flags & ios_base::uppercase;
14882 *--__cs = __lit[__num_base::_S_ox + __uppercase];
14883 *--__cs = __lit[__num_base::_S_odigits];
14884 __len += 2;
14885 }
14886 }
14887 const streamsize __w = __io.width();
14888 if (__w > static_cast<streamsize>(__len))
14889 {
14890 _CharT* __cs3 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
14891 * __w));
14892 _M_pad(__fill, __w, __io, __cs3, __cs, __len);
14893 __cs = __cs3;
14894 }
14895 __io.width(0);
14896 return std::__write(__s, __cs, __len);
14897 }
14898 template<typename _CharT, typename _OutIter>
14899 void
14900 num_put<_CharT, _OutIter>::
14901 _M_group_float(const char* __grouping, size_t __grouping_size,
14902 _CharT __sep, const _CharT* __p, _CharT* __new,
14903 _CharT* __cs, int& __len) const
14904 {
14905 const int __declen = __p ? __p - __cs : __len;
14906 _CharT* __p2 = std::__add_grouping(__new, __sep, __grouping,
14907 __grouping_size,
14908 __cs, __cs + __declen);
14909 int __newlen = __p2 - __new;
14910 if (__p)
14911 {
14912 char_traits<_CharT>::copy(__p2, __p, __len - __declen);
14913 __newlen += __len - __declen;
14914 }
14915 __len = __newlen;
14916 }
14917 template<typename _CharT, typename _OutIter>
14918 template<typename _ValueT>
14919 _OutIter
14920 num_put<_CharT, _OutIter>::
14921 _M_insert_float(_OutIter __s, ios_base& __io, _CharT __fill, char __mod,
14922 _ValueT __v) const
14923 {
14924 typedef __numpunct_cache<_CharT> __cache_type;
14925 __use_cache<__cache_type> __uc;
14926 const locale& __loc = __io._M_getloc();
14927 const __cache_type* __lc = __uc(__loc);
14928 const streamsize __prec = __io.precision() < 0 ? 6 : __io.precision();
14929 const int __max_digits =
14930 __gnu_cxx::__numeric_traits<_ValueT>::__digits10;
14931 int __len;
14932 char __fbuf[16];
14933 __num_base::_S_format_float(__io, __fbuf, __mod);
14934 int __cs_size = __max_digits * 3;
14935 char* __cs = static_cast<char*>(__builtin_alloca(__cs_size));
14936 __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size,
14937 __fbuf, __prec, __v);
14938 if (__len >= __cs_size)
14939 {
14940 __cs_size = __len + 1;
14941 __cs = static_cast<char*>(__builtin_alloca(__cs_size));
14942 __len = std::__convert_from_v(_S_get_c_locale(), __cs, __cs_size,
14943 __fbuf, __prec, __v);
14944 }
14945 const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
14946 _CharT* __ws = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
14947 * __len));
14948 __ctype.widen(__cs, __cs + __len, __ws);
14949 _CharT* __wp = 0;
14950 const char* __p = char_traits<char>::find(__cs, __len, '.');
14951 if (__p)
14952 {
14953 __wp = __ws + (__p - __cs);
14954 *__wp = __lc->_M_decimal_point;
14955 }
14956 if (__lc->_M_use_grouping
14957 && (__wp || __len < 3 || (__cs[1] <= '9' && __cs[2] <= '9'
14958 && __cs[1] >= '0' && __cs[2] >= '0')))
14959 {
14960 _CharT* __ws2 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
14961 * __len * 2));
14962 streamsize __off = 0;
14963 if (__cs[0] == '-' || __cs[0] == '+')
14964 {
14965 __off = 1;
14966 __ws2[0] = __ws[0];
14967 __len -= 1;
14968 }
14969 _M_group_float(__lc->_M_grouping, __lc->_M_grouping_size,
14970 __lc->_M_thousands_sep, __wp, __ws2 + __off,
14971 __ws + __off, __len);
14972 __len += __off;
14973 __ws = __ws2;
14974 }
14975 const streamsize __w = __io.width();
14976 if (__w > static_cast<streamsize>(__len))
14977 {
14978 _CharT* __ws3 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
14979 * __w));
14980 _M_pad(__fill, __w, __io, __ws3, __ws, __len);
14981 __ws = __ws3;
14982 }
14983 __io.width(0);
14984 return std::__write(__s, __ws, __len);
14985 }
14986 template<typename _CharT, typename _OutIter>
14987 _OutIter
14988 num_put<_CharT, _OutIter>::
14989 do_put(iter_type __s, ios_base& __io, char_type __fill, bool __v) const
14990 {
14991 const ios_base::fmtflags __flags = __io.flags();
14992 if ((__flags & ios_base::boolalpha) == 0)
14993 {
14994 const long __l = __v;
14995 __s = _M_insert_int(__s, __io, __fill, __l);
14996 }
14997 else
14998 {
14999 typedef __numpunct_cache<_CharT> __cache_type;
15000 __use_cache<__cache_type> __uc;
15001 const locale& __loc = __io._M_getloc();
15002 const __cache_type* __lc = __uc(__loc);
15003 const _CharT* __name = __v ? __lc->_M_truename
15004 : __lc->_M_falsename;
15005 int __len = __v ? __lc->_M_truename_size
15006 : __lc->_M_falsename_size;
15007 const streamsize __w = __io.width();
15008 if (__w > static_cast<streamsize>(__len))
15009 {
15010 const streamsize __plen = __w - __len;
15011 _CharT* __ps
15012 = static_cast<_CharT*>(__builtin_alloca(sizeof(_CharT)
15013 * __plen));
15014 char_traits<_CharT>::assign(__ps, __plen, __fill);
15015 __io.width(0);
15016 if ((__flags & ios_base::adjustfield) == ios_base::left)
15017 {
15018 __s = std::__write(__s, __name, __len);
15019 __s = std::__write(__s, __ps, __plen);
15020 }
15021 else
15022 {
15023 __s = std::__write(__s, __ps, __plen);
15024 __s = std::__write(__s, __name, __len);
15025 }
15026 return __s;
15027 }
15028 __io.width(0);
15029 __s = std::__write(__s, __name, __len);
15030 }
15031 return __s;
15032 }
15033 template<typename _CharT, typename _OutIter>
15034 _OutIter
15035 num_put<_CharT, _OutIter>::
15036 do_put(iter_type __s, ios_base& __io, char_type __fill, double __v) const
15037 { return _M_insert_float(__s, __io, __fill, char(), __v); }
15038 template<typename _CharT, typename _OutIter>
15039 _OutIter
15040 num_put<_CharT, _OutIter>::
15041 do_put(iter_type __s, ios_base& __io, char_type __fill,
15042 long double __v) const
15043 { return _M_insert_float(__s, __io, __fill, 'L', __v); }
15044 template<typename _CharT, typename _OutIter>
15045 _OutIter
15046 num_put<_CharT, _OutIter>::
15047 do_put(iter_type __s, ios_base& __io, char_type __fill,
15048 const void* __v) const
15049 {
15050 const ios_base::fmtflags __flags = __io.flags();
15051 const ios_base::fmtflags __fmt = ~(ios_base::basefield
15052 | ios_base::uppercase);
15053 __io.flags((__flags & __fmt) | (ios_base::hex | ios_base::showbase));
15054 typedef __gnu_cxx::__conditional_type<(sizeof(const void*)
15055 <= sizeof(unsigned long)),
15056 unsigned long, unsigned long long>::__type _UIntPtrType;
15057 __s = _M_insert_int(__s, __io, __fill,
15058 reinterpret_cast<_UIntPtrType>(__v));
15059 __io.flags(__flags);
15060 return __s;
15061 }
15062 template<typename _CharT, typename _Traits>
15063 void
15064 __pad<_CharT, _Traits>::_S_pad(ios_base& __io, _CharT __fill,
15065 _CharT* __news, const _CharT* __olds,
15066 streamsize __newlen, streamsize __oldlen)
15067 {
15068 const size_t __plen = static_cast<size_t>(__newlen - __oldlen);
15069 const ios_base::fmtflags __adjust = __io.flags() & ios_base::adjustfield;
15070 if (__adjust == ios_base::left)
15071 {
15072 _Traits::copy(__news, __olds, __oldlen);
15073 _Traits::assign(__news + __oldlen, __plen, __fill);
15074 return;
15075 }
15076 size_t __mod = 0;
15077 if (__adjust == ios_base::internal)
15078 {
15079 const locale& __loc = __io._M_getloc();
15080 const ctype<_CharT>& __ctype = use_facet<ctype<_CharT> >(__loc);
15081 if (__ctype.widen('-') == __olds[0]
15082 || __ctype.widen('+') == __olds[0])
15083 {
15084 __news[0] = __olds[0];
15085 __mod = 1;
15086 ++__news;
15087 }
15088 else if (__ctype.widen('0') == __olds[0]
15089 && __oldlen > 1
15090 && (__ctype.widen('x') == __olds[1]
15091 || __ctype.widen('X') == __olds[1]))
15092 {
15093 __news[0] = __olds[0];
15094 __news[1] = __olds[1];
15095 __mod = 2;
15096 __news += 2;
15097 }
15098 }
15099 _Traits::assign(__news, __plen, __fill);
15100 _Traits::copy(__news + __plen, __olds + __mod, __oldlen - __mod);
15101 }
15102 template<typename _CharT>
15103 _CharT*
15104 __add_grouping(_CharT* __s, _CharT __sep,
15105 const char* __gbeg, size_t __gsize,
15106 const _CharT* __first, const _CharT* __last)
15107 {
15108 size_t __idx = 0;
15109 size_t __ctr = 0;
15110 while (__last - __first > __gbeg[__idx]
15111 && static_cast<signed char>(__gbeg[__idx]) > 0
15112 && __gbeg[__idx] != __gnu_cxx::__numeric_traits<char>::__max)
15113 {
15114 __last -= __gbeg[__idx];
15115 __idx < __gsize - 1 ? ++__idx : ++__ctr;
15116 }
15117 while (__first != __last)
15118 *__s++ = *__first++;
15119 while (__ctr--)
15120 {
15121 *__s++ = __sep;
15122 for (char __i = __gbeg[__idx]; __i > 0; --__i)
15123 *__s++ = *__first++;
15124 }
15125 while (__idx--)
15126 {
15127 *__s++ = __sep;
15128 for (char __i = __gbeg[__idx]; __i > 0; --__i)
15129 *__s++ = *__first++;
15130 }
15131 return __s;
15132 }
15133 extern template class numpunct<char>;
15134 extern template class numpunct_byname<char>;
15135 extern template class num_get<char>;
15136 extern template class num_put<char>;
15137 extern template class ctype_byname<char>;
15138 extern template
15139 const ctype<char>&
15140 use_facet<ctype<char> >(const locale&);
15141 extern template
15142 const numpunct<char>&
15143 use_facet<numpunct<char> >(const locale&);
15144 extern template
15145 const num_put<char>&
15146 use_facet<num_put<char> >(const locale&);
15147 extern template
15148 const num_get<char>&
15149 use_facet<num_get<char> >(const locale&);
15150 extern template
15151 bool
15152 has_facet<ctype<char> >(const locale&);
15153 extern template
15154 bool
15155 has_facet<numpunct<char> >(const locale&);
15156 extern template
15157 bool
15158 has_facet<num_put<char> >(const locale&);
15159 extern template
15160 bool
15161 has_facet<num_get<char> >(const locale&);
15162 extern template class numpunct<wchar_t>;
15163 extern template class numpunct_byname<wchar_t>;
15164 extern template class num_get<wchar_t>;
15165 extern template class num_put<wchar_t>;
15166 extern template class ctype_byname<wchar_t>;
15167 extern template
15168 const ctype<wchar_t>&
15169 use_facet<ctype<wchar_t> >(const locale&);
15170 extern template
15171 const numpunct<wchar_t>&
15172 use_facet<numpunct<wchar_t> >(const locale&);
15173 extern template
15174 const num_put<wchar_t>&
15175 use_facet<num_put<wchar_t> >(const locale&);
15176 extern template
15177 const num_get<wchar_t>&
15178 use_facet<num_get<wchar_t> >(const locale&);
15179 extern template
15180 bool
15181 has_facet<ctype<wchar_t> >(const locale&);
15182 extern template
15183 bool
15184 has_facet<numpunct<wchar_t> >(const locale&);
15185 extern template
15186 bool
15187 has_facet<num_put<wchar_t> >(const locale&);
15188 extern template
15189 bool
15190 has_facet<num_get<wchar_t> >(const locale&);
15191}
15192namespace std __attribute__ ((__visibility__ ("default"))) {
15193 template<typename _Facet>
15194 inline const _Facet&
15195 __check_facet(const _Facet* __f)
15196 {
15197 if (!__f)
15198 __throw_bad_cast();
15199 return *__f;
15200 }
15201 template<typename _CharT, typename _Traits>
15202 class basic_ios : public ios_base
15203 {
15204 public:
15205 typedef _CharT char_type;
15206 typedef typename _Traits::int_type int_type;
15207 typedef typename _Traits::pos_type pos_type;
15208 typedef typename _Traits::off_type off_type;
15209 typedef _Traits traits_type;
15210 typedef ctype<_CharT> __ctype_type;
15211 typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> >
15212 __num_put_type;
15213 typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> >
15214 __num_get_type;
15215 protected:
15216 basic_ostream<_CharT, _Traits>* _M_tie;
15217 mutable char_type _M_fill;
15218 mutable bool _M_fill_init;
15219 basic_streambuf<_CharT, _Traits>* _M_streambuf;
15220 const __ctype_type* _M_ctype;
15221 const __num_put_type* _M_num_put;
15222 const __num_get_type* _M_num_get;
15223 public:
15224 operator void*() const
15225 { return this->fail() ? 0 : const_cast<basic_ios*>(this); }
15226 bool
15227 operator!() const
15228 { return this->fail(); }
15229 iostate
15230 rdstate() const
15231 { return _M_streambuf_state; }
15232 void
15233 clear(iostate __state = goodbit);
15234 void
15235 setstate(iostate __state)
15236 { this->clear(this->rdstate() | __state); }
15237 void
15238 _M_setstate(iostate __state)
15239 {
15240 _M_streambuf_state |= __state;
15241 if (this->exceptions() & __state)
15242 throw;
15243 }
15244 bool
15245 good() const
15246 { return this->rdstate() == 0; }
15247 bool
15248 eof() const
15249 { return (this->rdstate() & eofbit) != 0; }
15250 bool
15251 fail() const
15252 { return (this->rdstate() & (badbit | failbit)) != 0; }
15253 bool
15254 bad() const
15255 { return (this->rdstate() & badbit) != 0; }
15256 iostate
15257 exceptions() const
15258 { return _M_exception; }
15259 void
15260 exceptions(iostate __except)
15261 {
15262 _M_exception = __except;
15263 this->clear(_M_streambuf_state);
15264 }
15265 explicit
15266 basic_ios(basic_streambuf<_CharT, _Traits>* __sb)
15267 : ios_base(), _M_tie(0), _M_fill(), _M_fill_init(false), _M_streambuf(0),
15268 _M_ctype(0), _M_num_put(0), _M_num_get(0)
15269 { this->init(__sb); }
15270 virtual
15271 ~basic_ios() { }
15272 basic_ostream<_CharT, _Traits>*
15273 tie() const
15274 { return _M_tie; }
15275 basic_ostream<_CharT, _Traits>*
15276 tie(basic_ostream<_CharT, _Traits>* __tiestr)
15277 {
15278 basic_ostream<_CharT, _Traits>* __old = _M_tie;
15279 _M_tie = __tiestr;
15280 return __old;
15281 }
15282 basic_streambuf<_CharT, _Traits>*
15283 rdbuf() const
15284 { return _M_streambuf; }
15285 basic_streambuf<_CharT, _Traits>*
15286 rdbuf(basic_streambuf<_CharT, _Traits>* __sb);
15287 basic_ios&
15288 copyfmt(const basic_ios& __rhs);
15289 char_type
15290 fill() const
15291 {
15292 if (!_M_fill_init)
15293 {
15294 _M_fill = this->widen(' ');
15295 _M_fill_init = true;
15296 }
15297 return _M_fill;
15298 }
15299 char_type
15300 fill(char_type __ch)
15301 {
15302 char_type __old = this->fill();
15303 _M_fill = __ch;
15304 return __old;
15305 }
15306 locale
15307 imbue(const locale& __loc);
15308 char
15309 narrow(char_type __c, char __dfault) const
15310 { return __check_facet(_M_ctype).narrow(__c, __dfault); }
15311 char_type
15312 widen(char __c) const
15313 { return __check_facet(_M_ctype).widen(__c); }
15314 protected:
15315 basic_ios()
15316 : ios_base(), _M_tie(0), _M_fill(char_type()), _M_fill_init(false),
15317 _M_streambuf(0), _M_ctype(0), _M_num_put(0), _M_num_get(0)
15318 { }
15319 void
15320 init(basic_streambuf<_CharT, _Traits>* __sb);
15321 void
15322 _M_cache_locale(const locale& __loc);
15323 };
15324}
15325
15326namespace std __attribute__ ((__visibility__ ("default"))) {
15327 template<typename _CharT, typename _Traits>
15328 void
15329 basic_ios<_CharT, _Traits>::clear(iostate __state)
15330 {
15331 if (this->rdbuf())
15332 _M_streambuf_state = __state;
15333 else
15334 _M_streambuf_state = __state | badbit;
15335 if (this->exceptions() & this->rdstate())
15336 __throw_ios_failure(("basic_ios::clear"));
15337 }
15338 template<typename _CharT, typename _Traits>
15339 basic_streambuf<_CharT, _Traits>*
15340 basic_ios<_CharT, _Traits>::rdbuf(basic_streambuf<_CharT, _Traits>* __sb)
15341 {
15342 basic_streambuf<_CharT, _Traits>* __old = _M_streambuf;
15343 _M_streambuf = __sb;
15344 this->clear();
15345 return __old;
15346 }
15347 template<typename _CharT, typename _Traits>
15348 basic_ios<_CharT, _Traits>&
15349 basic_ios<_CharT, _Traits>::copyfmt(const basic_ios& __rhs)
15350 {
15351 if (this != &__rhs)
15352 {
15353 _Words* __words = (__rhs._M_word_size <= _S_local_word_size) ?
15354 _M_local_word : new _Words[__rhs._M_word_size];
15355 _Callback_list* __cb = __rhs._M_callbacks;
15356 if (__cb)
15357 __cb->_M_add_reference();
15358 _M_call_callbacks(erase_event);
15359 if (_M_word != _M_local_word)
15360 {
15361 delete [] _M_word;
15362 _M_word = 0;
15363 }
15364 _M_dispose_callbacks();
15365 _M_callbacks = __cb;
15366 for (int __i = 0; __i < __rhs._M_word_size; ++__i)
15367 __words[__i] = __rhs._M_word[__i];
15368 _M_word = __words;
15369 _M_word_size = __rhs._M_word_size;
15370 this->flags(__rhs.flags());
15371 this->width(__rhs.width());
15372 this->precision(__rhs.precision());
15373 this->tie(__rhs.tie());
15374 this->fill(__rhs.fill());
15375 _M_ios_locale = __rhs.getloc();
15376 _M_cache_locale(_M_ios_locale);
15377 _M_call_callbacks(copyfmt_event);
15378 this->exceptions(__rhs.exceptions());
15379 }
15380 return *this;
15381 }
15382 template<typename _CharT, typename _Traits>
15383 locale
15384 basic_ios<_CharT, _Traits>::imbue(const locale& __loc)
15385 {
15386 locale __old(this->getloc());
15387 ios_base::imbue(__loc);
15388 _M_cache_locale(__loc);
15389 if (this->rdbuf() != 0)
15390 this->rdbuf()->pubimbue(__loc);
15391 return __old;
15392 }
15393 template<typename _CharT, typename _Traits>
15394 void
15395 basic_ios<_CharT, _Traits>::init(basic_streambuf<_CharT, _Traits>* __sb)
15396 {
15397 ios_base::_M_init();
15398 _M_cache_locale(_M_ios_locale);
15399 _M_fill = _CharT();
15400 _M_fill_init = false;
15401 _M_tie = 0;
15402 _M_exception = goodbit;
15403 _M_streambuf = __sb;
15404 _M_streambuf_state = __sb ? goodbit : badbit;
15405 }
15406 template<typename _CharT, typename _Traits>
15407 void
15408 basic_ios<_CharT, _Traits>::_M_cache_locale(const locale& __loc)
15409 {
15410 if (__builtin_expect(has_facet<__ctype_type>(__loc), true))
15411 _M_ctype = &use_facet<__ctype_type>(__loc);
15412 else
15413 _M_ctype = 0;
15414 if (__builtin_expect(has_facet<__num_put_type>(__loc), true))
15415 _M_num_put = &use_facet<__num_put_type>(__loc);
15416 else
15417 _M_num_put = 0;
15418 if (__builtin_expect(has_facet<__num_get_type>(__loc), true))
15419 _M_num_get = &use_facet<__num_get_type>(__loc);
15420 else
15421 _M_num_get = 0;
15422 }
15423 extern template class basic_ios<char>;
15424 extern template class basic_ios<wchar_t>;
15425}
15426namespace std __attribute__ ((__visibility__ ("default"))) {
15427 template<typename _CharT, typename _Traits>
15428 class basic_ostream : virtual public basic_ios<_CharT, _Traits>
15429 {
15430 public:
15431 typedef _CharT char_type;
15432 typedef typename _Traits::int_type int_type;
15433 typedef typename _Traits::pos_type pos_type;
15434 typedef typename _Traits::off_type off_type;
15435 typedef _Traits traits_type;
15436 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
15437 typedef basic_ios<_CharT, _Traits> __ios_type;
15438 typedef basic_ostream<_CharT, _Traits> __ostream_type;
15439 typedef num_put<_CharT, ostreambuf_iterator<_CharT, _Traits> >
15440 __num_put_type;
15441 typedef ctype<_CharT> __ctype_type;
15442 explicit
15443 basic_ostream(__streambuf_type* __sb)
15444 { this->init(__sb); }
15445 virtual
15446 ~basic_ostream() { }
15447 class sentry;
15448 friend class sentry;
15449 __ostream_type&
15450 operator<<(__ostream_type& (*__pf)(__ostream_type&))
15451 {
15452 return __pf(*this);
15453 }
15454 __ostream_type&
15455 operator<<(__ios_type& (*__pf)(__ios_type&))
15456 {
15457 __pf(*this);
15458 return *this;
15459 }
15460 __ostream_type&
15461 operator<<(ios_base& (*__pf) (ios_base&))
15462 {
15463 __pf(*this);
15464 return *this;
15465 }
15466 __ostream_type&
15467 operator<<(long __n)
15468 { return _M_insert(__n); }
15469 __ostream_type&
15470 operator<<(unsigned long __n)
15471 { return _M_insert(__n); }
15472 __ostream_type&
15473 operator<<(bool __n)
15474 { return _M_insert(__n); }
15475 __ostream_type&
15476 operator<<(short __n);
15477 __ostream_type&
15478 operator<<(unsigned short __n)
15479 {
15480 return _M_insert(static_cast<unsigned long>(__n));
15481 }
15482 __ostream_type&
15483 operator<<(int __n);
15484 __ostream_type&
15485 operator<<(unsigned int __n)
15486 {
15487 return _M_insert(static_cast<unsigned long>(__n));
15488 }
15489 __ostream_type&
15490 operator<<(long long __n)
15491 { return _M_insert(__n); }
15492 __ostream_type&
15493 operator<<(unsigned long long __n)
15494 { return _M_insert(__n); }
15495 __ostream_type&
15496 operator<<(double __f)
15497 { return _M_insert(__f); }
15498 __ostream_type&
15499 operator<<(float __f)
15500 {
15501 return _M_insert(static_cast<double>(__f));
15502 }
15503 __ostream_type&
15504 operator<<(long double __f)
15505 { return _M_insert(__f); }
15506 __ostream_type&
15507 operator<<(const void* __p)
15508 { return _M_insert(__p); }
15509 __ostream_type&
15510 operator<<(__streambuf_type* __sb);
15511 __ostream_type&
15512 put(char_type __c);
15513 void
15514 _M_write(const char_type* __s, streamsize __n)
15515 {
15516 const streamsize __put = this->rdbuf()->sputn(__s, __n);
15517 if (__put != __n)
15518 this->setstate(ios_base::badbit);
15519 }
15520 __ostream_type&
15521 write(const char_type* __s, streamsize __n);
15522 __ostream_type&
15523 flush();
15524 pos_type
15525 tellp();
15526 __ostream_type&
15527 seekp(pos_type);
15528 __ostream_type&
15529 seekp(off_type, ios_base::seekdir);
15530 protected:
15531 basic_ostream()
15532 { this->init(0); }
15533 template<typename _ValueT>
15534 __ostream_type&
15535 _M_insert(_ValueT __v);
15536 };
15537 template <typename _CharT, typename _Traits>
15538 class basic_ostream<_CharT, _Traits>::sentry
15539 {
15540 bool _M_ok;
15541 basic_ostream<_CharT, _Traits>& _M_os;
15542 public:
15543 explicit
15544 sentry(basic_ostream<_CharT, _Traits>& __os);
15545 ~sentry()
15546 {
15547 if (bool(_M_os.flags() & ios_base::unitbuf) && !uncaught_exception())
15548 {
15549 if (_M_os.rdbuf() && _M_os.rdbuf()->pubsync() == -1)
15550 _M_os.setstate(ios_base::badbit);
15551 }
15552 }
15553 operator bool() const
15554 { return _M_ok; }
15555 };
15556 template<typename _CharT, typename _Traits>
15557 inline basic_ostream<_CharT, _Traits>&
15558 operator<<(basic_ostream<_CharT, _Traits>& __out, _CharT __c)
15559 { return __ostream_insert(__out, &__c, 1); }
15560 template<typename _CharT, typename _Traits>
15561 inline basic_ostream<_CharT, _Traits>&
15562 operator<<(basic_ostream<_CharT, _Traits>& __out, char __c)
15563 { return (__out << __out.widen(__c)); }
15564 template <class _Traits>
15565 inline basic_ostream<char, _Traits>&
15566 operator<<(basic_ostream<char, _Traits>& __out, char __c)
15567 { return __ostream_insert(__out, &__c, 1); }
15568 template<class _Traits>
15569 inline basic_ostream<char, _Traits>&
15570 operator<<(basic_ostream<char, _Traits>& __out, signed char __c)
15571 { return (__out << static_cast<char>(__c)); }
15572 template<class _Traits>
15573 inline basic_ostream<char, _Traits>&
15574 operator<<(basic_ostream<char, _Traits>& __out, unsigned char __c)
15575 { return (__out << static_cast<char>(__c)); }
15576 template<typename _CharT, typename _Traits>
15577 inline basic_ostream<_CharT, _Traits>&
15578 operator<<(basic_ostream<_CharT, _Traits>& __out, const _CharT* __s)
15579 {
15580 if (!__s)
15581 __out.setstate(ios_base::badbit);
15582 else
15583 __ostream_insert(__out, __s,
15584 static_cast<streamsize>(_Traits::length(__s)));
15585 return __out;
15586 }
15587 template<typename _CharT, typename _Traits>
15588 basic_ostream<_CharT, _Traits> &
15589 operator<<(basic_ostream<_CharT, _Traits>& __out, const char* __s);
15590 template<class _Traits>
15591 inline basic_ostream<char, _Traits>&
15592 operator<<(basic_ostream<char, _Traits>& __out, const char* __s)
15593 {
15594 if (!__s)
15595 __out.setstate(ios_base::badbit);
15596 else
15597 __ostream_insert(__out, __s,
15598 static_cast<streamsize>(_Traits::length(__s)));
15599 return __out;
15600 }
15601 template<class _Traits>
15602 inline basic_ostream<char, _Traits>&
15603 operator<<(basic_ostream<char, _Traits>& __out, const signed char* __s)
15604 { return (__out << reinterpret_cast<const char*>(__s)); }
15605 template<class _Traits>
15606 inline basic_ostream<char, _Traits> &
15607 operator<<(basic_ostream<char, _Traits>& __out, const unsigned char* __s)
15608 { return (__out << reinterpret_cast<const char*>(__s)); }
15609 template<typename _CharT, typename _Traits>
15610 inline basic_ostream<_CharT, _Traits>&
15611 endl(basic_ostream<_CharT, _Traits>& __os)
15612 { return flush(__os.put(__os.widen('\n'))); }
15613 template<typename _CharT, typename _Traits>
15614 inline basic_ostream<_CharT, _Traits>&
15615 ends(basic_ostream<_CharT, _Traits>& __os)
15616 { return __os.put(_CharT()); }
15617 template<typename _CharT, typename _Traits>
15618 inline basic_ostream<_CharT, _Traits>&
15619 flush(basic_ostream<_CharT, _Traits>& __os)
15620 { return __os.flush(); }
15621}
15622
15623namespace std __attribute__ ((__visibility__ ("default"))) {
15624 template<typename _CharT, typename _Traits>
15625 basic_ostream<_CharT, _Traits>::sentry::
15626 sentry(basic_ostream<_CharT, _Traits>& __os)
15627 : _M_ok(false), _M_os(__os)
15628 {
15629 if (__os.tie() && __os.good())
15630 __os.tie()->flush();
15631 if (__os.good())
15632 _M_ok = true;
15633 else
15634 __os.setstate(ios_base::failbit);
15635 }
15636 template<typename _CharT, typename _Traits>
15637 template<typename _ValueT>
15638 basic_ostream<_CharT, _Traits>&
15639 basic_ostream<_CharT, _Traits>::
15640 _M_insert(_ValueT __v)
15641 {
15642 sentry __cerb(*this);
15643 if (__cerb)
15644 {
15645 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
15646 try
15647 {
15648 const __num_put_type& __np = __check_facet(this->_M_num_put);
15649 if (__np.put(*this, *this, this->fill(), __v).failed())
15650 __err |= ios_base::badbit;
15651 }
15652 catch(__cxxabiv1::__forced_unwind&)
15653 {
15654 this->_M_setstate(ios_base::badbit);
15655 throw;
15656 }
15657 catch(...)
15658 { this->_M_setstate(ios_base::badbit); }
15659 if (__err)
15660 this->setstate(__err);
15661 }
15662 return *this;
15663 }
15664 template<typename _CharT, typename _Traits>
15665 basic_ostream<_CharT, _Traits>&
15666 basic_ostream<_CharT, _Traits>::
15667 operator<<(short __n)
15668 {
15669 const ios_base::fmtflags __fmt = this->flags() & ios_base::basefield;
15670 if (__fmt == ios_base::oct || __fmt == ios_base::hex)
15671 return _M_insert(static_cast<long>(static_cast<unsigned short>(__n)));
15672 else
15673 return _M_insert(static_cast<long>(__n));
15674 }
15675 template<typename _CharT, typename _Traits>
15676 basic_ostream<_CharT, _Traits>&
15677 basic_ostream<_CharT, _Traits>::
15678 operator<<(int __n)
15679 {
15680 const ios_base::fmtflags __fmt = this->flags() & ios_base::basefield;
15681 if (__fmt == ios_base::oct || __fmt == ios_base::hex)
15682 return _M_insert(static_cast<long>(static_cast<unsigned int>(__n)));
15683 else
15684 return _M_insert(static_cast<long>(__n));
15685 }
15686 template<typename _CharT, typename _Traits>
15687 basic_ostream<_CharT, _Traits>&
15688 basic_ostream<_CharT, _Traits>::
15689 operator<<(__streambuf_type* __sbin)
15690 {
15691 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
15692 sentry __cerb(*this);
15693 if (__cerb && __sbin)
15694 {
15695 try
15696 {
15697 if (!__copy_streambufs(__sbin, this->rdbuf()))
15698 __err |= ios_base::failbit;
15699 }
15700 catch(__cxxabiv1::__forced_unwind&)
15701 {
15702 this->_M_setstate(ios_base::badbit);
15703 throw;
15704 }
15705 catch(...)
15706 { this->_M_setstate(ios_base::failbit); }
15707 }
15708 else if (!__sbin)
15709 __err |= ios_base::badbit;
15710 if (__err)
15711 this->setstate(__err);
15712 return *this;
15713 }
15714 template<typename _CharT, typename _Traits>
15715 basic_ostream<_CharT, _Traits>&
15716 basic_ostream<_CharT, _Traits>::
15717 put(char_type __c)
15718 {
15719 sentry __cerb(*this);
15720 if (__cerb)
15721 {
15722 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
15723 try
15724 {
15725 const int_type __put = this->rdbuf()->sputc(__c);
15726 if (traits_type::eq_int_type(__put, traits_type::eof()))
15727 __err |= ios_base::badbit;
15728 }
15729 catch(__cxxabiv1::__forced_unwind&)
15730 {
15731 this->_M_setstate(ios_base::badbit);
15732 throw;
15733 }
15734 catch(...)
15735 { this->_M_setstate(ios_base::badbit); }
15736 if (__err)
15737 this->setstate(__err);
15738 }
15739 return *this;
15740 }
15741 template<typename _CharT, typename _Traits>
15742 basic_ostream<_CharT, _Traits>&
15743 basic_ostream<_CharT, _Traits>::
15744 write(const _CharT* __s, streamsize __n)
15745 {
15746 sentry __cerb(*this);
15747 if (__cerb)
15748 {
15749 try
15750 { _M_write(__s, __n); }
15751 catch(__cxxabiv1::__forced_unwind&)
15752 {
15753 this->_M_setstate(ios_base::badbit);
15754 throw;
15755 }
15756 catch(...)
15757 { this->_M_setstate(ios_base::badbit); }
15758 }
15759 return *this;
15760 }
15761 template<typename _CharT, typename _Traits>
15762 basic_ostream<_CharT, _Traits>&
15763 basic_ostream<_CharT, _Traits>::
15764 flush()
15765 {
15766 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
15767 try
15768 {
15769 if (this->rdbuf() && this->rdbuf()->pubsync() == -1)
15770 __err |= ios_base::badbit;
15771 }
15772 catch(__cxxabiv1::__forced_unwind&)
15773 {
15774 this->_M_setstate(ios_base::badbit);
15775 throw;
15776 }
15777 catch(...)
15778 { this->_M_setstate(ios_base::badbit); }
15779 if (__err)
15780 this->setstate(__err);
15781 return *this;
15782 }
15783 template<typename _CharT, typename _Traits>
15784 typename basic_ostream<_CharT, _Traits>::pos_type
15785 basic_ostream<_CharT, _Traits>::
15786 tellp()
15787 {
15788 pos_type __ret = pos_type(-1);
15789 try
15790 {
15791 if (!this->fail())
15792 __ret = this->rdbuf()->pubseekoff(0, ios_base::cur, ios_base::out);
15793 }
15794 catch(__cxxabiv1::__forced_unwind&)
15795 {
15796 this->_M_setstate(ios_base::badbit);
15797 throw;
15798 }
15799 catch(...)
15800 { this->_M_setstate(ios_base::badbit); }
15801 return __ret;
15802 }
15803 template<typename _CharT, typename _Traits>
15804 basic_ostream<_CharT, _Traits>&
15805 basic_ostream<_CharT, _Traits>::
15806 seekp(pos_type __pos)
15807 {
15808 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
15809 try
15810 {
15811 if (!this->fail())
15812 {
15813 const pos_type __p = this->rdbuf()->pubseekpos(__pos,
15814 ios_base::out);
15815 if (__p == pos_type(off_type(-1)))
15816 __err |= ios_base::failbit;
15817 }
15818 }
15819 catch(__cxxabiv1::__forced_unwind&)
15820 {
15821 this->_M_setstate(ios_base::badbit);
15822 throw;
15823 }
15824 catch(...)
15825 { this->_M_setstate(ios_base::badbit); }
15826 if (__err)
15827 this->setstate(__err);
15828 return *this;
15829 }
15830 template<typename _CharT, typename _Traits>
15831 basic_ostream<_CharT, _Traits>&
15832 basic_ostream<_CharT, _Traits>::
15833 seekp(off_type __off, ios_base::seekdir __dir)
15834 {
15835 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
15836 try
15837 {
15838 if (!this->fail())
15839 {
15840 const pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
15841 ios_base::out);
15842 if (__p == pos_type(off_type(-1)))
15843 __err |= ios_base::failbit;
15844 }
15845 }
15846 catch(__cxxabiv1::__forced_unwind&)
15847 {
15848 this->_M_setstate(ios_base::badbit);
15849 throw;
15850 }
15851 catch(...)
15852 { this->_M_setstate(ios_base::badbit); }
15853 if (__err)
15854 this->setstate(__err);
15855 return *this;
15856 }
15857 template<typename _CharT, typename _Traits>
15858 basic_ostream<_CharT, _Traits>&
15859 operator<<(basic_ostream<_CharT, _Traits>& __out, const char* __s)
15860 {
15861 if (!__s)
15862 __out.setstate(ios_base::badbit);
15863 else
15864 {
15865 const size_t __clen = char_traits<char>::length(__s);
15866 try
15867 {
15868 struct __ptr_guard
15869 {
15870 _CharT *__p;
15871 __ptr_guard (_CharT *__ip): __p(__ip) { }
15872 ~__ptr_guard() { delete[] __p; }
15873 _CharT* __get() { return __p; }
15874 } __pg (new _CharT[__clen]);
15875 _CharT *__ws = __pg.__get();
15876 for (size_t __i = 0; __i < __clen; ++__i)
15877 __ws[__i] = __out.widen(__s[__i]);
15878 __ostream_insert(__out, __ws, __clen);
15879 }
15880 catch(__cxxabiv1::__forced_unwind&)
15881 {
15882 __out._M_setstate(ios_base::badbit);
15883 throw;
15884 }
15885 catch(...)
15886 { __out._M_setstate(ios_base::badbit); }
15887 }
15888 return __out;
15889 }
15890 extern template class basic_ostream<char>;
15891 extern template ostream& endl(ostream&);
15892 extern template ostream& ends(ostream&);
15893 extern template ostream& flush(ostream&);
15894 extern template ostream& operator<<(ostream&, char);
15895 extern template ostream& operator<<(ostream&, unsigned char);
15896 extern template ostream& operator<<(ostream&, signed char);
15897 extern template ostream& operator<<(ostream&, const char*);
15898 extern template ostream& operator<<(ostream&, const unsigned char*);
15899 extern template ostream& operator<<(ostream&, const signed char*);
15900 extern template ostream& ostream::_M_insert(long);
15901 extern template ostream& ostream::_M_insert(unsigned long);
15902 extern template ostream& ostream::_M_insert(bool);
15903 extern template ostream& ostream::_M_insert(long long);
15904 extern template ostream& ostream::_M_insert(unsigned long long);
15905 extern template ostream& ostream::_M_insert(double);
15906 extern template ostream& ostream::_M_insert(long double);
15907 extern template ostream& ostream::_M_insert(const void*);
15908 extern template class basic_ostream<wchar_t>;
15909 extern template wostream& endl(wostream&);
15910 extern template wostream& ends(wostream&);
15911 extern template wostream& flush(wostream&);
15912 extern template wostream& operator<<(wostream&, wchar_t);
15913 extern template wostream& operator<<(wostream&, char);
15914 extern template wostream& operator<<(wostream&, const wchar_t*);
15915 extern template wostream& operator<<(wostream&, const char*);
15916 extern template wostream& wostream::_M_insert(long);
15917 extern template wostream& wostream::_M_insert(unsigned long);
15918 extern template wostream& wostream::_M_insert(bool);
15919 extern template wostream& wostream::_M_insert(long long);
15920 extern template wostream& wostream::_M_insert(unsigned long long);
15921 extern template wostream& wostream::_M_insert(double);
15922 extern template wostream& wostream::_M_insert(long double);
15923 extern template wostream& wostream::_M_insert(const void*);
15924}
15925
15926namespace std __attribute__ ((__visibility__ ("default"))) {
15927 template<typename _CharT, typename _Traits>
15928 class basic_istream : virtual public basic_ios<_CharT, _Traits>
15929 {
15930 public:
15931 typedef _CharT char_type;
15932 typedef typename _Traits::int_type int_type;
15933 typedef typename _Traits::pos_type pos_type;
15934 typedef typename _Traits::off_type off_type;
15935 typedef _Traits traits_type;
15936 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
15937 typedef basic_ios<_CharT, _Traits> __ios_type;
15938 typedef basic_istream<_CharT, _Traits> __istream_type;
15939 typedef num_get<_CharT, istreambuf_iterator<_CharT, _Traits> >
15940 __num_get_type;
15941 typedef ctype<_CharT> __ctype_type;
15942 protected:
15943 streamsize _M_gcount;
15944 public:
15945 explicit
15946 basic_istream(__streambuf_type* __sb)
15947 : _M_gcount(streamsize(0))
15948 { this->init(__sb); }
15949 virtual
15950 ~basic_istream()
15951 { _M_gcount = streamsize(0); }
15952 class sentry;
15953 friend class sentry;
15954 __istream_type&
15955 operator>>(__istream_type& (*__pf)(__istream_type&))
15956 { return __pf(*this); }
15957 __istream_type&
15958 operator>>(__ios_type& (*__pf)(__ios_type&))
15959 {
15960 __pf(*this);
15961 return *this;
15962 }
15963 __istream_type&
15964 operator>>(ios_base& (*__pf)(ios_base&))
15965 {
15966 __pf(*this);
15967 return *this;
15968 }
15969 __istream_type&
15970 operator>>(bool& __n)
15971 { return _M_extract(__n); }
15972 __istream_type&
15973 operator>>(short& __n);
15974 __istream_type&
15975 operator>>(unsigned short& __n)
15976 { return _M_extract(__n); }
15977 __istream_type&
15978 operator>>(int& __n);
15979 __istream_type&
15980 operator>>(unsigned int& __n)
15981 { return _M_extract(__n); }
15982 __istream_type&
15983 operator>>(long& __n)
15984 { return _M_extract(__n); }
15985 __istream_type&
15986 operator>>(unsigned long& __n)
15987 { return _M_extract(__n); }
15988 __istream_type&
15989 operator>>(long long& __n)
15990 { return _M_extract(__n); }
15991 __istream_type&
15992 operator>>(unsigned long long& __n)
15993 { return _M_extract(__n); }
15994 __istream_type&
15995 operator>>(float& __f)
15996 { return _M_extract(__f); }
15997 __istream_type&
15998 operator>>(double& __f)
15999 { return _M_extract(__f); }
16000 __istream_type&
16001 operator>>(long double& __f)
16002 { return _M_extract(__f); }
16003 __istream_type&
16004 operator>>(void*& __p)
16005 { return _M_extract(__p); }
16006 __istream_type&
16007 operator>>(__streambuf_type* __sb);
16008 streamsize
16009 gcount() const
16010 { return _M_gcount; }
16011 int_type
16012 get();
16013 __istream_type&
16014 get(char_type& __c);
16015 __istream_type&
16016 get(char_type* __s, streamsize __n, char_type __delim);
16017 __istream_type&
16018 get(char_type* __s, streamsize __n)
16019 { return this->get(__s, __n, this->widen('\n')); }
16020 __istream_type&
16021 get(__streambuf_type& __sb, char_type __delim);
16022 __istream_type&
16023 get(__streambuf_type& __sb)
16024 { return this->get(__sb, this->widen('\n')); }
16025 __istream_type&
16026 getline(char_type* __s, streamsize __n, char_type __delim);
16027 __istream_type&
16028 getline(char_type* __s, streamsize __n)
16029 { return this->getline(__s, __n, this->widen('\n')); }
16030 __istream_type&
16031 ignore();
16032 __istream_type&
16033 ignore(streamsize __n);
16034 __istream_type&
16035 ignore(streamsize __n, int_type __delim);
16036 int_type
16037 peek();
16038 __istream_type&
16039 read(char_type* __s, streamsize __n);
16040 streamsize
16041 readsome(char_type* __s, streamsize __n);
16042 __istream_type&
16043 putback(char_type __c);
16044 __istream_type&
16045 unget();
16046 int
16047 sync();
16048 pos_type
16049 tellg();
16050 __istream_type&
16051 seekg(pos_type);
16052 __istream_type&
16053 seekg(off_type, ios_base::seekdir);
16054 protected:
16055 basic_istream()
16056 : _M_gcount(streamsize(0))
16057 { this->init(0); }
16058 template<typename _ValueT>
16059 __istream_type&
16060 _M_extract(_ValueT& __v);
16061 };
16062 template<>
16063 basic_istream<char>&
16064 basic_istream<char>::
16065 getline(char_type* __s, streamsize __n, char_type __delim);
16066 template<>
16067 basic_istream<char>&
16068 basic_istream<char>::
16069 ignore(streamsize __n);
16070 template<>
16071 basic_istream<char>&
16072 basic_istream<char>::
16073 ignore(streamsize __n, int_type __delim);
16074 template<>
16075 basic_istream<wchar_t>&
16076 basic_istream<wchar_t>::
16077 getline(char_type* __s, streamsize __n, char_type __delim);
16078 template<>
16079 basic_istream<wchar_t>&
16080 basic_istream<wchar_t>::
16081 ignore(streamsize __n);
16082 template<>
16083 basic_istream<wchar_t>&
16084 basic_istream<wchar_t>::
16085 ignore(streamsize __n, int_type __delim);
16086 template<typename _CharT, typename _Traits>
16087 class basic_istream<_CharT, _Traits>::sentry
16088 {
16089 public:
16090 typedef _Traits traits_type;
16091 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
16092 typedef basic_istream<_CharT, _Traits> __istream_type;
16093 typedef typename __istream_type::__ctype_type __ctype_type;
16094 typedef typename _Traits::int_type __int_type;
16095 explicit
16096 sentry(basic_istream<_CharT, _Traits>& __is, bool __noskipws = false);
16097 operator bool() const
16098 { return _M_ok; }
16099 private:
16100 bool _M_ok;
16101 };
16102 template<typename _CharT, typename _Traits>
16103 basic_istream<_CharT, _Traits>&
16104 operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c);
16105 template<class _Traits>
16106 inline basic_istream<char, _Traits>&
16107 operator>>(basic_istream<char, _Traits>& __in, unsigned char& __c)
16108 { return (__in >> reinterpret_cast<char&>(__c)); }
16109 template<class _Traits>
16110 inline basic_istream<char, _Traits>&
16111 operator>>(basic_istream<char, _Traits>& __in, signed char& __c)
16112 { return (__in >> reinterpret_cast<char&>(__c)); }
16113 template<typename _CharT, typename _Traits>
16114 basic_istream<_CharT, _Traits>&
16115 operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s);
16116 template<>
16117 basic_istream<char>&
16118 operator>>(basic_istream<char>& __in, char* __s);
16119 template<class _Traits>
16120 inline basic_istream<char, _Traits>&
16121 operator>>(basic_istream<char, _Traits>& __in, unsigned char* __s)
16122 { return (__in >> reinterpret_cast<char*>(__s)); }
16123 template<class _Traits>
16124 inline basic_istream<char, _Traits>&
16125 operator>>(basic_istream<char, _Traits>& __in, signed char* __s)
16126 { return (__in >> reinterpret_cast<char*>(__s)); }
16127 template<typename _CharT, typename _Traits>
16128 class basic_iostream
16129 : public basic_istream<_CharT, _Traits>,
16130 public basic_ostream<_CharT, _Traits>
16131 {
16132 public:
16133 typedef _CharT char_type;
16134 typedef typename _Traits::int_type int_type;
16135 typedef typename _Traits::pos_type pos_type;
16136 typedef typename _Traits::off_type off_type;
16137 typedef _Traits traits_type;
16138 typedef basic_istream<_CharT, _Traits> __istream_type;
16139 typedef basic_ostream<_CharT, _Traits> __ostream_type;
16140 explicit
16141 basic_iostream(basic_streambuf<_CharT, _Traits>* __sb)
16142 : __istream_type(__sb), __ostream_type(__sb) { }
16143 virtual
16144 ~basic_iostream() { }
16145 protected:
16146 basic_iostream()
16147 : __istream_type(), __ostream_type() { }
16148 };
16149 template<typename _CharT, typename _Traits>
16150 basic_istream<_CharT, _Traits>&
16151 ws(basic_istream<_CharT, _Traits>& __is);
16152}
16153
16154namespace std __attribute__ ((__visibility__ ("default"))) {
16155 template<typename _CharT, typename _Traits>
16156 basic_istream<_CharT, _Traits>::sentry::
16157 sentry(basic_istream<_CharT, _Traits>& __in, bool __noskip) : _M_ok(false)
16158 {
16159 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16160 if (__in.good())
16161 {
16162 if (__in.tie())
16163 __in.tie()->flush();
16164 if (!__noskip && bool(__in.flags() & ios_base::skipws))
16165 {
16166 const __int_type __eof = traits_type::eof();
16167 __streambuf_type* __sb = __in.rdbuf();
16168 __int_type __c = __sb->sgetc();
16169 const __ctype_type& __ct = __check_facet(__in._M_ctype);
16170 while (!traits_type::eq_int_type(__c, __eof)
16171 && __ct.is(ctype_base::space,
16172 traits_type::to_char_type(__c)))
16173 __c = __sb->snextc();
16174 if (traits_type::eq_int_type(__c, __eof))
16175 __err |= ios_base::eofbit;
16176 }
16177 }
16178 if (__in.good() && __err == ios_base::goodbit)
16179 _M_ok = true;
16180 else
16181 {
16182 __err |= ios_base::failbit;
16183 __in.setstate(__err);
16184 }
16185 }
16186 template<typename _CharT, typename _Traits>
16187 template<typename _ValueT>
16188 basic_istream<_CharT, _Traits>&
16189 basic_istream<_CharT, _Traits>::
16190 _M_extract(_ValueT& __v)
16191 {
16192 sentry __cerb(*this, false);
16193 if (__cerb)
16194 {
16195 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16196 try
16197 {
16198 const __num_get_type& __ng = __check_facet(this->_M_num_get);
16199 __ng.get(*this, 0, *this, __err, __v);
16200 }
16201 catch(__cxxabiv1::__forced_unwind&)
16202 {
16203 this->_M_setstate(ios_base::badbit);
16204 throw;
16205 }
16206 catch(...)
16207 { this->_M_setstate(ios_base::badbit); }
16208 if (__err)
16209 this->setstate(__err);
16210 }
16211 return *this;
16212 }
16213 template<typename _CharT, typename _Traits>
16214 basic_istream<_CharT, _Traits>&
16215 basic_istream<_CharT, _Traits>::
16216 operator>>(short& __n)
16217 {
16218 long __l;
16219 _M_extract(__l);
16220 if (!this->fail())
16221 {
16222 if (__gnu_cxx::__numeric_traits<short>::__min <= __l
16223 && __l <= __gnu_cxx::__numeric_traits<short>::__max)
16224 __n = short(__l);
16225 else
16226 this->setstate(ios_base::failbit);
16227 }
16228 return *this;
16229 }
16230 template<typename _CharT, typename _Traits>
16231 basic_istream<_CharT, _Traits>&
16232 basic_istream<_CharT, _Traits>::
16233 operator>>(int& __n)
16234 {
16235 long __l;
16236 _M_extract(__l);
16237 if (!this->fail())
16238 {
16239 if (__gnu_cxx::__numeric_traits<int>::__min <= __l
16240 && __l <= __gnu_cxx::__numeric_traits<int>::__max)
16241 __n = int(__l);
16242 else
16243 this->setstate(ios_base::failbit);
16244 }
16245 return *this;
16246 }
16247 template<typename _CharT, typename _Traits>
16248 basic_istream<_CharT, _Traits>&
16249 basic_istream<_CharT, _Traits>::
16250 operator>>(__streambuf_type* __sbout)
16251 {
16252 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16253 sentry __cerb(*this, false);
16254 if (__cerb && __sbout)
16255 {
16256 try
16257 {
16258 bool __ineof;
16259 if (!__copy_streambufs_eof(this->rdbuf(), __sbout, __ineof))
16260 __err |= ios_base::failbit;
16261 if (__ineof)
16262 __err |= ios_base::eofbit;
16263 }
16264 catch(__cxxabiv1::__forced_unwind&)
16265 {
16266 this->_M_setstate(ios_base::failbit);
16267 throw;
16268 }
16269 catch(...)
16270 { this->_M_setstate(ios_base::failbit); }
16271 }
16272 else if (!__sbout)
16273 __err |= ios_base::failbit;
16274 if (__err)
16275 this->setstate(__err);
16276 return *this;
16277 }
16278 template<typename _CharT, typename _Traits>
16279 typename basic_istream<_CharT, _Traits>::int_type
16280 basic_istream<_CharT, _Traits>::
16281 get(void)
16282 {
16283 const int_type __eof = traits_type::eof();
16284 int_type __c = __eof;
16285 _M_gcount = 0;
16286 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16287 sentry __cerb(*this, true);
16288 if (__cerb)
16289 {
16290 try
16291 {
16292 __c = this->rdbuf()->sbumpc();
16293 if (!traits_type::eq_int_type(__c, __eof))
16294 _M_gcount = 1;
16295 else
16296 __err |= ios_base::eofbit;
16297 }
16298 catch(__cxxabiv1::__forced_unwind&)
16299 {
16300 this->_M_setstate(ios_base::badbit);
16301 throw;
16302 }
16303 catch(...)
16304 { this->_M_setstate(ios_base::badbit); }
16305 }
16306 if (!_M_gcount)
16307 __err |= ios_base::failbit;
16308 if (__err)
16309 this->setstate(__err);
16310 return __c;
16311 }
16312 template<typename _CharT, typename _Traits>
16313 basic_istream<_CharT, _Traits>&
16314 basic_istream<_CharT, _Traits>::
16315 get(char_type& __c)
16316 {
16317 _M_gcount = 0;
16318 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16319 sentry __cerb(*this, true);
16320 if (__cerb)
16321 {
16322 try
16323 {
16324 const int_type __cb = this->rdbuf()->sbumpc();
16325 if (!traits_type::eq_int_type(__cb, traits_type::eof()))
16326 {
16327 _M_gcount = 1;
16328 __c = traits_type::to_char_type(__cb);
16329 }
16330 else
16331 __err |= ios_base::eofbit;
16332 }
16333 catch(__cxxabiv1::__forced_unwind&)
16334 {
16335 this->_M_setstate(ios_base::badbit);
16336 throw;
16337 }
16338 catch(...)
16339 { this->_M_setstate(ios_base::badbit); }
16340 }
16341 if (!_M_gcount)
16342 __err |= ios_base::failbit;
16343 if (__err)
16344 this->setstate(__err);
16345 return *this;
16346 }
16347 template<typename _CharT, typename _Traits>
16348 basic_istream<_CharT, _Traits>&
16349 basic_istream<_CharT, _Traits>::
16350 get(char_type* __s, streamsize __n, char_type __delim)
16351 {
16352 _M_gcount = 0;
16353 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16354 sentry __cerb(*this, true);
16355 if (__cerb)
16356 {
16357 try
16358 {
16359 const int_type __idelim = traits_type::to_int_type(__delim);
16360 const int_type __eof = traits_type::eof();
16361 __streambuf_type* __sb = this->rdbuf();
16362 int_type __c = __sb->sgetc();
16363 while (_M_gcount + 1 < __n
16364 && !traits_type::eq_int_type(__c, __eof)
16365 && !traits_type::eq_int_type(__c, __idelim))
16366 {
16367 *__s++ = traits_type::to_char_type(__c);
16368 ++_M_gcount;
16369 __c = __sb->snextc();
16370 }
16371 if (traits_type::eq_int_type(__c, __eof))
16372 __err |= ios_base::eofbit;
16373 }
16374 catch(__cxxabiv1::__forced_unwind&)
16375 {
16376 this->_M_setstate(ios_base::badbit);
16377 throw;
16378 }
16379 catch(...)
16380 { this->_M_setstate(ios_base::badbit); }
16381 }
16382 if (__n > 0)
16383 *__s = char_type();
16384 if (!_M_gcount)
16385 __err |= ios_base::failbit;
16386 if (__err)
16387 this->setstate(__err);
16388 return *this;
16389 }
16390 template<typename _CharT, typename _Traits>
16391 basic_istream<_CharT, _Traits>&
16392 basic_istream<_CharT, _Traits>::
16393 get(__streambuf_type& __sb, char_type __delim)
16394 {
16395 _M_gcount = 0;
16396 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16397 sentry __cerb(*this, true);
16398 if (__cerb)
16399 {
16400 try
16401 {
16402 const int_type __idelim = traits_type::to_int_type(__delim);
16403 const int_type __eof = traits_type::eof();
16404 __streambuf_type* __this_sb = this->rdbuf();
16405 int_type __c = __this_sb->sgetc();
16406 char_type __c2 = traits_type::to_char_type(__c);
16407 while (!traits_type::eq_int_type(__c, __eof)
16408 && !traits_type::eq_int_type(__c, __idelim)
16409 && !traits_type::eq_int_type(__sb.sputc(__c2), __eof))
16410 {
16411 ++_M_gcount;
16412 __c = __this_sb->snextc();
16413 __c2 = traits_type::to_char_type(__c);
16414 }
16415 if (traits_type::eq_int_type(__c, __eof))
16416 __err |= ios_base::eofbit;
16417 }
16418 catch(__cxxabiv1::__forced_unwind&)
16419 {
16420 this->_M_setstate(ios_base::badbit);
16421 throw;
16422 }
16423 catch(...)
16424 { this->_M_setstate(ios_base::badbit); }
16425 }
16426 if (!_M_gcount)
16427 __err |= ios_base::failbit;
16428 if (__err)
16429 this->setstate(__err);
16430 return *this;
16431 }
16432 template<typename _CharT, typename _Traits>
16433 basic_istream<_CharT, _Traits>&
16434 basic_istream<_CharT, _Traits>::
16435 getline(char_type* __s, streamsize __n, char_type __delim)
16436 {
16437 _M_gcount = 0;
16438 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16439 sentry __cerb(*this, true);
16440 if (__cerb)
16441 {
16442 try
16443 {
16444 const int_type __idelim = traits_type::to_int_type(__delim);
16445 const int_type __eof = traits_type::eof();
16446 __streambuf_type* __sb = this->rdbuf();
16447 int_type __c = __sb->sgetc();
16448 while (_M_gcount + 1 < __n
16449 && !traits_type::eq_int_type(__c, __eof)
16450 && !traits_type::eq_int_type(__c, __idelim))
16451 {
16452 *__s++ = traits_type::to_char_type(__c);
16453 __c = __sb->snextc();
16454 ++_M_gcount;
16455 }
16456 if (traits_type::eq_int_type(__c, __eof))
16457 __err |= ios_base::eofbit;
16458 else
16459 {
16460 if (traits_type::eq_int_type(__c, __idelim))
16461 {
16462 __sb->sbumpc();
16463 ++_M_gcount;
16464 }
16465 else
16466 __err |= ios_base::failbit;
16467 }
16468 }
16469 catch(__cxxabiv1::__forced_unwind&)
16470 {
16471 this->_M_setstate(ios_base::badbit);
16472 throw;
16473 }
16474 catch(...)
16475 { this->_M_setstate(ios_base::badbit); }
16476 }
16477 if (__n > 0)
16478 *__s = char_type();
16479 if (!_M_gcount)
16480 __err |= ios_base::failbit;
16481 if (__err)
16482 this->setstate(__err);
16483 return *this;
16484 }
16485 template<typename _CharT, typename _Traits>
16486 basic_istream<_CharT, _Traits>&
16487 basic_istream<_CharT, _Traits>::
16488 ignore(void)
16489 {
16490 _M_gcount = 0;
16491 sentry __cerb(*this, true);
16492 if (__cerb)
16493 {
16494 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16495 try
16496 {
16497 const int_type __eof = traits_type::eof();
16498 __streambuf_type* __sb = this->rdbuf();
16499 if (traits_type::eq_int_type(__sb->sbumpc(), __eof))
16500 __err |= ios_base::eofbit;
16501 else
16502 _M_gcount = 1;
16503 }
16504 catch(__cxxabiv1::__forced_unwind&)
16505 {
16506 this->_M_setstate(ios_base::badbit);
16507 throw;
16508 }
16509 catch(...)
16510 { this->_M_setstate(ios_base::badbit); }
16511 if (__err)
16512 this->setstate(__err);
16513 }
16514 return *this;
16515 }
16516 template<typename _CharT, typename _Traits>
16517 basic_istream<_CharT, _Traits>&
16518 basic_istream<_CharT, _Traits>::
16519 ignore(streamsize __n)
16520 {
16521 _M_gcount = 0;
16522 sentry __cerb(*this, true);
16523 if (__cerb && __n > 0)
16524 {
16525 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16526 try
16527 {
16528 const int_type __eof = traits_type::eof();
16529 __streambuf_type* __sb = this->rdbuf();
16530 int_type __c = __sb->sgetc();
16531 bool __large_ignore = false;
16532 while (true)
16533 {
16534 while (_M_gcount < __n
16535 && !traits_type::eq_int_type(__c, __eof))
16536 {
16537 ++_M_gcount;
16538 __c = __sb->snextc();
16539 }
16540 if (__n == __gnu_cxx::__numeric_traits<streamsize>::__max
16541 && !traits_type::eq_int_type(__c, __eof))
16542 {
16543 _M_gcount =
16544 __gnu_cxx::__numeric_traits<streamsize>::__min;
16545 __large_ignore = true;
16546 }
16547 else
16548 break;
16549 }
16550 if (__large_ignore)
16551 _M_gcount = __gnu_cxx::__numeric_traits<streamsize>::__max;
16552 if (traits_type::eq_int_type(__c, __eof))
16553 __err |= ios_base::eofbit;
16554 }
16555 catch(__cxxabiv1::__forced_unwind&)
16556 {
16557 this->_M_setstate(ios_base::badbit);
16558 throw;
16559 }
16560 catch(...)
16561 { this->_M_setstate(ios_base::badbit); }
16562 if (__err)
16563 this->setstate(__err);
16564 }
16565 return *this;
16566 }
16567 template<typename _CharT, typename _Traits>
16568 basic_istream<_CharT, _Traits>&
16569 basic_istream<_CharT, _Traits>::
16570 ignore(streamsize __n, int_type __delim)
16571 {
16572 _M_gcount = 0;
16573 sentry __cerb(*this, true);
16574 if (__cerb && __n > 0)
16575 {
16576 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16577 try
16578 {
16579 const int_type __eof = traits_type::eof();
16580 __streambuf_type* __sb = this->rdbuf();
16581 int_type __c = __sb->sgetc();
16582 bool __large_ignore = false;
16583 while (true)
16584 {
16585 while (_M_gcount < __n
16586 && !traits_type::eq_int_type(__c, __eof)
16587 && !traits_type::eq_int_type(__c, __delim))
16588 {
16589 ++_M_gcount;
16590 __c = __sb->snextc();
16591 }
16592 if (__n == __gnu_cxx::__numeric_traits<streamsize>::__max
16593 && !traits_type::eq_int_type(__c, __eof)
16594 && !traits_type::eq_int_type(__c, __delim))
16595 {
16596 _M_gcount =
16597 __gnu_cxx::__numeric_traits<streamsize>::__min;
16598 __large_ignore = true;
16599 }
16600 else
16601 break;
16602 }
16603 if (__large_ignore)
16604 _M_gcount = __gnu_cxx::__numeric_traits<streamsize>::__max;
16605 if (traits_type::eq_int_type(__c, __eof))
16606 __err |= ios_base::eofbit;
16607 else if (traits_type::eq_int_type(__c, __delim))
16608 {
16609 if (_M_gcount
16610 < __gnu_cxx::__numeric_traits<streamsize>::__max)
16611 ++_M_gcount;
16612 __sb->sbumpc();
16613 }
16614 }
16615 catch(__cxxabiv1::__forced_unwind&)
16616 {
16617 this->_M_setstate(ios_base::badbit);
16618 throw;
16619 }
16620 catch(...)
16621 { this->_M_setstate(ios_base::badbit); }
16622 if (__err)
16623 this->setstate(__err);
16624 }
16625 return *this;
16626 }
16627 template<typename _CharT, typename _Traits>
16628 typename basic_istream<_CharT, _Traits>::int_type
16629 basic_istream<_CharT, _Traits>::
16630 peek(void)
16631 {
16632 int_type __c = traits_type::eof();
16633 _M_gcount = 0;
16634 sentry __cerb(*this, true);
16635 if (__cerb)
16636 {
16637 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16638 try
16639 {
16640 __c = this->rdbuf()->sgetc();
16641 if (traits_type::eq_int_type(__c, traits_type::eof()))
16642 __err |= ios_base::eofbit;
16643 }
16644 catch(__cxxabiv1::__forced_unwind&)
16645 {
16646 this->_M_setstate(ios_base::badbit);
16647 throw;
16648 }
16649 catch(...)
16650 { this->_M_setstate(ios_base::badbit); }
16651 if (__err)
16652 this->setstate(__err);
16653 }
16654 return __c;
16655 }
16656 template<typename _CharT, typename _Traits>
16657 basic_istream<_CharT, _Traits>&
16658 basic_istream<_CharT, _Traits>::
16659 read(char_type* __s, streamsize __n)
16660 {
16661 _M_gcount = 0;
16662 sentry __cerb(*this, true);
16663 if (__cerb)
16664 {
16665 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16666 try
16667 {
16668 _M_gcount = this->rdbuf()->sgetn(__s, __n);
16669 if (_M_gcount != __n)
16670 __err |= (ios_base::eofbit | ios_base::failbit);
16671 }
16672 catch(__cxxabiv1::__forced_unwind&)
16673 {
16674 this->_M_setstate(ios_base::badbit);
16675 throw;
16676 }
16677 catch(...)
16678 { this->_M_setstate(ios_base::badbit); }
16679 if (__err)
16680 this->setstate(__err);
16681 }
16682 return *this;
16683 }
16684 template<typename _CharT, typename _Traits>
16685 streamsize
16686 basic_istream<_CharT, _Traits>::
16687 readsome(char_type* __s, streamsize __n)
16688 {
16689 _M_gcount = 0;
16690 sentry __cerb(*this, true);
16691 if (__cerb)
16692 {
16693 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16694 try
16695 {
16696 const streamsize __num = this->rdbuf()->in_avail();
16697 if (__num > 0)
16698 _M_gcount = this->rdbuf()->sgetn(__s, std::min(__num, __n));
16699 else if (__num == -1)
16700 __err |= ios_base::eofbit;
16701 }
16702 catch(__cxxabiv1::__forced_unwind&)
16703 {
16704 this->_M_setstate(ios_base::badbit);
16705 throw;
16706 }
16707 catch(...)
16708 { this->_M_setstate(ios_base::badbit); }
16709 if (__err)
16710 this->setstate(__err);
16711 }
16712 return _M_gcount;
16713 }
16714 template<typename _CharT, typename _Traits>
16715 basic_istream<_CharT, _Traits>&
16716 basic_istream<_CharT, _Traits>::
16717 putback(char_type __c)
16718 {
16719 _M_gcount = 0;
16720 sentry __cerb(*this, true);
16721 if (__cerb)
16722 {
16723 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16724 try
16725 {
16726 const int_type __eof = traits_type::eof();
16727 __streambuf_type* __sb = this->rdbuf();
16728 if (!__sb
16729 || traits_type::eq_int_type(__sb->sputbackc(__c), __eof))
16730 __err |= ios_base::badbit;
16731 }
16732 catch(__cxxabiv1::__forced_unwind&)
16733 {
16734 this->_M_setstate(ios_base::badbit);
16735 throw;
16736 }
16737 catch(...)
16738 { this->_M_setstate(ios_base::badbit); }
16739 if (__err)
16740 this->setstate(__err);
16741 }
16742 return *this;
16743 }
16744 template<typename _CharT, typename _Traits>
16745 basic_istream<_CharT, _Traits>&
16746 basic_istream<_CharT, _Traits>::
16747 unget(void)
16748 {
16749 _M_gcount = 0;
16750 sentry __cerb(*this, true);
16751 if (__cerb)
16752 {
16753 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16754 try
16755 {
16756 const int_type __eof = traits_type::eof();
16757 __streambuf_type* __sb = this->rdbuf();
16758 if (!__sb
16759 || traits_type::eq_int_type(__sb->sungetc(), __eof))
16760 __err |= ios_base::badbit;
16761 }
16762 catch(__cxxabiv1::__forced_unwind&)
16763 {
16764 this->_M_setstate(ios_base::badbit);
16765 throw;
16766 }
16767 catch(...)
16768 { this->_M_setstate(ios_base::badbit); }
16769 if (__err)
16770 this->setstate(__err);
16771 }
16772 return *this;
16773 }
16774 template<typename _CharT, typename _Traits>
16775 int
16776 basic_istream<_CharT, _Traits>::
16777 sync(void)
16778 {
16779 int __ret = -1;
16780 sentry __cerb(*this, true);
16781 if (__cerb)
16782 {
16783 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16784 try
16785 {
16786 __streambuf_type* __sb = this->rdbuf();
16787 if (__sb)
16788 {
16789 if (__sb->pubsync() == -1)
16790 __err |= ios_base::badbit;
16791 else
16792 __ret = 0;
16793 }
16794 }
16795 catch(__cxxabiv1::__forced_unwind&)
16796 {
16797 this->_M_setstate(ios_base::badbit);
16798 throw;
16799 }
16800 catch(...)
16801 { this->_M_setstate(ios_base::badbit); }
16802 if (__err)
16803 this->setstate(__err);
16804 }
16805 return __ret;
16806 }
16807 template<typename _CharT, typename _Traits>
16808 typename basic_istream<_CharT, _Traits>::pos_type
16809 basic_istream<_CharT, _Traits>::
16810 tellg(void)
16811 {
16812 pos_type __ret = pos_type(-1);
16813 try
16814 {
16815 if (!this->fail())
16816 __ret = this->rdbuf()->pubseekoff(0, ios_base::cur,
16817 ios_base::in);
16818 }
16819 catch(__cxxabiv1::__forced_unwind&)
16820 {
16821 this->_M_setstate(ios_base::badbit);
16822 throw;
16823 }
16824 catch(...)
16825 { this->_M_setstate(ios_base::badbit); }
16826 return __ret;
16827 }
16828 template<typename _CharT, typename _Traits>
16829 basic_istream<_CharT, _Traits>&
16830 basic_istream<_CharT, _Traits>::
16831 seekg(pos_type __pos)
16832 {
16833 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16834 try
16835 {
16836 if (!this->fail())
16837 {
16838 const pos_type __p = this->rdbuf()->pubseekpos(__pos,
16839 ios_base::in);
16840 if (__p == pos_type(off_type(-1)))
16841 __err |= ios_base::failbit;
16842 }
16843 }
16844 catch(__cxxabiv1::__forced_unwind&)
16845 {
16846 this->_M_setstate(ios_base::badbit);
16847 throw;
16848 }
16849 catch(...)
16850 { this->_M_setstate(ios_base::badbit); }
16851 if (__err)
16852 this->setstate(__err);
16853 return *this;
16854 }
16855 template<typename _CharT, typename _Traits>
16856 basic_istream<_CharT, _Traits>&
16857 basic_istream<_CharT, _Traits>::
16858 seekg(off_type __off, ios_base::seekdir __dir)
16859 {
16860 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16861 try
16862 {
16863 if (!this->fail())
16864 {
16865 const pos_type __p = this->rdbuf()->pubseekoff(__off, __dir,
16866 ios_base::in);
16867 if (__p == pos_type(off_type(-1)))
16868 __err |= ios_base::failbit;
16869 }
16870 }
16871 catch(__cxxabiv1::__forced_unwind&)
16872 {
16873 this->_M_setstate(ios_base::badbit);
16874 throw;
16875 }
16876 catch(...)
16877 { this->_M_setstate(ios_base::badbit); }
16878 if (__err)
16879 this->setstate(__err);
16880 return *this;
16881 }
16882 template<typename _CharT, typename _Traits>
16883 basic_istream<_CharT, _Traits>&
16884 operator>>(basic_istream<_CharT, _Traits>& __in, _CharT& __c)
16885 {
16886 typedef basic_istream<_CharT, _Traits> __istream_type;
16887 typedef typename __istream_type::int_type __int_type;
16888 typename __istream_type::sentry __cerb(__in, false);
16889 if (__cerb)
16890 {
16891 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16892 try
16893 {
16894 const __int_type __cb = __in.rdbuf()->sbumpc();
16895 if (!_Traits::eq_int_type(__cb, _Traits::eof()))
16896 __c = _Traits::to_char_type(__cb);
16897 else
16898 __err |= (ios_base::eofbit | ios_base::failbit);
16899 }
16900 catch(__cxxabiv1::__forced_unwind&)
16901 {
16902 __in._M_setstate(ios_base::badbit);
16903 throw;
16904 }
16905 catch(...)
16906 { __in._M_setstate(ios_base::badbit); }
16907 if (__err)
16908 __in.setstate(__err);
16909 }
16910 return __in;
16911 }
16912 template<typename _CharT, typename _Traits>
16913 basic_istream<_CharT, _Traits>&
16914 operator>>(basic_istream<_CharT, _Traits>& __in, _CharT* __s)
16915 {
16916 typedef basic_istream<_CharT, _Traits> __istream_type;
16917 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
16918 typedef typename _Traits::int_type int_type;
16919 typedef _CharT char_type;
16920 typedef ctype<_CharT> __ctype_type;
16921 streamsize __extracted = 0;
16922 ios_base::iostate __err = ios_base::iostate(ios_base::goodbit);
16923 typename __istream_type::sentry __cerb(__in, false);
16924 if (__cerb)
16925 {
16926 try
16927 {
16928 streamsize __num = __in.width();
16929 if (__num <= 0)
16930 __num = __gnu_cxx::__numeric_traits<streamsize>::__max;
16931 const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
16932 const int_type __eof = _Traits::eof();
16933 __streambuf_type* __sb = __in.rdbuf();
16934 int_type __c = __sb->sgetc();
16935 while (__extracted < __num - 1
16936 && !_Traits::eq_int_type(__c, __eof)
16937 && !__ct.is(ctype_base::space,
16938 _Traits::to_char_type(__c)))
16939 {
16940 *__s++ = _Traits::to_char_type(__c);
16941 ++__extracted;
16942 __c = __sb->snextc();
16943 }
16944 if (_Traits::eq_int_type(__c, __eof))
16945 __err |= ios_base::eofbit;
16946 *__s = char_type();
16947 __in.width(0);
16948 }
16949 catch(__cxxabiv1::__forced_unwind&)
16950 {
16951 __in._M_setstate(ios_base::badbit);
16952 throw;
16953 }
16954 catch(...)
16955 { __in._M_setstate(ios_base::badbit); }
16956 }
16957 if (!__extracted)
16958 __err |= ios_base::failbit;
16959 if (__err)
16960 __in.setstate(__err);
16961 return __in;
16962 }
16963 template<typename _CharT, typename _Traits>
16964 basic_istream<_CharT, _Traits>&
16965 ws(basic_istream<_CharT, _Traits>& __in)
16966 {
16967 typedef basic_istream<_CharT, _Traits> __istream_type;
16968 typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
16969 typedef typename __istream_type::int_type __int_type;
16970 typedef ctype<_CharT> __ctype_type;
16971 const __ctype_type& __ct = use_facet<__ctype_type>(__in.getloc());
16972 const __int_type __eof = _Traits::eof();
16973 __streambuf_type* __sb = __in.rdbuf();
16974 __int_type __c = __sb->sgetc();
16975 while (!_Traits::eq_int_type(__c, __eof)
16976 && __ct.is(ctype_base::space, _Traits::to_char_type(__c)))
16977 __c = __sb->snextc();
16978 if (_Traits::eq_int_type(__c, __eof))
16979 __in.setstate(ios_base::eofbit);
16980 return __in;
16981 }
16982 extern template class basic_istream<char>;
16983 extern template istream& ws(istream&);
16984 extern template istream& operator>>(istream&, char&);
16985 extern template istream& operator>>(istream&, char*);
16986 extern template istream& operator>>(istream&, unsigned char&);
16987 extern template istream& operator>>(istream&, signed char&);
16988 extern template istream& operator>>(istream&, unsigned char*);
16989 extern template istream& operator>>(istream&, signed char*);
16990 extern template istream& istream::_M_extract(unsigned short&);
16991 extern template istream& istream::_M_extract(unsigned int&);
16992 extern template istream& istream::_M_extract(long&);
16993 extern template istream& istream::_M_extract(unsigned long&);
16994 extern template istream& istream::_M_extract(bool&);
16995 extern template istream& istream::_M_extract(long long&);
16996 extern template istream& istream::_M_extract(unsigned long long&);
16997 extern template istream& istream::_M_extract(float&);
16998 extern template istream& istream::_M_extract(double&);
16999 extern template istream& istream::_M_extract(long double&);
17000 extern template istream& istream::_M_extract(void*&);
17001 extern template class basic_iostream<char>;
17002 extern template class basic_istream<wchar_t>;
17003 extern template wistream& ws(wistream&);
17004 extern template wistream& operator>>(wistream&, wchar_t&);
17005 extern template wistream& operator>>(wistream&, wchar_t*);
17006 extern template wistream& wistream::_M_extract(unsigned short&);
17007 extern template wistream& wistream::_M_extract(unsigned int&);
17008 extern template wistream& wistream::_M_extract(long&);
17009 extern template wistream& wistream::_M_extract(unsigned long&);
17010 extern template wistream& wistream::_M_extract(bool&);
17011 extern template wistream& wistream::_M_extract(long long&);
17012 extern template wistream& wistream::_M_extract(unsigned long long&);
17013 extern template wistream& wistream::_M_extract(float&);
17014 extern template wistream& wistream::_M_extract(double&);
17015 extern template wistream& wistream::_M_extract(long double&);
17016 extern template wistream& wistream::_M_extract(void*&);
17017 extern template class basic_iostream<wchar_t>;
17018}
17019namespace std __attribute__ ((__visibility__ ("default"))) {
17020 extern istream cin;
17021 extern ostream cout;
17022 extern ostream cerr;
17023 extern ostream clog;
17024 extern wistream wcin;
17025 extern wostream wcout;
17026 extern wostream wcerr;
17027 extern wostream wclog;
17028 static ios_base::Init __ioinit;
17029}
17030
17031namespace std __attribute__ ((__visibility__ ("default"))) {
17032 template<typename _T1, typename _T2>
17033 inline void
17034 _Construct(_T1* __p, const _T2& __value)
17035 {
17036 ::new(static_cast<void*>(__p)) _T1(__value);
17037 }
17038 template<typename _Tp>
17039 inline void
17040 _Destroy(_Tp* __pointer)
17041 { __pointer->~_Tp(); }
17042 template<bool>
17043 struct _Destroy_aux
17044 {
17045 template<typename _ForwardIterator>
17046 static void
17047 __destroy(_ForwardIterator __first, _ForwardIterator __last)
17048 {
17049 for (; __first != __last; ++__first)
17050 std::_Destroy(&*__first);
17051 }
17052 };
17053 template<>
17054 struct _Destroy_aux<true>
17055 {
17056 template<typename _ForwardIterator>
17057 static void
17058 __destroy(_ForwardIterator, _ForwardIterator) { }
17059 };
17060 template<typename _ForwardIterator>
17061 inline void
17062 _Destroy(_ForwardIterator __first, _ForwardIterator __last)
17063 {
17064 typedef typename iterator_traits<_ForwardIterator>::value_type
17065 _Value_type;
17066 std::_Destroy_aux<__has_trivial_destructor(_Value_type)>::
17067 __destroy(__first, __last);
17068 }
17069 template <typename _Tp> class allocator;
17070 template<typename _ForwardIterator, typename _Allocator>
17071 void
17072 _Destroy(_ForwardIterator __first, _ForwardIterator __last,
17073 _Allocator& __alloc)
17074 {
17075 for (; __first != __last; ++__first)
17076 __alloc.destroy(&*__first);
17077 }
17078 template<typename _ForwardIterator, typename _Tp>
17079 inline void
17080 _Destroy(_ForwardIterator __first, _ForwardIterator __last,
17081 allocator<_Tp>&)
17082 {
17083 _Destroy(__first, __last);
17084 }
17085}
17086namespace std __attribute__ ((__visibility__ ("default"))) {
17087 template<bool>
17088 struct __uninitialized_copy
17089 {
17090 template<typename _InputIterator, typename _ForwardIterator>
17091 static _ForwardIterator
17092 uninitialized_copy(_InputIterator __first, _InputIterator __last,
17093 _ForwardIterator __result)
17094 {
17095 _ForwardIterator __cur = __result;
17096 try
17097 {
17098 for (; __first != __last; ++__first, ++__cur)
17099 ::new(static_cast<void*>(&*__cur)) typename
17100 iterator_traits<_ForwardIterator>::value_type(*__first);
17101 return __cur;
17102 }
17103 catch(...)
17104 {
17105 std::_Destroy(__result, __cur);
17106 throw;
17107 }
17108 }
17109 };
17110 template<>
17111 struct __uninitialized_copy<true>
17112 {
17113 template<typename _InputIterator, typename _ForwardIterator>
17114 static _ForwardIterator
17115 uninitialized_copy(_InputIterator __first, _InputIterator __last,
17116 _ForwardIterator __result)
17117 { return std::copy(__first, __last, __result); }
17118 };
17119 template<typename _InputIterator, typename _ForwardIterator>
17120 inline _ForwardIterator
17121 uninitialized_copy(_InputIterator __first, _InputIterator __last,
17122 _ForwardIterator __result)
17123 {
17124 typedef typename iterator_traits<_InputIterator>::value_type
17125 _ValueType1;
17126 typedef typename iterator_traits<_ForwardIterator>::value_type
17127 _ValueType2;
17128 return std::__uninitialized_copy<(__is_pod(_ValueType1)
17129 && __is_pod(_ValueType2))>::
17130 uninitialized_copy(__first, __last, __result);
17131 }
17132 template<bool>
17133 struct __uninitialized_fill
17134 {
17135 template<typename _ForwardIterator, typename _Tp>
17136 static void
17137 uninitialized_fill(_ForwardIterator __first,
17138 _ForwardIterator __last, const _Tp& __x)
17139 {
17140 _ForwardIterator __cur = __first;
17141 try
17142 {
17143 for (; __cur != __last; ++__cur)
17144 std::_Construct(&*__cur, __x);
17145 }
17146 catch(...)
17147 {
17148 std::_Destroy(__first, __cur);
17149 throw;
17150 }
17151 }
17152 };
17153 template<>
17154 struct __uninitialized_fill<true>
17155 {
17156 template<typename _ForwardIterator, typename _Tp>
17157 static void
17158 uninitialized_fill(_ForwardIterator __first,
17159 _ForwardIterator __last, const _Tp& __x)
17160 { std::fill(__first, __last, __x); }
17161 };
17162 template<typename _ForwardIterator, typename _Tp>
17163 inline void
17164 uninitialized_fill(_ForwardIterator __first, _ForwardIterator __last,
17165 const _Tp& __x)
17166 {
17167 typedef typename iterator_traits<_ForwardIterator>::value_type
17168 _ValueType;
17169 std::__uninitialized_fill<__is_pod(_ValueType)>::
17170 uninitialized_fill(__first, __last, __x);
17171 }
17172 template<bool>
17173 struct __uninitialized_fill_n
17174 {
17175 template<typename _ForwardIterator, typename _Size, typename _Tp>
17176 static void
17177 uninitialized_fill_n(_ForwardIterator __first, _Size __n,
17178 const _Tp& __x)
17179 {
17180 _ForwardIterator __cur = __first;
17181 try
17182 {
17183 for (; __n > 0; --__n, ++__cur)
17184 std::_Construct(&*__cur, __x);
17185 }
17186 catch(...)
17187 {
17188 std::_Destroy(__first, __cur);
17189 throw;
17190 }
17191 }
17192 };
17193 template<>
17194 struct __uninitialized_fill_n<true>
17195 {
17196 template<typename _ForwardIterator, typename _Size, typename _Tp>
17197 static void
17198 uninitialized_fill_n(_ForwardIterator __first, _Size __n,
17199 const _Tp& __x)
17200 { std::fill_n(__first, __n, __x); }
17201 };
17202 template<typename _ForwardIterator, typename _Size, typename _Tp>
17203 inline void
17204 uninitialized_fill_n(_ForwardIterator __first, _Size __n, const _Tp& __x)
17205 {
17206 typedef typename iterator_traits<_ForwardIterator>::value_type
17207 _ValueType;
17208 std::__uninitialized_fill_n<__is_pod(_ValueType)>::
17209 uninitialized_fill_n(__first, __n, __x);
17210 }
17211 template<typename _InputIterator, typename _ForwardIterator,
17212 typename _Allocator>
17213 _ForwardIterator
17214 __uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
17215 _ForwardIterator __result, _Allocator& __alloc)
17216 {
17217 _ForwardIterator __cur = __result;
17218 try
17219 {
17220 for (; __first != __last; ++__first, ++__cur)
17221 __alloc.construct(&*__cur, *__first);
17222 return __cur;
17223 }
17224 catch(...)
17225 {
17226 std::_Destroy(__result, __cur, __alloc);
17227 throw;
17228 }
17229 }
17230 template<typename _InputIterator, typename _ForwardIterator, typename _Tp>
17231 inline _ForwardIterator
17232 __uninitialized_copy_a(_InputIterator __first, _InputIterator __last,
17233 _ForwardIterator __result, allocator<_Tp>&)
17234 { return std::uninitialized_copy(__first, __last, __result); }
17235 template<typename _InputIterator, typename _ForwardIterator,
17236 typename _Allocator>
17237 inline _ForwardIterator
17238 __uninitialized_move_a(_InputIterator __first, _InputIterator __last,
17239 _ForwardIterator __result, _Allocator& __alloc)
17240 {
17241 return std::__uninitialized_copy_a((__first),
17242 (__last),
17243 __result, __alloc);
17244 }
17245 template<typename _ForwardIterator, typename _Tp, typename _Allocator>
17246 void
17247 __uninitialized_fill_a(_ForwardIterator __first, _ForwardIterator __last,
17248 const _Tp& __x, _Allocator& __alloc)
17249 {
17250 _ForwardIterator __cur = __first;
17251 try
17252 {
17253 for (; __cur != __last; ++__cur)
17254 __alloc.construct(&*__cur, __x);
17255 }
17256 catch(...)
17257 {
17258 std::_Destroy(__first, __cur, __alloc);
17259 throw;
17260 }
17261 }
17262 template<typename _ForwardIterator, typename _Tp, typename _Tp2>
17263 inline void
17264 __uninitialized_fill_a(_ForwardIterator __first, _ForwardIterator __last,
17265 const _Tp& __x, allocator<_Tp2>&)
17266 { std::uninitialized_fill(__first, __last, __x); }
17267 template<typename _ForwardIterator, typename _Size, typename _Tp,
17268 typename _Allocator>
17269 void
17270 __uninitialized_fill_n_a(_ForwardIterator __first, _Size __n,
17271 const _Tp& __x, _Allocator& __alloc)
17272 {
17273 _ForwardIterator __cur = __first;
17274 try
17275 {
17276 for (; __n > 0; --__n, ++__cur)
17277 __alloc.construct(&*__cur, __x);
17278 }
17279 catch(...)
17280 {
17281 std::_Destroy(__first, __cur, __alloc);
17282 throw;
17283 }
17284 }
17285 template<typename _ForwardIterator, typename _Size, typename _Tp,
17286 typename _Tp2>
17287 inline void
17288 __uninitialized_fill_n_a(_ForwardIterator __first, _Size __n,
17289 const _Tp& __x, allocator<_Tp2>&)
17290 { std::uninitialized_fill_n(__first, __n, __x); }
17291 template<typename _InputIterator1, typename _InputIterator2,
17292 typename _ForwardIterator, typename _Allocator>
17293 inline _ForwardIterator
17294 __uninitialized_copy_move(_InputIterator1 __first1,
17295 _InputIterator1 __last1,
17296 _InputIterator2 __first2,
17297 _InputIterator2 __last2,
17298 _ForwardIterator __result,
17299 _Allocator& __alloc)
17300 {
17301 _ForwardIterator __mid = std::__uninitialized_copy_a(__first1, __last1,
17302 __result,
17303 __alloc);
17304 try
17305 {
17306 return std::__uninitialized_move_a(__first2, __last2, __mid, __alloc);
17307 }
17308 catch(...)
17309 {
17310 std::_Destroy(__result, __mid, __alloc);
17311 throw;
17312 }
17313 }
17314 template<typename _InputIterator1, typename _InputIterator2,
17315 typename _ForwardIterator, typename _Allocator>
17316 inline _ForwardIterator
17317 __uninitialized_move_copy(_InputIterator1 __first1,
17318 _InputIterator1 __last1,
17319 _InputIterator2 __first2,
17320 _InputIterator2 __last2,
17321 _ForwardIterator __result,
17322 _Allocator& __alloc)
17323 {
17324 _ForwardIterator __mid = std::__uninitialized_move_a(__first1, __last1,
17325 __result,
17326 __alloc);
17327 try
17328 {
17329 return std::__uninitialized_copy_a(__first2, __last2, __mid, __alloc);
17330 }
17331 catch(...)
17332 {
17333 std::_Destroy(__result, __mid, __alloc);
17334 throw;
17335 }
17336 }
17337 template<typename _ForwardIterator, typename _Tp, typename _InputIterator,
17338 typename _Allocator>
17339 inline _ForwardIterator
17340 __uninitialized_fill_move(_ForwardIterator __result, _ForwardIterator __mid,
17341 const _Tp& __x, _InputIterator __first,
17342 _InputIterator __last, _Allocator& __alloc)
17343 {
17344 std::__uninitialized_fill_a(__result, __mid, __x, __alloc);
17345 try
17346 {
17347 return std::__uninitialized_move_a(__first, __last, __mid, __alloc);
17348 }
17349 catch(...)
17350 {
17351 std::_Destroy(__result, __mid, __alloc);
17352 throw;
17353 }
17354 }
17355 template<typename _InputIterator, typename _ForwardIterator, typename _Tp,
17356 typename _Allocator>
17357 inline void
17358 __uninitialized_move_fill(_InputIterator __first1, _InputIterator __last1,
17359 _ForwardIterator __first2,
17360 _ForwardIterator __last2, const _Tp& __x,
17361 _Allocator& __alloc)
17362 {
17363 _ForwardIterator __mid2 = std::__uninitialized_move_a(__first1, __last1,
17364 __first2,
17365 __alloc);
17366 try
17367 {
17368 std::__uninitialized_fill_a(__mid2, __last2, __x, __alloc);
17369 }
17370 catch(...)
17371 {
17372 std::_Destroy(__first2, __mid2, __alloc);
17373 throw;
17374 }
17375 }
17376}
17377namespace std __attribute__ ((__visibility__ ("default"))) {
17378 template<typename _Tp, typename _Alloc>
17379 struct _Vector_base
17380 {
17381 typedef typename _Alloc::template rebind<_Tp>::other _Tp_alloc_type;
17382 struct _Vector_impl
17383 : public _Tp_alloc_type
17384 {
17385 typename _Tp_alloc_type::pointer _M_start;
17386 typename _Tp_alloc_type::pointer _M_finish;
17387 typename _Tp_alloc_type::pointer _M_end_of_storage;
17388 _Vector_impl()
17389 : _Tp_alloc_type(), _M_start(0), _M_finish(0), _M_end_of_storage(0)
17390 { }
17391 _Vector_impl(_Tp_alloc_type const& __a)
17392 : _Tp_alloc_type(__a), _M_start(0), _M_finish(0), _M_end_of_storage(0)
17393 { }
17394 };
17395 public:
17396 typedef _Alloc allocator_type;
17397 _Tp_alloc_type&
17398 _M_get_Tp_allocator()
17399 { return *static_cast<_Tp_alloc_type*>(&this->_M_impl); }
17400 const _Tp_alloc_type&
17401 _M_get_Tp_allocator() const
17402 { return *static_cast<const _Tp_alloc_type*>(&this->_M_impl); }
17403 allocator_type
17404 get_allocator() const
17405 { return allocator_type(_M_get_Tp_allocator()); }
17406 _Vector_base()
17407 : _M_impl() { }
17408 _Vector_base(const allocator_type& __a)
17409 : _M_impl(__a) { }
17410 _Vector_base(size_t __n, const allocator_type& __a)
17411 : _M_impl(__a)
17412 {
17413 this->_M_impl._M_start = this->_M_allocate(__n);
17414 this->_M_impl._M_finish = this->_M_impl._M_start;
17415 this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
17416 }
17417 ~_Vector_base()
17418 { _M_deallocate(this->_M_impl._M_start, this->_M_impl._M_end_of_storage
17419 - this->_M_impl._M_start); }
17420 public:
17421 _Vector_impl _M_impl;
17422 typename _Tp_alloc_type::pointer
17423 _M_allocate(size_t __n)
17424 { return __n != 0 ? _M_impl.allocate(__n) : 0; }
17425 void
17426 _M_deallocate(typename _Tp_alloc_type::pointer __p, size_t __n)
17427 {
17428 if (__p)
17429 _M_impl.deallocate(__p, __n);
17430 }
17431 };
17432 template<typename _Tp, typename _Alloc = std::allocator<_Tp> >
17433 class vector : protected _Vector_base<_Tp, _Alloc>
17434 {
17435 typedef typename _Alloc::value_type _Alloc_value_type;
17436
17437
17438 typedef _Vector_base<_Tp, _Alloc> _Base;
17439 typedef typename _Base::_Tp_alloc_type _Tp_alloc_type;
17440 public:
17441 typedef _Tp value_type;
17442 typedef typename _Tp_alloc_type::pointer pointer;
17443 typedef typename _Tp_alloc_type::const_pointer const_pointer;
17444 typedef typename _Tp_alloc_type::reference reference;
17445 typedef typename _Tp_alloc_type::const_reference const_reference;
17446 typedef __gnu_cxx::__normal_iterator<pointer, vector> iterator;
17447 typedef __gnu_cxx::__normal_iterator<const_pointer, vector>
17448 const_iterator;
17449 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
17450 typedef std::reverse_iterator<iterator> reverse_iterator;
17451 typedef size_t size_type;
17452 typedef ptrdiff_t difference_type;
17453 typedef _Alloc allocator_type;
17454 protected:
17455 using _Base::_M_allocate;
17456 using _Base::_M_deallocate;
17457 using _Base::_M_impl;
17458 using _Base::_M_get_Tp_allocator;
17459 public:
17460 vector()
17461 : _Base() { }
17462 explicit
17463 vector(const allocator_type& __a)
17464 : _Base(__a) { }
17465 explicit
17466 vector(size_type __n, const value_type& __value = value_type(),
17467 const allocator_type& __a = allocator_type())
17468 : _Base(__n, __a)
17469 { _M_fill_initialize(__n, __value); }
17470 vector(const vector& __x)
17471 : _Base(__x.size(), __x._M_get_Tp_allocator())
17472 { this->_M_impl._M_finish =
17473 std::__uninitialized_copy_a(__x.begin(), __x.end(),
17474 this->_M_impl._M_start,
17475 _M_get_Tp_allocator());
17476 }
17477 template<typename _InputIterator>
17478 vector(_InputIterator __first, _InputIterator __last,
17479 const allocator_type& __a = allocator_type())
17480 : _Base(__a)
17481 {
17482 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
17483 _M_initialize_dispatch(__first, __last, _Integral());
17484 }
17485 ~vector()
17486 { std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
17487 _M_get_Tp_allocator()); }
17488 vector&
17489 operator=(const vector& __x);
17490 void
17491 assign(size_type __n, const value_type& __val)
17492 { _M_fill_assign(__n, __val); }
17493 template<typename _InputIterator>
17494 void
17495 assign(_InputIterator __first, _InputIterator __last)
17496 {
17497 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
17498 _M_assign_dispatch(__first, __last, _Integral());
17499 }
17500 using _Base::get_allocator;
17501 iterator
17502 begin()
17503 { return iterator(this->_M_impl._M_start); }
17504 const_iterator
17505 begin() const
17506 { return const_iterator(this->_M_impl._M_start); }
17507 iterator
17508 end()
17509 { return iterator(this->_M_impl._M_finish); }
17510 const_iterator
17511 end() const
17512 { return const_iterator(this->_M_impl._M_finish); }
17513 reverse_iterator
17514 rbegin()
17515 { return reverse_iterator(end()); }
17516 const_reverse_iterator
17517 rbegin() const
17518 { return const_reverse_iterator(end()); }
17519 reverse_iterator
17520 rend()
17521 { return reverse_iterator(begin()); }
17522 const_reverse_iterator
17523 rend() const
17524 { return const_reverse_iterator(begin()); }
17525 size_type
17526 size() const
17527 { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); }
17528 size_type
17529 max_size() const
17530 { return _M_get_Tp_allocator().max_size(); }
17531 void
17532 resize(size_type __new_size, value_type __x = value_type())
17533 {
17534 if (__new_size < size())
17535 _M_erase_at_end(this->_M_impl._M_start + __new_size);
17536 else
17537 insert(end(), __new_size - size(), __x);
17538 }
17539 size_type
17540 capacity() const
17541 { return size_type(this->_M_impl._M_end_of_storage
17542 - this->_M_impl._M_start); }
17543 bool
17544 empty() const
17545 { return begin() == end(); }
17546 void
17547 reserve(size_type __n);
17548 reference
17549 operator[](size_type __n)
17550 { return *(this->_M_impl._M_start + __n); }
17551 const_reference
17552 operator[](size_type __n) const
17553 { return *(this->_M_impl._M_start + __n); }
17554 protected:
17555 void
17556 _M_range_check(size_type __n) const
17557 {
17558 if (__n >= this->size())
17559 __throw_out_of_range(("vector::_M_range_check"));
17560 }
17561 public:
17562 reference
17563 at(size_type __n)
17564 {
17565 _M_range_check(__n);
17566 return (*this)[__n];
17567 }
17568 const_reference
17569 at(size_type __n) const
17570 {
17571 _M_range_check(__n);
17572 return (*this)[__n];
17573 }
17574 reference
17575 front()
17576 { return *begin(); }
17577 const_reference
17578 front() const
17579 { return *begin(); }
17580 reference
17581 back()
17582 { return *(end() - 1); }
17583 const_reference
17584 back() const
17585 { return *(end() - 1); }
17586 pointer
17587 data()
17588 { return pointer(this->_M_impl._M_start); }
17589 const_pointer
17590 data() const
17591 { return const_pointer(this->_M_impl._M_start); }
17592 void
17593 push_back(const value_type& __x)
17594 {
17595 if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage)
17596 {
17597 this->_M_impl.construct(this->_M_impl._M_finish, __x);
17598 ++this->_M_impl._M_finish;
17599 }
17600 else
17601 _M_insert_aux(end(), __x);
17602 }
17603 void
17604 pop_back()
17605 {
17606 --this->_M_impl._M_finish;
17607 this->_M_impl.destroy(this->_M_impl._M_finish);
17608 }
17609 iterator
17610 insert(iterator __position, const value_type& __x);
17611 void
17612 insert(iterator __position, size_type __n, const value_type& __x)
17613 { _M_fill_insert(__position, __n, __x); }
17614 template<typename _InputIterator>
17615 void
17616 insert(iterator __position, _InputIterator __first,
17617 _InputIterator __last)
17618 {
17619 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
17620 _M_insert_dispatch(__position, __first, __last, _Integral());
17621 }
17622 iterator
17623 erase(iterator __position);
17624 iterator
17625 erase(iterator __first, iterator __last);
17626 void
17627 swap(vector& __x)
17628 {
17629 std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
17630 std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
17631 std::swap(this->_M_impl._M_end_of_storage,
17632 __x._M_impl._M_end_of_storage);
17633 std::__alloc_swap<_Tp_alloc_type>::_S_do_it(_M_get_Tp_allocator(),
17634 __x._M_get_Tp_allocator());
17635 }
17636 void
17637 clear()
17638 { _M_erase_at_end(this->_M_impl._M_start); }
17639 protected:
17640 template<typename _ForwardIterator>
17641 pointer
17642 _M_allocate_and_copy(size_type __n,
17643 _ForwardIterator __first, _ForwardIterator __last)
17644 {
17645 pointer __result = this->_M_allocate(__n);
17646 try
17647 {
17648 std::__uninitialized_copy_a(__first, __last, __result,
17649 _M_get_Tp_allocator());
17650 return __result;
17651 }
17652 catch(...)
17653 {
17654 _M_deallocate(__result, __n);
17655 throw;
17656 }
17657 }
17658 template<typename _Integer>
17659 void
17660 _M_initialize_dispatch(_Integer __n, _Integer __value, __true_type)
17661 {
17662 this->_M_impl._M_start = _M_allocate(static_cast<size_type>(__n));
17663 this->_M_impl._M_end_of_storage =
17664 this->_M_impl._M_start + static_cast<size_type>(__n);
17665 _M_fill_initialize(static_cast<size_type>(__n), __value);
17666 }
17667 template<typename _InputIterator>
17668 void
17669 _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
17670 __false_type)
17671 {
17672 typedef typename std::iterator_traits<_InputIterator>::
17673 iterator_category _IterCategory;
17674 _M_range_initialize(__first, __last, _IterCategory());
17675 }
17676 template<typename _InputIterator>
17677 void
17678 _M_range_initialize(_InputIterator __first,
17679 _InputIterator __last, std::input_iterator_tag)
17680 {
17681 for (; __first != __last; ++__first)
17682 push_back(*__first);
17683 }
17684 template<typename _ForwardIterator>
17685 void
17686 _M_range_initialize(_ForwardIterator __first,
17687 _ForwardIterator __last, std::forward_iterator_tag)
17688 {
17689 const size_type __n = std::distance(__first, __last);
17690 this->_M_impl._M_start = this->_M_allocate(__n);
17691 this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
17692 this->_M_impl._M_finish =
17693 std::__uninitialized_copy_a(__first, __last,
17694 this->_M_impl._M_start,
17695 _M_get_Tp_allocator());
17696 }
17697 void
17698 _M_fill_initialize(size_type __n, const value_type& __value)
17699 {
17700 std::__uninitialized_fill_n_a(this->_M_impl._M_start, __n, __value,
17701 _M_get_Tp_allocator());
17702 this->_M_impl._M_finish = this->_M_impl._M_end_of_storage;
17703 }
17704 template<typename _Integer>
17705 void
17706 _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
17707 { _M_fill_assign(__n, __val); }
17708 template<typename _InputIterator>
17709 void
17710 _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
17711 __false_type)
17712 {
17713 typedef typename std::iterator_traits<_InputIterator>::
17714 iterator_category _IterCategory;
17715 _M_assign_aux(__first, __last, _IterCategory());
17716 }
17717 template<typename _InputIterator>
17718 void
17719 _M_assign_aux(_InputIterator __first, _InputIterator __last,
17720 std::input_iterator_tag);
17721 template<typename _ForwardIterator>
17722 void
17723 _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
17724 std::forward_iterator_tag);
17725 void
17726 _M_fill_assign(size_type __n, const value_type& __val);
17727 template<typename _Integer>
17728 void
17729 _M_insert_dispatch(iterator __pos, _Integer __n, _Integer __val,
17730 __true_type)
17731 { _M_fill_insert(__pos, __n, __val); }
17732 template<typename _InputIterator>
17733 void
17734 _M_insert_dispatch(iterator __pos, _InputIterator __first,
17735 _InputIterator __last, __false_type)
17736 {
17737 typedef typename std::iterator_traits<_InputIterator>::
17738 iterator_category _IterCategory;
17739 _M_range_insert(__pos, __first, __last, _IterCategory());
17740 }
17741 template<typename _InputIterator>
17742 void
17743 _M_range_insert(iterator __pos, _InputIterator __first,
17744 _InputIterator __last, std::input_iterator_tag);
17745 template<typename _ForwardIterator>
17746 void
17747 _M_range_insert(iterator __pos, _ForwardIterator __first,
17748 _ForwardIterator __last, std::forward_iterator_tag);
17749 void
17750 _M_fill_insert(iterator __pos, size_type __n, const value_type& __x);
17751 void
17752 _M_insert_aux(iterator __position, const value_type& __x);
17753 size_type
17754 _M_check_len(size_type __n, const char* __s) const
17755 {
17756 if (max_size() - size() < __n)
17757 __throw_length_error((__s));
17758 const size_type __len = size() + std::max(size(), __n);
17759 return (__len < size() || __len > max_size()) ? max_size() : __len;
17760 }
17761 void
17762 _M_erase_at_end(pointer __pos)
17763 {
17764 std::_Destroy(__pos, this->_M_impl._M_finish, _M_get_Tp_allocator());
17765 this->_M_impl._M_finish = __pos;
17766 }
17767 };
17768 template<typename _Tp, typename _Alloc>
17769 inline bool
17770 operator==(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
17771 { return (__x.size() == __y.size()
17772 && std::equal(__x.begin(), __x.end(), __y.begin())); }
17773 template<typename _Tp, typename _Alloc>
17774 inline bool
17775 operator<(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
17776 { return std::lexicographical_compare(__x.begin(), __x.end(),
17777 __y.begin(), __y.end()); }
17778 template<typename _Tp, typename _Alloc>
17779 inline bool
17780 operator!=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
17781 { return !(__x == __y); }
17782 template<typename _Tp, typename _Alloc>
17783 inline bool
17784 operator>(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
17785 { return __y < __x; }
17786 template<typename _Tp, typename _Alloc>
17787 inline bool
17788 operator<=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
17789 { return !(__y < __x); }
17790 template<typename _Tp, typename _Alloc>
17791 inline bool
17792 operator>=(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
17793 { return !(__x < __y); }
17794 template<typename _Tp, typename _Alloc>
17795 inline void
17796 swap(vector<_Tp, _Alloc>& __x, vector<_Tp, _Alloc>& __y)
17797 { __x.swap(__y); }
17798}
17799namespace std __attribute__ ((__visibility__ ("default"))) {
17800 typedef unsigned long _Bit_type;
17801 enum { _S_word_bit = int(8 * sizeof(_Bit_type)) };
17802 struct _Bit_reference
17803 {
17804 _Bit_type * _M_p;
17805 _Bit_type _M_mask;
17806 _Bit_reference(_Bit_type * __x, _Bit_type __y)
17807 : _M_p(__x), _M_mask(__y) { }
17808 _Bit_reference() : _M_p(0), _M_mask(0) { }
17809 operator bool() const
17810 { return !!(*_M_p & _M_mask); }
17811 _Bit_reference&
17812 operator=(bool __x)
17813 {
17814 if (__x)
17815 *_M_p |= _M_mask;
17816 else
17817 *_M_p &= ~_M_mask;
17818 return *this;
17819 }
17820 _Bit_reference&
17821 operator=(const _Bit_reference& __x)
17822 { return *this = bool(__x); }
17823 bool
17824 operator==(const _Bit_reference& __x) const
17825 { return bool(*this) == bool(__x); }
17826 bool
17827 operator<(const _Bit_reference& __x) const
17828 { return !bool(*this) && bool(__x); }
17829 void
17830 flip()
17831 { *_M_p ^= _M_mask; }
17832 };
17833 struct _Bit_iterator_base
17834 : public std::iterator<std::random_access_iterator_tag, bool>
17835 {
17836 _Bit_type * _M_p;
17837 unsigned int _M_offset;
17838 _Bit_iterator_base(_Bit_type * __x, unsigned int __y)
17839 : _M_p(__x), _M_offset(__y) { }
17840 void
17841 _M_bump_up()
17842 {
17843 if (_M_offset++ == int(_S_word_bit) - 1)
17844 {
17845 _M_offset = 0;
17846 ++_M_p;
17847 }
17848 }
17849 void
17850 _M_bump_down()
17851 {
17852 if (_M_offset-- == 0)
17853 {
17854 _M_offset = int(_S_word_bit) - 1;
17855 --_M_p;
17856 }
17857 }
17858 void
17859 _M_incr(ptrdiff_t __i)
17860 {
17861 difference_type __n = __i + _M_offset;
17862 _M_p += __n / int(_S_word_bit);
17863 __n = __n % int(_S_word_bit);
17864 if (__n < 0)
17865 {
17866 __n += int(_S_word_bit);
17867 --_M_p;
17868 }
17869 _M_offset = static_cast<unsigned int>(__n);
17870 }
17871 bool
17872 operator==(const _Bit_iterator_base& __i) const
17873 { return _M_p == __i._M_p && _M_offset == __i._M_offset; }
17874 bool
17875 operator<(const _Bit_iterator_base& __i) const
17876 {
17877 return _M_p < __i._M_p
17878 || (_M_p == __i._M_p && _M_offset < __i._M_offset);
17879 }
17880 bool
17881 operator!=(const _Bit_iterator_base& __i) const
17882 { return !(*this == __i); }
17883 bool
17884 operator>(const _Bit_iterator_base& __i) const
17885 { return __i < *this; }
17886 bool
17887 operator<=(const _Bit_iterator_base& __i) const
17888 { return !(__i < *this); }
17889 bool
17890 operator>=(const _Bit_iterator_base& __i) const
17891 { return !(*this < __i); }
17892 };
17893 inline ptrdiff_t
17894 operator-(const _Bit_iterator_base& __x, const _Bit_iterator_base& __y)
17895 {
17896 return (int(_S_word_bit) * (__x._M_p - __y._M_p)
17897 + __x._M_offset - __y._M_offset);
17898 }
17899 struct _Bit_iterator : public _Bit_iterator_base
17900 {
17901 typedef _Bit_reference reference;
17902 typedef _Bit_reference* pointer;
17903 typedef _Bit_iterator iterator;
17904 _Bit_iterator() : _Bit_iterator_base(0, 0) { }
17905 _Bit_iterator(_Bit_type * __x, unsigned int __y)
17906 : _Bit_iterator_base(__x, __y) { }
17907 reference
17908 operator*() const
17909 { return reference(_M_p, 1UL << _M_offset); }
17910 iterator&
17911 operator++()
17912 {
17913 _M_bump_up();
17914 return *this;
17915 }
17916 iterator
17917 operator++(int)
17918 {
17919 iterator __tmp = *this;
17920 _M_bump_up();
17921 return __tmp;
17922 }
17923 iterator&
17924 operator--()
17925 {
17926 _M_bump_down();
17927 return *this;
17928 }
17929 iterator
17930 operator--(int)
17931 {
17932 iterator __tmp = *this;
17933 _M_bump_down();
17934 return __tmp;
17935 }
17936 iterator&
17937 operator+=(difference_type __i)
17938 {
17939 _M_incr(__i);
17940 return *this;
17941 }
17942 iterator&
17943 operator-=(difference_type __i)
17944 {
17945 *this += -__i;
17946 return *this;
17947 }
17948 iterator
17949 operator+(difference_type __i) const
17950 {
17951 iterator __tmp = *this;
17952 return __tmp += __i;
17953 }
17954 iterator
17955 operator-(difference_type __i) const
17956 {
17957 iterator __tmp = *this;
17958 return __tmp -= __i;
17959 }
17960 reference
17961 operator[](difference_type __i) const
17962 { return *(*this + __i); }
17963 };
17964 inline _Bit_iterator
17965 operator+(ptrdiff_t __n, const _Bit_iterator& __x)
17966 { return __x + __n; }
17967 struct _Bit_const_iterator : public _Bit_iterator_base
17968 {
17969 typedef bool reference;
17970 typedef bool const_reference;
17971 typedef const bool* pointer;
17972 typedef _Bit_const_iterator const_iterator;
17973 _Bit_const_iterator() : _Bit_iterator_base(0, 0) { }
17974 _Bit_const_iterator(_Bit_type * __x, unsigned int __y)
17975 : _Bit_iterator_base(__x, __y) { }
17976 _Bit_const_iterator(const _Bit_iterator& __x)
17977 : _Bit_iterator_base(__x._M_p, __x._M_offset) { }
17978 const_reference
17979 operator*() const
17980 { return _Bit_reference(_M_p, 1UL << _M_offset); }
17981 const_iterator&
17982 operator++()
17983 {
17984 _M_bump_up();
17985 return *this;
17986 }
17987 const_iterator
17988 operator++(int)
17989 {
17990 const_iterator __tmp = *this;
17991 _M_bump_up();
17992 return __tmp;
17993 }
17994 const_iterator&
17995 operator--()
17996 {
17997 _M_bump_down();
17998 return *this;
17999 }
18000 const_iterator
18001 operator--(int)
18002 {
18003 const_iterator __tmp = *this;
18004 _M_bump_down();
18005 return __tmp;
18006 }
18007 const_iterator&
18008 operator+=(difference_type __i)
18009 {
18010 _M_incr(__i);
18011 return *this;
18012 }
18013 const_iterator&
18014 operator-=(difference_type __i)
18015 {
18016 *this += -__i;
18017 return *this;
18018 }
18019 const_iterator
18020 operator+(difference_type __i) const
18021 {
18022 const_iterator __tmp = *this;
18023 return __tmp += __i;
18024 }
18025 const_iterator
18026 operator-(difference_type __i) const
18027 {
18028 const_iterator __tmp = *this;
18029 return __tmp -= __i;
18030 }
18031 const_reference
18032 operator[](difference_type __i) const
18033 { return *(*this + __i); }
18034 };
18035 inline _Bit_const_iterator
18036 operator+(ptrdiff_t __n, const _Bit_const_iterator& __x)
18037 { return __x + __n; }
18038 inline void
18039 __fill_bvector(_Bit_iterator __first, _Bit_iterator __last, bool __x)
18040 {
18041 for (; __first != __last; ++__first)
18042 *__first = __x;
18043 }
18044 inline void
18045 fill(_Bit_iterator __first, _Bit_iterator __last, const bool& __x)
18046 {
18047 if (__first._M_p != __last._M_p)
18048 {
18049 std::fill(__first._M_p + 1, __last._M_p, __x ? ~0 : 0);
18050 __fill_bvector(__first, _Bit_iterator(__first._M_p + 1, 0), __x);
18051 __fill_bvector(_Bit_iterator(__last._M_p, 0), __last, __x);
18052 }
18053 else
18054 __fill_bvector(__first, __last, __x);
18055 }
18056 template<typename _Alloc>
18057 struct _Bvector_base
18058 {
18059 typedef typename _Alloc::template rebind<_Bit_type>::other
18060 _Bit_alloc_type;
18061 struct _Bvector_impl
18062 : public _Bit_alloc_type
18063 {
18064 _Bit_iterator _M_start;
18065 _Bit_iterator _M_finish;
18066 _Bit_type* _M_end_of_storage;
18067 _Bvector_impl()
18068 : _Bit_alloc_type(), _M_start(), _M_finish(), _M_end_of_storage(0)
18069 { }
18070 _Bvector_impl(const _Bit_alloc_type& __a)
18071 : _Bit_alloc_type(__a), _M_start(), _M_finish(), _M_end_of_storage(0)
18072 { }
18073 };
18074 public:
18075 typedef _Alloc allocator_type;
18076 _Bit_alloc_type&
18077 _M_get_Bit_allocator()
18078 { return *static_cast<_Bit_alloc_type*>(&this->_M_impl); }
18079 const _Bit_alloc_type&
18080 _M_get_Bit_allocator() const
18081 { return *static_cast<const _Bit_alloc_type*>(&this->_M_impl); }
18082 allocator_type
18083 get_allocator() const
18084 { return allocator_type(_M_get_Bit_allocator()); }
18085 _Bvector_base()
18086 : _M_impl() { }
18087 _Bvector_base(const allocator_type& __a)
18088 : _M_impl(__a) { }
18089 ~_Bvector_base()
18090 { this->_M_deallocate(); }
18091 protected:
18092 _Bvector_impl _M_impl;
18093 _Bit_type*
18094 _M_allocate(size_t __n)
18095 { return _M_impl.allocate((__n + int(_S_word_bit) - 1)
18096 / int(_S_word_bit)); }
18097 void
18098 _M_deallocate()
18099 {
18100 if (_M_impl._M_start._M_p)
18101 _M_impl.deallocate(_M_impl._M_start._M_p,
18102 _M_impl._M_end_of_storage - _M_impl._M_start._M_p);
18103 }
18104 };
18105}
18106namespace std __attribute__ ((__visibility__ ("default"))) {
18107template<typename _Alloc>
18108 class vector<bool, _Alloc> : protected _Bvector_base<_Alloc>
18109 {
18110 typedef _Bvector_base<_Alloc> _Base;
18111 public:
18112 typedef bool value_type;
18113 typedef size_t size_type;
18114 typedef ptrdiff_t difference_type;
18115 typedef _Bit_reference reference;
18116 typedef bool const_reference;
18117 typedef _Bit_reference* pointer;
18118 typedef const bool* const_pointer;
18119 typedef _Bit_iterator iterator;
18120 typedef _Bit_const_iterator const_iterator;
18121 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
18122 typedef std::reverse_iterator<iterator> reverse_iterator;
18123 typedef _Alloc allocator_type;
18124 allocator_type get_allocator() const
18125 { return _Base::get_allocator(); }
18126 protected:
18127 using _Base::_M_allocate;
18128 using _Base::_M_deallocate;
18129 using _Base::_M_get_Bit_allocator;
18130 public:
18131 vector()
18132 : _Base() { }
18133 explicit
18134 vector(const allocator_type& __a)
18135 : _Base(__a) { }
18136 explicit
18137 vector(size_type __n, const bool& __value = bool(),
18138 const allocator_type& __a = allocator_type())
18139 : _Base(__a)
18140 {
18141 _M_initialize(__n);
18142 std::fill(this->_M_impl._M_start._M_p, this->_M_impl._M_end_of_storage,
18143 __value ? ~0 : 0);
18144 }
18145 vector(const vector& __x)
18146 : _Base(__x._M_get_Bit_allocator())
18147 {
18148 _M_initialize(__x.size());
18149 _M_copy_aligned(__x.begin(), __x.end(), this->_M_impl._M_start);
18150 }
18151 template<typename _InputIterator>
18152 vector(_InputIterator __first, _InputIterator __last,
18153 const allocator_type& __a = allocator_type())
18154 : _Base(__a)
18155 {
18156 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
18157 _M_initialize_dispatch(__first, __last, _Integral());
18158 }
18159 ~vector() { }
18160 vector&
18161 operator=(const vector& __x)
18162 {
18163 if (&__x == this)
18164 return *this;
18165 if (__x.size() > capacity())
18166 {
18167 this->_M_deallocate();
18168 _M_initialize(__x.size());
18169 }
18170 this->_M_impl._M_finish = _M_copy_aligned(__x.begin(), __x.end(),
18171 begin());
18172 return *this;
18173 }
18174 void
18175 assign(size_type __n, const bool& __x)
18176 { _M_fill_assign(__n, __x); }
18177 template<typename _InputIterator>
18178 void
18179 assign(_InputIterator __first, _InputIterator __last)
18180 {
18181 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
18182 _M_assign_dispatch(__first, __last, _Integral());
18183 }
18184 iterator
18185 begin()
18186 { return this->_M_impl._M_start; }
18187 const_iterator
18188 begin() const
18189 { return this->_M_impl._M_start; }
18190 iterator
18191 end()
18192 { return this->_M_impl._M_finish; }
18193 const_iterator
18194 end() const
18195 { return this->_M_impl._M_finish; }
18196 reverse_iterator
18197 rbegin()
18198 { return reverse_iterator(end()); }
18199 const_reverse_iterator
18200 rbegin() const
18201 { return const_reverse_iterator(end()); }
18202 reverse_iterator
18203 rend()
18204 { return reverse_iterator(begin()); }
18205 const_reverse_iterator
18206 rend() const
18207 { return const_reverse_iterator(begin()); }
18208 size_type
18209 size() const
18210 { return size_type(end() - begin()); }
18211 size_type
18212 max_size() const
18213 {
18214 const size_type __isize =
18215 __gnu_cxx::__numeric_traits<difference_type>::__max
18216 - int(_S_word_bit) + 1;
18217 const size_type __asize = _M_get_Bit_allocator().max_size();
18218 return (__asize <= __isize / int(_S_word_bit)
18219 ? __asize * int(_S_word_bit) : __isize);
18220 }
18221 size_type
18222 capacity() const
18223 { return size_type(const_iterator(this->_M_impl._M_end_of_storage, 0)
18224 - begin()); }
18225 bool
18226 empty() const
18227 { return begin() == end(); }
18228 reference
18229 operator[](size_type __n)
18230 {
18231 return *iterator(this->_M_impl._M_start._M_p
18232 + __n / int(_S_word_bit), __n % int(_S_word_bit));
18233 }
18234 const_reference
18235 operator[](size_type __n) const
18236 {
18237 return *const_iterator(this->_M_impl._M_start._M_p
18238 + __n / int(_S_word_bit), __n % int(_S_word_bit));
18239 }
18240 protected:
18241 void
18242 _M_range_check(size_type __n) const
18243 {
18244 if (__n >= this->size())
18245 __throw_out_of_range(("vector<bool>::_M_range_check"));
18246 }
18247 public:
18248 reference
18249 at(size_type __n)
18250 { _M_range_check(__n); return (*this)[__n]; }
18251 const_reference
18252 at(size_type __n) const
18253 { _M_range_check(__n); return (*this)[__n]; }
18254 void
18255 reserve(size_type __n);
18256 reference
18257 front()
18258 { return *begin(); }
18259 const_reference
18260 front() const
18261 { return *begin(); }
18262 reference
18263 back()
18264 { return *(end() - 1); }
18265 const_reference
18266 back() const
18267 { return *(end() - 1); }
18268 void
18269 data() { }
18270 void
18271 push_back(bool __x)
18272 {
18273 if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_of_storage)
18274 *this->_M_impl._M_finish++ = __x;
18275 else
18276 _M_insert_aux(end(), __x);
18277 }
18278 void
18279 swap(vector& __x)
18280 {
18281 std::swap(this->_M_impl._M_start, __x._M_impl._M_start);
18282 std::swap(this->_M_impl._M_finish, __x._M_impl._M_finish);
18283 std::swap(this->_M_impl._M_end_of_storage,
18284 __x._M_impl._M_end_of_storage);
18285 std::__alloc_swap<typename _Base::_Bit_alloc_type>::
18286 _S_do_it(_M_get_Bit_allocator(), __x._M_get_Bit_allocator());
18287 }
18288 static void
18289 swap(reference __x, reference __y)
18290 {
18291 bool __tmp = __x;
18292 __x = __y;
18293 __y = __tmp;
18294 }
18295 iterator
18296 insert(iterator __position, const bool& __x = bool())
18297 {
18298 const difference_type __n = __position - begin();
18299 if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_of_storage
18300 && __position == end())
18301 *this->_M_impl._M_finish++ = __x;
18302 else
18303 _M_insert_aux(__position, __x);
18304 return begin() + __n;
18305 }
18306 template<typename _InputIterator>
18307 void
18308 insert(iterator __position,
18309 _InputIterator __first, _InputIterator __last)
18310 {
18311 typedef typename std::__is_integer<_InputIterator>::__type _Integral;
18312 _M_insert_dispatch(__position, __first, __last, _Integral());
18313 }
18314 void
18315 insert(iterator __position, size_type __n, const bool& __x)
18316 { _M_fill_insert(__position, __n, __x); }
18317 void
18318 pop_back()
18319 { --this->_M_impl._M_finish; }
18320 iterator
18321 erase(iterator __position)
18322 {
18323 if (__position + 1 != end())
18324 std::copy(__position + 1, end(), __position);
18325 --this->_M_impl._M_finish;
18326 return __position;
18327 }
18328 iterator
18329 erase(iterator __first, iterator __last)
18330 {
18331 _M_erase_at_end(std::copy(__last, end(), __first));
18332 return __first;
18333 }
18334 void
18335 resize(size_type __new_size, bool __x = bool())
18336 {
18337 if (__new_size < size())
18338 _M_erase_at_end(begin() + difference_type(__new_size));
18339 else
18340 insert(end(), __new_size - size(), __x);
18341 }
18342 void
18343 flip()
18344 {
18345 for (_Bit_type * __p = this->_M_impl._M_start._M_p;
18346 __p != this->_M_impl._M_end_of_storage; ++__p)
18347 *__p = ~*__p;
18348 }
18349 void
18350 clear()
18351 { _M_erase_at_end(begin()); }
18352 protected:
18353 iterator
18354 _M_copy_aligned(const_iterator __first, const_iterator __last,
18355 iterator __result)
18356 {
18357 _Bit_type* __q = std::copy(__first._M_p, __last._M_p, __result._M_p);
18358 return std::copy(const_iterator(__last._M_p, 0), __last,
18359 iterator(__q, 0));
18360 }
18361 void
18362 _M_initialize(size_type __n)
18363 {
18364 _Bit_type* __q = this->_M_allocate(__n);
18365 this->_M_impl._M_end_of_storage = (__q
18366 + ((__n + int(_S_word_bit) - 1)
18367 / int(_S_word_bit)));
18368 this->_M_impl._M_start = iterator(__q, 0);
18369 this->_M_impl._M_finish = this->_M_impl._M_start + difference_type(__n);
18370 }
18371 template<typename _Integer>
18372 void
18373 _M_initialize_dispatch(_Integer __n, _Integer __x, __true_type)
18374 {
18375 _M_initialize(static_cast<size_type>(__n));
18376 std::fill(this->_M_impl._M_start._M_p,
18377 this->_M_impl._M_end_of_storage, __x ? ~0 : 0);
18378 }
18379 template<typename _InputIterator>
18380 void
18381 _M_initialize_dispatch(_InputIterator __first, _InputIterator __last,
18382 __false_type)
18383 { _M_initialize_range(__first, __last,
18384 std::__iterator_category(__first)); }
18385 template<typename _InputIterator>
18386 void
18387 _M_initialize_range(_InputIterator __first, _InputIterator __last,
18388 std::input_iterator_tag)
18389 {
18390 for (; __first != __last; ++__first)
18391 push_back(*__first);
18392 }
18393 template<typename _ForwardIterator>
18394 void
18395 _M_initialize_range(_ForwardIterator __first, _ForwardIterator __last,
18396 std::forward_iterator_tag)
18397 {
18398 const size_type __n = std::distance(__first, __last);
18399 _M_initialize(__n);
18400 std::copy(__first, __last, this->_M_impl._M_start);
18401 }
18402 template<typename _Integer>
18403 void
18404 _M_assign_dispatch(_Integer __n, _Integer __val, __true_type)
18405 { _M_fill_assign(__n, __val); }
18406 template<class _InputIterator>
18407 void
18408 _M_assign_dispatch(_InputIterator __first, _InputIterator __last,
18409 __false_type)
18410 { _M_assign_aux(__first, __last, std::__iterator_category(__first)); }
18411 void
18412 _M_fill_assign(size_t __n, bool __x)
18413 {
18414 if (__n > size())
18415 {
18416 std::fill(this->_M_impl._M_start._M_p,
18417 this->_M_impl._M_end_of_storage, __x ? ~0 : 0);
18418 insert(end(), __n - size(), __x);
18419 }
18420 else
18421 {
18422 _M_erase_at_end(begin() + __n);
18423 std::fill(this->_M_impl._M_start._M_p,
18424 this->_M_impl._M_end_of_storage, __x ? ~0 : 0);
18425 }
18426 }
18427 template<typename _InputIterator>
18428 void
18429 _M_assign_aux(_InputIterator __first, _InputIterator __last,
18430 std::input_iterator_tag)
18431 {
18432 iterator __cur = begin();
18433 for (; __first != __last && __cur != end(); ++__cur, ++__first)
18434 *__cur = *__first;
18435 if (__first == __last)
18436 _M_erase_at_end(__cur);
18437 else
18438 insert(end(), __first, __last);
18439 }
18440 template<typename _ForwardIterator>
18441 void
18442 _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
18443 std::forward_iterator_tag)
18444 {
18445 const size_type __len = std::distance(__first, __last);
18446 if (__len < size())
18447 _M_erase_at_end(std::copy(__first, __last, begin()));
18448 else
18449 {
18450 _ForwardIterator __mid = __first;
18451 std::advance(__mid, size());
18452 std::copy(__first, __mid, begin());
18453 insert(end(), __mid, __last);
18454 }
18455 }
18456 template<typename _Integer>
18457 void
18458 _M_insert_dispatch(iterator __pos, _Integer __n, _Integer __x,
18459 __true_type)
18460 { _M_fill_insert(__pos, __n, __x); }
18461 template<typename _InputIterator>
18462 void
18463 _M_insert_dispatch(iterator __pos,
18464 _InputIterator __first, _InputIterator __last,
18465 __false_type)
18466 { _M_insert_range(__pos, __first, __last,
18467 std::__iterator_category(__first)); }
18468 void
18469 _M_fill_insert(iterator __position, size_type __n, bool __x);
18470 template<typename _InputIterator>
18471 void
18472 _M_insert_range(iterator __pos, _InputIterator __first,
18473 _InputIterator __last, std::input_iterator_tag)
18474 {
18475 for (; __first != __last; ++__first)
18476 {
18477 __pos = insert(__pos, *__first);
18478 ++__pos;
18479 }
18480 }
18481 template<typename _ForwardIterator>
18482 void
18483 _M_insert_range(iterator __position, _ForwardIterator __first,
18484 _ForwardIterator __last, std::forward_iterator_tag);
18485 void
18486 _M_insert_aux(iterator __position, bool __x);
18487 size_type
18488 _M_check_len(size_type __n, const char* __s) const
18489 {
18490 if (max_size() - size() < __n)
18491 __throw_length_error((__s));
18492 const size_type __len = size() + std::max(size(), __n);
18493 return (__len < size() || __len > max_size()) ? max_size() : __len;
18494 }
18495 void
18496 _M_erase_at_end(iterator __pos)
18497 { this->_M_impl._M_finish = __pos; }
18498 };
18499}
18500namespace std __attribute__ ((__visibility__ ("default"))) {
18501 template<typename _Tp, typename _Alloc>
18502 void
18503 vector<_Tp, _Alloc>::
18504 reserve(size_type __n)
18505 {
18506 if (__n > this->max_size())
18507 __throw_length_error(("vector::reserve"));
18508 if (this->capacity() < __n)
18509 {
18510 const size_type __old_size = size();
18511 pointer __tmp = _M_allocate_and_copy(__n,
18512 (this->_M_impl._M_start),
18513 (this->_M_impl._M_finish));
18514 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
18515 _M_get_Tp_allocator());
18516 _M_deallocate(this->_M_impl._M_start,
18517 this->_M_impl._M_end_of_storage
18518 - this->_M_impl._M_start);
18519 this->_M_impl._M_start = __tmp;
18520 this->_M_impl._M_finish = __tmp + __old_size;
18521 this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __n;
18522 }
18523 }
18524 template<typename _Tp, typename _Alloc>
18525 typename vector<_Tp, _Alloc>::iterator
18526 vector<_Tp, _Alloc>::
18527 insert(iterator __position, const value_type& __x)
18528 {
18529 const size_type __n = __position - begin();
18530 if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage
18531 && __position == end())
18532 {
18533 this->_M_impl.construct(this->_M_impl._M_finish, __x);
18534 ++this->_M_impl._M_finish;
18535 }
18536 else
18537 {
18538 _M_insert_aux(__position, __x);
18539 }
18540 return iterator(this->_M_impl._M_start + __n);
18541 }
18542 template<typename _Tp, typename _Alloc>
18543 typename vector<_Tp, _Alloc>::iterator
18544 vector<_Tp, _Alloc>::
18545 erase(iterator __position)
18546 {
18547 if (__position + 1 != end())
18548 std::copy(__position + 1, end(), __position);
18549 --this->_M_impl._M_finish;
18550 this->_M_impl.destroy(this->_M_impl._M_finish);
18551 return __position;
18552 }
18553 template<typename _Tp, typename _Alloc>
18554 typename vector<_Tp, _Alloc>::iterator
18555 vector<_Tp, _Alloc>::
18556 erase(iterator __first, iterator __last)
18557 {
18558 if (__last != end())
18559 std::copy(__last, end(), __first);
18560 _M_erase_at_end(__first.base() + (end() - __last));
18561 return __first;
18562 }
18563 template<typename _Tp, typename _Alloc>
18564 vector<_Tp, _Alloc>&
18565 vector<_Tp, _Alloc>::
18566 operator=(const vector<_Tp, _Alloc>& __x)
18567 {
18568 if (&__x != this)
18569 {
18570 const size_type __xlen = __x.size();
18571 if (__xlen > capacity())
18572 {
18573 pointer __tmp = _M_allocate_and_copy(__xlen, __x.begin(),
18574 __x.end());
18575 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
18576 _M_get_Tp_allocator());
18577 _M_deallocate(this->_M_impl._M_start,
18578 this->_M_impl._M_end_of_storage
18579 - this->_M_impl._M_start);
18580 this->_M_impl._M_start = __tmp;
18581 this->_M_impl._M_end_of_storage = this->_M_impl._M_start + __xlen;
18582 }
18583 else if (size() >= __xlen)
18584 {
18585 std::_Destroy(std::copy(__x.begin(), __x.end(), begin()),
18586 end(), _M_get_Tp_allocator());
18587 }
18588 else
18589 {
18590 std::copy(__x._M_impl._M_start, __x._M_impl._M_start + size(),
18591 this->_M_impl._M_start);
18592 std::__uninitialized_copy_a(__x._M_impl._M_start + size(),
18593 __x._M_impl._M_finish,
18594 this->_M_impl._M_finish,
18595 _M_get_Tp_allocator());
18596 }
18597 this->_M_impl._M_finish = this->_M_impl._M_start + __xlen;
18598 }
18599 return *this;
18600 }
18601 template<typename _Tp, typename _Alloc>
18602 void
18603 vector<_Tp, _Alloc>::
18604 _M_fill_assign(size_t __n, const value_type& __val)
18605 {
18606 if (__n > capacity())
18607 {
18608 vector __tmp(__n, __val, _M_get_Tp_allocator());
18609 __tmp.swap(*this);
18610 }
18611 else if (__n > size())
18612 {
18613 std::fill(begin(), end(), __val);
18614 std::__uninitialized_fill_n_a(this->_M_impl._M_finish,
18615 __n - size(), __val,
18616 _M_get_Tp_allocator());
18617 this->_M_impl._M_finish += __n - size();
18618 }
18619 else
18620 _M_erase_at_end(std::fill_n(this->_M_impl._M_start, __n, __val));
18621 }
18622 template<typename _Tp, typename _Alloc>
18623 template<typename _InputIterator>
18624 void
18625 vector<_Tp, _Alloc>::
18626 _M_assign_aux(_InputIterator __first, _InputIterator __last,
18627 std::input_iterator_tag)
18628 {
18629 pointer __cur(this->_M_impl._M_start);
18630 for (; __first != __last && __cur != this->_M_impl._M_finish;
18631 ++__cur, ++__first)
18632 *__cur = *__first;
18633 if (__first == __last)
18634 _M_erase_at_end(__cur);
18635 else
18636 insert(end(), __first, __last);
18637 }
18638 template<typename _Tp, typename _Alloc>
18639 template<typename _ForwardIterator>
18640 void
18641 vector<_Tp, _Alloc>::
18642 _M_assign_aux(_ForwardIterator __first, _ForwardIterator __last,
18643 std::forward_iterator_tag)
18644 {
18645 const size_type __len = std::distance(__first, __last);
18646 if (__len > capacity())
18647 {
18648 pointer __tmp(_M_allocate_and_copy(__len, __first, __last));
18649 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
18650 _M_get_Tp_allocator());
18651 _M_deallocate(this->_M_impl._M_start,
18652 this->_M_impl._M_end_of_storage
18653 - this->_M_impl._M_start);
18654 this->_M_impl._M_start = __tmp;
18655 this->_M_impl._M_finish = this->_M_impl._M_start + __len;
18656 this->_M_impl._M_end_of_storage = this->_M_impl._M_finish;
18657 }
18658 else if (size() >= __len)
18659 _M_erase_at_end(std::copy(__first, __last, this->_M_impl._M_start));
18660 else
18661 {
18662 _ForwardIterator __mid = __first;
18663 std::advance(__mid, size());
18664 std::copy(__first, __mid, this->_M_impl._M_start);
18665 this->_M_impl._M_finish =
18666 std::__uninitialized_copy_a(__mid, __last,
18667 this->_M_impl._M_finish,
18668 _M_get_Tp_allocator());
18669 }
18670 }
18671 template<typename _Tp, typename _Alloc>
18672 void
18673 vector<_Tp, _Alloc>::
18674 _M_insert_aux(iterator __position, const _Tp& __x)
18675 {
18676 if (this->_M_impl._M_finish != this->_M_impl._M_end_of_storage)
18677 {
18678 this->_M_impl.construct(this->_M_impl._M_finish,
18679 (*(this->_M_impl._M_finish - 1)));
18680 ++this->_M_impl._M_finish;
18681 _Tp __x_copy = __x;
18682 std::copy_backward(__position.base(), this->_M_impl._M_finish - 2, this->_M_impl._M_finish - 1);
18683 *__position = __x_copy;
18684 }
18685 else
18686 {
18687 const size_type __len =
18688 _M_check_len(size_type(1), "vector::_M_insert_aux");
18689 const size_type __elems_before = __position - begin();
18690 pointer __new_start(this->_M_allocate(__len));
18691 pointer __new_finish(__new_start);
18692 try
18693 {
18694 this->_M_impl.construct(__new_start + __elems_before,
18695 __x);
18696 __new_finish = 0;
18697 __new_finish =
18698 std::__uninitialized_move_a(this->_M_impl._M_start,
18699 __position.base(), __new_start,
18700 _M_get_Tp_allocator());
18701 ++__new_finish;
18702 __new_finish =
18703 std::__uninitialized_move_a(__position.base(),
18704 this->_M_impl._M_finish,
18705 __new_finish,
18706 _M_get_Tp_allocator());
18707 }
18708 catch(...)
18709 {
18710 if (!__new_finish)
18711 this->_M_impl.destroy(__new_start + __elems_before);
18712 else
18713 std::_Destroy(__new_start, __new_finish, _M_get_Tp_allocator());
18714 _M_deallocate(__new_start, __len);
18715 throw;
18716 }
18717 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
18718 _M_get_Tp_allocator());
18719 _M_deallocate(this->_M_impl._M_start,
18720 this->_M_impl._M_end_of_storage
18721 - this->_M_impl._M_start);
18722 this->_M_impl._M_start = __new_start;
18723 this->_M_impl._M_finish = __new_finish;
18724 this->_M_impl._M_end_of_storage = __new_start + __len;
18725 }
18726 }
18727 template<typename _Tp, typename _Alloc>
18728 void
18729 vector<_Tp, _Alloc>::
18730 _M_fill_insert(iterator __position, size_type __n, const value_type& __x)
18731 {
18732 if (__n != 0)
18733 {
18734 if (size_type(this->_M_impl._M_end_of_storage
18735 - this->_M_impl._M_finish) >= __n)
18736 {
18737 value_type __x_copy = __x;
18738 const size_type __elems_after = end() - __position;
18739 pointer __old_finish(this->_M_impl._M_finish);
18740 if (__elems_after > __n)
18741 {
18742 std::__uninitialized_move_a(this->_M_impl._M_finish - __n,
18743 this->_M_impl._M_finish,
18744 this->_M_impl._M_finish,
18745 _M_get_Tp_allocator());
18746 this->_M_impl._M_finish += __n;
18747 std::copy_backward(__position.base(), __old_finish - __n, __old_finish);
18748 std::fill(__position.base(), __position.base() + __n,
18749 __x_copy);
18750 }
18751 else
18752 {
18753 std::__uninitialized_fill_n_a(this->_M_impl._M_finish,
18754 __n - __elems_after,
18755 __x_copy,
18756 _M_get_Tp_allocator());
18757 this->_M_impl._M_finish += __n - __elems_after;
18758 std::__uninitialized_move_a(__position.base(), __old_finish,
18759 this->_M_impl._M_finish,
18760 _M_get_Tp_allocator());
18761 this->_M_impl._M_finish += __elems_after;
18762 std::fill(__position.base(), __old_finish, __x_copy);
18763 }
18764 }
18765 else
18766 {
18767 const size_type __len =
18768 _M_check_len(__n, "vector::_M_fill_insert");
18769 const size_type __elems_before = __position - begin();
18770 pointer __new_start(this->_M_allocate(__len));
18771 pointer __new_finish(__new_start);
18772 try
18773 {
18774 std::__uninitialized_fill_n_a(__new_start + __elems_before,
18775 __n, __x,
18776 _M_get_Tp_allocator());
18777 __new_finish = 0;
18778 __new_finish =
18779 std::__uninitialized_move_a(this->_M_impl._M_start,
18780 __position.base(),
18781 __new_start,
18782 _M_get_Tp_allocator());
18783 __new_finish += __n;
18784 __new_finish =
18785 std::__uninitialized_move_a(__position.base(),
18786 this->_M_impl._M_finish,
18787 __new_finish,
18788 _M_get_Tp_allocator());
18789 }
18790 catch(...)
18791 {
18792 if (!__new_finish)
18793 std::_Destroy(__new_start + __elems_before,
18794 __new_start + __elems_before + __n,
18795 _M_get_Tp_allocator());
18796 else
18797 std::_Destroy(__new_start, __new_finish,
18798 _M_get_Tp_allocator());
18799 _M_deallocate(__new_start, __len);
18800 throw;
18801 }
18802 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
18803 _M_get_Tp_allocator());
18804 _M_deallocate(this->_M_impl._M_start,
18805 this->_M_impl._M_end_of_storage
18806 - this->_M_impl._M_start);
18807 this->_M_impl._M_start = __new_start;
18808 this->_M_impl._M_finish = __new_finish;
18809 this->_M_impl._M_end_of_storage = __new_start + __len;
18810 }
18811 }
18812 }
18813 template<typename _Tp, typename _Alloc>
18814 template<typename _InputIterator>
18815 void
18816 vector<_Tp, _Alloc>::
18817 _M_range_insert(iterator __pos, _InputIterator __first,
18818 _InputIterator __last, std::input_iterator_tag)
18819 {
18820 for (; __first != __last; ++__first)
18821 {
18822 __pos = insert(__pos, *__first);
18823 ++__pos;
18824 }
18825 }
18826 template<typename _Tp, typename _Alloc>
18827 template<typename _ForwardIterator>
18828 void
18829 vector<_Tp, _Alloc>::
18830 _M_range_insert(iterator __position, _ForwardIterator __first,
18831 _ForwardIterator __last, std::forward_iterator_tag)
18832 {
18833 if (__first != __last)
18834 {
18835 const size_type __n = std::distance(__first, __last);
18836 if (size_type(this->_M_impl._M_end_of_storage
18837 - this->_M_impl._M_finish) >= __n)
18838 {
18839 const size_type __elems_after = end() - __position;
18840 pointer __old_finish(this->_M_impl._M_finish);
18841 if (__elems_after > __n)
18842 {
18843 std::__uninitialized_move_a(this->_M_impl._M_finish - __n,
18844 this->_M_impl._M_finish,
18845 this->_M_impl._M_finish,
18846 _M_get_Tp_allocator());
18847 this->_M_impl._M_finish += __n;
18848 std::copy_backward(__position.base(), __old_finish - __n, __old_finish);
18849 std::copy(__first, __last, __position);
18850 }
18851 else
18852 {
18853 _ForwardIterator __mid = __first;
18854 std::advance(__mid, __elems_after);
18855 std::__uninitialized_copy_a(__mid, __last,
18856 this->_M_impl._M_finish,
18857 _M_get_Tp_allocator());
18858 this->_M_impl._M_finish += __n - __elems_after;
18859 std::__uninitialized_move_a(__position.base(),
18860 __old_finish,
18861 this->_M_impl._M_finish,
18862 _M_get_Tp_allocator());
18863 this->_M_impl._M_finish += __elems_after;
18864 std::copy(__first, __mid, __position);
18865 }
18866 }
18867 else
18868 {
18869 const size_type __len =
18870 _M_check_len(__n, "vector::_M_range_insert");
18871 pointer __new_start(this->_M_allocate(__len));
18872 pointer __new_finish(__new_start);
18873 try
18874 {
18875 __new_finish =
18876 std::__uninitialized_move_a(this->_M_impl._M_start,
18877 __position.base(),
18878 __new_start,
18879 _M_get_Tp_allocator());
18880 __new_finish =
18881 std::__uninitialized_copy_a(__first, __last,
18882 __new_finish,
18883 _M_get_Tp_allocator());
18884 __new_finish =
18885 std::__uninitialized_move_a(__position.base(),
18886 this->_M_impl._M_finish,
18887 __new_finish,
18888 _M_get_Tp_allocator());
18889 }
18890 catch(...)
18891 {
18892 std::_Destroy(__new_start, __new_finish,
18893 _M_get_Tp_allocator());
18894 _M_deallocate(__new_start, __len);
18895 throw;
18896 }
18897 std::_Destroy(this->_M_impl._M_start, this->_M_impl._M_finish,
18898 _M_get_Tp_allocator());
18899 _M_deallocate(this->_M_impl._M_start,
18900 this->_M_impl._M_end_of_storage
18901 - this->_M_impl._M_start);
18902 this->_M_impl._M_start = __new_start;
18903 this->_M_impl._M_finish = __new_finish;
18904 this->_M_impl._M_end_of_storage = __new_start + __len;
18905 }
18906 }
18907 }
18908 template<typename _Alloc>
18909 void
18910 vector<bool, _Alloc>::
18911 reserve(size_type __n)
18912 {
18913 if (__n > this->max_size())
18914 __throw_length_error(("vector::reserve"));
18915 if (this->capacity() < __n)
18916 {
18917 _Bit_type* __q = this->_M_allocate(__n);
18918 this->_M_impl._M_finish = _M_copy_aligned(begin(), end(),
18919 iterator(__q, 0));
18920 this->_M_deallocate();
18921 this->_M_impl._M_start = iterator(__q, 0);
18922 this->_M_impl._M_end_of_storage = (__q + (__n + int(_S_word_bit) - 1)
18923 / int(_S_word_bit));
18924 }
18925 }
18926 template<typename _Alloc>
18927 void
18928 vector<bool, _Alloc>::
18929 _M_fill_insert(iterator __position, size_type __n, bool __x)
18930 {
18931 if (__n == 0)
18932 return;
18933 if (capacity() - size() >= __n)
18934 {
18935 std::copy_backward(__position, end(),
18936 this->_M_impl._M_finish + difference_type(__n));
18937 std::fill(__position, __position + difference_type(__n), __x);
18938 this->_M_impl._M_finish += difference_type(__n);
18939 }
18940 else
18941 {
18942 const size_type __len =
18943 _M_check_len(__n, "vector<bool>::_M_fill_insert");
18944 _Bit_type * __q = this->_M_allocate(__len);
18945 iterator __i = _M_copy_aligned(begin(), __position,
18946 iterator(__q, 0));
18947 std::fill(__i, __i + difference_type(__n), __x);
18948 this->_M_impl._M_finish = std::copy(__position, end(),
18949 __i + difference_type(__n));
18950 this->_M_deallocate();
18951 this->_M_impl._M_end_of_storage = (__q + ((__len
18952 + int(_S_word_bit) - 1)
18953 / int(_S_word_bit)));
18954 this->_M_impl._M_start = iterator(__q, 0);
18955 }
18956 }
18957 template<typename _Alloc>
18958 template<typename _ForwardIterator>
18959 void
18960 vector<bool, _Alloc>::
18961 _M_insert_range(iterator __position, _ForwardIterator __first,
18962 _ForwardIterator __last, std::forward_iterator_tag)
18963 {
18964 if (__first != __last)
18965 {
18966 size_type __n = std::distance(__first, __last);
18967 if (capacity() - size() >= __n)
18968 {
18969 std::copy_backward(__position, end(),
18970 this->_M_impl._M_finish
18971 + difference_type(__n));
18972 std::copy(__first, __last, __position);
18973 this->_M_impl._M_finish += difference_type(__n);
18974 }
18975 else
18976 {
18977 const size_type __len =
18978 _M_check_len(__n, "vector<bool>::_M_insert_range");
18979 _Bit_type * __q = this->_M_allocate(__len);
18980 iterator __i = _M_copy_aligned(begin(), __position,
18981 iterator(__q, 0));
18982 __i = std::copy(__first, __last, __i);
18983 this->_M_impl._M_finish = std::copy(__position, end(), __i);
18984 this->_M_deallocate();
18985 this->_M_impl._M_end_of_storage = (__q
18986 + ((__len
18987 + int(_S_word_bit) - 1)
18988 / int(_S_word_bit)));
18989 this->_M_impl._M_start = iterator(__q, 0);
18990 }
18991 }
18992 }
18993 template<typename _Alloc>
18994 void
18995 vector<bool, _Alloc>::
18996 _M_insert_aux(iterator __position, bool __x)
18997 {
18998 if (this->_M_impl._M_finish._M_p != this->_M_impl._M_end_of_storage)
18999 {
19000 std::copy_backward(__position, this->_M_impl._M_finish,
19001 this->_M_impl._M_finish + 1);
19002 *__position = __x;
19003 ++this->_M_impl._M_finish;
19004 }
19005 else
19006 {
19007 const size_type __len =
19008 _M_check_len(size_type(1), "vector<bool>::_M_insert_aux");
19009 _Bit_type * __q = this->_M_allocate(__len);
19010 iterator __i = _M_copy_aligned(begin(), __position,
19011 iterator(__q, 0));
19012 *__i++ = __x;
19013 this->_M_impl._M_finish = std::copy(__position, end(), __i);
19014 this->_M_deallocate();
19015 this->_M_impl._M_end_of_storage = (__q + ((__len
19016 + int(_S_word_bit) - 1)
19017 / int(_S_word_bit)));
19018 this->_M_impl._M_start = iterator(__q, 0);
19019 }
19020 }
19021}
19022
19023namespace std __attribute__ ((__visibility__ ("default"))) {
19024 enum _Rb_tree_color { _S_red = false, _S_black = true };
19025 struct _Rb_tree_node_base
19026 {
19027 typedef _Rb_tree_node_base* _Base_ptr;
19028 typedef const _Rb_tree_node_base* _Const_Base_ptr;
19029 _Rb_tree_color _M_color;
19030 _Base_ptr _M_parent;
19031 _Base_ptr _M_left;
19032 _Base_ptr _M_right;
19033 static _Base_ptr
19034 _S_minimum(_Base_ptr __x)
19035 {
19036 while (__x->_M_left != 0) __x = __x->_M_left;
19037 return __x;
19038 }
19039 static _Const_Base_ptr
19040 _S_minimum(_Const_Base_ptr __x)
19041 {
19042 while (__x->_M_left != 0) __x = __x->_M_left;
19043 return __x;
19044 }
19045 static _Base_ptr
19046 _S_maximum(_Base_ptr __x)
19047 {
19048 while (__x->_M_right != 0) __x = __x->_M_right;
19049 return __x;
19050 }
19051 static _Const_Base_ptr
19052 _S_maximum(_Const_Base_ptr __x)
19053 {
19054 while (__x->_M_right != 0) __x = __x->_M_right;
19055 return __x;
19056 }
19057 };
19058 template<typename _Val>
19059 struct _Rb_tree_node : public _Rb_tree_node_base
19060 {
19061 typedef _Rb_tree_node<_Val>* _Link_type;
19062 _Val _M_value_field;
19063 };
19064 _Rb_tree_node_base*
19065 _Rb_tree_increment(_Rb_tree_node_base* __x);
19066 const _Rb_tree_node_base*
19067 _Rb_tree_increment(const _Rb_tree_node_base* __x);
19068 _Rb_tree_node_base*
19069 _Rb_tree_decrement(_Rb_tree_node_base* __x);
19070 const _Rb_tree_node_base*
19071 _Rb_tree_decrement(const _Rb_tree_node_base* __x);
19072 template<typename _Tp>
19073 struct _Rb_tree_iterator
19074 {
19075 typedef _Tp value_type;
19076 typedef _Tp& reference;
19077 typedef _Tp* pointer;
19078 typedef bidirectional_iterator_tag iterator_category;
19079 typedef ptrdiff_t difference_type;
19080 typedef _Rb_tree_iterator<_Tp> _Self;
19081 typedef _Rb_tree_node_base::_Base_ptr _Base_ptr;
19082 typedef _Rb_tree_node<_Tp>* _Link_type;
19083 _Rb_tree_iterator()
19084 : _M_node() { }
19085 explicit
19086 _Rb_tree_iterator(_Link_type __x)
19087 : _M_node(__x) { }
19088 reference
19089 operator*() const
19090 { return static_cast<_Link_type>(_M_node)->_M_value_field; }
19091 pointer
19092 operator->() const
19093 { return &static_cast<_Link_type>(_M_node)->_M_value_field; }
19094 _Self&
19095 operator++()
19096 {
19097 _M_node = _Rb_tree_increment(_M_node);
19098 return *this;
19099 }
19100 _Self
19101 operator++(int)
19102 {
19103 _Self __tmp = *this;
19104 _M_node = _Rb_tree_increment(_M_node);
19105 return __tmp;
19106 }
19107 _Self&
19108 operator--()
19109 {
19110 _M_node = _Rb_tree_decrement(_M_node);
19111 return *this;
19112 }
19113 _Self
19114 operator--(int)
19115 {
19116 _Self __tmp = *this;
19117 _M_node = _Rb_tree_decrement(_M_node);
19118 return __tmp;
19119 }
19120 bool
19121 operator==(const _Self& __x) const
19122 { return _M_node == __x._M_node; }
19123 bool
19124 operator!=(const _Self& __x) const
19125 { return _M_node != __x._M_node; }
19126 _Base_ptr _M_node;
19127 };
19128 template<typename _Tp>
19129 struct _Rb_tree_const_iterator
19130 {
19131 typedef _Tp value_type;
19132 typedef const _Tp& reference;
19133 typedef const _Tp* pointer;
19134 typedef _Rb_tree_iterator<_Tp> iterator;
19135 typedef bidirectional_iterator_tag iterator_category;
19136 typedef ptrdiff_t difference_type;
19137 typedef _Rb_tree_const_iterator<_Tp> _Self;
19138 typedef _Rb_tree_node_base::_Const_Base_ptr _Base_ptr;
19139 typedef const _Rb_tree_node<_Tp>* _Link_type;
19140 _Rb_tree_const_iterator()
19141 : _M_node() { }
19142 explicit
19143 _Rb_tree_const_iterator(_Link_type __x)
19144 : _M_node(__x) { }
19145 _Rb_tree_const_iterator(const iterator& __it)
19146 : _M_node(__it._M_node) { }
19147 reference
19148 operator*() const
19149 { return static_cast<_Link_type>(_M_node)->_M_value_field; }
19150 pointer
19151 operator->() const
19152 { return &static_cast<_Link_type>(_M_node)->_M_value_field; }
19153 _Self&
19154 operator++()
19155 {
19156 _M_node = _Rb_tree_increment(_M_node);
19157 return *this;
19158 }
19159 _Self
19160 operator++(int)
19161 {
19162 _Self __tmp = *this;
19163 _M_node = _Rb_tree_increment(_M_node);
19164 return __tmp;
19165 }
19166 _Self&
19167 operator--()
19168 {
19169 _M_node = _Rb_tree_decrement(_M_node);
19170 return *this;
19171 }
19172 _Self
19173 operator--(int)
19174 {
19175 _Self __tmp = *this;
19176 _M_node = _Rb_tree_decrement(_M_node);
19177 return __tmp;
19178 }
19179 bool
19180 operator==(const _Self& __x) const
19181 { return _M_node == __x._M_node; }
19182 bool
19183 operator!=(const _Self& __x) const
19184 { return _M_node != __x._M_node; }
19185 _Base_ptr _M_node;
19186 };
19187 template<typename _Val>
19188 inline bool
19189 operator==(const _Rb_tree_iterator<_Val>& __x,
19190 const _Rb_tree_const_iterator<_Val>& __y)
19191 { return __x._M_node == __y._M_node; }
19192 template<typename _Val>
19193 inline bool
19194 operator!=(const _Rb_tree_iterator<_Val>& __x,
19195 const _Rb_tree_const_iterator<_Val>& __y)
19196 { return __x._M_node != __y._M_node; }
19197 void
19198 _Rb_tree_insert_and_rebalance(const bool __insert_left,
19199 _Rb_tree_node_base* __x,
19200 _Rb_tree_node_base* __p,
19201 _Rb_tree_node_base& __header);
19202 _Rb_tree_node_base*
19203 _Rb_tree_rebalance_for_erase(_Rb_tree_node_base* const __z,
19204 _Rb_tree_node_base& __header);
19205 template<typename _Key, typename _Val, typename _KeyOfValue,
19206 typename _Compare, typename _Alloc = allocator<_Val> >
19207 class _Rb_tree
19208 {
19209 typedef typename _Alloc::template rebind<_Rb_tree_node<_Val> >::other
19210 _Node_allocator;
19211 protected:
19212 typedef _Rb_tree_node_base* _Base_ptr;
19213 typedef const _Rb_tree_node_base* _Const_Base_ptr;
19214 public:
19215 typedef _Key key_type;
19216 typedef _Val value_type;
19217 typedef value_type* pointer;
19218 typedef const value_type* const_pointer;
19219 typedef value_type& reference;
19220 typedef const value_type& const_reference;
19221 typedef _Rb_tree_node<_Val>* _Link_type;
19222 typedef const _Rb_tree_node<_Val>* _Const_Link_type;
19223 typedef size_t size_type;
19224 typedef ptrdiff_t difference_type;
19225 typedef _Alloc allocator_type;
19226 _Node_allocator&
19227 _M_get_Node_allocator()
19228 { return *static_cast<_Node_allocator*>(&this->_M_impl); }
19229 const _Node_allocator&
19230 _M_get_Node_allocator() const
19231 { return *static_cast<const _Node_allocator*>(&this->_M_impl); }
19232 allocator_type
19233 get_allocator() const
19234 { return allocator_type(_M_get_Node_allocator()); }
19235 protected:
19236 _Link_type
19237 _M_get_node()
19238 { return _M_impl._Node_allocator::allocate(1); }
19239 void
19240 _M_put_node(_Link_type __p)
19241 { _M_impl._Node_allocator::deallocate(__p, 1); }
19242 _Link_type
19243 _M_create_node(const value_type& __x)
19244 {
19245 _Link_type __tmp = _M_get_node();
19246 try
19247 { get_allocator().construct(&__tmp->_M_value_field, __x); }
19248 catch(...)
19249 {
19250 _M_put_node(__tmp);
19251 throw;
19252 }
19253 return __tmp;
19254 }
19255 void
19256 _M_destroy_node(_Link_type __p)
19257 {
19258 get_allocator().destroy(&__p->_M_value_field);
19259 _M_put_node(__p);
19260 }
19261 _Link_type
19262 _M_clone_node(_Const_Link_type __x)
19263 {
19264 _Link_type __tmp = _M_create_node(__x->_M_value_field);
19265 __tmp->_M_color = __x->_M_color;
19266 __tmp->_M_left = 0;
19267 __tmp->_M_right = 0;
19268 return __tmp;
19269 }
19270 protected:
19271 template<typename _Key_compare,
19272 bool _Is_pod_comparator = __is_pod(_Key_compare)>
19273 struct _Rb_tree_impl : public _Node_allocator
19274 {
19275 _Key_compare _M_key_compare;
19276 _Rb_tree_node_base _M_header;
19277 size_type _M_node_count;
19278 _Rb_tree_impl()
19279 : _Node_allocator(), _M_key_compare(), _M_header(),
19280 _M_node_count(0)
19281 { _M_initialize(); }
19282 _Rb_tree_impl(const _Key_compare& __comp, const _Node_allocator& __a)
19283 : _Node_allocator(__a), _M_key_compare(__comp), _M_header(),
19284 _M_node_count(0)
19285 { _M_initialize(); }
19286 private:
19287 void
19288 _M_initialize()
19289 {
19290 this->_M_header._M_color = _S_red;
19291 this->_M_header._M_parent = 0;
19292 this->_M_header._M_left = &this->_M_header;
19293 this->_M_header._M_right = &this->_M_header;
19294 }
19295 };
19296 _Rb_tree_impl<_Compare> _M_impl;
19297 protected:
19298 _Base_ptr&
19299 _M_root()
19300 { return this->_M_impl._M_header._M_parent; }
19301 _Const_Base_ptr
19302 _M_root() const
19303 { return this->_M_impl._M_header._M_parent; }
19304 _Base_ptr&
19305 _M_leftmost()
19306 { return this->_M_impl._M_header._M_left; }
19307 _Const_Base_ptr
19308 _M_leftmost() const
19309 { return this->_M_impl._M_header._M_left; }
19310 _Base_ptr&
19311 _M_rightmost()
19312 { return this->_M_impl._M_header._M_right; }
19313 _Const_Base_ptr
19314 _M_rightmost() const
19315 { return this->_M_impl._M_header._M_right; }
19316 _Link_type
19317 _M_begin()
19318 { return static_cast<_Link_type>(this->_M_impl._M_header._M_parent); }
19319 _Const_Link_type
19320 _M_begin() const
19321 {
19322 return static_cast<_Const_Link_type>
19323 (this->_M_impl._M_header._M_parent);
19324 }
19325 _Link_type
19326 _M_end()
19327 { return static_cast<_Link_type>(&this->_M_impl._M_header); }
19328 _Const_Link_type
19329 _M_end() const
19330 { return static_cast<_Const_Link_type>(&this->_M_impl._M_header); }
19331 static const_reference
19332 _S_value(_Const_Link_type __x)
19333 { return __x->_M_value_field; }
19334 static const _Key&
19335 _S_key(_Const_Link_type __x)
19336 { return _KeyOfValue()(_S_value(__x)); }
19337 static _Link_type
19338 _S_left(_Base_ptr __x)
19339 { return static_cast<_Link_type>(__x->_M_left); }
19340 static _Const_Link_type
19341 _S_left(_Const_Base_ptr __x)
19342 { return static_cast<_Const_Link_type>(__x->_M_left); }
19343 static _Link_type
19344 _S_right(_Base_ptr __x)
19345 { return static_cast<_Link_type>(__x->_M_right); }
19346 static _Const_Link_type
19347 _S_right(_Const_Base_ptr __x)
19348 { return static_cast<_Const_Link_type>(__x->_M_right); }
19349 static const_reference
19350 _S_value(_Const_Base_ptr __x)
19351 { return static_cast<_Const_Link_type>(__x)->_M_value_field; }
19352 static const _Key&
19353 _S_key(_Const_Base_ptr __x)
19354 { return _KeyOfValue()(_S_value(__x)); }
19355 static _Base_ptr
19356 _S_minimum(_Base_ptr __x)
19357 { return _Rb_tree_node_base::_S_minimum(__x); }
19358 static _Const_Base_ptr
19359 _S_minimum(_Const_Base_ptr __x)
19360 { return _Rb_tree_node_base::_S_minimum(__x); }
19361 static _Base_ptr
19362 _S_maximum(_Base_ptr __x)
19363 { return _Rb_tree_node_base::_S_maximum(__x); }
19364 static _Const_Base_ptr
19365 _S_maximum(_Const_Base_ptr __x)
19366 { return _Rb_tree_node_base::_S_maximum(__x); }
19367 public:
19368 typedef _Rb_tree_iterator<value_type> iterator;
19369 typedef _Rb_tree_const_iterator<value_type> const_iterator;
19370 typedef std::reverse_iterator<iterator> reverse_iterator;
19371 typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
19372 private:
19373 iterator
19374 _M_insert_(_Const_Base_ptr __x, _Const_Base_ptr __y,
19375 const value_type& __v);
19376 iterator
19377 _M_insert_lower(_Base_ptr __x, _Base_ptr __y, const value_type& __v);
19378 iterator
19379 _M_insert_equal_lower(const value_type& __x);
19380 _Link_type
19381 _M_copy(_Const_Link_type __x, _Link_type __p);
19382 void
19383 _M_erase(_Link_type __x);
19384 iterator
19385 _M_lower_bound(_Link_type __x, _Link_type __y,
19386 const _Key& __k);
19387 const_iterator
19388 _M_lower_bound(_Const_Link_type __x, _Const_Link_type __y,
19389 const _Key& __k) const;
19390 iterator
19391 _M_upper_bound(_Link_type __x, _Link_type __y,
19392 const _Key& __k);
19393 const_iterator
19394 _M_upper_bound(_Const_Link_type __x, _Const_Link_type __y,
19395 const _Key& __k) const;
19396 public:
19397 _Rb_tree() { }
19398 _Rb_tree(const _Compare& __comp,
19399 const allocator_type& __a = allocator_type())
19400 : _M_impl(__comp, __a) { }
19401 _Rb_tree(const _Rb_tree& __x)
19402 : _M_impl(__x._M_impl._M_key_compare, __x._M_get_Node_allocator())
19403 {
19404 if (__x._M_root() != 0)
19405 {
19406 _M_root() = _M_copy(__x._M_begin(), _M_end());
19407 _M_leftmost() = _S_minimum(_M_root());
19408 _M_rightmost() = _S_maximum(_M_root());
19409 _M_impl._M_node_count = __x._M_impl._M_node_count;
19410 }
19411 }
19412 ~_Rb_tree()
19413 { _M_erase(_M_begin()); }
19414 _Rb_tree&
19415 operator=(const _Rb_tree& __x);
19416 _Compare
19417 key_comp() const
19418 { return _M_impl._M_key_compare; }
19419 iterator
19420 begin()
19421 {
19422 return iterator(static_cast<_Link_type>
19423 (this->_M_impl._M_header._M_left));
19424 }
19425 const_iterator
19426 begin() const
19427 {
19428 return const_iterator(static_cast<_Const_Link_type>
19429 (this->_M_impl._M_header._M_left));
19430 }
19431 iterator
19432 end()
19433 { return iterator(static_cast<_Link_type>(&this->_M_impl._M_header)); }
19434 const_iterator
19435 end() const
19436 {
19437 return const_iterator(static_cast<_Const_Link_type>
19438 (&this->_M_impl._M_header));
19439 }
19440 reverse_iterator
19441 rbegin()
19442 { return reverse_iterator(end()); }
19443 const_reverse_iterator
19444 rbegin() const
19445 { return const_reverse_iterator(end()); }
19446 reverse_iterator
19447 rend()
19448 { return reverse_iterator(begin()); }
19449 const_reverse_iterator
19450 rend() const
19451 { return const_reverse_iterator(begin()); }
19452 bool
19453 empty() const
19454 { return _M_impl._M_node_count == 0; }
19455 size_type
19456 size() const
19457 { return _M_impl._M_node_count; }
19458 size_type
19459 max_size() const
19460 { return _M_get_Node_allocator().max_size(); }
19461 void
19462 swap(_Rb_tree& __t);
19463 pair<iterator, bool>
19464 _M_insert_unique(const value_type& __x);
19465 iterator
19466 _M_insert_equal(const value_type& __x);
19467 iterator
19468 _M_insert_unique_(const_iterator __position, const value_type& __x);
19469 iterator
19470 _M_insert_equal_(const_iterator __position, const value_type& __x);
19471 template<typename _InputIterator>
19472 void
19473 _M_insert_unique(_InputIterator __first, _InputIterator __last);
19474 template<typename _InputIterator>
19475 void
19476 _M_insert_equal(_InputIterator __first, _InputIterator __last);
19477 void
19478 erase(iterator __position);
19479 void
19480 erase(const_iterator __position);
19481 size_type
19482 erase(const key_type& __x);
19483 void
19484 erase(iterator __first, iterator __last);
19485 void
19486 erase(const_iterator __first, const_iterator __last);
19487 void
19488 erase(const key_type* __first, const key_type* __last);
19489 void
19490 clear()
19491 {
19492 _M_erase(_M_begin());
19493 _M_leftmost() = _M_end();
19494 _M_root() = 0;
19495 _M_rightmost() = _M_end();
19496 _M_impl._M_node_count = 0;
19497 }
19498 iterator
19499 find(const key_type& __k);
19500 const_iterator
19501 find(const key_type& __k) const;
19502 size_type
19503 count(const key_type& __k) const;
19504 iterator
19505 lower_bound(const key_type& __k)
19506 { return _M_lower_bound(_M_begin(), _M_end(), __k); }
19507 const_iterator
19508 lower_bound(const key_type& __k) const
19509 { return _M_lower_bound(_M_begin(), _M_end(), __k); }
19510 iterator
19511 upper_bound(const key_type& __k)
19512 { return _M_upper_bound(_M_begin(), _M_end(), __k); }
19513 const_iterator
19514 upper_bound(const key_type& __k) const
19515 { return _M_upper_bound(_M_begin(), _M_end(), __k); }
19516 pair<iterator, iterator>
19517 equal_range(const key_type& __k);
19518 pair<const_iterator, const_iterator>
19519 equal_range(const key_type& __k) const;
19520 bool
19521 __rb_verify() const;
19522 };
19523 template<typename _Key, typename _Val, typename _KeyOfValue,
19524 typename _Compare, typename _Alloc>
19525 inline bool
19526 operator==(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
19527 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
19528 {
19529 return __x.size() == __y.size()
19530 && std::equal(__x.begin(), __x.end(), __y.begin());
19531 }
19532 template<typename _Key, typename _Val, typename _KeyOfValue,
19533 typename _Compare, typename _Alloc>
19534 inline bool
19535 operator<(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
19536 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
19537 {
19538 return std::lexicographical_compare(__x.begin(), __x.end(),
19539 __y.begin(), __y.end());
19540 }
19541 template<typename _Key, typename _Val, typename _KeyOfValue,
19542 typename _Compare, typename _Alloc>
19543 inline bool
19544 operator!=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
19545 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
19546 { return !(__x == __y); }
19547 template<typename _Key, typename _Val, typename _KeyOfValue,
19548 typename _Compare, typename _Alloc>
19549 inline bool
19550 operator>(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
19551 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
19552 { return __y < __x; }
19553 template<typename _Key, typename _Val, typename _KeyOfValue,
19554 typename _Compare, typename _Alloc>
19555 inline bool
19556 operator<=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
19557 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
19558 { return !(__y < __x); }
19559 template<typename _Key, typename _Val, typename _KeyOfValue,
19560 typename _Compare, typename _Alloc>
19561 inline bool
19562 operator>=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
19563 const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
19564 { return !(__x < __y); }
19565 template<typename _Key, typename _Val, typename _KeyOfValue,
19566 typename _Compare, typename _Alloc>
19567 inline void
19568 swap(_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
19569 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __y)
19570 { __x.swap(__y); }
19571 template<typename _Key, typename _Val, typename _KeyOfValue,
19572 typename _Compare, typename _Alloc>
19573 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>&
19574 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19575 operator=(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x)
19576 {
19577 if (this != &__x)
19578 {
19579 clear();
19580 _M_impl._M_key_compare = __x._M_impl._M_key_compare;
19581 if (__x._M_root() != 0)
19582 {
19583 _M_root() = _M_copy(__x._M_begin(), _M_end());
19584 _M_leftmost() = _S_minimum(_M_root());
19585 _M_rightmost() = _S_maximum(_M_root());
19586 _M_impl._M_node_count = __x._M_impl._M_node_count;
19587 }
19588 }
19589 return *this;
19590 }
19591 template<typename _Key, typename _Val, typename _KeyOfValue,
19592 typename _Compare, typename _Alloc>
19593 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
19594 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19595 _M_insert_(_Const_Base_ptr __x, _Const_Base_ptr __p, const _Val& __v)
19596 {
19597 bool __insert_left = (__x != 0 || __p == _M_end()
19598 || _M_impl._M_key_compare(_KeyOfValue()(__v),
19599 _S_key(__p)));
19600 _Link_type __z = _M_create_node(__v);
19601 _Rb_tree_insert_and_rebalance(__insert_left, __z,
19602 const_cast<_Base_ptr>(__p),
19603 this->_M_impl._M_header);
19604 ++_M_impl._M_node_count;
19605 return iterator(__z);
19606 }
19607 template<typename _Key, typename _Val, typename _KeyOfValue,
19608 typename _Compare, typename _Alloc>
19609 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
19610 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19611 _M_insert_lower(_Base_ptr __x, _Base_ptr __p, const _Val& __v)
19612 {
19613 bool __insert_left = (__x != 0 || __p == _M_end()
19614 || !_M_impl._M_key_compare(_S_key(__p),
19615 _KeyOfValue()(__v)));
19616 _Link_type __z = _M_create_node(__v);
19617 _Rb_tree_insert_and_rebalance(__insert_left, __z, __p,
19618 this->_M_impl._M_header);
19619 ++_M_impl._M_node_count;
19620 return iterator(__z);
19621 }
19622 template<typename _Key, typename _Val, typename _KeyOfValue,
19623 typename _Compare, typename _Alloc>
19624 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
19625 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19626 _M_insert_equal_lower(const _Val& __v)
19627 {
19628 _Link_type __x = _M_begin();
19629 _Link_type __y = _M_end();
19630 while (__x != 0)
19631 {
19632 __y = __x;
19633 __x = !_M_impl._M_key_compare(_S_key(__x), _KeyOfValue()(__v)) ?
19634 _S_left(__x) : _S_right(__x);
19635 }
19636 return _M_insert_lower(__x, __y, __v);
19637 }
19638 template<typename _Key, typename _Val, typename _KoV,
19639 typename _Compare, typename _Alloc>
19640 typename _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::_Link_type
19641 _Rb_tree<_Key, _Val, _KoV, _Compare, _Alloc>::
19642 _M_copy(_Const_Link_type __x, _Link_type __p)
19643 {
19644 _Link_type __top = _M_clone_node(__x);
19645 __top->_M_parent = __p;
19646 try
19647 {
19648 if (__x->_M_right)
19649 __top->_M_right = _M_copy(_S_right(__x), __top);
19650 __p = __top;
19651 __x = _S_left(__x);
19652 while (__x != 0)
19653 {
19654 _Link_type __y = _M_clone_node(__x);
19655 __p->_M_left = __y;
19656 __y->_M_parent = __p;
19657 if (__x->_M_right)
19658 __y->_M_right = _M_copy(_S_right(__x), __y);
19659 __p = __y;
19660 __x = _S_left(__x);
19661 }
19662 }
19663 catch(...)
19664 {
19665 _M_erase(__top);
19666 throw;
19667 }
19668 return __top;
19669 }
19670 template<typename _Key, typename _Val, typename _KeyOfValue,
19671 typename _Compare, typename _Alloc>
19672 void
19673 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19674 _M_erase(_Link_type __x)
19675 {
19676 while (__x != 0)
19677 {
19678 _M_erase(_S_right(__x));
19679 _Link_type __y = _S_left(__x);
19680 _M_destroy_node(__x);
19681 __x = __y;
19682 }
19683 }
19684 template<typename _Key, typename _Val, typename _KeyOfValue,
19685 typename _Compare, typename _Alloc>
19686 typename _Rb_tree<_Key, _Val, _KeyOfValue,
19687 _Compare, _Alloc>::iterator
19688 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19689 _M_lower_bound(_Link_type __x, _Link_type __y,
19690 const _Key& __k)
19691 {
19692 while (__x != 0)
19693 if (!_M_impl._M_key_compare(_S_key(__x), __k))
19694 __y = __x, __x = _S_left(__x);
19695 else
19696 __x = _S_right(__x);
19697 return iterator(__y);
19698 }
19699 template<typename _Key, typename _Val, typename _KeyOfValue,
19700 typename _Compare, typename _Alloc>
19701 typename _Rb_tree<_Key, _Val, _KeyOfValue,
19702 _Compare, _Alloc>::const_iterator
19703 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19704 _M_lower_bound(_Const_Link_type __x, _Const_Link_type __y,
19705 const _Key& __k) const
19706 {
19707 while (__x != 0)
19708 if (!_M_impl._M_key_compare(_S_key(__x), __k))
19709 __y = __x, __x = _S_left(__x);
19710 else
19711 __x = _S_right(__x);
19712 return const_iterator(__y);
19713 }
19714 template<typename _Key, typename _Val, typename _KeyOfValue,
19715 typename _Compare, typename _Alloc>
19716 typename _Rb_tree<_Key, _Val, _KeyOfValue,
19717 _Compare, _Alloc>::iterator
19718 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19719 _M_upper_bound(_Link_type __x, _Link_type __y,
19720 const _Key& __k)
19721 {
19722 while (__x != 0)
19723 if (_M_impl._M_key_compare(__k, _S_key(__x)))
19724 __y = __x, __x = _S_left(__x);
19725 else
19726 __x = _S_right(__x);
19727 return iterator(__y);
19728 }
19729 template<typename _Key, typename _Val, typename _KeyOfValue,
19730 typename _Compare, typename _Alloc>
19731 typename _Rb_tree<_Key, _Val, _KeyOfValue,
19732 _Compare, _Alloc>::const_iterator
19733 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19734 _M_upper_bound(_Const_Link_type __x, _Const_Link_type __y,
19735 const _Key& __k) const
19736 {
19737 while (__x != 0)
19738 if (_M_impl._M_key_compare(__k, _S_key(__x)))
19739 __y = __x, __x = _S_left(__x);
19740 else
19741 __x = _S_right(__x);
19742 return const_iterator(__y);
19743 }
19744 template<typename _Key, typename _Val, typename _KeyOfValue,
19745 typename _Compare, typename _Alloc>
19746 pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
19747 _Compare, _Alloc>::iterator,
19748 typename _Rb_tree<_Key, _Val, _KeyOfValue,
19749 _Compare, _Alloc>::iterator>
19750 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19751 equal_range(const _Key& __k)
19752 {
19753 _Link_type __x = _M_begin();
19754 _Link_type __y = _M_end();
19755 while (__x != 0)
19756 {
19757 if (_M_impl._M_key_compare(_S_key(__x), __k))
19758 __x = _S_right(__x);
19759 else if (_M_impl._M_key_compare(__k, _S_key(__x)))
19760 __y = __x, __x = _S_left(__x);
19761 else
19762 {
19763 _Link_type __xu(__x), __yu(__y);
19764 __y = __x, __x = _S_left(__x);
19765 __xu = _S_right(__xu);
19766 return pair<iterator,
19767 iterator>(_M_lower_bound(__x, __y, __k),
19768 _M_upper_bound(__xu, __yu, __k));
19769 }
19770 }
19771 return pair<iterator, iterator>(iterator(__y),
19772 iterator(__y));
19773 }
19774 template<typename _Key, typename _Val, typename _KeyOfValue,
19775 typename _Compare, typename _Alloc>
19776 pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
19777 _Compare, _Alloc>::const_iterator,
19778 typename _Rb_tree<_Key, _Val, _KeyOfValue,
19779 _Compare, _Alloc>::const_iterator>
19780 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19781 equal_range(const _Key& __k) const
19782 {
19783 _Const_Link_type __x = _M_begin();
19784 _Const_Link_type __y = _M_end();
19785 while (__x != 0)
19786 {
19787 if (_M_impl._M_key_compare(_S_key(__x), __k))
19788 __x = _S_right(__x);
19789 else if (_M_impl._M_key_compare(__k, _S_key(__x)))
19790 __y = __x, __x = _S_left(__x);
19791 else
19792 {
19793 _Const_Link_type __xu(__x), __yu(__y);
19794 __y = __x, __x = _S_left(__x);
19795 __xu = _S_right(__xu);
19796 return pair<const_iterator,
19797 const_iterator>(_M_lower_bound(__x, __y, __k),
19798 _M_upper_bound(__xu, __yu, __k));
19799 }
19800 }
19801 return pair<const_iterator, const_iterator>(const_iterator(__y),
19802 const_iterator(__y));
19803 }
19804 template<typename _Key, typename _Val, typename _KeyOfValue,
19805 typename _Compare, typename _Alloc>
19806 void
19807 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19808 swap(_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __t)
19809 {
19810 if (_M_root() == 0)
19811 {
19812 if (__t._M_root() != 0)
19813 {
19814 _M_root() = __t._M_root();
19815 _M_leftmost() = __t._M_leftmost();
19816 _M_rightmost() = __t._M_rightmost();
19817 _M_root()->_M_parent = _M_end();
19818 __t._M_root() = 0;
19819 __t._M_leftmost() = __t._M_end();
19820 __t._M_rightmost() = __t._M_end();
19821 }
19822 }
19823 else if (__t._M_root() == 0)
19824 {
19825 __t._M_root() = _M_root();
19826 __t._M_leftmost() = _M_leftmost();
19827 __t._M_rightmost() = _M_rightmost();
19828 __t._M_root()->_M_parent = __t._M_end();
19829 _M_root() = 0;
19830 _M_leftmost() = _M_end();
19831 _M_rightmost() = _M_end();
19832 }
19833 else
19834 {
19835 std::swap(_M_root(),__t._M_root());
19836 std::swap(_M_leftmost(),__t._M_leftmost());
19837 std::swap(_M_rightmost(),__t._M_rightmost());
19838 _M_root()->_M_parent = _M_end();
19839 __t._M_root()->_M_parent = __t._M_end();
19840 }
19841 std::swap(this->_M_impl._M_node_count, __t._M_impl._M_node_count);
19842 std::swap(this->_M_impl._M_key_compare, __t._M_impl._M_key_compare);
19843 std::__alloc_swap<_Node_allocator>::
19844 _S_do_it(_M_get_Node_allocator(), __t._M_get_Node_allocator());
19845 }
19846 template<typename _Key, typename _Val, typename _KeyOfValue,
19847 typename _Compare, typename _Alloc>
19848 pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
19849 _Compare, _Alloc>::iterator, bool>
19850 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19851 _M_insert_unique(const _Val& __v)
19852 {
19853 _Link_type __x = _M_begin();
19854 _Link_type __y = _M_end();
19855 bool __comp = true;
19856 while (__x != 0)
19857 {
19858 __y = __x;
19859 __comp = _M_impl._M_key_compare(_KeyOfValue()(__v), _S_key(__x));
19860 __x = __comp ? _S_left(__x) : _S_right(__x);
19861 }
19862 iterator __j = iterator(__y);
19863 if (__comp)
19864 {
19865 if (__j == begin())
19866 return pair<iterator, bool>(_M_insert_(__x, __y, __v), true);
19867 else
19868 --__j;
19869 }
19870 if (_M_impl._M_key_compare(_S_key(__j._M_node), _KeyOfValue()(__v)))
19871 return pair<iterator, bool>(_M_insert_(__x, __y, __v), true);
19872 return pair<iterator, bool>(__j, false);
19873 }
19874 template<typename _Key, typename _Val, typename _KeyOfValue,
19875 typename _Compare, typename _Alloc>
19876 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
19877 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19878 _M_insert_equal(const _Val& __v)
19879 {
19880 _Link_type __x = _M_begin();
19881 _Link_type __y = _M_end();
19882 while (__x != 0)
19883 {
19884 __y = __x;
19885 __x = _M_impl._M_key_compare(_KeyOfValue()(__v), _S_key(__x)) ?
19886 _S_left(__x) : _S_right(__x);
19887 }
19888 return _M_insert_(__x, __y, __v);
19889 }
19890 template<typename _Key, typename _Val, typename _KeyOfValue,
19891 typename _Compare, typename _Alloc>
19892 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
19893 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19894 _M_insert_unique_(const_iterator __position, const _Val& __v)
19895 {
19896 if (__position._M_node == _M_end())
19897 {
19898 if (size() > 0
19899 && _M_impl._M_key_compare(_S_key(_M_rightmost()),
19900 _KeyOfValue()(__v)))
19901 return _M_insert_(0, _M_rightmost(), __v);
19902 else
19903 return _M_insert_unique(__v).first;
19904 }
19905 else if (_M_impl._M_key_compare(_KeyOfValue()(__v),
19906 _S_key(__position._M_node)))
19907 {
19908 const_iterator __before = __position;
19909 if (__position._M_node == _M_leftmost())
19910 return _M_insert_(_M_leftmost(), _M_leftmost(), __v);
19911 else if (_M_impl._M_key_compare(_S_key((--__before)._M_node),
19912 _KeyOfValue()(__v)))
19913 {
19914 if (_S_right(__before._M_node) == 0)
19915 return _M_insert_(0, __before._M_node, __v);
19916 else
19917 return _M_insert_(__position._M_node,
19918 __position._M_node, __v);
19919 }
19920 else
19921 return _M_insert_unique(__v).first;
19922 }
19923 else if (_M_impl._M_key_compare(_S_key(__position._M_node),
19924 _KeyOfValue()(__v)))
19925 {
19926 const_iterator __after = __position;
19927 if (__position._M_node == _M_rightmost())
19928 return _M_insert_(0, _M_rightmost(), __v);
19929 else if (_M_impl._M_key_compare(_KeyOfValue()(__v),
19930 _S_key((++__after)._M_node)))
19931 {
19932 if (_S_right(__position._M_node) == 0)
19933 return _M_insert_(0, __position._M_node, __v);
19934 else
19935 return _M_insert_(__after._M_node, __after._M_node, __v);
19936 }
19937 else
19938 return _M_insert_unique(__v).first;
19939 }
19940 else
19941 return iterator(static_cast<_Link_type>
19942 (const_cast<_Base_ptr>(__position._M_node)));
19943 }
19944 template<typename _Key, typename _Val, typename _KeyOfValue,
19945 typename _Compare, typename _Alloc>
19946 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator
19947 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
19948 _M_insert_equal_(const_iterator __position, const _Val& __v)
19949 {
19950 if (__position._M_node == _M_end())
19951 {
19952 if (size() > 0
19953 && !_M_impl._M_key_compare(_KeyOfValue()(__v),
19954 _S_key(_M_rightmost())))
19955 return _M_insert_(0, _M_rightmost(), __v);
19956 else
19957 return _M_insert_equal(__v);
19958 }
19959 else if (!_M_impl._M_key_compare(_S_key(__position._M_node),
19960 _KeyOfValue()(__v)))
19961 {
19962 const_iterator __before = __position;
19963 if (__position._M_node == _M_leftmost())
19964 return _M_insert_(_M_leftmost(), _M_leftmost(), __v);
19965 else if (!_M_impl._M_key_compare(_KeyOfValue()(__v),
19966 _S_key((--__before)._M_node)))
19967 {
19968 if (_S_right(__before._M_node) == 0)
19969 return _M_insert_(0, __before._M_node, __v);
19970 else
19971 return _M_insert_(__position._M_node,
19972 __position._M_node, __v);
19973 }
19974 else
19975 return _M_insert_equal(__v);
19976 }
19977 else
19978 {
19979 const_iterator __after = __position;
19980 if (__position._M_node == _M_rightmost())
19981 return _M_insert_(0, _M_rightmost(), __v);
19982 else if (!_M_impl._M_key_compare(_S_key((++__after)._M_node),
19983 _KeyOfValue()(__v)))
19984 {
19985 if (_S_right(__position._M_node) == 0)
19986 return _M_insert_(0, __position._M_node, __v);
19987 else
19988 return _M_insert_(__after._M_node, __after._M_node, __v);
19989 }
19990 else
19991 return _M_insert_equal_lower(__v);
19992 }
19993 }
19994 template<typename _Key, typename _Val, typename _KoV,
19995 typename _Cmp, typename _Alloc>
19996 template<class _II>
19997 void
19998 _Rb_tree<_Key, _Val, _KoV, _Cmp, _Alloc>::
19999 _M_insert_unique(_II __first, _II __last)
20000 {
20001 for (; __first != __last; ++__first)
20002 _M_insert_unique_(end(), *__first);
20003 }
20004 template<typename _Key, typename _Val, typename _KoV,
20005 typename _Cmp, typename _Alloc>
20006 template<class _II>
20007 void
20008 _Rb_tree<_Key, _Val, _KoV, _Cmp, _Alloc>::
20009 _M_insert_equal(_II __first, _II __last)
20010 {
20011 for (; __first != __last; ++__first)
20012 _M_insert_equal_(end(), *__first);
20013 }
20014 template<typename _Key, typename _Val, typename _KeyOfValue,
20015 typename _Compare, typename _Alloc>
20016 inline void
20017 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
20018 erase(iterator __position)
20019 {
20020 _Link_type __y =
20021 static_cast<_Link_type>(_Rb_tree_rebalance_for_erase
20022 (__position._M_node,
20023 this->_M_impl._M_header));
20024 _M_destroy_node(__y);
20025 --_M_impl._M_node_count;
20026 }
20027 template<typename _Key, typename _Val, typename _KeyOfValue,
20028 typename _Compare, typename _Alloc>
20029 inline void
20030 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
20031 erase(const_iterator __position)
20032 {
20033 _Link_type __y =
20034 static_cast<_Link_type>(_Rb_tree_rebalance_for_erase
20035 (const_cast<_Base_ptr>(__position._M_node),
20036 this->_M_impl._M_header));
20037 _M_destroy_node(__y);
20038 --_M_impl._M_node_count;
20039 }
20040 template<typename _Key, typename _Val, typename _KeyOfValue,
20041 typename _Compare, typename _Alloc>
20042 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::size_type
20043 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
20044 erase(const _Key& __x)
20045 {
20046 pair<iterator, iterator> __p = equal_range(__x);
20047 const size_type __old_size = size();
20048 erase(__p.first, __p.second);
20049 return __old_size - size();
20050 }
20051 template<typename _Key, typename _Val, typename _KeyOfValue,
20052 typename _Compare, typename _Alloc>
20053 void
20054 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
20055 erase(iterator __first, iterator __last)
20056 {
20057 if (__first == begin() && __last == end())
20058 clear();
20059 else
20060 while (__first != __last)
20061 erase(__first++);
20062 }
20063 template<typename _Key, typename _Val, typename _KeyOfValue,
20064 typename _Compare, typename _Alloc>
20065 void
20066 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
20067 erase(const_iterator __first, const_iterator __last)
20068 {
20069 if (__first == begin() && __last == end())
20070 clear();
20071 else
20072 while (__first != __last)
20073 erase(__first++);
20074 }
20075 template<typename _Key, typename _Val, typename _KeyOfValue,
20076 typename _Compare, typename _Alloc>
20077 void
20078 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
20079 erase(const _Key* __first, const _Key* __last)
20080 {
20081 while (__first != __last)
20082 erase(*__first++);
20083 }
20084 template<typename _Key, typename _Val, typename _KeyOfValue,
20085 typename _Compare, typename _Alloc>
20086 typename _Rb_tree<_Key, _Val, _KeyOfValue,
20087 _Compare, _Alloc>::iterator
20088 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
20089 find(const _Key& __k)
20090 {
20091 iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k);
20092 return (__j == end()
20093 || _M_impl._M_key_compare(__k,
20094 _S_key(__j._M_node))) ? end() : __j;
20095 }
20096 template<typename _Key, typename _Val, typename _KeyOfValue,
20097 typename _Compare, typename _Alloc>
20098 typename _Rb_tree<_Key, _Val, _KeyOfValue,
20099 _Compare, _Alloc>::const_iterator
20100 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
20101 find(const _Key& __k) const
20102 {
20103 const_iterator __j = _M_lower_bound(_M_begin(), _M_end(), __k);
20104 return (__j == end()
20105 || _M_impl._M_key_compare(__k,
20106 _S_key(__j._M_node))) ? end() : __j;
20107 }
20108 template<typename _Key, typename _Val, typename _KeyOfValue,
20109 typename _Compare, typename _Alloc>
20110 typename _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::size_type
20111 _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::
20112 count(const _Key& __k) const
20113 {
20114 pair<const_iterator, const_iterator> __p = equal_range(__k);
20115 const size_type __n = std::distance(__p.first, __p.second);
20116 return __n;
20117 }
20118 unsigned int
20119 _Rb_tree_black_count(const _Rb_tree_node_base* __node,
20120 const _Rb_tree_node_base* __root);
20121 template<typename _Key, typename _Val, typename _KeyOfValue,
20122 typename _Compare, typename _Alloc>
20123 bool
20124 _Rb_tree<_Key,_Val,_KeyOfValue,_Compare,_Alloc>::__rb_verify() const
20125 {
20126 if (_M_impl._M_node_count == 0 || begin() == end())
20127 return _M_impl._M_node_count == 0 && begin() == end()
20128 && this->_M_impl._M_header._M_left == _M_end()
20129 && this->_M_impl._M_header._M_right == _M_end();
20130 unsigned int __len = _Rb_tree_black_count(_M_leftmost(), _M_root());
20131 for (const_iterator __it = begin(); __it != end(); ++__it)
20132 {
20133 _Const_Link_type __x = static_cast<_Const_Link_type>(__it._M_node);
20134 _Const_Link_type __L = _S_left(__x);
20135 _Const_Link_type __R = _S_right(__x);
20136 if (__x->_M_color == _S_red)
20137 if ((__L && __L->_M_color == _S_red)
20138 || (__R && __R->_M_color == _S_red))
20139 return false;
20140 if (__L && _M_impl._M_key_compare(_S_key(__x), _S_key(__L)))
20141 return false;
20142 if (__R && _M_impl._M_key_compare(_S_key(__R), _S_key(__x)))
20143 return false;
20144 if (!__L && !__R && _Rb_tree_black_count(__x, _M_root()) != __len)
20145 return false;
20146 }
20147 if (_M_leftmost() != _Rb_tree_node_base::_S_minimum(_M_root()))
20148 return false;
20149 if (_M_rightmost() != _Rb_tree_node_base::_S_maximum(_M_root()))
20150 return false;
20151 return true;
20152 }
20153}
20154namespace std __attribute__ ((__visibility__ ("default"))) {
20155 template <typename _Key, typename _Tp, typename _Compare = std::less<_Key>,
20156 typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
20157 class map
20158 {
20159 public:
20160 typedef _Key key_type;
20161 typedef _Tp mapped_type;
20162 typedef std::pair<const _Key, _Tp> value_type;
20163 typedef _Compare key_compare;
20164 typedef _Alloc allocator_type;
20165 private:
20166 typedef typename _Alloc::value_type _Alloc_value_type;
20167
20168
20169
20170 public:
20171 class value_compare
20172 : public std::binary_function<value_type, value_type, bool>
20173 {
20174 friend class map<_Key, _Tp, _Compare, _Alloc>;
20175 protected:
20176 _Compare comp;
20177 value_compare(_Compare __c)
20178 : comp(__c) { }
20179 public:
20180 bool operator()(const value_type& __x, const value_type& __y) const
20181 { return comp(__x.first, __y.first); }
20182 };
20183 private:
20184 typedef typename _Alloc::template rebind<value_type>::other
20185 _Pair_alloc_type;
20186 typedef _Rb_tree<key_type, value_type, _Select1st<value_type>,
20187 key_compare, _Pair_alloc_type> _Rep_type;
20188 _Rep_type _M_t;
20189 public:
20190 typedef typename _Pair_alloc_type::pointer pointer;
20191 typedef typename _Pair_alloc_type::const_pointer const_pointer;
20192 typedef typename _Pair_alloc_type::reference reference;
20193 typedef typename _Pair_alloc_type::const_reference const_reference;
20194 typedef typename _Rep_type::iterator iterator;
20195 typedef typename _Rep_type::const_iterator const_iterator;
20196 typedef typename _Rep_type::size_type size_type;
20197 typedef typename _Rep_type::difference_type difference_type;
20198 typedef typename _Rep_type::reverse_iterator reverse_iterator;
20199 typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
20200 map()
20201 : _M_t() { }
20202 explicit
20203 map(const _Compare& __comp,
20204 const allocator_type& __a = allocator_type())
20205 : _M_t(__comp, __a) { }
20206 map(const map& __x)
20207 : _M_t(__x._M_t) { }
20208 template<typename _InputIterator>
20209 map(_InputIterator __first, _InputIterator __last)
20210 : _M_t()
20211 { _M_t._M_insert_unique(__first, __last); }
20212 template<typename _InputIterator>
20213 map(_InputIterator __first, _InputIterator __last,
20214 const _Compare& __comp,
20215 const allocator_type& __a = allocator_type())
20216 : _M_t(__comp, __a)
20217 { _M_t._M_insert_unique(__first, __last); }
20218 map&
20219 operator=(const map& __x)
20220 {
20221 _M_t = __x._M_t;
20222 return *this;
20223 }
20224 allocator_type
20225 get_allocator() const
20226 { return _M_t.get_allocator(); }
20227 iterator
20228 begin()
20229 { return _M_t.begin(); }
20230 const_iterator
20231 begin() const
20232 { return _M_t.begin(); }
20233 iterator
20234 end()
20235 { return _M_t.end(); }
20236 const_iterator
20237 end() const
20238 { return _M_t.end(); }
20239 reverse_iterator
20240 rbegin()
20241 { return _M_t.rbegin(); }
20242 const_reverse_iterator
20243 rbegin() const
20244 { return _M_t.rbegin(); }
20245 reverse_iterator
20246 rend()
20247 { return _M_t.rend(); }
20248 const_reverse_iterator
20249 rend() const
20250 { return _M_t.rend(); }
20251 bool
20252 empty() const
20253 { return _M_t.empty(); }
20254 size_type
20255 size() const
20256 { return _M_t.size(); }
20257 size_type
20258 max_size() const
20259 { return _M_t.max_size(); }
20260 mapped_type&
20261 operator[](const key_type& __k)
20262 {
20263 iterator __i = lower_bound(__k);
20264 if (__i == end() || key_comp()(__k, (*__i).first))
20265 __i = insert(__i, value_type(__k, mapped_type()));
20266 return (*__i).second;
20267 }
20268 mapped_type&
20269 at(const key_type& __k)
20270 {
20271 iterator __i = lower_bound(__k);
20272 if (__i == end() || key_comp()(__k, (*__i).first))
20273 __throw_out_of_range(("map::at"));
20274 return (*__i).second;
20275 }
20276 const mapped_type&
20277 at(const key_type& __k) const
20278 {
20279 const_iterator __i = lower_bound(__k);
20280 if (__i == end() || key_comp()(__k, (*__i).first))
20281 __throw_out_of_range(("map::at"));
20282 return (*__i).second;
20283 }
20284 std::pair<iterator, bool>
20285 insert(const value_type& __x)
20286 { return _M_t._M_insert_unique(__x); }
20287 iterator
20288 insert(iterator __position, const value_type& __x)
20289 { return _M_t._M_insert_unique_(__position, __x); }
20290 template<typename _InputIterator>
20291 void
20292 insert(_InputIterator __first, _InputIterator __last)
20293 { _M_t._M_insert_unique(__first, __last); }
20294 void
20295 erase(iterator __position)
20296 { _M_t.erase(__position); }
20297 size_type
20298 erase(const key_type& __x)
20299 { return _M_t.erase(__x); }
20300 void
20301 erase(iterator __first, iterator __last)
20302 { _M_t.erase(__first, __last); }
20303 void
20304 swap(map& __x)
20305 { _M_t.swap(__x._M_t); }
20306 void
20307 clear()
20308 { _M_t.clear(); }
20309 key_compare
20310 key_comp() const
20311 { return _M_t.key_comp(); }
20312 value_compare
20313 value_comp() const
20314 { return value_compare(_M_t.key_comp()); }
20315 iterator
20316 find(const key_type& __x)
20317 { return _M_t.find(__x); }
20318 const_iterator
20319 find(const key_type& __x) const
20320 { return _M_t.find(__x); }
20321 size_type
20322 count(const key_type& __x) const
20323 { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
20324 iterator
20325 lower_bound(const key_type& __x)
20326 { return _M_t.lower_bound(__x); }
20327 const_iterator
20328 lower_bound(const key_type& __x) const
20329 { return _M_t.lower_bound(__x); }
20330 iterator
20331 upper_bound(const key_type& __x)
20332 { return _M_t.upper_bound(__x); }
20333 const_iterator
20334 upper_bound(const key_type& __x) const
20335 { return _M_t.upper_bound(__x); }
20336 std::pair<iterator, iterator>
20337 equal_range(const key_type& __x)
20338 { return _M_t.equal_range(__x); }
20339 std::pair<const_iterator, const_iterator>
20340 equal_range(const key_type& __x) const
20341 { return _M_t.equal_range(__x); }
20342 template<typename _K1, typename _T1, typename _C1, typename _A1>
20343 friend bool
20344 operator==(const map<_K1, _T1, _C1, _A1>&,
20345 const map<_K1, _T1, _C1, _A1>&);
20346 template<typename _K1, typename _T1, typename _C1, typename _A1>
20347 friend bool
20348 operator<(const map<_K1, _T1, _C1, _A1>&,
20349 const map<_K1, _T1, _C1, _A1>&);
20350 };
20351 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20352 inline bool
20353 operator==(const map<_Key, _Tp, _Compare, _Alloc>& __x,
20354 const map<_Key, _Tp, _Compare, _Alloc>& __y)
20355 { return __x._M_t == __y._M_t; }
20356 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20357 inline bool
20358 operator<(const map<_Key, _Tp, _Compare, _Alloc>& __x,
20359 const map<_Key, _Tp, _Compare, _Alloc>& __y)
20360 { return __x._M_t < __y._M_t; }
20361 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20362 inline bool
20363 operator!=(const map<_Key, _Tp, _Compare, _Alloc>& __x,
20364 const map<_Key, _Tp, _Compare, _Alloc>& __y)
20365 { return !(__x == __y); }
20366 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20367 inline bool
20368 operator>(const map<_Key, _Tp, _Compare, _Alloc>& __x,
20369 const map<_Key, _Tp, _Compare, _Alloc>& __y)
20370 { return __y < __x; }
20371 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20372 inline bool
20373 operator<=(const map<_Key, _Tp, _Compare, _Alloc>& __x,
20374 const map<_Key, _Tp, _Compare, _Alloc>& __y)
20375 { return !(__y < __x); }
20376 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20377 inline bool
20378 operator>=(const map<_Key, _Tp, _Compare, _Alloc>& __x,
20379 const map<_Key, _Tp, _Compare, _Alloc>& __y)
20380 { return !(__x < __y); }
20381 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20382 inline void
20383 swap(map<_Key, _Tp, _Compare, _Alloc>& __x,
20384 map<_Key, _Tp, _Compare, _Alloc>& __y)
20385 { __x.swap(__y); }
20386}
20387namespace std __attribute__ ((__visibility__ ("default"))) {
20388 template <typename _Key, typename _Tp,
20389 typename _Compare = std::less<_Key>,
20390 typename _Alloc = std::allocator<std::pair<const _Key, _Tp> > >
20391 class multimap
20392 {
20393 public:
20394 typedef _Key key_type;
20395 typedef _Tp mapped_type;
20396 typedef std::pair<const _Key, _Tp> value_type;
20397 typedef _Compare key_compare;
20398 typedef _Alloc allocator_type;
20399 private:
20400 typedef typename _Alloc::value_type _Alloc_value_type;
20401
20402
20403
20404 public:
20405 class value_compare
20406 : public std::binary_function<value_type, value_type, bool>
20407 {
20408 friend class multimap<_Key, _Tp, _Compare, _Alloc>;
20409 protected:
20410 _Compare comp;
20411 value_compare(_Compare __c)
20412 : comp(__c) { }
20413 public:
20414 bool operator()(const value_type& __x, const value_type& __y) const
20415 { return comp(__x.first, __y.first); }
20416 };
20417 private:
20418 typedef typename _Alloc::template rebind<value_type>::other
20419 _Pair_alloc_type;
20420 typedef _Rb_tree<key_type, value_type, _Select1st<value_type>,
20421 key_compare, _Pair_alloc_type> _Rep_type;
20422 _Rep_type _M_t;
20423 public:
20424 typedef typename _Pair_alloc_type::pointer pointer;
20425 typedef typename _Pair_alloc_type::const_pointer const_pointer;
20426 typedef typename _Pair_alloc_type::reference reference;
20427 typedef typename _Pair_alloc_type::const_reference const_reference;
20428 typedef typename _Rep_type::iterator iterator;
20429 typedef typename _Rep_type::const_iterator const_iterator;
20430 typedef typename _Rep_type::size_type size_type;
20431 typedef typename _Rep_type::difference_type difference_type;
20432 typedef typename _Rep_type::reverse_iterator reverse_iterator;
20433 typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
20434 multimap()
20435 : _M_t() { }
20436 explicit
20437 multimap(const _Compare& __comp,
20438 const allocator_type& __a = allocator_type())
20439 : _M_t(__comp, __a) { }
20440 multimap(const multimap& __x)
20441 : _M_t(__x._M_t) { }
20442 template<typename _InputIterator>
20443 multimap(_InputIterator __first, _InputIterator __last)
20444 : _M_t()
20445 { _M_t._M_insert_equal(__first, __last); }
20446 template<typename _InputIterator>
20447 multimap(_InputIterator __first, _InputIterator __last,
20448 const _Compare& __comp,
20449 const allocator_type& __a = allocator_type())
20450 : _M_t(__comp, __a)
20451 { _M_t._M_insert_equal(__first, __last); }
20452 multimap&
20453 operator=(const multimap& __x)
20454 {
20455 _M_t = __x._M_t;
20456 return *this;
20457 }
20458 allocator_type
20459 get_allocator() const
20460 { return _M_t.get_allocator(); }
20461 iterator
20462 begin()
20463 { return _M_t.begin(); }
20464 const_iterator
20465 begin() const
20466 { return _M_t.begin(); }
20467 iterator
20468 end()
20469 { return _M_t.end(); }
20470 const_iterator
20471 end() const
20472 { return _M_t.end(); }
20473 reverse_iterator
20474 rbegin()
20475 { return _M_t.rbegin(); }
20476 const_reverse_iterator
20477 rbegin() const
20478 { return _M_t.rbegin(); }
20479 reverse_iterator
20480 rend()
20481 { return _M_t.rend(); }
20482 const_reverse_iterator
20483 rend() const
20484 { return _M_t.rend(); }
20485 bool
20486 empty() const
20487 { return _M_t.empty(); }
20488 size_type
20489 size() const
20490 { return _M_t.size(); }
20491 size_type
20492 max_size() const
20493 { return _M_t.max_size(); }
20494 iterator
20495 insert(const value_type& __x)
20496 { return _M_t._M_insert_equal(__x); }
20497 iterator
20498 insert(iterator __position, const value_type& __x)
20499 { return _M_t._M_insert_equal_(__position, __x); }
20500 template<typename _InputIterator>
20501 void
20502 insert(_InputIterator __first, _InputIterator __last)
20503 { _M_t._M_insert_equal(__first, __last); }
20504 void
20505 erase(iterator __position)
20506 { _M_t.erase(__position); }
20507 size_type
20508 erase(const key_type& __x)
20509 { return _M_t.erase(__x); }
20510 void
20511 erase(iterator __first, iterator __last)
20512 { _M_t.erase(__first, __last); }
20513 void
20514 swap(multimap& __x)
20515 { _M_t.swap(__x._M_t); }
20516 void
20517 clear()
20518 { _M_t.clear(); }
20519 key_compare
20520 key_comp() const
20521 { return _M_t.key_comp(); }
20522 value_compare
20523 value_comp() const
20524 { return value_compare(_M_t.key_comp()); }
20525 iterator
20526 find(const key_type& __x)
20527 { return _M_t.find(__x); }
20528 const_iterator
20529 find(const key_type& __x) const
20530 { return _M_t.find(__x); }
20531 size_type
20532 count(const key_type& __x) const
20533 { return _M_t.count(__x); }
20534 iterator
20535 lower_bound(const key_type& __x)
20536 { return _M_t.lower_bound(__x); }
20537 const_iterator
20538 lower_bound(const key_type& __x) const
20539 { return _M_t.lower_bound(__x); }
20540 iterator
20541 upper_bound(const key_type& __x)
20542 { return _M_t.upper_bound(__x); }
20543 const_iterator
20544 upper_bound(const key_type& __x) const
20545 { return _M_t.upper_bound(__x); }
20546 std::pair<iterator, iterator>
20547 equal_range(const key_type& __x)
20548 { return _M_t.equal_range(__x); }
20549 std::pair<const_iterator, const_iterator>
20550 equal_range(const key_type& __x) const
20551 { return _M_t.equal_range(__x); }
20552 template<typename _K1, typename _T1, typename _C1, typename _A1>
20553 friend bool
20554 operator==(const multimap<_K1, _T1, _C1, _A1>&,
20555 const multimap<_K1, _T1, _C1, _A1>&);
20556 template<typename _K1, typename _T1, typename _C1, typename _A1>
20557 friend bool
20558 operator<(const multimap<_K1, _T1, _C1, _A1>&,
20559 const multimap<_K1, _T1, _C1, _A1>&);
20560 };
20561 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20562 inline bool
20563 operator==(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
20564 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
20565 { return __x._M_t == __y._M_t; }
20566 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20567 inline bool
20568 operator<(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
20569 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
20570 { return __x._M_t < __y._M_t; }
20571 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20572 inline bool
20573 operator!=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
20574 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
20575 { return !(__x == __y); }
20576 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20577 inline bool
20578 operator>(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
20579 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
20580 { return __y < __x; }
20581 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20582 inline bool
20583 operator<=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
20584 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
20585 { return !(__y < __x); }
20586 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20587 inline bool
20588 operator>=(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
20589 const multimap<_Key, _Tp, _Compare, _Alloc>& __y)
20590 { return !(__x < __y); }
20591 template<typename _Key, typename _Tp, typename _Compare, typename _Alloc>
20592 inline void
20593 swap(multimap<_Key, _Tp, _Compare, _Alloc>& __x,
20594 multimap<_Key, _Tp, _Compare, _Alloc>& __y)
20595 { __x.swap(__y); }
20596}
20597extern "C" {
20598 struct swig_type_info;
20599}
20600namespace Swig {
20601 struct GCItem
20602 {
20603 virtual ~GCItem() {}
20604 virtual int get_own() const
20605 {
20606 return 0;
20607 }
20608 };
20609 struct GCItem_var
20610 {
20611 GCItem_var(GCItem *item = 0) : _item(item)
20612 {
20613 }
20614 GCItem_var& operator=(GCItem *item)
20615 {
20616 GCItem *tmp = _item;
20617 _item = item;
20618 delete tmp;
20619 return *this;
20620 }
20621 ~GCItem_var()
20622 {
20623 delete _item;
20624 }
20625 GCItem * operator->() const
20626 {
20627 return _item;
20628 }
20629 private:
20630 GCItem *_item;
20631 };
20632 struct GCItem_Object : GCItem
20633 {
20634 GCItem_Object(int own) : _own(own)
20635 {
20636 }
20637 virtual ~GCItem_Object()
20638 {
20639 }
20640 int get_own() const
20641 {
20642 return _own;
20643 }
20644 private:
20645 int _own;
20646 };
20647 template <typename Type>
20648 struct GCItem_T : GCItem
20649 {
20650 GCItem_T(Type *ptr) : _ptr(ptr)
20651 {
20652 }
20653 virtual ~GCItem_T()
20654 {
20655 delete _ptr;
20656 }
20657 private:
20658 Type *_ptr;
20659 };
20660 template <typename Type>
20661 struct GCArray_T : GCItem
20662 {
20663 GCArray_T(Type *ptr) : _ptr(ptr)
20664 {
20665 }
20666 virtual ~GCArray_T()
20667 {
20668 delete[] _ptr;
20669 }
20670 private:
20671 Type *_ptr;
20672 };
20673 class DirectorException {
20674 protected:
20675 std::string swig_msg;
20676 public:
20677 DirectorException(PyObject *error, const char* hdr ="", const char* msg ="")
20678 : swig_msg(hdr)
20679 {
20680 SWIG_Python_Thread_Block _swig_thread_block;
20681 if (strlen(msg)) {
20682 swig_msg += " ";
20683 swig_msg += msg;
20684 }
20685 if (!PyErr_Occurred()) {
20686 PyErr_SetString(error, getMessage());
20687 }
20688 _swig_thread_block.end();
20689 }
20690 const char *getMessage() const
20691 {
20692 return swig_msg.c_str();
20693 }
20694 static void raise(PyObject *error, const char *msg)
20695 {
20696 throw DirectorException(error, msg);
20697 }
20698 static void raise(const char *msg)
20699 {
20700 raise(PyExc_RuntimeError, msg);
20701 }
20702 };
20703 class UnknownExceptionHandler
20704 {
20705 static void handler() {
20706 try {
20707 throw;
20708 } catch (DirectorException& e) {
20709 std::cerr << "Swig Director exception caught:" << std::endl
20710 << e.getMessage() << std::endl;
20711 } catch (std::exception& e) {
20712 std::cerr << "std::exception caught: "<< e.what() << std::endl;
20713 } catch (...) {
20714 std::cerr << "Unknown exception caught." << std::endl;
20715 }
20716 std::cerr << std::endl
20717 << "Python interpreter traceback:" << std::endl;
20718 PyErr_Print();
20719 std::cerr << std::endl;
20720 std::cerr << "This exception was caught by the SWIG unexpected exception handler." << std::endl
20721 << "Try using %feature(\"director:except\") to avoid reaching this point." << std::endl
20722 << std::endl
20723 << "Exception is being re-thrown, program will like abort/terminate." << std::endl;
20724 throw;
20725 }
20726 public:
20727 std::unexpected_handler old;
20728 UnknownExceptionHandler(std::unexpected_handler nh = handler)
20729 {
20730 old = std::set_unexpected(nh);
20731 }
20732 ~UnknownExceptionHandler()
20733 {
20734 std::set_unexpected(old);
20735 }
20736 };
20737 class DirectorTypeMismatchException : public Swig::DirectorException {
20738 public:
20739 DirectorTypeMismatchException(PyObject *error, const char* msg="")
20740 : Swig::DirectorException(error, "Swig director type mismatch", msg)
20741 {
20742 }
20743 DirectorTypeMismatchException(const char* msg="")
20744 : Swig::DirectorException(PyExc_TypeError, "Swig director type mismatch", msg)
20745 {
20746 }
20747 static void raise(PyObject *error, const char *msg)
20748 {
20749 throw DirectorTypeMismatchException(error, msg);
20750 }
20751 static void raise(const char *msg)
20752 {
20753 throw DirectorTypeMismatchException(msg);
20754 }
20755 };
20756 class DirectorMethodException : public Swig::DirectorException {
20757 public:
20758 DirectorMethodException(const char* msg = "")
20759 : DirectorException(PyExc_RuntimeError, "Swig director method error.", msg)
20760 {
20761 }
20762 static void raise(const char *msg)
20763 {
20764 throw DirectorMethodException(msg);
20765 }
20766 };
20767 class DirectorPureVirtualException : public Swig::DirectorException
20768 {
20769 public:
20770 DirectorPureVirtualException(const char* msg = "")
20771 : DirectorException(PyExc_RuntimeError, "Swig director pure virtual method called", msg)
20772 {
20773 }
20774 static void raise(const char *msg)
20775 {
20776 throw DirectorPureVirtualException(msg);
20777 }
20778 };
20779typedef void *PyThread_type_lock;
20780typedef void *PyThread_type_sema;
20781extern "C" {
20782void PyThread_init_thread(void);
20783long PyThread_start_new_thread(void (*)(void *), void *);
20784void PyThread_exit_thread(void);
20785void PyThread__PyThread_exit_thread(void);
20786long PyThread_get_thread_ident(void);
20787PyThread_type_lock PyThread_allocate_lock(void);
20788void PyThread_free_lock(PyThread_type_lock);
20789int PyThread_acquire_lock(PyThread_type_lock, int);
20790void PyThread_release_lock(PyThread_type_lock);
20791size_t PyThread_get_stacksize(void);
20792int PyThread_set_stacksize(size_t);
20793int PyThread_create_key(void);
20794void PyThread_delete_key(int);
20795int PyThread_set_key_value(int, void *);
20796void * PyThread_get_key_value(int);
20797void PyThread_delete_key_value(int key);
20798void PyThread_ReInitTLS(void);
20799}
20800 class Guard
20801 {
20802 PyThread_type_lock & mutex_;
20803 public:
20804 Guard(PyThread_type_lock & mutex) : mutex_(mutex)
20805 {
20806 PyThread_acquire_lock(mutex_, 1);
20807 }
20808 ~Guard()
20809 {
20810 PyThread_release_lock(mutex_);
20811 }
20812 };
20813 class Director {
20814 private:
20815 PyObject* swig_self;
20816 mutable bool swig_disown_flag;
20817 void swig_decref() const {
20818 if (swig_disown_flag) {
20819 SWIG_Python_Thread_Block _swig_thread_block;
20820 if ( --((PyObject*)(swig_self))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(swig_self)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(swig_self))));
20821 _swig_thread_block.end();
20822 }
20823 }
20824 public:
20825 Director(PyObject* self) : swig_self(self), swig_disown_flag(false) {
20826 swig_incref();
20827 }
20828 virtual ~Director() {
20829 swig_decref();
20830 }
20831 PyObject *swig_get_self() const {
20832 return swig_self;
20833 }
20834 void swig_disown() const {
20835 if (!swig_disown_flag) {
20836 swig_disown_flag=true;
20837 swig_incref();
20838 }
20839 }
20840 void swig_incref() const {
20841 if (swig_disown_flag) {
20842 ( ((PyObject*)(swig_self))->ob_refcnt++);
20843 }
20844 }
20845 virtual bool swig_get_inner(const char* ) const {
20846 return true;
20847 }
20848 virtual void swig_set_inner(const char* , bool ) const {
20849 }
20850 private:
20851 typedef std::map<void*, GCItem_var> ownership_map;
20852 mutable ownership_map owner;
20853 static PyThread_type_lock swig_mutex_own;
20854 public:
20855 template <typename Type>
20856 void swig_acquire_ownership_array(Type *vptr) const
20857 {
20858 if (vptr) {
20859 Guard _guard(swig_mutex_own);
20860 owner[vptr] = new GCArray_T<Type>(vptr);
20861 }
20862 }
20863 template <typename Type>
20864 void swig_acquire_ownership(Type *vptr) const
20865 {
20866 if (vptr) {
20867 Guard _guard(swig_mutex_own);
20868 owner[vptr] = new GCItem_T<Type>(vptr);
20869 }
20870 }
20871 void swig_acquire_ownership_obj(void *vptr, int own) const
20872 {
20873 if (vptr && own) {
20874 Guard _guard(swig_mutex_own);
20875 owner[vptr] = new GCItem_Object(own);
20876 }
20877 }
20878 int swig_release_ownership(void *vptr) const
20879 {
20880 int own = 0;
20881 if (vptr) {
20882 Guard _guard(swig_mutex_own);
20883 ownership_map::iterator iter = owner.find(vptr);
20884 if (iter != owner.end()) {
20885 own = iter->second->get_own();
20886 owner.erase(iter);
20887 }
20888 }
20889 return own;
20890 }
20891 };
20892 PyThread_type_lock Director::swig_mutex_own = PyThread_allocate_lock();
20893}
20894static swig_type_info *swig_types[82];
20895static swig_module_info swig_module = {swig_types, 81, 0, 0, 0, 0};
20896
20897namespace std __attribute__ ((__visibility__ ("default"))) {
20898 class logic_error : public exception
20899 {
20900 string _M_msg;
20901 public:
20902 explicit
20903 logic_error(const string& __arg);
20904 virtual
20905 ~logic_error() throw();
20906 virtual const char*
20907 what() const throw();
20908 };
20909 class domain_error : public logic_error
20910 {
20911 public:
20912 explicit domain_error(const string& __arg);
20913 };
20914 class invalid_argument : public logic_error
20915 {
20916 public:
20917 explicit invalid_argument(const string& __arg);
20918 };
20919 class length_error : public logic_error
20920 {
20921 public:
20922 explicit length_error(const string& __arg);
20923 };
20924 class out_of_range : public logic_error
20925 {
20926 public:
20927 explicit out_of_range(const string& __arg);
20928 };
20929 class runtime_error : public exception
20930 {
20931 string _M_msg;
20932 public:
20933 explicit
20934 runtime_error(const string& __arg);
20935 virtual
20936 ~runtime_error() throw();
20937 virtual const char*
20938 what() const throw();
20939 };
20940 class range_error : public runtime_error
20941 {
20942 public:
20943 explicit range_error(const string& __arg);
20944 };
20945 class overflow_error : public runtime_error
20946 {
20947 public:
20948 explicit overflow_error(const string& __arg);
20949 };
20950 class underflow_error : public runtime_error
20951 {
20952 public:
20953 explicit underflow_error(const string& __arg);
20954 };
20955}
20956namespace swig {
20957 class SwigPtr_PyObject {
20958 protected:
20959 PyObject *_obj;
20960 public:
20961 SwigPtr_PyObject() :_obj(0)
20962 {
20963 }
20964 SwigPtr_PyObject(const SwigPtr_PyObject& item) : _obj(item._obj)
20965 {
20966 if ((_obj) == __null) ; else ( ((PyObject*)(_obj))->ob_refcnt++);
20967 }
20968 SwigPtr_PyObject(PyObject *obj, bool initial_ref = true) :_obj(obj)
20969 {
20970 if (initial_ref) {
20971 if ((_obj) == __null) ; else ( ((PyObject*)(_obj))->ob_refcnt++);
20972 }
20973 }
20974 SwigPtr_PyObject & operator=(const SwigPtr_PyObject& item)
20975 {
20976 if ((item._obj) == __null) ; else ( ((PyObject*)(item._obj))->ob_refcnt++);
20977 if ((_obj) == __null) ; else if ( --((PyObject*)(_obj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(_obj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(_obj))));
20978 _obj = item._obj;
20979 return *this;
20980 }
20981 ~SwigPtr_PyObject()
20982 {
20983 if ((_obj) == __null) ; else if ( --((PyObject*)(_obj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(_obj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(_obj))));
20984 }
20985 operator PyObject *() const
20986 {
20987 return _obj;
20988 }
20989 PyObject *operator->() const
20990 {
20991 return _obj;
20992 }
20993 };
20994}
20995namespace swig {
20996 struct SwigVar_PyObject : SwigPtr_PyObject {
20997 SwigVar_PyObject(PyObject* obj = 0) : SwigPtr_PyObject(obj, false) { }
20998 SwigVar_PyObject & operator = (PyObject* obj)
20999 {
21000 if ((_obj) == __null) ; else if ( --((PyObject*)(_obj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(_obj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(_obj))));
21001 _obj = obj;
21002 return *this;
21003 }
21004 };
21005}
21006namespace Xapian {
21007typedef unsigned doccount;
21008typedef int doccount_diff;
21009typedef unsigned docid;
21010typedef double doclength;
21011typedef int percent;
21012typedef unsigned termcount;
21013typedef int termcount_diff;
21014typedef unsigned termpos;
21015typedef int termpos_diff;
21016typedef unsigned timeout;
21017typedef unsigned valueno;
21018typedef int valueno_diff;
21019typedef double weight;
21020const valueno BAD_VALUENO = static_cast<valueno>(-1);
21021}
21022namespace Xapian {
21023class ErrorHandler;
21024class __attribute__((visibility("default"))) Error {
21025 friend class ErrorHandler;
21026 std::string msg;
21027 std::string context;
21028 const char * type;
21029 int my_errno;
21030 mutable std::string error_string;
21031 bool already_handled;
21032 void operator=(const Error &o);
21033 protected:
21034 Error(const std::string &msg_, const std::string &context_,
21035 const char * type_, const char * error_string_);
21036 Error(const std::string &msg_, const std::string &context_,
21037 const char * type_, int errno_)
21038 : msg(msg_), context(context_), type(type_), my_errno(errno_),
21039 error_string(), already_handled(false) { }
21040 public:
21041 const char * get_type() const { return type; }
21042 const std::string & get_msg() const { return msg; }
21043 const std::string & get_context() const { return context; }
21044 const char * get_error_string() const;
21045 std::string get_description() const;
21046};
21047class __attribute__((visibility("default"))) LogicError : public Error {
21048 protected:
21049 LogicError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21050 : Error(msg_, context_, type_, error_string_) {}
21051 LogicError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21052 : Error(msg_, context_, type_, errno_) {}
21053};
21054class __attribute__((visibility("default"))) RuntimeError : public Error {
21055 protected:
21056 RuntimeError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21057 : Error(msg_, context_, type_, error_string_) {}
21058 RuntimeError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21059 : Error(msg_, context_, type_, errno_) {}
21060};
21061class __attribute__((visibility("default"))) AssertionError : public LogicError {
21062 public:
21063 AssertionError(const std::string &msg_, const std::string &context_, const char * error_string_)
21064 : LogicError(msg_, context_, "AssertionError", error_string_) {}
21065 explicit AssertionError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21066 : LogicError(msg_, context_, "AssertionError", errno_) {}
21067 AssertionError(const std::string &msg_, int errno_)
21068 : LogicError(msg_, std::string(), "AssertionError", errno_) {}
21069 protected:
21070 AssertionError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21071 : LogicError(msg_, context_, type_, error_string_) {}
21072 AssertionError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21073 : LogicError(msg_, context_, type_, errno_) {}
21074};
21075class __attribute__((visibility("default"))) InvalidArgumentError : public LogicError {
21076 public:
21077 InvalidArgumentError(const std::string &msg_, const std::string &context_, const char * error_string_)
21078 : LogicError(msg_, context_, "InvalidArgumentError", error_string_) {}
21079 explicit InvalidArgumentError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21080 : LogicError(msg_, context_, "InvalidArgumentError", errno_) {}
21081 InvalidArgumentError(const std::string &msg_, int errno_)
21082 : LogicError(msg_, std::string(), "InvalidArgumentError", errno_) {}
21083 protected:
21084 InvalidArgumentError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21085 : LogicError(msg_, context_, type_, error_string_) {}
21086 InvalidArgumentError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21087 : LogicError(msg_, context_, type_, errno_) {}
21088};
21089class __attribute__((visibility("default"))) InvalidOperationError : public LogicError {
21090 public:
21091 InvalidOperationError(const std::string &msg_, const std::string &context_, const char * error_string_)
21092 : LogicError(msg_, context_, "InvalidOperationError", error_string_) {}
21093 explicit InvalidOperationError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21094 : LogicError(msg_, context_, "InvalidOperationError", errno_) {}
21095 InvalidOperationError(const std::string &msg_, int errno_)
21096 : LogicError(msg_, std::string(), "InvalidOperationError", errno_) {}
21097 protected:
21098 InvalidOperationError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21099 : LogicError(msg_, context_, type_, error_string_) {}
21100 InvalidOperationError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21101 : LogicError(msg_, context_, type_, errno_) {}
21102};
21103class __attribute__((visibility("default"))) UnimplementedError : public LogicError {
21104 public:
21105 UnimplementedError(const std::string &msg_, const std::string &context_, const char * error_string_)
21106 : LogicError(msg_, context_, "UnimplementedError", error_string_) {}
21107 explicit UnimplementedError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21108 : LogicError(msg_, context_, "UnimplementedError", errno_) {}
21109 UnimplementedError(const std::string &msg_, int errno_)
21110 : LogicError(msg_, std::string(), "UnimplementedError", errno_) {}
21111 protected:
21112 UnimplementedError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21113 : LogicError(msg_, context_, type_, error_string_) {}
21114 UnimplementedError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21115 : LogicError(msg_, context_, type_, errno_) {}
21116};
21117class __attribute__((visibility("default"))) DatabaseError : public RuntimeError {
21118 public:
21119 DatabaseError(const std::string &msg_, const std::string &context_, const char * error_string_)
21120 : RuntimeError(msg_, context_, "DatabaseError", error_string_) {}
21121 explicit DatabaseError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21122 : RuntimeError(msg_, context_, "DatabaseError", errno_) {}
21123 DatabaseError(const std::string &msg_, int errno_)
21124 : RuntimeError(msg_, std::string(), "DatabaseError", errno_) {}
21125 protected:
21126 DatabaseError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21127 : RuntimeError(msg_, context_, type_, error_string_) {}
21128 DatabaseError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21129 : RuntimeError(msg_, context_, type_, errno_) {}
21130};
21131class __attribute__((visibility("default"))) DatabaseCorruptError : public DatabaseError {
21132 public:
21133 DatabaseCorruptError(const std::string &msg_, const std::string &context_, const char * error_string_)
21134 : DatabaseError(msg_, context_, "DatabaseCorruptError", error_string_) {}
21135 explicit DatabaseCorruptError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21136 : DatabaseError(msg_, context_, "DatabaseCorruptError", errno_) {}
21137 DatabaseCorruptError(const std::string &msg_, int errno_)
21138 : DatabaseError(msg_, std::string(), "DatabaseCorruptError", errno_) {}
21139 protected:
21140 DatabaseCorruptError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21141 : DatabaseError(msg_, context_, type_, error_string_) {}
21142 DatabaseCorruptError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21143 : DatabaseError(msg_, context_, type_, errno_) {}
21144};
21145class __attribute__((visibility("default"))) DatabaseCreateError : public DatabaseError {
21146 public:
21147 DatabaseCreateError(const std::string &msg_, const std::string &context_, const char * error_string_)
21148 : DatabaseError(msg_, context_, "DatabaseCreateError", error_string_) {}
21149 explicit DatabaseCreateError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21150 : DatabaseError(msg_, context_, "DatabaseCreateError", errno_) {}
21151 DatabaseCreateError(const std::string &msg_, int errno_)
21152 : DatabaseError(msg_, std::string(), "DatabaseCreateError", errno_) {}
21153 protected:
21154 DatabaseCreateError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21155 : DatabaseError(msg_, context_, type_, error_string_) {}
21156 DatabaseCreateError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21157 : DatabaseError(msg_, context_, type_, errno_) {}
21158};
21159class __attribute__((visibility("default"))) DatabaseLockError : public DatabaseError {
21160 public:
21161 DatabaseLockError(const std::string &msg_, const std::string &context_, const char * error_string_)
21162 : DatabaseError(msg_, context_, "DatabaseLockError", error_string_) {}
21163 explicit DatabaseLockError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21164 : DatabaseError(msg_, context_, "DatabaseLockError", errno_) {}
21165 DatabaseLockError(const std::string &msg_, int errno_)
21166 : DatabaseError(msg_, std::string(), "DatabaseLockError", errno_) {}
21167 protected:
21168 DatabaseLockError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21169 : DatabaseError(msg_, context_, type_, error_string_) {}
21170 DatabaseLockError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21171 : DatabaseError(msg_, context_, type_, errno_) {}
21172};
21173class __attribute__((visibility("default"))) DatabaseModifiedError : public DatabaseError {
21174 public:
21175 DatabaseModifiedError(const std::string &msg_, const std::string &context_, const char * error_string_)
21176 : DatabaseError(msg_, context_, "DatabaseModifiedError", error_string_) {}
21177 explicit DatabaseModifiedError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21178 : DatabaseError(msg_, context_, "DatabaseModifiedError", errno_) {}
21179 DatabaseModifiedError(const std::string &msg_, int errno_)
21180 : DatabaseError(msg_, std::string(), "DatabaseModifiedError", errno_) {}
21181 protected:
21182 DatabaseModifiedError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21183 : DatabaseError(msg_, context_, type_, error_string_) {}
21184 DatabaseModifiedError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21185 : DatabaseError(msg_, context_, type_, errno_) {}
21186};
21187class __attribute__((visibility("default"))) DatabaseOpeningError : public DatabaseError {
21188 public:
21189 DatabaseOpeningError(const std::string &msg_, const std::string &context_, const char * error_string_)
21190 : DatabaseError(msg_, context_, "DatabaseOpeningError", error_string_) {}
21191 explicit DatabaseOpeningError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21192 : DatabaseError(msg_, context_, "DatabaseOpeningError", errno_) {}
21193 DatabaseOpeningError(const std::string &msg_, int errno_)
21194 : DatabaseError(msg_, std::string(), "DatabaseOpeningError", errno_) {}
21195 protected:
21196 DatabaseOpeningError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21197 : DatabaseError(msg_, context_, type_, error_string_) {}
21198 DatabaseOpeningError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21199 : DatabaseError(msg_, context_, type_, errno_) {}
21200};
21201class __attribute__((visibility("default"))) DatabaseVersionError : public DatabaseOpeningError {
21202 public:
21203 DatabaseVersionError(const std::string &msg_, const std::string &context_, const char * error_string_)
21204 : DatabaseOpeningError(msg_, context_, "DatabaseVersionError", error_string_) {}
21205 explicit DatabaseVersionError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21206 : DatabaseOpeningError(msg_, context_, "DatabaseVersionError", errno_) {}
21207 DatabaseVersionError(const std::string &msg_, int errno_)
21208 : DatabaseOpeningError(msg_, std::string(), "DatabaseVersionError", errno_) {}
21209 protected:
21210 DatabaseVersionError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21211 : DatabaseOpeningError(msg_, context_, type_, error_string_) {}
21212 DatabaseVersionError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21213 : DatabaseOpeningError(msg_, context_, type_, errno_) {}
21214};
21215class __attribute__((visibility("default"))) DocNotFoundError : public RuntimeError {
21216 public:
21217 DocNotFoundError(const std::string &msg_, const std::string &context_, const char * error_string_)
21218 : RuntimeError(msg_, context_, "DocNotFoundError", error_string_) {}
21219 explicit DocNotFoundError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21220 : RuntimeError(msg_, context_, "DocNotFoundError", errno_) {}
21221 DocNotFoundError(const std::string &msg_, int errno_)
21222 : RuntimeError(msg_, std::string(), "DocNotFoundError", errno_) {}
21223 protected:
21224 DocNotFoundError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21225 : RuntimeError(msg_, context_, type_, error_string_) {}
21226 DocNotFoundError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21227 : RuntimeError(msg_, context_, type_, errno_) {}
21228};
21229class __attribute__((visibility("default"))) FeatureUnavailableError : public RuntimeError {
21230 public:
21231 FeatureUnavailableError(const std::string &msg_, const std::string &context_, const char * error_string_)
21232 : RuntimeError(msg_, context_, "FeatureUnavailableError", error_string_) {}
21233 explicit FeatureUnavailableError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21234 : RuntimeError(msg_, context_, "FeatureUnavailableError", errno_) {}
21235 FeatureUnavailableError(const std::string &msg_, int errno_)
21236 : RuntimeError(msg_, std::string(), "FeatureUnavailableError", errno_) {}
21237 protected:
21238 FeatureUnavailableError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21239 : RuntimeError(msg_, context_, type_, error_string_) {}
21240 FeatureUnavailableError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21241 : RuntimeError(msg_, context_, type_, errno_) {}
21242};
21243class __attribute__((visibility("default"))) InternalError : public RuntimeError {
21244 public:
21245 InternalError(const std::string &msg_, const std::string &context_, const char * error_string_)
21246 : RuntimeError(msg_, context_, "InternalError", error_string_) {}
21247 explicit InternalError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21248 : RuntimeError(msg_, context_, "InternalError", errno_) {}
21249 InternalError(const std::string &msg_, int errno_)
21250 : RuntimeError(msg_, std::string(), "InternalError", errno_) {}
21251 protected:
21252 InternalError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21253 : RuntimeError(msg_, context_, type_, error_string_) {}
21254 InternalError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21255 : RuntimeError(msg_, context_, type_, errno_) {}
21256};
21257class __attribute__((visibility("default"))) NetworkError : public RuntimeError {
21258 public:
21259 NetworkError(const std::string &msg_, const std::string &context_, const char * error_string_)
21260 : RuntimeError(msg_, context_, "NetworkError", error_string_) {}
21261 explicit NetworkError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21262 : RuntimeError(msg_, context_, "NetworkError", errno_) {}
21263 NetworkError(const std::string &msg_, int errno_)
21264 : RuntimeError(msg_, std::string(), "NetworkError", errno_) {}
21265 protected:
21266 NetworkError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21267 : RuntimeError(msg_, context_, type_, error_string_) {}
21268 NetworkError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21269 : RuntimeError(msg_, context_, type_, errno_) {}
21270};
21271class __attribute__((visibility("default"))) NetworkTimeoutError : public NetworkError {
21272 public:
21273 NetworkTimeoutError(const std::string &msg_, const std::string &context_, const char * error_string_)
21274 : NetworkError(msg_, context_, "NetworkTimeoutError", error_string_) {}
21275 explicit NetworkTimeoutError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21276 : NetworkError(msg_, context_, "NetworkTimeoutError", errno_) {}
21277 NetworkTimeoutError(const std::string &msg_, int errno_)
21278 : NetworkError(msg_, std::string(), "NetworkTimeoutError", errno_) {}
21279 protected:
21280 NetworkTimeoutError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21281 : NetworkError(msg_, context_, type_, error_string_) {}
21282 NetworkTimeoutError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21283 : NetworkError(msg_, context_, type_, errno_) {}
21284};
21285class __attribute__((visibility("default"))) QueryParserError : public RuntimeError {
21286 public:
21287 QueryParserError(const std::string &msg_, const std::string &context_, const char * error_string_)
21288 : RuntimeError(msg_, context_, "QueryParserError", error_string_) {}
21289 explicit QueryParserError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21290 : RuntimeError(msg_, context_, "QueryParserError", errno_) {}
21291 QueryParserError(const std::string &msg_, int errno_)
21292 : RuntimeError(msg_, std::string(), "QueryParserError", errno_) {}
21293 protected:
21294 QueryParserError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21295 : RuntimeError(msg_, context_, type_, error_string_) {}
21296 QueryParserError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21297 : RuntimeError(msg_, context_, type_, errno_) {}
21298};
21299class __attribute__((visibility("default"))) SerialisationError : public RuntimeError {
21300 public:
21301 SerialisationError(const std::string &msg_, const std::string &context_, const char * error_string_)
21302 : RuntimeError(msg_, context_, "SerialisationError", error_string_) {}
21303 explicit SerialisationError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21304 : RuntimeError(msg_, context_, "SerialisationError", errno_) {}
21305 SerialisationError(const std::string &msg_, int errno_)
21306 : RuntimeError(msg_, std::string(), "SerialisationError", errno_) {}
21307 protected:
21308 SerialisationError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21309 : RuntimeError(msg_, context_, type_, error_string_) {}
21310 SerialisationError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21311 : RuntimeError(msg_, context_, type_, errno_) {}
21312};
21313class __attribute__((visibility("default"))) RangeError : public RuntimeError {
21314 public:
21315 RangeError(const std::string &msg_, const std::string &context_, const char * error_string_)
21316 : RuntimeError(msg_, context_, "RangeError", error_string_) {}
21317 explicit RangeError(const std::string &msg_, const std::string &context_ = std::string(), int errno_ = 0)
21318 : RuntimeError(msg_, context_, "RangeError", errno_) {}
21319 RangeError(const std::string &msg_, int errno_)
21320 : RuntimeError(msg_, std::string(), "RangeError", errno_) {}
21321 protected:
21322 RangeError(const std::string &msg_, const std::string &context_, const char * type_, const char * error_string_)
21323 : RuntimeError(msg_, context_, type_, error_string_) {}
21324 RangeError(const std::string &msg_, const std::string &context_, const char * type_, int errno_)
21325 : RuntimeError(msg_, context_, type_, errno_) {}
21326};
21327}
21328namespace Xapian {
21329class Error;
21330class __attribute__((visibility("default"))) ErrorHandler {
21331 void operator=(const ErrorHandler &);
21332 ErrorHandler(const Xapian::ErrorHandler &);
21333 virtual bool handle_error(Xapian::Error &error) = 0;
21334 public:
21335 ErrorHandler() {}
21336 virtual ~ErrorHandler();
21337 void operator()(Xapian::Error &error);
21338};
21339}
21340namespace Xapian {
21341namespace Internal {
21342class RefCntBase {
21343 protected:
21344 RefCntBase(const RefCntBase &) : ref_count(0) { }
21345 public:
21346 RefCntBase() : ref_count(0) { }
21347 typedef unsigned int ref_count_t;
21348 mutable ref_count_t ref_count;
21349};
21350template <class T>
21351class RefCntPtr {
21352 private:
21353 T *dest;
21354 public:
21355 T *operator->() const;
21356 T &operator*() const;
21357 T *get() const;
21358 RefCntPtr(T *dest_);
21359 RefCntPtr();
21360 RefCntPtr(const RefCntPtr &other);
21361 void operator=(const RefCntPtr &other);
21362 void operator=(T *dest_);
21363 ~RefCntPtr();
21364 template <class U>
21365 RefCntPtr(const RefCntPtr<U> &other);
21366};
21367template <class T>
21368inline RefCntPtr<T>::RefCntPtr(T *dest_) : dest(dest_)
21369{
21370 if (dest) ++dest->ref_count;
21371}
21372template <class T>
21373inline RefCntPtr<T>::RefCntPtr() : dest(0)
21374{
21375}
21376template <class T>
21377inline RefCntPtr<T>::RefCntPtr(const RefCntPtr &other) : dest(other.dest)
21378{
21379 if (dest) ++dest->ref_count;
21380}
21381template <class T>
21382inline void RefCntPtr<T>::operator=(const RefCntPtr &other) {
21383 operator=(other.dest);
21384}
21385template <class T>
21386inline void RefCntPtr<T>::operator=(T *dest_) {
21387 if (dest == dest_) return;
21388 T *old_dest = dest;
21389 dest = dest_;
21390 if (dest) ++dest->ref_count;
21391 if (old_dest && --old_dest->ref_count == 0) delete old_dest;
21392}
21393template <class T>
21394inline RefCntPtr<T>::~RefCntPtr()
21395{
21396 if (dest && --dest->ref_count == 0) {
21397 T * condemned = dest;
21398 dest = 0;
21399 delete condemned;
21400 }
21401}
21402template <class T>
21403template <class U>
21404inline
21405RefCntPtr<T>::RefCntPtr(const RefCntPtr<U> &other)
21406 : dest(other.get())
21407{
21408 if (dest) ++dest->ref_count;
21409}
21410template <class T>
21411inline T *RefCntPtr<T>::operator->() const
21412{
21413 return dest;
21414}
21415template <class T>
21416inline T &RefCntPtr<T>::operator*() const
21417{
21418 return *dest;
21419}
21420template <class T>
21421inline T *RefCntPtr<T>::get() const
21422{
21423 return dest;
21424}
21425}
21426}
21427
21428
21429
21430namespace std __attribute__ ((__visibility__ ("default"))) {
21431 template<typename _Tp, typename _CharT = char,
21432 typename _Traits = char_traits<_CharT>, typename _Dist = ptrdiff_t>
21433 class istream_iterator
21434 : public iterator<input_iterator_tag, _Tp, _Dist, const _Tp*, const _Tp&>
21435 {
21436 public:
21437 typedef _CharT char_type;
21438 typedef _Traits traits_type;
21439 typedef basic_istream<_CharT, _Traits> istream_type;
21440 private:
21441 istream_type* _M_stream;
21442 _Tp _M_value;
21443 bool _M_ok;
21444 public:
21445 istream_iterator()
21446 : _M_stream(0), _M_value(), _M_ok(false) {}
21447 istream_iterator(istream_type& __s)
21448 : _M_stream(&__s)
21449 { _M_read(); }
21450 istream_iterator(const istream_iterator& __obj)
21451 : _M_stream(__obj._M_stream), _M_value(__obj._M_value),
21452 _M_ok(__obj._M_ok)
21453 { }
21454 const _Tp&
21455 operator*() const
21456 {
21457 ;
21458 return _M_value;
21459 }
21460 const _Tp*
21461 operator->() const { return &(operator*()); }
21462 istream_iterator&
21463 operator++()
21464 {
21465 ;
21466 _M_read();
21467 return *this;
21468 }
21469 istream_iterator
21470 operator++(int)
21471 {
21472 ;
21473 istream_iterator __tmp = *this;
21474 _M_read();
21475 return __tmp;
21476 }
21477 bool
21478 _M_equal(const istream_iterator& __x) const
21479 { return (_M_ok == __x._M_ok) && (!_M_ok || _M_stream == __x._M_stream); }
21480 private:
21481 void
21482 _M_read()
21483 {
21484 _M_ok = (_M_stream && *_M_stream) ? true : false;
21485 if (_M_ok)
21486 {
21487 *_M_stream >> _M_value;
21488 _M_ok = *_M_stream ? true : false;
21489 }
21490 }
21491 };
21492 template<typename _Tp, typename _CharT, typename _Traits, typename _Dist>
21493 inline bool
21494 operator==(const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __x,
21495 const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __y)
21496 { return __x._M_equal(__y); }
21497 template <class _Tp, class _CharT, class _Traits, class _Dist>
21498 inline bool
21499 operator!=(const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __x,
21500 const istream_iterator<_Tp, _CharT, _Traits, _Dist>& __y)
21501 { return !__x._M_equal(__y); }
21502 template<typename _Tp, typename _CharT = char,
21503 typename _Traits = char_traits<_CharT> >
21504 class ostream_iterator
21505 : public iterator<output_iterator_tag, void, void, void, void>
21506 {
21507 public:
21508 typedef _CharT char_type;
21509 typedef _Traits traits_type;
21510 typedef basic_ostream<_CharT, _Traits> ostream_type;
21511 private:
21512 ostream_type* _M_stream;
21513 const _CharT* _M_string;
21514 public:
21515 ostream_iterator(ostream_type& __s) : _M_stream(&__s), _M_string(0) {}
21516 ostream_iterator(ostream_type& __s, const _CharT* __c)
21517 : _M_stream(&__s), _M_string(__c) { }
21518 ostream_iterator(const ostream_iterator& __obj)
21519 : _M_stream(__obj._M_stream), _M_string(__obj._M_string) { }
21520 ostream_iterator&
21521 operator=(const _Tp& __value)
21522 {
21523 ;
21524 *_M_stream << __value;
21525 if (_M_string) *_M_stream << _M_string;
21526 return *this;
21527 }
21528 ostream_iterator&
21529 operator*()
21530 { return *this; }
21531 ostream_iterator&
21532 operator++()
21533 { return *this; }
21534 ostream_iterator&
21535 operator++(int)
21536 { return *this; }
21537 };
21538}
21539namespace Xapian {
21540template<typename T>
21541class DerefWrapper_ {
21542 void operator=(const DerefWrapper_ &);
21543 T res;
21544 public:
21545 explicit DerefWrapper_(const T &res_) : res(res_) { }
21546 const T & operator*() const { return res; }
21547};
21548}
21549namespace Xapian {
21550class Database;
21551class PostingIterator;
21552class TermIterator;
21553class __attribute__((visibility("default"))) PositionIterator {
21554 private:
21555 friend class PostingIterator;
21556 friend class TermIterator;
21557 friend class Database;
21558 public:
21559 class Internal;
21560 Xapian::Internal::RefCntPtr<Internal> internal;
21561 friend bool operator==(const PositionIterator &a, const PositionIterator &b);
21562 explicit PositionIterator(Internal *internal_);
21563 PositionIterator();
21564 ~PositionIterator();
21565 PositionIterator(const PositionIterator &o);
21566 void operator=(const PositionIterator &o);
21567 Xapian::termpos operator *() const;
21568 PositionIterator & operator++();
21569 DerefWrapper_<termpos> operator++(int) {
21570 Xapian::termpos tmp = **this;
21571 operator++();
21572 return DerefWrapper_<termpos>(tmp);
21573 }
21574 void skip_to(Xapian::termpos pos);
21575 std::string get_description() const;
21576 typedef std::input_iterator_tag iterator_category;
21577 typedef Xapian::termpos value_type;
21578 typedef Xapian::termpos_diff difference_type;
21579 typedef Xapian::termpos * pointer;
21580 typedef Xapian::termpos & reference;
21581};
21582inline bool
21583operator==(const PositionIterator &a, const PositionIterator &b)
21584{
21585 return (a.internal.get() == b.internal.get());
21586}
21587inline bool
21588operator!=(const PositionIterator &a, const PositionIterator &b)
21589{
21590 return !(a == b);
21591}
21592}
21593namespace Xapian {
21594class Database;
21595class __attribute__((visibility("default"))) TermIterator {
21596 public:
21597 class Internal;
21598 Xapian::Internal::RefCntPtr<Internal> internal;
21599 explicit TermIterator(Internal *internal_);
21600 TermIterator();
21601 ~TermIterator();
21602 TermIterator(const TermIterator &other);
21603 void operator=(const TermIterator &other);
21604 std::string operator *() const;
21605 TermIterator & operator++();
21606 DerefWrapper_<std::string> operator++(int) {
21607 const std::string & term(**this);
21608 operator++();
21609 return DerefWrapper_<std::string>(term);
21610 }
21611 void skip_to(const std::string & tname);
21612 Xapian::termcount get_wdf() const;
21613 Xapian::doccount get_termfreq() const;
21614 Xapian::termcount positionlist_count() const;
21615 PositionIterator positionlist_begin() const;
21616 PositionIterator positionlist_end() const {
21617 return PositionIterator(__null);
21618 }
21619 std::string get_description() const;
21620 typedef std::input_iterator_tag iterator_category;
21621 typedef std::string value_type;
21622 typedef Xapian::termcount_diff difference_type;
21623 typedef std::string * pointer;
21624 typedef std::string & reference;
21625};
21626inline bool
21627operator==(const TermIterator &a, const TermIterator &b)
21628{
21629 return (a.internal.get() == b.internal.get());
21630}
21631inline bool
21632operator!=(const TermIterator &a, const TermIterator &b)
21633{
21634 return !(a == b);
21635}
21636}
21637namespace Xapian {
21638class ValueIteratorEnd_ { };
21639class __attribute__((visibility("default"))) ValueIterator {
21640 public:
21641 class Internal;
21642 Xapian::Internal::RefCntPtr<Internal> internal;
21643 explicit ValueIterator(Internal *internal_);
21644 ValueIterator(const ValueIterator & o);
21645 ValueIterator(const ValueIteratorEnd_ &);
21646 ValueIterator & operator=(const ValueIterator & o);
21647 ValueIterator & operator=(const ValueIteratorEnd_ &);
21648 ValueIterator();
21649 ~ValueIterator();
21650 std::string operator*() const;
21651 ValueIterator & operator++();
21652 DerefWrapper_<std::string> operator++(int) {
21653 const std::string & value(**this);
21654 operator++();
21655 return DerefWrapper_<std::string>(value);
21656 }
21657 Xapian::docid get_docid() const;
21658 Xapian::valueno get_valueno() const;
21659 void skip_to(Xapian::docid docid_or_slot);
21660 bool check(Xapian::docid docid);
21661 std::string get_description() const;
21662 typedef std::input_iterator_tag iterator_category;
21663 typedef std::string value_type;
21664 typedef Xapian::doccount_diff difference_type;
21665 typedef std::string * pointer;
21666 typedef std::string & reference;
21667};
21668inline bool
21669operator==(const ValueIterator &a, const ValueIterator &b)
21670{
21671 return a.internal.get() == b.internal.get();
21672}
21673inline bool
21674operator==(const ValueIterator &a, const ValueIteratorEnd_ &)
21675{
21676 return a.internal.get() == __null;
21677}
21678inline bool
21679operator==(const ValueIteratorEnd_ &a, const ValueIterator &b)
21680{
21681 return b == a;
21682}
21683inline bool
21684operator==(const ValueIteratorEnd_ &, const ValueIteratorEnd_ &)
21685{
21686 return true;
21687}
21688inline bool
21689operator!=(const ValueIterator &a, const ValueIterator &b)
21690{
21691 return !(a == b);
21692}
21693inline bool
21694operator!=(const ValueIterator &a, const ValueIteratorEnd_ &b)
21695{
21696 return !(a == b);
21697}
21698inline bool
21699operator!=(const ValueIteratorEnd_ &a, const ValueIterator &b)
21700{
21701 return !(a == b);
21702}
21703inline bool
21704operator!=(const ValueIteratorEnd_ &a, const ValueIteratorEnd_ &b)
21705{
21706 return !(a == b);
21707}
21708}
21709namespace Xapian {
21710class __attribute__((visibility("default"))) Document {
21711 public:
21712 class Internal;
21713 Xapian::Internal::RefCntPtr<Internal> internal;
21714 explicit Document(Internal *internal_);
21715 Document(const Document &other);
21716 void operator=(const Document &other);
21717 Document();
21718 ~Document();
21719 std::string get_value(Xapian::valueno valueno) const;
21720 void add_value(Xapian::valueno valueno, const std::string &value);
21721 void remove_value(Xapian::valueno valueno);
21722 void clear_values();
21723 std::string get_data() const;
21724 void set_data(const std::string &data);
21725 void add_posting(const std::string & tname,
21726 Xapian::termpos tpos,
21727 Xapian::termcount wdfinc = 1);
21728 void add_term(const std::string & tname, Xapian::termcount wdfinc = 1);
21729 void add_boolean_term(const std::string & term) { add_term(term, 0); }
21730 void remove_posting(const std::string & tname,
21731 Xapian::termpos tpos,
21732 Xapian::termcount wdfdec = 1);
21733 void remove_term(const std::string & tname);
21734 void clear_terms();
21735 Xapian::termcount termlist_count() const;
21736 TermIterator termlist_begin() const;
21737 TermIterator termlist_end() const {
21738 return TermIterator(__null);
21739 }
21740 Xapian::termcount values_count() const;
21741 ValueIterator values_begin() const;
21742 ValueIteratorEnd_ values_end() const {
21743 return ValueIteratorEnd_();
21744 }
21745 docid get_docid() const;
21746 std::string serialise() const;
21747 static Document unserialise(const std::string &s);
21748 std::string get_description() const;
21749};
21750}
21751namespace Xapian {
21752class Database;
21753class __attribute__((visibility("default"))) PostingIterator {
21754 public:
21755 class Internal;
21756 Xapian::Internal::RefCntPtr<Internal> internal;
21757 private:
21758 friend class Database;
21759 explicit PostingIterator(Internal *internal_);
21760 public:
21761 friend bool operator==(const PostingIterator &a,
21762 const PostingIterator &b);
21763 PostingIterator();
21764 ~PostingIterator();
21765 PostingIterator(const PostingIterator &other);
21766 void operator=(const PostingIterator &other);
21767 PostingIterator & operator++();
21768 DerefWrapper_<docid> operator++(int) {
21769 Xapian::docid tmp = **this;
21770 operator++();
21771 return DerefWrapper_<docid>(tmp);
21772 }
21773 void skip_to(Xapian::docid did);
21774 Xapian::docid operator *() const;
21775 Xapian::termcount get_doclength() const;
21776 Xapian::termcount get_wdf() const;
21777 PositionIterator positionlist_begin() const;
21778 PositionIterator positionlist_end() const {
21779 return PositionIterator(__null);
21780 }
21781 std::string get_description() const;
21782 typedef std::input_iterator_tag iterator_category;
21783 typedef Xapian::docid value_type;
21784 typedef Xapian::doccount_diff difference_type;
21785 typedef Xapian::docid * pointer;
21786 typedef Xapian::docid & reference;
21787};
21788inline bool operator==(const PostingIterator &a, const PostingIterator &b)
21789{
21790 return (a.internal.get() == b.internal.get());
21791}
21792inline bool operator!=(const PostingIterator &a, const PostingIterator &b)
21793{
21794 return !(a == b);
21795}
21796}
21797namespace Xapian {
21798class __attribute__((visibility("default"))) Database {
21799 public:
21800 class Internal;
21801 std::vector<Xapian::Internal::RefCntPtr<Internal> > internal;
21802 Document::Internal * get_document_lazily(Xapian::docid did) const;
21803 void add_database(const Database & database);
21804 Database();
21805 explicit Database(const std::string &path);
21806 explicit Database(Internal *internal);
21807 virtual ~Database();
21808 Database(const Database &other);
21809 void operator=(const Database &other);
21810 void reopen();
21811 virtual void close();
21812 virtual std::string get_description() const;
21813 PostingIterator postlist_begin(const std::string &tname) const;
21814 PostingIterator postlist_end(const std::string &) const {
21815 return PostingIterator(__null);
21816 }
21817 TermIterator termlist_begin(Xapian::docid did) const;
21818 TermIterator termlist_end(Xapian::docid) const {
21819 return TermIterator(__null);
21820 }
21821 bool has_positions() const;
21822 PositionIterator positionlist_begin(Xapian::docid did, const std::string &tname) const;
21823 PositionIterator positionlist_end(Xapian::docid, const std::string &) const {
21824 return PositionIterator(__null);
21825 }
21826 TermIterator allterms_begin() const;
21827 TermIterator allterms_end() const {
21828 return TermIterator(__null);
21829 }
21830 TermIterator allterms_begin(const std::string & prefix) const;
21831 TermIterator allterms_end(const std::string &) const {
21832 return TermIterator(__null);
21833 }
21834 Xapian::doccount get_doccount() const;
21835 Xapian::docid get_lastdocid() const;
21836 Xapian::doclength get_avlength() const;
21837 Xapian::doccount get_termfreq(const std::string & tname) const;
21838 bool term_exists(const std::string & tname) const;
21839 Xapian::termcount get_collection_freq(const std::string & tname) const;
21840 Xapian::doccount get_value_freq(Xapian::valueno valno) const;
21841 std::string get_value_lower_bound(Xapian::valueno valno) const;
21842 std::string get_value_upper_bound(Xapian::valueno valno) const;
21843 Xapian::termcount get_doclength_lower_bound() const;
21844 Xapian::termcount get_doclength_upper_bound() const;
21845 Xapian::termcount get_wdf_upper_bound(const std::string & term) const;
21846 ValueIterator valuestream_begin(Xapian::valueno slot) const;
21847 ValueIteratorEnd_ valuestream_end(Xapian::valueno) const {
21848 return ValueIteratorEnd_();
21849 }
21850 Xapian::termcount get_doclength(Xapian::docid did) const;
21851 void keep_alive();
21852 Xapian::Document get_document(Xapian::docid did) const;
21853 std::string get_spelling_suggestion(const std::string &word,
21854 unsigned max_edit_distance = 2) const;
21855 Xapian::TermIterator spellings_begin() const;
21856 Xapian::TermIterator spellings_end() const {
21857 return Xapian::TermIterator(__null);
21858 }
21859 Xapian::TermIterator synonyms_begin(const std::string &term) const;
21860 Xapian::TermIterator synonyms_end(const std::string &) const {
21861 return Xapian::TermIterator(__null);
21862 }
21863 Xapian::TermIterator synonym_keys_begin(const std::string &prefix = std::string()) const;
21864 Xapian::TermIterator synonym_keys_end(const std::string & = std::string()) const {
21865 return Xapian::TermIterator(__null);
21866 }
21867 std::string get_metadata(const std::string & key) const;
21868 Xapian::TermIterator metadata_keys_begin(const std::string &prefix = std::string()) const;
21869 Xapian::TermIterator metadata_keys_end(const std::string & = std::string()) const {
21870 return Xapian::TermIterator(__null);
21871 }
21872 std::string get_uuid() const;
21873};
21874class __attribute__((visibility("default"))) WritableDatabase : public Database {
21875 public:
21876 virtual ~WritableDatabase();
21877 WritableDatabase();
21878 WritableDatabase(const std::string &path, int action);
21879 explicit WritableDatabase(Database::Internal *internal);
21880 WritableDatabase(const WritableDatabase &other);
21881 void operator=(const WritableDatabase &other);
21882 void commit();
21883 void flush() { commit(); }
21884 void begin_transaction(bool flushed=true);
21885 void commit_transaction();
21886 void cancel_transaction();
21887 Xapian::docid add_document(const Xapian::Document & document);
21888 void delete_document(Xapian::docid did);
21889 void delete_document(const std::string & unique_term);
21890 void replace_document(Xapian::docid did,
21891 const Xapian::Document & document);
21892 Xapian::docid replace_document(const std::string & unique_term,
21893 const Xapian::Document & document);
21894 void add_spelling(const std::string & word,
21895 Xapian::termcount freqinc = 1) const;
21896 void remove_spelling(const std::string & word,
21897 Xapian::termcount freqdec = 1) const;
21898 void add_synonym(const std::string & term,
21899 const std::string & synonym) const;
21900 void remove_synonym(const std::string & term,
21901 const std::string & synonym) const;
21902 void clear_synonyms(const std::string & term) const;
21903 void set_metadata(const std::string & key, const std::string & value);
21904 std::string get_description() const;
21905};
21906const int DB_CREATE_OR_OPEN = 1;
21907const int DB_CREATE = 2;
21908const int DB_CREATE_OR_OVERWRITE = 3;
21909const int DB_OPEN = 4;
21910}
21911namespace Xapian {
21912class Database;
21913class WritableDatabase;
21914namespace Auto {
21915__attribute__((visibility("default")))
21916Database open_stub(const std::string &file);
21917__attribute__((visibility("default")))
21918WritableDatabase open_stub(const std::string &file, int action);
21919}
21920namespace InMemory {
21921__attribute__((visibility("default")))
21922WritableDatabase open();
21923}
21924namespace Brass {
21925__attribute__((visibility("default")))
21926Database open(const std::string &dir);
21927__attribute__((visibility("default")))
21928WritableDatabase
21929open(const std::string &dir, int action, int block_size = 8192);
21930}
21931namespace Chert {
21932__attribute__((visibility("default")))
21933Database open(const std::string &dir);
21934__attribute__((visibility("default")))
21935WritableDatabase
21936open(const std::string &dir, int action, int block_size = 8192);
21937}
21938namespace Flint {
21939__attribute__((visibility("default")))
21940Database open(const std::string &dir);
21941__attribute__((visibility("default")))
21942WritableDatabase
21943open(const std::string &dir, int action, int block_size = 8192);
21944}
21945namespace Remote {
21946__attribute__((visibility("default")))
21947Database open(const std::string &host, unsigned int port, Xapian::timeout timeout = 10000, Xapian::timeout connect_timeout = 10000);
21948__attribute__((visibility("default")))
21949WritableDatabase open_writable(const std::string &host, unsigned int port, Xapian::timeout timeout = 0, Xapian::timeout connect_timeout = 10000);
21950__attribute__((visibility("default")))
21951Database open(const std::string &program, const std::string &args, Xapian::timeout timeout = 10000);
21952__attribute__((visibility("default")))
21953WritableDatabase open_writable(const std::string &program, const std::string &args, Xapian::timeout timeout = 0);
21954}
21955}
21956namespace Xapian {
21957class __attribute__((visibility("default"))) Utf8Iterator {
21958 const unsigned char *p;
21959 const unsigned char *end;
21960 mutable unsigned seqlen;
21961 void calculate_sequence_length() const;
21962 unsigned get_char() const;
21963 Utf8Iterator(const unsigned char *p_, const unsigned char *end_, unsigned seqlen_)
21964 : p(p_), end(end_), seqlen(seqlen_) { }
21965 public:
21966 const char * raw() const {
21967 return reinterpret_cast<const char *>(p ? p : end);
21968 }
21969 size_t left() const { return p ? end - p : 0; }
21970 void assign(const char *p_, size_t len) {
21971 if (len) {
21972 p = reinterpret_cast<const unsigned char*>(p_);
21973 end = p + len;
21974 seqlen = 0;
21975 } else {
21976 p = __null;
21977 }
21978 }
21979 void assign(const std::string &s) { assign(s.data(), s.size()); }
21980 explicit Utf8Iterator(const char *p_);
21981 Utf8Iterator(const char *p_, size_t len) { assign(p_, len); }
21982 Utf8Iterator(const std::string &s) { assign(s.data(), s.size()); }
21983 Utf8Iterator() : p(__null), end(0), seqlen(0) { }
21984 unsigned operator*() const;
21985 Utf8Iterator operator++(int) {
21986 if (seqlen == 0) calculate_sequence_length();
21987 const unsigned char *old_p = p;
21988 unsigned old_seqlen = seqlen;
21989 p += seqlen;
21990 if (p == end) p = __null;
21991 seqlen = 0;
21992 return Utf8Iterator(old_p, end, old_seqlen);
21993 }
21994 Utf8Iterator & operator++() {
21995 if (seqlen == 0) calculate_sequence_length();
21996 p += seqlen;
21997 if (p == end) p = __null;
21998 seqlen = 0;
21999 return *this;
22000 }
22001 bool operator==(const Utf8Iterator &other) const { return p == other.p; }
22002 bool operator!=(const Utf8Iterator &other) const { return p != other.p; }
22003 typedef std::input_iterator_tag iterator_category;
22004 typedef unsigned value_type;
22005 typedef size_t difference_type;
22006 typedef const unsigned * pointer;
22007 typedef const unsigned & reference;
22008};
22009namespace Unicode {
22010typedef enum {
22011 UNASSIGNED,
22012 UPPERCASE_LETTER,
22013 LOWERCASE_LETTER,
22014 TITLECASE_LETTER,
22015 MODIFIER_LETTER,
22016 OTHER_LETTER,
22017 NON_SPACING_MARK,
22018 ENCLOSING_MARK,
22019 COMBINING_SPACING_MARK,
22020 DECIMAL_DIGIT_NUMBER,
22021 LETTER_NUMBER,
22022 OTHER_NUMBER,
22023 SPACE_SEPARATOR,
22024 LINE_SEPARATOR,
22025 PARAGRAPH_SEPARATOR,
22026 CONTROL,
22027 FORMAT,
22028 PRIVATE_USE,
22029 SURROGATE,
22030 CONNECTOR_PUNCTUATION,
22031 DASH_PUNCTUATION,
22032 OPEN_PUNCTUATION,
22033 CLOSE_PUNCTUATION,
22034 INITIAL_QUOTE_PUNCTUATION,
22035 FINAL_QUOTE_PUNCTUATION,
22036 OTHER_PUNCTUATION,
22037 MATH_SYMBOL,
22038 CURRENCY_SYMBOL,
22039 MODIFIER_SYMBOL,
22040 OTHER_SYMBOL
22041} category;
22042namespace Internal {
22043 __attribute__((visibility("default")))
22044 int get_character_info(unsigned ch);
22045 inline int get_case_type(int info) { return ((info & 0xe0) >> 5); }
22046 inline category get_category(int info) { return static_cast<category>(info & 0x1f); }
22047 inline int get_delta(int info) {
22048 return (info >= 0) ? (info >> 15) : (~(~info >> 15));
22049 }
22050}
22051__attribute__((visibility("default")))
22052unsigned nonascii_to_utf8(unsigned ch, char * buf);
22053inline unsigned to_utf8(unsigned ch, char *buf) {
22054 if (ch < 128) {
22055 *buf = static_cast<unsigned char>(ch);
22056 return 1;
22057 }
22058 return Xapian::Unicode::nonascii_to_utf8(ch, buf);
22059}
22060inline void append_utf8(std::string &s, unsigned ch) {
22061 char buf[4];
22062 s.append(buf, to_utf8(ch, buf));
22063}
22064inline category get_category(unsigned ch) {
22065 if (ch >= 0x110000) return Xapian::Unicode::UNASSIGNED;
22066 return Internal::get_category(Internal::get_character_info(ch));
22067}
22068inline bool is_wordchar(unsigned ch) {
22069 const unsigned int WORDCHAR_MASK =
22070 (1 << Xapian::Unicode::UPPERCASE_LETTER) |
22071 (1 << Xapian::Unicode::LOWERCASE_LETTER) |
22072 (1 << Xapian::Unicode::TITLECASE_LETTER) |
22073 (1 << Xapian::Unicode::MODIFIER_LETTER) |
22074 (1 << Xapian::Unicode::OTHER_LETTER) |
22075 (1 << Xapian::Unicode::NON_SPACING_MARK) |
22076 (1 << Xapian::Unicode::ENCLOSING_MARK) |
22077 (1 << Xapian::Unicode::COMBINING_SPACING_MARK) |
22078 (1 << Xapian::Unicode::DECIMAL_DIGIT_NUMBER) |
22079 (1 << Xapian::Unicode::LETTER_NUMBER) |
22080 (1 << Xapian::Unicode::OTHER_NUMBER) |
22081 (1 << Xapian::Unicode::CONNECTOR_PUNCTUATION);
22082 return ((WORDCHAR_MASK >> get_category(ch)) & 1);
22083}
22084inline bool is_whitespace(unsigned ch) {
22085 const unsigned int WHITESPACE_MASK =
22086 (1 << Xapian::Unicode::CONTROL) |
22087 (1 << Xapian::Unicode::SPACE_SEPARATOR) |
22088 (1 << Xapian::Unicode::LINE_SEPARATOR) |
22089 (1 << Xapian::Unicode::PARAGRAPH_SEPARATOR);
22090 return ((WHITESPACE_MASK >> get_category(ch)) & 1);
22091}
22092inline bool is_currency(unsigned ch) {
22093 return (get_category(ch) == Xapian::Unicode::CURRENCY_SYMBOL);
22094}
22095inline unsigned tolower(unsigned ch) {
22096 int info;
22097 if (ch >= 0x110000 || !(Internal::get_case_type((info = Xapian::Unicode::Internal::get_character_info(ch))) & 2))
22098 return ch;
22099 return ch + Internal::get_delta(info);
22100}
22101inline unsigned toupper(unsigned ch) {
22102 int info;
22103 if (ch >= 0x110000 || !(Internal::get_case_type((info = Xapian::Unicode::Internal::get_character_info(ch))) & 4))
22104 return ch;
22105 return ch - Internal::get_delta(info);
22106}
22107inline std::string
22108tolower(const std::string &term)
22109{
22110 std::string result;
22111 result.reserve(term.size());
22112 for (Utf8Iterator i(term); i != Utf8Iterator(); ++i) {
22113 append_utf8(result, tolower(*i));
22114 }
22115 return result;
22116}
22117inline std::string
22118toupper(const std::string &term)
22119{
22120 std::string result;
22121 result.reserve(term.size());
22122 for (Utf8Iterator i(term); i != Utf8Iterator(); ++i) {
22123 append_utf8(result, toupper(*i));
22124 }
22125 return result;
22126}
22127}
22128}
22129namespace Xapian {
22130class Document;
22131class Stem;
22132class Stopper;
22133class WritableDatabase;
22134class __attribute__((visibility("default"))) TermGenerator {
22135 public:
22136 class Internal;
22137 Xapian::Internal::RefCntPtr<Internal> internal;
22138 TermGenerator(const TermGenerator & o);
22139 TermGenerator & operator=(const TermGenerator & o);
22140 TermGenerator();
22141 ~TermGenerator();
22142 void set_stemmer(const Xapian::Stem & stemmer);
22143 void set_stopper(const Xapian::Stopper *stop = __null);
22144 void set_document(const Xapian::Document & doc);
22145 const Xapian::Document & get_document() const;
22146 void set_database(const Xapian::WritableDatabase &db);
22147 enum flags {
22148 FLAG_SPELLING = 128
22149 };
22150 flags set_flags(flags toggle, flags mask = flags(0));
22151 void index_text(const Xapian::Utf8Iterator & itor,
22152 Xapian::termcount weight = 1,
22153 const std::string & prefix = std::string());
22154 void index_text(const std::string & text,
22155 Xapian::termcount weight = 1,
22156 const std::string & prefix = std::string()) {
22157 return index_text(Utf8Iterator(text), weight, prefix);
22158 }
22159 void index_text_without_positions(const Xapian::Utf8Iterator & itor,
22160 Xapian::termcount weight = 1,
22161 const std::string & prefix = std::string());
22162 void index_text_without_positions(const std::string & text,
22163 Xapian::termcount weight = 1,
22164 const std::string & prefix = std::string()) {
22165 return index_text_without_positions(Utf8Iterator(text), weight, prefix);
22166 }
22167 void increase_termpos(Xapian::termcount delta = 100);
22168 Xapian::termcount get_termpos() const;
22169 void set_termpos(Xapian::termcount termpos);
22170 std::string get_description() const;
22171};
22172}
22173namespace Xapian {
22174class Document;
22175class __attribute__((visibility("default"))) KeyMaker {
22176 public:
22177 virtual std::string operator()(const Xapian::Document & doc) const = 0;
22178 virtual ~KeyMaker();
22179};
22180class __attribute__((visibility("default"))) MultiValueKeyMaker : public KeyMaker {
22181 std::vector<std::pair<Xapian::valueno, bool> > valnos;
22182 public:
22183 MultiValueKeyMaker() { }
22184 template <class Iterator>
22185 MultiValueKeyMaker(Iterator begin, Iterator end) {
22186 while (begin != end) add_value(*begin++);
22187 }
22188 virtual std::string operator()(const Xapian::Document & doc) const;
22189 void add_value(Xapian::valueno valno, bool reverse = false) {
22190 valnos.push_back(std::make_pair(valno, reverse));
22191 }
22192};
22193class __attribute__((visibility("default"))) Sorter : public KeyMaker { };
22194class __attribute__((visibility("default"))) MultiValueSorter : public Sorter {
22195 std::vector<std::pair<Xapian::valueno, bool> > valnos;
22196 public:
22197 MultiValueSorter() { }
22198 template <class Iterator>
22199 MultiValueSorter(Iterator begin, Iterator end) {
22200 while (begin != end) add(*begin++);
22201 }
22202 virtual std::string operator()(const Xapian::Document & doc) const;
22203 void add(Xapian::valueno valno, bool forward = true) {
22204 valnos.push_back(std::make_pair(valno, forward));
22205 }
22206};
22207}
22208namespace Xapian {
22209class Database;
22210class Document;
22211class ErrorHandler;
22212class ExpandDecider;
22213class MatchSpy;
22214class MSetIterator;
22215class Query;
22216class Weight;
22217class __attribute__((visibility("default"))) MSet {
22218 public:
22219 class Internal;
22220 Xapian::Internal::RefCntPtr<Internal> internal;
22221 explicit MSet(MSet::Internal * internal_);
22222 MSet();
22223 ~MSet();
22224 MSet(const MSet & other);
22225 void operator=(const MSet &other);
22226 void fetch(const MSetIterator &begin, const MSetIterator &end) const;
22227 void fetch(const MSetIterator &item) const;
22228 void fetch() const;
22229 Xapian::percent convert_to_percent(Xapian::weight wt) const;
22230 Xapian::percent convert_to_percent(const MSetIterator &it) const;
22231 Xapian::doccount get_termfreq(const std::string &tname) const;
22232 Xapian::weight get_termweight(const std::string &tname) const;
22233 Xapian::doccount get_firstitem() const;
22234 Xapian::doccount get_matches_lower_bound() const;
22235 Xapian::doccount get_matches_estimated() const;
22236 Xapian::doccount get_matches_upper_bound() const;
22237 Xapian::doccount get_uncollapsed_matches_lower_bound() const;
22238 Xapian::doccount get_uncollapsed_matches_estimated() const;
22239 Xapian::doccount get_uncollapsed_matches_upper_bound() const;
22240 Xapian::weight get_max_possible() const;
22241 Xapian::weight get_max_attained() const;
22242 Xapian::doccount size() const;
22243 Xapian::doccount max_size() const { return size(); }
22244 bool empty() const;
22245 void swap(MSet & other);
22246 MSetIterator begin() const;
22247 MSetIterator end() const;
22248 MSetIterator back() const;
22249 MSetIterator operator[](Xapian::doccount i) const;
22250 typedef MSetIterator value_type;
22251 typedef MSetIterator iterator;
22252 typedef MSetIterator const_iterator;
22253 typedef MSetIterator & reference;
22254 typedef MSetIterator & const_reference;
22255 typedef MSetIterator * pointer;
22256 typedef Xapian::doccount_diff difference_type;
22257 typedef Xapian::doccount size_type;
22258 std::string get_description() const;
22259};
22260class __attribute__((visibility("default"))) MSetIterator {
22261 private:
22262 friend class MSet;
22263 friend bool operator==(const MSetIterator &a, const MSetIterator &b);
22264 friend bool operator!=(const MSetIterator &a, const MSetIterator &b);
22265 MSetIterator(Xapian::doccount index_, const MSet & mset_)
22266 : index(index_), mset(mset_) { }
22267 Xapian::doccount index;
22268 MSet mset;
22269 public:
22270 MSetIterator() : index(0), mset() { }
22271 MSetIterator(const MSetIterator &other) {
22272 index = other.index;
22273 mset = other.mset;
22274 }
22275 void operator=(const MSetIterator &other) {
22276 index = other.index;
22277 mset = other.mset;
22278 }
22279 MSetIterator & operator++() {
22280 ++index;
22281 return *this;
22282 }
22283 MSetIterator operator++(int) {
22284 MSetIterator tmp = *this;
22285 ++index;
22286 return tmp;
22287 }
22288 MSetIterator & operator--() {
22289 --index;
22290 return *this;
22291 }
22292 MSetIterator operator--(int) {
22293 MSetIterator tmp = *this;
22294 --index;
22295 return tmp;
22296 }
22297 Xapian::docid operator*() const;
22298 Xapian::Document get_document() const;
22299 Xapian::doccount get_rank() const {
22300 return mset.get_firstitem() + index;
22301 }
22302 Xapian::weight get_weight() const;
22303 std::string get_collapse_key() const;
22304 Xapian::doccount get_collapse_count() const;
22305 Xapian::percent get_percent() const;
22306 std::string get_description() const;
22307 typedef std::bidirectional_iterator_tag iterator_category;
22308 typedef Xapian::docid value_type;
22309 typedef Xapian::doccount_diff difference_type;
22310 typedef Xapian::docid * pointer;
22311 typedef Xapian::docid & reference;
22312};
22313inline bool operator==(const MSetIterator &a, const MSetIterator &b)
22314{
22315 return (a.index == b.index);
22316}
22317inline bool operator!=(const MSetIterator &a, const MSetIterator &b)
22318{
22319 return (a.index != b.index);
22320}
22321class ESetIterator;
22322class __attribute__((visibility("default"))) ESet {
22323 public:
22324 class Internal;
22325 Xapian::Internal::RefCntPtr<Internal> internal;
22326 ESet();
22327 ~ESet();
22328 ESet(const ESet & other);
22329 void operator=(const ESet &other);
22330 Xapian::termcount get_ebound() const;
22331 Xapian::termcount size() const;
22332 Xapian::termcount max_size() const { return size(); }
22333 bool empty() const;
22334 void swap(ESet & other);
22335 ESetIterator begin() const;
22336 ESetIterator end() const;
22337 ESetIterator back() const;
22338 ESetIterator operator[](Xapian::termcount i) const;
22339 std::string get_description() const;
22340};
22341class __attribute__((visibility("default"))) ESetIterator {
22342 private:
22343 friend class ESet;
22344 friend bool operator==(const ESetIterator &a, const ESetIterator &b);
22345 friend bool operator!=(const ESetIterator &a, const ESetIterator &b);
22346 ESetIterator(Xapian::termcount index_, const ESet & eset_)
22347 : index(index_), eset(eset_) { }
22348 Xapian::termcount index;
22349 ESet eset;
22350 public:
22351 ESetIterator() : index(0), eset() { }
22352 ESetIterator(const ESetIterator &other) {
22353 index = other.index;
22354 eset = other.eset;
22355 }
22356 void operator=(const ESetIterator &other) {
22357 index = other.index;
22358 eset = other.eset;
22359 }
22360 ESetIterator & operator++() {
22361 ++index;
22362 return *this;
22363 }
22364 ESetIterator operator++(int) {
22365 ESetIterator tmp = *this;
22366 ++index;
22367 return tmp;
22368 }
22369 ESetIterator & operator--() {
22370 --index;
22371 return *this;
22372 }
22373 ESetIterator operator--(int) {
22374 ESetIterator tmp = *this;
22375 --index;
22376 return tmp;
22377 }
22378 const std::string & operator *() const;
22379 Xapian::weight get_weight() const;
22380 std::string get_description() const;
22381 typedef std::bidirectional_iterator_tag iterator_category;
22382 typedef std::string value_type;
22383 typedef Xapian::termcount_diff difference_type;
22384 typedef std::string * pointer;
22385 typedef std::string & reference;
22386};
22387inline bool operator==(const ESetIterator &a, const ESetIterator &b)
22388{
22389 return (a.index == b.index);
22390}
22391inline bool operator!=(const ESetIterator &a, const ESetIterator &b)
22392{
22393 return (a.index != b.index);
22394}
22395class __attribute__((visibility("default"))) RSet {
22396 public:
22397 class Internal;
22398 Xapian::Internal::RefCntPtr<Internal> internal;
22399 RSet(const RSet &rset);
22400 void operator=(const RSet &rset);
22401 RSet();
22402 ~RSet();
22403 Xapian::doccount size() const;
22404 bool empty() const;
22405 void add_document(Xapian::docid did);
22406 void add_document(const Xapian::MSetIterator & i) { add_document(*i); }
22407 void remove_document(Xapian::docid did);
22408 void remove_document(const Xapian::MSetIterator & i) { remove_document(*i); }
22409 bool contains(Xapian::docid did) const;
22410 bool contains(const Xapian::MSetIterator & i) const { return contains(*i); }
22411 std::string get_description() const;
22412};
22413class __attribute__((visibility("default"))) MatchDecider {
22414 public:
22415 virtual bool operator()(const Xapian::Document &doc) const = 0;
22416 virtual ~MatchDecider();
22417};
22418class __attribute__((visibility("default"))) Enquire {
22419 public:
22420 Enquire(const Enquire & other);
22421 void operator=(const Enquire & other);
22422 class Internal;
22423 Xapian::Internal::RefCntPtr<Internal> internal;
22424 explicit Enquire(const Database &database, ErrorHandler * errorhandler_ = 0);
22425 ~Enquire();
22426 void set_query(const Xapian::Query & query, Xapian::termcount qlen = 0);
22427 const Xapian::Query & get_query() const;
22428 void add_matchspy(MatchSpy * spy);
22429 void clear_matchspies();
22430 void set_weighting_scheme(const Weight &weight_);
22431 void set_collapse_key(Xapian::valueno collapse_key,
22432 Xapian::doccount collapse_max = 1);
22433 typedef enum {
22434 ASCENDING = 1,
22435 DESCENDING = 0,
22436 DONT_CARE = 2
22437 } docid_order;
22438 void set_docid_order(docid_order order);
22439 void set_cutoff(Xapian::percent percent_cutoff, Xapian::weight weight_cutoff = 0);
22440 void set_sort_by_relevance();
22441 void set_sort_by_value(Xapian::valueno sort_key, bool reverse);
22442 void set_sort_by_value(Xapian::valueno sort_key);
22443 void set_sort_by_key(Xapian::KeyMaker * sorter, bool reverse);
22444 void set_sort_by_key(Xapian::KeyMaker * sorter);
22445 void set_sort_by_value_then_relevance(Xapian::valueno sort_key,
22446 bool reverse);
22447 void set_sort_by_value_then_relevance(Xapian::valueno sort_key);
22448 void set_sort_by_key_then_relevance(Xapian::KeyMaker * sorter,
22449 bool reverse);
22450 void set_sort_by_key_then_relevance(Xapian::KeyMaker * sorter);
22451 void set_sort_by_relevance_then_value(Xapian::valueno sort_key,
22452 bool reverse);
22453 void set_sort_by_relevance_then_value(Xapian::valueno sort_key);
22454 void set_sort_by_relevance_then_key(Xapian::KeyMaker * sorter,
22455 bool reverse);
22456 void set_sort_by_relevance_then_key(Xapian::KeyMaker * sorter);
22457 MSet get_mset(Xapian::doccount first, Xapian::doccount maxitems,
22458 Xapian::doccount checkatleast = 0,
22459 const RSet * omrset = 0,
22460 const MatchDecider * mdecider = 0) const;
22461 MSet get_mset(Xapian::doccount first, Xapian::doccount maxitems, Xapian::doccount checkatleast, const RSet * omrset, const MatchDecider * mdecider, const MatchDecider * matchspy) const;
22462 MSet get_mset(Xapian::doccount first, Xapian::doccount maxitems,
22463 const RSet * omrset,
22464 const MatchDecider * mdecider = 0) const {
22465 return get_mset(first, maxitems, 0, omrset, mdecider);
22466 }
22467 static const int INCLUDE_QUERY_TERMS = 1;
22468 static const int USE_EXACT_TERMFREQ = 2;
22469 ESet get_eset(Xapian::termcount maxitems,
22470 const RSet & omrset,
22471 int flags = 0,
22472 double k = 1.0,
22473 const Xapian::ExpandDecider * edecider = 0) const;
22474 inline ESet get_eset(Xapian::termcount maxitems, const RSet & omrset,
22475 const Xapian::ExpandDecider * edecider) const {
22476 return get_eset(maxitems, omrset, 0, 1.0, edecider);
22477 }
22478 TermIterator get_matching_terms_begin(Xapian::docid did) const;
22479 TermIterator get_matching_terms_end(Xapian::docid ) const {
22480 return TermIterator(__null);
22481 }
22482 TermIterator get_matching_terms_begin(const MSetIterator &it) const;
22483 TermIterator get_matching_terms_end(const MSetIterator & ) const {
22484 return TermIterator(__null);
22485 }
22486 std::string get_description() const;
22487};
22488inline void
22489Enquire::set_sort_by_value(Xapian::valueno sort_key)
22490{
22491 return set_sort_by_value(sort_key, true);
22492}
22493inline void
22494Enquire::set_sort_by_key(Xapian::KeyMaker * sorter)
22495{
22496 return set_sort_by_key(sorter, true);
22497}
22498inline void
22499Enquire::set_sort_by_value_then_relevance(Xapian::valueno sort_key)
22500{
22501 return set_sort_by_value_then_relevance(sort_key, true);
22502}
22503inline void
22504Enquire::set_sort_by_key_then_relevance(Xapian::KeyMaker * sorter)
22505{
22506 return set_sort_by_key_then_relevance(sorter, true);
22507}
22508inline void
22509Enquire::set_sort_by_relevance_then_value(Xapian::valueno sort_key)
22510{
22511 return set_sort_by_relevance_then_value(sort_key, true);
22512}
22513inline void
22514Enquire::set_sort_by_relevance_then_key(Xapian::KeyMaker * sorter)
22515{
22516 return set_sort_by_relevance_then_key(sorter, true);
22517}
22518}
22519
22520namespace std __attribute__ ((__visibility__ ("default"))) {
22521 template<typename _Key, typename _Compare = std::less<_Key>,
22522 typename _Alloc = std::allocator<_Key> >
22523 class set
22524 {
22525 typedef typename _Alloc::value_type _Alloc_value_type;
22526
22527
22528
22529 public:
22530 typedef _Key key_type;
22531 typedef _Key value_type;
22532 typedef _Compare key_compare;
22533 typedef _Compare value_compare;
22534 typedef _Alloc allocator_type;
22535 private:
22536 typedef typename _Alloc::template rebind<_Key>::other _Key_alloc_type;
22537 typedef _Rb_tree<key_type, value_type, _Identity<value_type>,
22538 key_compare, _Key_alloc_type> _Rep_type;
22539 _Rep_type _M_t;
22540 public:
22541 typedef typename _Key_alloc_type::pointer pointer;
22542 typedef typename _Key_alloc_type::const_pointer const_pointer;
22543 typedef typename _Key_alloc_type::reference reference;
22544 typedef typename _Key_alloc_type::const_reference const_reference;
22545 typedef typename _Rep_type::const_iterator iterator;
22546 typedef typename _Rep_type::const_iterator const_iterator;
22547 typedef typename _Rep_type::const_reverse_iterator reverse_iterator;
22548 typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
22549 typedef typename _Rep_type::size_type size_type;
22550 typedef typename _Rep_type::difference_type difference_type;
22551 set()
22552 : _M_t() { }
22553 explicit
22554 set(const _Compare& __comp,
22555 const allocator_type& __a = allocator_type())
22556 : _M_t(__comp, __a) { }
22557 template<typename _InputIterator>
22558 set(_InputIterator __first, _InputIterator __last)
22559 : _M_t()
22560 { _M_t._M_insert_unique(__first, __last); }
22561 template<typename _InputIterator>
22562 set(_InputIterator __first, _InputIterator __last,
22563 const _Compare& __comp,
22564 const allocator_type& __a = allocator_type())
22565 : _M_t(__comp, __a)
22566 { _M_t._M_insert_unique(__first, __last); }
22567 set(const set& __x)
22568 : _M_t(__x._M_t) { }
22569 set&
22570 operator=(const set& __x)
22571 {
22572 _M_t = __x._M_t;
22573 return *this;
22574 }
22575 key_compare
22576 key_comp() const
22577 { return _M_t.key_comp(); }
22578 value_compare
22579 value_comp() const
22580 { return _M_t.key_comp(); }
22581 allocator_type
22582 get_allocator() const
22583 { return _M_t.get_allocator(); }
22584 iterator
22585 begin() const
22586 { return _M_t.begin(); }
22587 iterator
22588 end() const
22589 { return _M_t.end(); }
22590 reverse_iterator
22591 rbegin() const
22592 { return _M_t.rbegin(); }
22593 reverse_iterator
22594 rend() const
22595 { return _M_t.rend(); }
22596 bool
22597 empty() const
22598 { return _M_t.empty(); }
22599 size_type
22600 size() const
22601 { return _M_t.size(); }
22602 size_type
22603 max_size() const
22604 { return _M_t.max_size(); }
22605 void
22606 swap(set& __x)
22607 { _M_t.swap(__x._M_t); }
22608 std::pair<iterator, bool>
22609 insert(const value_type& __x)
22610 {
22611 std::pair<typename _Rep_type::iterator, bool> __p =
22612 _M_t._M_insert_unique(__x);
22613 return std::pair<iterator, bool>(__p.first, __p.second);
22614 }
22615 iterator
22616 insert(iterator __position, const value_type& __x)
22617 { return _M_t._M_insert_unique_(__position, __x); }
22618 template<typename _InputIterator>
22619 void
22620 insert(_InputIterator __first, _InputIterator __last)
22621 { _M_t._M_insert_unique(__first, __last); }
22622 void
22623 erase(iterator __position)
22624 { _M_t.erase(__position); }
22625 size_type
22626 erase(const key_type& __x)
22627 { return _M_t.erase(__x); }
22628 void
22629 erase(iterator __first, iterator __last)
22630 { _M_t.erase(__first, __last); }
22631 void
22632 clear()
22633 { _M_t.clear(); }
22634 size_type
22635 count(const key_type& __x) const
22636 { return _M_t.find(__x) == _M_t.end() ? 0 : 1; }
22637 iterator
22638 find(const key_type& __x)
22639 { return _M_t.find(__x); }
22640 const_iterator
22641 find(const key_type& __x) const
22642 { return _M_t.find(__x); }
22643 iterator
22644 lower_bound(const key_type& __x)
22645 { return _M_t.lower_bound(__x); }
22646 const_iterator
22647 lower_bound(const key_type& __x) const
22648 { return _M_t.lower_bound(__x); }
22649 iterator
22650 upper_bound(const key_type& __x)
22651 { return _M_t.upper_bound(__x); }
22652 const_iterator
22653 upper_bound(const key_type& __x) const
22654 { return _M_t.upper_bound(__x); }
22655 std::pair<iterator, iterator>
22656 equal_range(const key_type& __x)
22657 { return _M_t.equal_range(__x); }
22658 std::pair<const_iterator, const_iterator>
22659 equal_range(const key_type& __x) const
22660 { return _M_t.equal_range(__x); }
22661 template<typename _K1, typename _C1, typename _A1>
22662 friend bool
22663 operator==(const set<_K1, _C1, _A1>&, const set<_K1, _C1, _A1>&);
22664 template<typename _K1, typename _C1, typename _A1>
22665 friend bool
22666 operator<(const set<_K1, _C1, _A1>&, const set<_K1, _C1, _A1>&);
22667 };
22668 template<typename _Key, typename _Compare, typename _Alloc>
22669 inline bool
22670 operator==(const set<_Key, _Compare, _Alloc>& __x,
22671 const set<_Key, _Compare, _Alloc>& __y)
22672 { return __x._M_t == __y._M_t; }
22673 template<typename _Key, typename _Compare, typename _Alloc>
22674 inline bool
22675 operator<(const set<_Key, _Compare, _Alloc>& __x,
22676 const set<_Key, _Compare, _Alloc>& __y)
22677 { return __x._M_t < __y._M_t; }
22678 template<typename _Key, typename _Compare, typename _Alloc>
22679 inline bool
22680 operator!=(const set<_Key, _Compare, _Alloc>& __x,
22681 const set<_Key, _Compare, _Alloc>& __y)
22682 { return !(__x == __y); }
22683 template<typename _Key, typename _Compare, typename _Alloc>
22684 inline bool
22685 operator>(const set<_Key, _Compare, _Alloc>& __x,
22686 const set<_Key, _Compare, _Alloc>& __y)
22687 { return __y < __x; }
22688 template<typename _Key, typename _Compare, typename _Alloc>
22689 inline bool
22690 operator<=(const set<_Key, _Compare, _Alloc>& __x,
22691 const set<_Key, _Compare, _Alloc>& __y)
22692 { return !(__y < __x); }
22693 template<typename _Key, typename _Compare, typename _Alloc>
22694 inline bool
22695 operator>=(const set<_Key, _Compare, _Alloc>& __x,
22696 const set<_Key, _Compare, _Alloc>& __y)
22697 { return !(__x < __y); }
22698 template<typename _Key, typename _Compare, typename _Alloc>
22699 inline void
22700 swap(set<_Key, _Compare, _Alloc>& __x, set<_Key, _Compare, _Alloc>& __y)
22701 { __x.swap(__y); }
22702}
22703namespace std __attribute__ ((__visibility__ ("default"))) {
22704 template <typename _Key, typename _Compare = std::less<_Key>,
22705 typename _Alloc = std::allocator<_Key> >
22706 class multiset
22707 {
22708 typedef typename _Alloc::value_type _Alloc_value_type;
22709
22710
22711
22712 public:
22713 typedef _Key key_type;
22714 typedef _Key value_type;
22715 typedef _Compare key_compare;
22716 typedef _Compare value_compare;
22717 typedef _Alloc allocator_type;
22718 private:
22719 typedef typename _Alloc::template rebind<_Key>::other _Key_alloc_type;
22720 typedef _Rb_tree<key_type, value_type, _Identity<value_type>,
22721 key_compare, _Key_alloc_type> _Rep_type;
22722 _Rep_type _M_t;
22723 public:
22724 typedef typename _Key_alloc_type::pointer pointer;
22725 typedef typename _Key_alloc_type::const_pointer const_pointer;
22726 typedef typename _Key_alloc_type::reference reference;
22727 typedef typename _Key_alloc_type::const_reference const_reference;
22728 typedef typename _Rep_type::const_iterator iterator;
22729 typedef typename _Rep_type::const_iterator const_iterator;
22730 typedef typename _Rep_type::const_reverse_iterator reverse_iterator;
22731 typedef typename _Rep_type::const_reverse_iterator const_reverse_iterator;
22732 typedef typename _Rep_type::size_type size_type;
22733 typedef typename _Rep_type::difference_type difference_type;
22734 multiset()
22735 : _M_t() { }
22736 explicit
22737 multiset(const _Compare& __comp,
22738 const allocator_type& __a = allocator_type())
22739 : _M_t(__comp, __a) { }
22740 template<typename _InputIterator>
22741 multiset(_InputIterator __first, _InputIterator __last)
22742 : _M_t()
22743 { _M_t._M_insert_equal(__first, __last); }
22744 template<typename _InputIterator>
22745 multiset(_InputIterator __first, _InputIterator __last,
22746 const _Compare& __comp,
22747 const allocator_type& __a = allocator_type())
22748 : _M_t(__comp, __a)
22749 { _M_t._M_insert_equal(__first, __last); }
22750 multiset(const multiset& __x)
22751 : _M_t(__x._M_t) { }
22752 multiset&
22753 operator=(const multiset& __x)
22754 {
22755 _M_t = __x._M_t;
22756 return *this;
22757 }
22758 key_compare
22759 key_comp() const
22760 { return _M_t.key_comp(); }
22761 value_compare
22762 value_comp() const
22763 { return _M_t.key_comp(); }
22764 allocator_type
22765 get_allocator() const
22766 { return _M_t.get_allocator(); }
22767 iterator
22768 begin() const
22769 { return _M_t.begin(); }
22770 iterator
22771 end() const
22772 { return _M_t.end(); }
22773 reverse_iterator
22774 rbegin() const
22775 { return _M_t.rbegin(); }
22776 reverse_iterator
22777 rend() const
22778 { return _M_t.rend(); }
22779 bool
22780 empty() const
22781 { return _M_t.empty(); }
22782 size_type
22783 size() const
22784 { return _M_t.size(); }
22785 size_type
22786 max_size() const
22787 { return _M_t.max_size(); }
22788 void
22789 swap(multiset& __x)
22790 { _M_t.swap(__x._M_t); }
22791 iterator
22792 insert(const value_type& __x)
22793 { return _M_t._M_insert_equal(__x); }
22794 iterator
22795 insert(iterator __position, const value_type& __x)
22796 { return _M_t._M_insert_equal_(__position, __x); }
22797 template<typename _InputIterator>
22798 void
22799 insert(_InputIterator __first, _InputIterator __last)
22800 { _M_t._M_insert_equal(__first, __last); }
22801 void
22802 erase(iterator __position)
22803 { _M_t.erase(__position); }
22804 size_type
22805 erase(const key_type& __x)
22806 { return _M_t.erase(__x); }
22807 void
22808 erase(iterator __first, iterator __last)
22809 { _M_t.erase(__first, __last); }
22810 void
22811 clear()
22812 { _M_t.clear(); }
22813 size_type
22814 count(const key_type& __x) const
22815 { return _M_t.count(__x); }
22816 iterator
22817 find(const key_type& __x)
22818 { return _M_t.find(__x); }
22819 const_iterator
22820 find(const key_type& __x) const
22821 { return _M_t.find(__x); }
22822 iterator
22823 lower_bound(const key_type& __x)
22824 { return _M_t.lower_bound(__x); }
22825 const_iterator
22826 lower_bound(const key_type& __x) const
22827 { return _M_t.lower_bound(__x); }
22828 iterator
22829 upper_bound(const key_type& __x)
22830 { return _M_t.upper_bound(__x); }
22831 const_iterator
22832 upper_bound(const key_type& __x) const
22833 { return _M_t.upper_bound(__x); }
22834 std::pair<iterator, iterator>
22835 equal_range(const key_type& __x)
22836 { return _M_t.equal_range(__x); }
22837 std::pair<const_iterator, const_iterator>
22838 equal_range(const key_type& __x) const
22839 { return _M_t.equal_range(__x); }
22840 template<typename _K1, typename _C1, typename _A1>
22841 friend bool
22842 operator==(const multiset<_K1, _C1, _A1>&,
22843 const multiset<_K1, _C1, _A1>&);
22844 template<typename _K1, typename _C1, typename _A1>
22845 friend bool
22846 operator< (const multiset<_K1, _C1, _A1>&,
22847 const multiset<_K1, _C1, _A1>&);
22848 };
22849 template<typename _Key, typename _Compare, typename _Alloc>
22850 inline bool
22851 operator==(const multiset<_Key, _Compare, _Alloc>& __x,
22852 const multiset<_Key, _Compare, _Alloc>& __y)
22853 { return __x._M_t == __y._M_t; }
22854 template<typename _Key, typename _Compare, typename _Alloc>
22855 inline bool
22856 operator<(const multiset<_Key, _Compare, _Alloc>& __x,
22857 const multiset<_Key, _Compare, _Alloc>& __y)
22858 { return __x._M_t < __y._M_t; }
22859 template<typename _Key, typename _Compare, typename _Alloc>
22860 inline bool
22861 operator!=(const multiset<_Key, _Compare, _Alloc>& __x,
22862 const multiset<_Key, _Compare, _Alloc>& __y)
22863 { return !(__x == __y); }
22864 template<typename _Key, typename _Compare, typename _Alloc>
22865 inline bool
22866 operator>(const multiset<_Key,_Compare,_Alloc>& __x,
22867 const multiset<_Key,_Compare,_Alloc>& __y)
22868 { return __y < __x; }
22869 template<typename _Key, typename _Compare, typename _Alloc>
22870 inline bool
22871 operator<=(const multiset<_Key, _Compare, _Alloc>& __x,
22872 const multiset<_Key, _Compare, _Alloc>& __y)
22873 { return !(__y < __x); }
22874 template<typename _Key, typename _Compare, typename _Alloc>
22875 inline bool
22876 operator>=(const multiset<_Key, _Compare, _Alloc>& __x,
22877 const multiset<_Key, _Compare, _Alloc>& __y)
22878 { return !(__x < __y); }
22879 template<typename _Key, typename _Compare, typename _Alloc>
22880 inline void
22881 swap(multiset<_Key, _Compare, _Alloc>& __x,
22882 multiset<_Key, _Compare, _Alloc>& __y)
22883 { __x.swap(__y); }
22884}
22885namespace Xapian {
22886class __attribute__((visibility("default"))) ExpandDecider {
22887 public:
22888 virtual bool operator()(const std::string &term) const = 0;
22889 virtual ~ExpandDecider();
22890};
22891class __attribute__((visibility("default"))) ExpandDeciderAnd : public ExpandDecider {
22892 const ExpandDecider &first, &second;
22893 public:
22894 ExpandDeciderAnd(const ExpandDecider &first_,
22895 const ExpandDecider &second_)
22896 : first(first_), second(second_) { }
22897 ExpandDeciderAnd(const ExpandDecider *first_,
22898 const ExpandDecider *second_)
22899 : first(*first_), second(*second_) { }
22900 virtual bool operator()(const std::string &term) const;
22901};
22902class __attribute__((visibility("default"))) ExpandDeciderFilterTerms : public ExpandDecider {
22903 std::set<std::string> rejects;
22904 public:
22905 template <class Iterator>
22906 ExpandDeciderFilterTerms(Iterator reject_begin, Iterator reject_end)
22907 : rejects(reject_begin, reject_end) { }
22908 virtual bool operator()(const std::string &term) const;
22909};
22910}
22911namespace Xapian {
22912class Document;
22913class Registry;
22914class __attribute__((visibility("default"))) MatchSpy {
22915 private:
22916 void operator=(const MatchSpy &);
22917 MatchSpy(const MatchSpy &);
22918 protected:
22919 MatchSpy() {}
22920 public:
22921 virtual ~MatchSpy();
22922 virtual void operator()(const Xapian::Document &doc,
22923 Xapian::weight wt) = 0;
22924 virtual MatchSpy * clone() const;
22925 virtual std::string name() const;
22926 virtual std::string serialise() const;
22927 virtual MatchSpy * unserialise(const std::string & s,
22928 const Registry & context) const;
22929 virtual std::string serialise_results() const;
22930 virtual void merge_results(const std::string & s);
22931 virtual std::string get_description() const;
22932};
22933class __attribute__((visibility("default"))) ValueCountMatchSpy : public MatchSpy {
22934 public:
22935 struct Internal;
22936 struct __attribute__((visibility("default"))) Internal
22937 : public Xapian::Internal::RefCntBase
22938 {
22939 Xapian::valueno slot;
22940 Xapian::doccount total;
22941 std::map<std::string, Xapian::doccount> values;
22942 Internal() : slot(Xapian::BAD_VALUENO), total(0) {}
22943 Internal(Xapian::valueno slot_) : slot(slot_), total(0) {}
22944 };
22945 protected:
22946 Xapian::Internal::RefCntPtr<Internal> internal;
22947 public:
22948 ValueCountMatchSpy() : internal() {}
22949 ValueCountMatchSpy(Xapian::valueno slot_)
22950 : internal(new Internal(slot_)) {}
22951 size_t get_total() const {
22952 return internal->total;
22953 }
22954 TermIterator values_begin() const;
22955 TermIterator values_end() const {
22956 return TermIterator(__null);
22957 }
22958 TermIterator top_values_begin(size_t maxvalues) const;
22959 TermIterator top_values_end(size_t) const {
22960 return TermIterator(__null);
22961 }
22962 void operator()(const Xapian::Document &doc, Xapian::weight wt);
22963 virtual MatchSpy * clone() const;
22964 virtual std::string name() const;
22965 virtual std::string serialise() const;
22966 virtual MatchSpy * unserialise(const std::string & s,
22967 const Registry & context) const;
22968 virtual std::string serialise_results() const;
22969 virtual void merge_results(const std::string & s);
22970 virtual std::string get_description() const;
22971};
22972}
22973namespace Xapian {
22974class __attribute__((visibility("default"))) PostingSource {
22975 void operator=(const PostingSource &);
22976 PostingSource(const PostingSource &);
22977 double max_weight_;
22978 void * matcher_;
22979 protected:
22980 PostingSource() : max_weight_(0), matcher_(__null) { }
22981 void set_maxweight(Xapian::weight max_weight);
22982 public:
22983 void register_matcher_(void * matcher) { matcher_ = matcher; }
22984 virtual ~PostingSource();
22985 virtual Xapian::doccount get_termfreq_min() const = 0;
22986 virtual Xapian::doccount get_termfreq_est() const = 0;
22987 virtual Xapian::doccount get_termfreq_max() const = 0;
22988 Xapian::weight get_maxweight() const { return max_weight_; }
22989 virtual Xapian::weight get_weight() const;
22990 virtual Xapian::docid get_docid() const = 0;
22991 virtual void next(Xapian::weight min_wt) = 0;
22992 virtual void skip_to(Xapian::docid did, Xapian::weight min_wt);
22993 virtual bool check(Xapian::docid did, Xapian::weight min_wt);
22994 virtual bool at_end() const = 0;
22995 virtual PostingSource * clone() const;
22996 virtual std::string name() const;
22997 virtual std::string serialise() const;
22998 virtual PostingSource * unserialise(const std::string &s) const;
22999 virtual void init(const Database & db) = 0;
23000 virtual std::string get_description() const;
23001};
23002class __attribute__((visibility("default"))) ValuePostingSource : public PostingSource {
23003 protected:
23004 Xapian::Database db;
23005 Xapian::valueno slot;
23006 Xapian::ValueIterator value_it;
23007 bool started;
23008 Xapian::doccount termfreq_min;
23009 Xapian::doccount termfreq_est;
23010 Xapian::doccount termfreq_max;
23011 public:
23012 ValuePostingSource(Xapian::valueno slot_);
23013 Xapian::doccount get_termfreq_min() const;
23014 Xapian::doccount get_termfreq_est() const;
23015 Xapian::doccount get_termfreq_max() const;
23016 void next(Xapian::weight min_wt);
23017 void skip_to(Xapian::docid min_docid, Xapian::weight min_wt);
23018 bool check(Xapian::docid min_docid, Xapian::weight min_wt);
23019 bool at_end() const;
23020 Xapian::docid get_docid() const;
23021 void init(const Database & db_);
23022};
23023class __attribute__((visibility("default"))) ValueWeightPostingSource
23024 : public ValuePostingSource {
23025 public:
23026 ValueWeightPostingSource(Xapian::valueno slot_);
23027 Xapian::weight get_weight() const;
23028 ValueWeightPostingSource * clone() const;
23029 std::string name() const;
23030 std::string serialise() const;
23031 ValueWeightPostingSource * unserialise(const std::string &s) const;
23032 void init(const Database & db_);
23033 std::string get_description() const;
23034};
23035class __attribute__((visibility("default"))) DecreasingValueWeightPostingSource
23036 : public Xapian::ValueWeightPostingSource {
23037 protected:
23038 Xapian::docid range_start;
23039 Xapian::docid range_end;
23040 double curr_weight;
23041 bool items_at_end;
23042 void skip_if_in_range(Xapian::weight min_wt);
23043 public:
23044 DecreasingValueWeightPostingSource(Xapian::valueno slot_,
23045 Xapian::docid range_start_ = 0,
23046 Xapian::docid range_end_ = 0);
23047 Xapian::weight get_weight() const;
23048 DecreasingValueWeightPostingSource * clone() const;
23049 std::string name() const;
23050 std::string serialise() const;
23051 DecreasingValueWeightPostingSource * unserialise(const std::string &s) const;
23052 void init(const Xapian::Database & db_);
23053 void next(Xapian::weight min_wt);
23054 void skip_to(Xapian::docid min_docid, Xapian::weight min_wt);
23055 bool check(Xapian::docid min_docid, Xapian::weight min_wt);
23056 std::string get_description() const;
23057};
23058class __attribute__((visibility("default"))) ValueMapPostingSource
23059 : public ValuePostingSource {
23060 double default_weight;
23061 double max_weight_in_map;
23062 std::map<std::string, double> weight_map;
23063 public:
23064 ValueMapPostingSource(Xapian::valueno slot_);
23065 void add_mapping(const std::string &key, double weight);
23066 void clear_mappings();
23067 void set_default_weight(double wt);
23068 Xapian::weight get_weight() const;
23069 ValueMapPostingSource * clone() const;
23070 std::string name() const;
23071 std::string serialise() const;
23072 ValueMapPostingSource * unserialise(const std::string &s) const;
23073 void init(const Database & db_);
23074 std::string get_description() const;
23075};
23076class __attribute__((visibility("default"))) FixedWeightPostingSource : public PostingSource {
23077 Xapian::Database db;
23078 Xapian::doccount termfreq;
23079 Xapian::PostingIterator it;
23080 bool started;
23081 Xapian::docid check_docid;
23082 public:
23083 FixedWeightPostingSource(Xapian::weight wt);
23084 Xapian::doccount get_termfreq_min() const;
23085 Xapian::doccount get_termfreq_est() const;
23086 Xapian::doccount get_termfreq_max() const;
23087 Xapian::weight get_weight() const;
23088 void next(Xapian::weight min_wt);
23089 void skip_to(Xapian::docid min_docid, Xapian::weight min_wt);
23090 bool check(Xapian::docid min_docid, Xapian::weight min_wt);
23091 bool at_end() const;
23092 Xapian::docid get_docid() const;
23093 FixedWeightPostingSource * clone() const;
23094 std::string name() const;
23095 std::string serialise() const;
23096 FixedWeightPostingSource * unserialise(const std::string &s) const;
23097 void init(const Database & db_);
23098 std::string get_description() const;
23099};
23100}
23101class LocalSubMatch;
23102class MultiMatch;
23103class QueryOptimiser;
23104struct SortPosName;
23105namespace Xapian {
23106class PostingSource;
23107class Registry;
23108class __attribute__((visibility("default"))) Query {
23109 public:
23110 class Internal;
23111 Xapian::Internal::RefCntPtr<Internal> internal;
23112 typedef enum {
23113 OP_AND,
23114 OP_OR,
23115 OP_AND_NOT,
23116 OP_XOR,
23117 OP_AND_MAYBE,
23118 OP_FILTER,
23119 OP_NEAR,
23120 OP_PHRASE,
23121 OP_VALUE_RANGE,
23122 OP_SCALE_WEIGHT,
23123 OP_ELITE_SET,
23124 OP_VALUE_GE,
23125 OP_VALUE_LE,
23126 OP_SYNONYM
23127 } op;
23128 Query(const Query & copyme);
23129 Query & operator=(const Query & copyme);
23130 Query();
23131 ~Query();
23132 Query(const std::string & tname_, Xapian::termcount wqf_ = 1,
23133 Xapian::termpos pos_ = 0);
23134 Query(Query::op op_, const Query & left, const Query & right);
23135 Query(Query::op op_,
23136 const std::string & left, const std::string & right);
23137 template <class Iterator>
23138 Query(Query::op op_, Iterator qbegin, Iterator qend,
23139 Xapian::termcount parameter = 0);
23140 Query(Query::op op_, Xapian::Query q, double parameter);
23141 Query(Query::op op_, Xapian::valueno valno,
23142 const std::string &begin, const std::string &end);
23143 Query(Query::op op_, Xapian::valueno valno, const std::string &value);
23144 explicit Query(Xapian::PostingSource * external_source);
23145 static const Xapian::Query MatchAll;
23146 static const Xapian::Query MatchNothing;
23147 Xapian::termcount get_length() const;
23148 TermIterator get_terms_begin() const;
23149 TermIterator get_terms_end() const {
23150 return TermIterator(__null);
23151 }
23152 bool empty() const;
23153 std::string serialise() const;
23154 static Query unserialise(const std::string &s);
23155 static Query unserialise(const std::string & s,
23156 const Registry & registry);
23157 std::string get_description() const;
23158 private:
23159 void add_subquery(const Query & subq);
23160 void add_subquery(const Query * subq);
23161 void add_subquery(const std::string & tname);
23162 void start_construction(Query::op op_, Xapian::termcount parameter);
23163 void end_construction();
23164 void abort_construction();
23165};
23166template <class Iterator>
23167Query::Query(Query::op op_, Iterator qbegin, Iterator qend, termcount parameter)
23168 : internal(0)
23169{
23170 try {
23171 start_construction(op_, parameter);
23172 while (qbegin != qend) {
23173 add_subquery(*qbegin);
23174 ++qbegin;
23175 }
23176 end_construction();
23177 } catch (...) {
23178 abort_construction();
23179 throw;
23180 }
23181}
23182class __attribute__((visibility("default"))) Query::Internal : public Xapian::Internal::RefCntBase {
23183 friend class ::LocalSubMatch;
23184 friend class ::MultiMatch;
23185 friend class ::QueryOptimiser;
23186 friend struct ::SortPosName;
23187 friend class Query;
23188 public:
23189 static const int OP_LEAF = -1;
23190 static const int OP_EXTERNAL_SOURCE = -2;
23191 typedef std::vector<Internal *> subquery_list;
23192 typedef int op_t;
23193 private:
23194 Xapian::Query::Internal::op_t op;
23195 subquery_list subqs;
23196 Xapian::termcount parameter;
23197 std::string tname;
23198 std::string str_parameter;
23199 Xapian::termpos term_pos;
23200 Xapian::PostingSource * external_source;
23201 bool external_source_owned;
23202 void initialise_from_copy(const Query::Internal & copyme);
23203 void accumulate_terms(
23204 std::vector<std::pair<std::string, Xapian::termpos> > &terms) const;
23205 Internal * simplify_query();
23206 void validate_query() const;
23207 bool simplify_matchnothing();
23208 static std::string get_op_name(Xapian::Query::Internal::op_t op);
23209 void collapse_subqs();
23210 Xapian::Query::Internal * flatten_subqs();
23211 std::string serialise(Xapian::termpos & curpos) const;
23212 public:
23213 Internal(const Query::Internal & copyme);
23214 void operator=(const Query::Internal & copyme);
23215 explicit Internal(const std::string & tname_, Xapian::termcount wqf_ = 1,
23216 Xapian::termpos term_pos_ = 0);
23217 Internal(op_t op_, Xapian::termcount parameter);
23218 Internal(op_t op_, Xapian::valueno valno,
23219 const std::string &begin, const std::string &end);
23220 Internal(op_t op_, Xapian::valueno valno, const std::string &value);
23221 explicit Internal(Xapian::PostingSource * external_source_, bool owned);
23222 ~Internal();
23223 static Xapian::Query::Internal * unserialise(const std::string &s,
23224 const Registry & registry);
23225 void add_subquery(const Query::Internal * subq);
23226 void add_subquery_nocopy(Query::Internal * subq);
23227 void set_dbl_parameter(double dbl_parameter_);
23228 double get_dbl_parameter() const;
23229 Query::Internal * end_construction();
23230 std::string serialise() const {
23231 Xapian::termpos curpos = 1;
23232 return serialise(curpos);
23233 }
23234 std::string get_description() const;
23235 Xapian::termcount get_parameter() const { return parameter; }
23236 Xapian::termcount get_wqf() const { return parameter; }
23237 Xapian::termcount get_length() const;
23238 TermIterator get_terms() const;
23239};
23240}
23241namespace Xapian {
23242class Database;
23243class Stem;
23244class __attribute__((visibility("default"))) Stopper {
23245 public:
23246 virtual bool operator()(const std::string & term) const = 0;
23247 virtual ~Stopper() { }
23248 virtual std::string get_description() const;
23249};
23250class __attribute__((visibility("default"))) SimpleStopper : public Stopper {
23251 std::set<std::string> stop_words;
23252 public:
23253 SimpleStopper() { }
23254 template <class Iterator>
23255 SimpleStopper(Iterator begin, Iterator end) : stop_words(begin, end) { }
23256 void add(const std::string & word) { stop_words.insert(word); }
23257 virtual bool operator()(const std::string & term) const {
23258 return stop_words.find(term) != stop_words.end();
23259 }
23260 virtual std::string get_description() const;
23261};
23262struct __attribute__((visibility("default"))) ValueRangeProcessor {
23263 virtual ~ValueRangeProcessor();
23264 virtual Xapian::valueno operator()(std::string &begin, std::string &end) = 0;
23265};
23266class __attribute__((visibility("default"))) StringValueRangeProcessor : public ValueRangeProcessor {
23267 protected:
23268 Xapian::valueno valno;
23269 private:
23270 bool prefix;
23271 std::string str;
23272 public:
23273 StringValueRangeProcessor(Xapian::valueno valno_)
23274 : valno(valno_), str() { }
23275 StringValueRangeProcessor(Xapian::valueno valno_, const std::string &str_,
23276 bool prefix_ = true)
23277 : valno(valno_), prefix(prefix_), str(str_) { }
23278 Xapian::valueno operator()(std::string &, std::string &);
23279};
23280class __attribute__((visibility("default"))) DateValueRangeProcessor : public StringValueRangeProcessor {
23281 bool prefer_mdy;
23282 int epoch_year;
23283 public:
23284 DateValueRangeProcessor(Xapian::valueno valno_, bool prefer_mdy_ = false,
23285 int epoch_year_ = 1970)
23286 : StringValueRangeProcessor(valno_),
23287 prefer_mdy(prefer_mdy_), epoch_year(epoch_year_) { }
23288 DateValueRangeProcessor(Xapian::valueno valno_, const std::string &str_,
23289 bool prefix_ = true,
23290 bool prefer_mdy_ = false, int epoch_year_ = 1970)
23291 : StringValueRangeProcessor(valno_, str_, prefix_),
23292 prefer_mdy(prefer_mdy_), epoch_year(epoch_year_) { }
23293 Xapian::valueno operator()(std::string &begin, std::string &end);
23294};
23295class __attribute__((visibility("default"))) NumberValueRangeProcessor : public StringValueRangeProcessor {
23296 public:
23297 NumberValueRangeProcessor(Xapian::valueno valno_)
23298 : StringValueRangeProcessor(valno_) { }
23299 NumberValueRangeProcessor(Xapian::valueno valno_, const std::string &str_,
23300 bool prefix_ = true)
23301 : StringValueRangeProcessor(valno_, str_, prefix_) { }
23302 Xapian::valueno operator()(std::string &begin, std::string &end);
23303};
23304class __attribute__((visibility("default"))) QueryParser {
23305 public:
23306 class Internal;
23307 Xapian::Internal::RefCntPtr<Internal> internal;
23308 typedef enum {
23309 FLAG_BOOLEAN = 1,
23310 FLAG_PHRASE = 2,
23311 FLAG_LOVEHATE = 4,
23312 FLAG_BOOLEAN_ANY_CASE = 8,
23313 FLAG_WILDCARD = 16,
23314 FLAG_PURE_NOT = 32,
23315 FLAG_PARTIAL = 64,
23316 FLAG_SPELLING_CORRECTION = 128,
23317 FLAG_SYNONYM = 256,
23318 FLAG_AUTO_SYNONYMS = 512,
23319 FLAG_AUTO_MULTIWORD_SYNONYMS = 1024 | FLAG_AUTO_SYNONYMS,
23320 FLAG_DEFAULT = FLAG_PHRASE|FLAG_BOOLEAN|FLAG_LOVEHATE
23321 } feature_flag;
23322 typedef enum { STEM_NONE, STEM_SOME, STEM_ALL } stem_strategy;
23323 QueryParser(const QueryParser & o);
23324 QueryParser & operator=(const QueryParser & o);
23325 QueryParser();
23326 ~QueryParser();
23327 void set_stemmer(const Xapian::Stem & stemmer);
23328 void set_stemming_strategy(stem_strategy strategy);
23329 void set_stopper(const Stopper *stop = __null);
23330 void set_default_op(Query::op default_op);
23331 Query::op get_default_op() const;
23332 void set_database(const Database &db);
23333 Query parse_query(const std::string &query_string,
23334 unsigned flags = FLAG_DEFAULT,
23335 const std::string &default_prefix = std::string());
23336 void add_prefix(const std::string &field, const std::string &prefix);
23337 void add_boolean_prefix(const std::string &field, const std::string &prefix,
23338 bool exclusive);
23339 void add_boolean_prefix(const std::string &field, const std::string &prefix);
23340 TermIterator stoplist_begin() const;
23341 TermIterator stoplist_end() const {
23342 return TermIterator(__null);
23343 }
23344 TermIterator unstem_begin(const std::string &term) const;
23345 TermIterator unstem_end(const std::string &) const {
23346 return TermIterator(__null);
23347 }
23348 void add_valuerangeprocessor(Xapian::ValueRangeProcessor * vrproc);
23349 std::string get_corrected_query_string() const;
23350 std::string get_description() const;
23351};
23352__attribute__((visibility("default")))
23353std::string sortable_serialise(double value);
23354__attribute__((visibility("default")))
23355double sortable_unserialise(const std::string & value);
23356}
23357namespace Xapian {
23358class Document;
23359class __attribute__((visibility("default"))) ValueSetMatchDecider : public MatchDecider {
23360 std::set<std::string> testset;
23361 valueno valuenum;
23362 bool inclusive;
23363 public:
23364 ValueSetMatchDecider(Xapian::valueno slot, bool inclusive_)
23365 : valuenum(slot), inclusive(inclusive_) { }
23366 void add_value(const std::string& value)
23367 {
23368 testset.insert(value);
23369 }
23370 void remove_value(const std::string& value)
23371 {
23372 testset.erase(value);
23373 }
23374 bool operator()(const Xapian::Document& doc) const;
23375};
23376}
23377namespace Xapian {
23378class __attribute__((visibility("default"))) Weight {
23379 protected:
23380 typedef enum {
23381 COLLECTION_SIZE = 1,
23382 RSET_SIZE = 2,
23383 AVERAGE_LENGTH = 4,
23384 TERMFREQ = 8,
23385 RELTERMFREQ = 16,
23386 QUERY_LENGTH = 32,
23387 WQF = 64,
23388 WDF = 128,
23389 DOC_LENGTH = 256,
23390 DOC_LENGTH_MIN = 512,
23391 DOC_LENGTH_MAX = 1024,
23392 WDF_MAX = 2048
23393 } stat_flags;
23394 void need_stat(stat_flags flag) {
23395 stats_needed = stat_flags(stats_needed | flag);
23396 }
23397 virtual void init(double factor) = 0;
23398 private:
23399 void operator=(const Weight &);
23400 stat_flags stats_needed;
23401 Xapian::doccount collection_size_;
23402 Xapian::doccount rset_size_;
23403 Xapian::doclength average_length_;
23404 Xapian::doccount termfreq_;
23405 Xapian::doccount reltermfreq_;
23406 Xapian::termcount query_length_;
23407 Xapian::termcount wqf_;
23408 Xapian::termcount doclength_lower_bound_;
23409 Xapian::termcount doclength_upper_bound_;
23410 Xapian::termcount wdf_upper_bound_;
23411 public:
23412 class Internal;
23413 virtual ~Weight();
23414 virtual Weight * clone() const = 0;
23415 virtual std::string name() const;
23416 virtual std::string serialise() const;
23417 virtual Weight * unserialise(const std::string & s) const;
23418 virtual Xapian::weight get_sumpart(Xapian::termcount wdf,
23419 Xapian::termcount doclen) const = 0;
23420 virtual Xapian::weight get_maxpart() const = 0;
23421 virtual Xapian::weight get_sumextra(Xapian::termcount doclen) const = 0;
23422 virtual Xapian::weight get_maxextra() const = 0;
23423 void init_(const Internal & stats, Xapian::termcount query_len_,
23424 const std::string & term, Xapian::termcount wqf_,
23425 double factor);
23426 void init_(const Internal & stats, Xapian::termcount query_len_,
23427 double factor, Xapian::doccount termfreq,
23428 Xapian::doccount reltermfreq);
23429 void init_(const Internal & stats, Xapian::termcount query_len_);
23430 bool get_sumpart_needs_doclength_() const {
23431 return stats_needed & DOC_LENGTH;
23432 }
23433 bool get_sumpart_needs_wdf_() const {
23434 return stats_needed & WDF;
23435 }
23436 protected:
23437 Weight(const Weight &);
23438 Weight() : stats_needed() { }
23439 Xapian::doccount get_collection_size() const { return collection_size_; }
23440 Xapian::doccount get_rset_size() const { return rset_size_; }
23441 Xapian::doclength get_average_length() const { return average_length_; }
23442 Xapian::doccount get_termfreq() const { return termfreq_; }
23443 Xapian::doccount get_reltermfreq() const { return reltermfreq_; }
23444 Xapian::termcount get_query_length() const { return query_length_; }
23445 Xapian::termcount get_wqf() const { return wqf_; }
23446 Xapian::termcount get_doclength_upper_bound() const {
23447 return doclength_upper_bound_;
23448 }
23449 Xapian::termcount get_doclength_lower_bound() const {
23450 return doclength_lower_bound_;
23451 }
23452 Xapian::termcount get_wdf_upper_bound() const {
23453 return wdf_upper_bound_;
23454 }
23455};
23456class __attribute__((visibility("default"))) BoolWeight : public Weight {
23457 BoolWeight * clone() const;
23458 void init(double factor);
23459 public:
23460 BoolWeight() { }
23461 std::string name() const;
23462 std::string serialise() const;
23463 BoolWeight * unserialise(const std::string & s) const;
23464 Xapian::weight get_sumpart(Xapian::termcount wdf,
23465 Xapian::termcount doclen) const;
23466 Xapian::weight get_maxpart() const;
23467 Xapian::weight get_sumextra(Xapian::termcount doclen) const;
23468 Xapian::weight get_maxextra() const;
23469};
23470class __attribute__((visibility("default"))) BM25Weight : public Weight {
23471 mutable Xapian::doclength len_factor;
23472 mutable Xapian::weight termweight;
23473 double param_k1, param_k2, param_k3, param_b;
23474 Xapian::doclength param_min_normlen;
23475 BM25Weight * clone() const;
23476 void init(double factor);
23477 public:
23478 BM25Weight(double k1, double k2, double k3, double b, double min_normlen)
23479 : param_k1(k1), param_k2(k2), param_k3(k3), param_b(b),
23480 param_min_normlen(min_normlen)
23481 {
23482 if (param_k1 < 0) param_k1 = 0;
23483 if (param_k2 < 0) param_k2 = 0;
23484 if (param_k3 < 0) param_k3 = 0;
23485 if (param_b < 0) {
23486 param_b = 0;
23487 } else if (param_b > 1) {
23488 param_b = 1;
23489 }
23490 need_stat(COLLECTION_SIZE);
23491 need_stat(RSET_SIZE);
23492 need_stat(TERMFREQ);
23493 need_stat(RELTERMFREQ);
23494 need_stat(WDF);
23495 need_stat(WDF_MAX);
23496 need_stat(WDF);
23497 if (param_k2 != 0 || (param_k1 != 0 && param_b != 0)) {
23498 need_stat(DOC_LENGTH_MIN);
23499 need_stat(AVERAGE_LENGTH);
23500 }
23501 if (param_k1 != 0 && param_b != 0) need_stat(DOC_LENGTH);
23502 if (param_k2 != 0) need_stat(QUERY_LENGTH);
23503 if (param_k3 != 0) need_stat(WQF);
23504 }
23505 BM25Weight()
23506 : param_k1(1), param_k2(0), param_k3(1), param_b(0.5),
23507 param_min_normlen(0.5)
23508 {
23509 need_stat(COLLECTION_SIZE);
23510 need_stat(RSET_SIZE);
23511 need_stat(TERMFREQ);
23512 need_stat(RELTERMFREQ);
23513 need_stat(WDF);
23514 need_stat(WDF_MAX);
23515 need_stat(WDF);
23516 need_stat(DOC_LENGTH_MIN);
23517 need_stat(AVERAGE_LENGTH);
23518 need_stat(DOC_LENGTH);
23519 need_stat(WQF);
23520 }
23521 std::string name() const;
23522 std::string serialise() const;
23523 BM25Weight * unserialise(const std::string & s) const;
23524 Xapian::weight get_sumpart(Xapian::termcount wdf,
23525 Xapian::termcount doclen) const;
23526 Xapian::weight get_maxpart() const;
23527 Xapian::weight get_sumextra(Xapian::termcount doclen) const;
23528 Xapian::weight get_maxextra() const;
23529};
23530class __attribute__((visibility("default"))) TradWeight : public Weight {
23531 mutable Xapian::doclength len_factor;
23532 mutable Xapian::weight termweight;
23533 double param_k;
23534 TradWeight * clone() const;
23535 void init(double factor);
23536 public:
23537 explicit TradWeight(double k = 1.0) : param_k(k) {
23538 if (param_k < 0) param_k = 0;
23539 if (param_k != 0.0) {
23540 need_stat(AVERAGE_LENGTH);
23541 need_stat(DOC_LENGTH);
23542 }
23543 need_stat(COLLECTION_SIZE);
23544 need_stat(RSET_SIZE);
23545 need_stat(TERMFREQ);
23546 need_stat(RELTERMFREQ);
23547 need_stat(DOC_LENGTH_MIN);
23548 need_stat(WDF);
23549 need_stat(WDF_MAX);
23550 need_stat(WDF);
23551 }
23552 std::string name() const;
23553 std::string serialise() const;
23554 TradWeight * unserialise(const std::string & s) const;
23555 Xapian::weight get_sumpart(Xapian::termcount wdf,
23556 Xapian::termcount doclen) const;
23557 Xapian::weight get_maxpart() const;
23558 Xapian::weight get_sumextra(Xapian::termcount doclen) const;
23559 Xapian::weight get_maxextra() const;
23560};
23561}
23562namespace Xapian {
23563struct __attribute__((visibility("default"))) StemImplementation
23564 : public Xapian::Internal::RefCntBase
23565{
23566 virtual ~StemImplementation();
23567 virtual std::string operator()(const std::string & word) = 0;
23568 virtual std::string get_description() const = 0;
23569};
23570class __attribute__((visibility("default"))) Stem {
23571 public:
23572 Xapian::Internal::RefCntPtr<StemImplementation> internal;
23573 Stem(const Stem & o);
23574 void operator=(const Stem & o);
23575 Stem();
23576 explicit Stem(const std::string &language);
23577 explicit Stem(StemImplementation * p);
23578 ~Stem();
23579 std::string operator()(const std::string &word) const;
23580 std::string get_description() const;
23581 static std::string get_available_languages();
23582};
23583}
23584namespace Xapian {
23585class MatchSpy;
23586class PostingSource;
23587class Weight;
23588class __attribute__((visibility("default"))) Registry {
23589 public:
23590 class Internal;
23591 private:
23592 Xapian::Internal::RefCntPtr<Internal> internal;
23593 public:
23594 Registry(const Registry & other);
23595 Registry & operator=(const Registry & other);
23596 Registry();
23597 ~Registry();
23598 void register_weighting_scheme(const Xapian::Weight &wt);
23599 const Xapian::Weight *
23600 get_weighting_scheme(const std::string & name) const;
23601 void register_posting_source(const Xapian::PostingSource &source);
23602 const Xapian::PostingSource *
23603 get_posting_source(const std::string & name) const;
23604 void register_match_spy(const Xapian::MatchSpy &spy);
23605 const Xapian::MatchSpy *
23606 get_match_spy(const std::string & name) const;
23607};
23608}
23609namespace Xapian {
23610class __attribute__((visibility("default"))) Compactor {
23611 public:
23612 class Internal;
23613 typedef enum { STANDARD, FULL, FULLER } compaction_level;
23614 private:
23615 Xapian::Internal::RefCntPtr<Internal> internal;
23616 public:
23617 Compactor();
23618 virtual ~Compactor();
23619 void set_block_size(size_t block_size);
23620 void set_renumber(bool renumber);
23621 void set_multipass(bool multipass);
23622 void set_compaction_level(compaction_level compaction);
23623 void set_destdir(const std::string & destdir);
23624 void add_source(const std::string & srcdir);
23625 void compact();
23626 virtual void
23627 set_status(const std::string & table, const std::string & status);
23628 virtual std::string
23629 resolve_duplicate_metadata(const std::string & key,
23630 size_t num_tags, const std::string tags[]);
23631};
23632}
23633namespace Xapian {
23634__attribute__((visibility("default")))
23635const char * version_string();
23636__attribute__((visibility("default")))
23637int major_version();
23638__attribute__((visibility("default")))
23639int minor_version();
23640__attribute__((visibility("default")))
23641int revision();
23642}
23643using namespace std;
23644namespace Xapian {
23645}
23646namespace swig {
23647 struct stop_iteration {
23648 };
23649 struct SwigPyIterator {
23650 private:
23651 SwigPtr_PyObject _seq;
23652 protected:
23653 SwigPyIterator(PyObject *seq) : _seq(seq)
23654 {
23655 }
23656 public:
23657 virtual ~SwigPyIterator() {}
23658 virtual PyObject *value() const = 0;
23659 virtual SwigPyIterator *incr(size_t n = 1) = 0;
23660 virtual SwigPyIterator *decr(size_t = 1)
23661 {
23662 throw stop_iteration();
23663 }
23664 virtual ptrdiff_t distance(const SwigPyIterator & ) const
23665 {
23666 throw std::invalid_argument("operation not supported");
23667 }
23668 virtual bool equal (const SwigPyIterator & ) const
23669 {
23670 throw std::invalid_argument("operation not supported");
23671 }
23672 virtual SwigPyIterator *copy() const = 0;
23673 PyObject *next()
23674 {
23675 SWIG_Python_Thread_Block _swig_thread_block;
23676 PyObject *obj = value();
23677 incr();
23678 _swig_thread_block.end();
23679 return obj;
23680 }
23681 PyObject *__next__()
23682 {
23683 return next();
23684 }
23685 PyObject *previous()
23686 {
23687 SWIG_Python_Thread_Block _swig_thread_block;
23688 decr();
23689 PyObject *obj = value();
23690 _swig_thread_block.end();
23691 return obj;
23692 }
23693 SwigPyIterator *advance(ptrdiff_t n)
23694 {
23695 return (n > 0) ? incr(n) : decr(-n);
23696 }
23697 bool operator == (const SwigPyIterator& x) const
23698 {
23699 return equal(x);
23700 }
23701 bool operator != (const SwigPyIterator& x) const
23702 {
23703 return ! operator==(x);
23704 }
23705 SwigPyIterator& operator += (ptrdiff_t n)
23706 {
23707 return *advance(n);
23708 }
23709 SwigPyIterator& operator -= (ptrdiff_t n)
23710 {
23711 return *advance(-n);
23712 }
23713 SwigPyIterator* operator + (ptrdiff_t n) const
23714 {
23715 return copy()->advance(n);
23716 }
23717 SwigPyIterator* operator - (ptrdiff_t n) const
23718 {
23719 return copy()->advance(-n);
23720 }
23721 ptrdiff_t operator - (const SwigPyIterator& x) const
23722 {
23723 return x.distance(*this);
23724 }
23725 static swig_type_info* descriptor() {
23726 static int init = 0;
23727 static swig_type_info* desc = 0;
23728 if (!init) {
23729 desc = SWIG_Python_TypeQuery("swig::SwigPyIterator *");
23730 init = 1;
23731 }
23732 return desc;
23733 }
23734 };
23735}
23736static __attribute__ ((__unused__)) int
23737SWIG_AsVal_double (PyObject *obj, double *val)
23738{
23739 int res = -5;
23740 if (((((PyObject*)(obj))->ob_type) == (&PyFloat_Type) || PyType_IsSubtype((((PyObject*)(obj))->ob_type), (&PyFloat_Type)))) {
23741 if (val) *val = PyFloat_AsDouble(obj);
23742 return (0);
23743 } else if (((((obj)->ob_type)->tp_flags & ((1L<<23))) != 0)) {
23744 if (val) *val = PyInt_AsLong(obj);
23745 return (0);
23746 } else if (((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<24))) != 0)) {
23747 double v = PyLong_AsDouble(obj);
23748 if (!PyErr_Occurred()) {
23749 if (val) *val = v;
23750 return (0);
23751 } else {
23752 PyErr_Clear();
23753 }
23754 }
23755 return res;
23756}
23757static __attribute__ ((__unused__)) inline int
23758SWIG_CanCastAsInteger(double *d, double min, double max) {
23759 double x = *d;
23760 if ((min <= x && x <= max)) {
23761 double fx = floor(x);
23762 double cx = ceil(x);
23763 double rd = ((x - fx) < 0.5) ? fx : cx;
23764 if (((*__errno_location ()) == 33) || ((*__errno_location ()) == 34)) {
23765 (*__errno_location ()) = 0;
23766 } else {
23767 double summ, reps, diff;
23768 if (rd < x) {
23769 diff = x - rd;
23770 } else if (rd > x) {
23771 diff = rd - x;
23772 } else {
23773 return 1;
23774 }
23775 summ = rd + x;
23776 reps = diff/summ;
23777 if (reps < 8*2.2204460492503131e-16) {
23778 *d = rd;
23779 return 1;
23780 }
23781 }
23782 }
23783 return 0;
23784}
23785static __attribute__ ((__unused__)) int
23786SWIG_AsVal_unsigned_SS_long (PyObject *obj, unsigned long *val)
23787{
23788 if (((((obj)->ob_type)->tp_flags & ((1L<<23))) != 0)) {
23789 long v = PyInt_AsLong(obj);
23790 if (v >= 0) {
23791 if (val) *val = v;
23792 return (0);
23793 } else {
23794 return -7;
23795 }
23796 } else if (((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<24))) != 0)) {
23797 unsigned long v = PyLong_AsUnsignedLong(obj);
23798 if (!PyErr_Occurred()) {
23799 if (val) *val = v;
23800 return (0);
23801 } else {
23802 PyErr_Clear();
23803 }
23804 }
23805 return -5;
23806}
23807static __attribute__ ((__unused__)) inline int
23808SWIG_AsVal_size_t (PyObject * obj, size_t *val)
23809{
23810 unsigned long v;
23811 int res = SWIG_AsVal_unsigned_SS_long (obj, val ? &v : 0);
23812 if ((res >= 0) && val) *val = static_cast< size_t >(v);
23813 return res;
23814}
23815static __attribute__ ((__unused__)) inline PyObject *
23816SWIG_From_ptrdiff_t (ptrdiff_t value)
23817{
23818 return PyInt_FromLong (static_cast< long >(value));
23819}
23820static __attribute__ ((__unused__)) inline PyObject*
23821 SWIG_From_bool (bool value)
23822{
23823 return PyBool_FromLong(value ? 1 : 0);
23824}
23825static __attribute__ ((__unused__)) int
23826SWIG_AsVal_long (PyObject *obj, long* val)
23827{
23828 if (((((obj)->ob_type)->tp_flags & ((1L<<23))) != 0)) {
23829 if (val) *val = PyInt_AsLong(obj);
23830 return (0);
23831 } else if (((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<24))) != 0)) {
23832 long v = PyLong_AsLong(obj);
23833 if (!PyErr_Occurred()) {
23834 if (val) *val = v;
23835 return (0);
23836 } else {
23837 PyErr_Clear();
23838 }
23839 }
23840 return -5;
23841}
23842static __attribute__ ((__unused__)) inline int
23843SWIG_AsVal_ptrdiff_t (PyObject * obj, ptrdiff_t *val)
23844{
23845 long v;
23846 int res = SWIG_AsVal_long (obj, val ? &v : 0);
23847 if ((res >= 0) && val) *val = static_cast< ptrdiff_t >(v);
23848 return res;
23849}
23850
23851
23852
23853namespace std __attribute__ ((__visibility__ ("default"))) {
23854 using ::div_t;
23855 using ::ldiv_t;
23856 using ::abort;
23857 using ::abs;
23858 using ::atexit;
23859 using ::atof;
23860 using ::atoi;
23861 using ::atol;
23862 using ::bsearch;
23863 using ::calloc;
23864 using ::div;
23865 using ::exit;
23866 using ::free;
23867 using ::getenv;
23868 using ::labs;
23869 using ::ldiv;
23870 using ::malloc;
23871 using ::mblen;
23872 using ::mbstowcs;
23873 using ::mbtowc;
23874 using ::qsort;
23875 using ::rand;
23876 using ::realloc;
23877 using ::srand;
23878 using ::strtod;
23879 using ::strtol;
23880 using ::strtoul;
23881 using ::system;
23882 using ::wcstombs;
23883 using ::wctomb;
23884 inline long
23885 abs(long __i) { return labs(__i); }
23886 inline ldiv_t
23887 div(long __i, long __j) { return ldiv(__i, __j); }
23888}
23889namespace __gnu_cxx __attribute__ ((__visibility__ ("default"))) {
23890 using ::lldiv_t;
23891 using ::_Exit;
23892 inline long long
23893 abs(long long __x) { return __x >= 0 ? __x : -__x; }
23894 using ::llabs;
23895 inline lldiv_t
23896 div(long long __n, long long __d)
23897 { lldiv_t __q; __q.quot = __n / __d; __q.rem = __n % __d; return __q; }
23898 using ::lldiv;
23899 using ::atoll;
23900 using ::strtoll;
23901 using ::strtoull;
23902 using ::strtof;
23903 using ::strtold;
23904}
23905namespace std __attribute__ ((__visibility__ ("default"))) {
23906 using ::__gnu_cxx::lldiv_t;
23907 using ::__gnu_cxx::_Exit;
23908 using ::__gnu_cxx::abs;
23909 using ::__gnu_cxx::llabs;
23910 using ::__gnu_cxx::div;
23911 using ::__gnu_cxx::lldiv;
23912 using ::__gnu_cxx::atoll;
23913 using ::__gnu_cxx::strtof;
23914 using ::__gnu_cxx::strtoll;
23915 using ::__gnu_cxx::strtoull;
23916 using ::__gnu_cxx::strtold;
23917}
23918
23919namespace std __attribute__ ((__visibility__ ("default"))) {
23920 template<typename _FIter, typename _Tp>
23921 bool
23922 binary_search(_FIter, _FIter, const _Tp&);
23923 template<typename _FIter, typename _Tp, typename _Compare>
23924 bool
23925 binary_search(_FIter, _FIter, const _Tp&, _Compare);
23926 template<typename _IIter, typename _OIter>
23927 _OIter
23928 copy(_IIter, _IIter, _OIter);
23929 template<typename _BIter1, typename _BIter2>
23930 _BIter2
23931 copy_backward(_BIter1, _BIter1, _BIter2);
23932 template<typename _FIter, typename _Tp>
23933 pair<_FIter, _FIter>
23934 equal_range(_FIter, _FIter, const _Tp&);
23935 template<typename _FIter, typename _Tp, typename _Compare>
23936 pair<_FIter, _FIter>
23937 equal_range(_FIter, _FIter, const _Tp&, _Compare);
23938 template<typename _FIter, typename _Tp>
23939 void
23940 fill(_FIter, _FIter, const _Tp&);
23941 template<typename _OIter, typename _Size, typename _Tp>
23942 _OIter
23943 fill_n(_OIter, _Size, const _Tp&);
23944 template<typename _FIter1, typename _FIter2>
23945 _FIter1
23946 find_end(_FIter1, _FIter1, _FIter2, _FIter2);
23947 template<typename _FIter1, typename _FIter2, typename _BinaryPredicate>
23948 _FIter1
23949 find_end(_FIter1, _FIter1, _FIter2, _FIter2, _BinaryPredicate);
23950 template<typename _IIter1, typename _IIter2>
23951 bool
23952 includes(_IIter1, _IIter1, _IIter2, _IIter2);
23953 template<typename _IIter1, typename _IIter2, typename _Compare>
23954 bool
23955 includes(_IIter1, _IIter1, _IIter2, _IIter2, _Compare);
23956 template<typename _BIter>
23957 void
23958 inplace_merge(_BIter, _BIter, _BIter);
23959 template<typename _BIter, typename _Compare>
23960 void
23961 inplace_merge(_BIter, _BIter, _BIter, _Compare);
23962 template<typename _FIter1, typename _FIter2>
23963 void
23964 iter_swap(_FIter1, _FIter2);
23965 template<typename _FIter, typename _Tp>
23966 _FIter
23967 lower_bound(_FIter, _FIter, const _Tp&);
23968 template<typename _FIter, typename _Tp, typename _Compare>
23969 _FIter
23970 lower_bound(_FIter, _FIter, const _Tp&, _Compare);
23971 template<typename _RAIter>
23972 void
23973 make_heap(_RAIter, _RAIter);
23974 template<typename _RAIter, typename _Compare>
23975 void
23976 make_heap(_RAIter, _RAIter, _Compare);
23977 template<typename _Tp>
23978 const _Tp&
23979 max(const _Tp&, const _Tp&);
23980 template<typename _Tp, typename _Compare>
23981 const _Tp&
23982 max(const _Tp&, const _Tp&, _Compare);
23983 template<typename _Tp>
23984 const _Tp&
23985 min(const _Tp&, const _Tp&);
23986 template<typename _Tp, typename _Compare>
23987 const _Tp&
23988 min(const _Tp&, const _Tp&, _Compare);
23989 template<typename _BIter>
23990 bool
23991 next_permutation(_BIter, _BIter);
23992 template<typename _BIter, typename _Compare>
23993 bool
23994 next_permutation(_BIter, _BIter, _Compare);
23995 template<typename _IIter, typename _RAIter>
23996 _RAIter
23997 partial_sort_copy(_IIter, _IIter, _RAIter, _RAIter);
23998 template<typename _IIter, typename _RAIter, typename _Compare>
23999 _RAIter
24000 partial_sort_copy(_IIter, _IIter, _RAIter, _RAIter, _Compare);
24001 template<typename _RAIter>
24002 void
24003 pop_heap(_RAIter, _RAIter);
24004 template<typename _RAIter, typename _Compare>
24005 void
24006 pop_heap(_RAIter, _RAIter, _Compare);
24007 template<typename _BIter>
24008 bool
24009 prev_permutation(_BIter, _BIter);
24010 template<typename _BIter, typename _Compare>
24011 bool
24012 prev_permutation(_BIter, _BIter, _Compare);
24013 template<typename _RAIter>
24014 void
24015 push_heap(_RAIter, _RAIter);
24016 template<typename _RAIter, typename _Compare>
24017 void
24018 push_heap(_RAIter, _RAIter, _Compare);
24019 template<typename _FIter, typename _Tp>
24020 _FIter
24021 remove(_FIter, _FIter, const _Tp&);
24022 template<typename _FIter, typename _Predicate>
24023 _FIter
24024 remove_if(_FIter, _FIter, _Predicate);
24025 template<typename _IIter, typename _OIter, typename _Tp>
24026 _OIter
24027 remove_copy(_IIter, _IIter, _OIter, const _Tp&);
24028 template<typename _IIter, typename _OIter, typename _Predicate>
24029 _OIter
24030 remove_copy_if(_IIter, _IIter, _OIter, _Predicate);
24031 template<typename _IIter, typename _OIter, typename _Tp>
24032 _OIter
24033 replace_copy(_IIter, _IIter, _OIter, const _Tp&, const _Tp&);
24034 template<typename _Iter, typename _OIter, typename _Predicate, typename _Tp>
24035 _OIter
24036 replace_copy_if(_Iter, _Iter, _OIter, _Predicate, const _Tp&);
24037 template<typename _BIter>
24038 void
24039 reverse(_BIter, _BIter);
24040 template<typename _BIter, typename _OIter>
24041 _OIter
24042 reverse_copy(_BIter, _BIter, _OIter);
24043 template<typename _FIter>
24044 void
24045 rotate(_FIter, _FIter, _FIter);
24046 template<typename _FIter, typename _OIter>
24047 _OIter
24048 rotate_copy(_FIter, _FIter, _FIter, _OIter);
24049 template<typename _RAIter>
24050 void
24051 sort_heap(_RAIter, _RAIter);
24052 template<typename _RAIter, typename _Compare>
24053 void
24054 sort_heap(_RAIter, _RAIter, _Compare);
24055 template<typename _BIter, typename _Predicate>
24056 _BIter
24057 stable_partition(_BIter, _BIter, _Predicate);
24058 template<typename _Tp>
24059 void
24060 swap(_Tp&, _Tp&);
24061 template<typename _Tp, size_t _Nm>
24062 void
24063 swap(_Tp (&)[_Nm], _Tp (&)[_Nm]);
24064 template<typename _FIter1, typename _FIter2>
24065 _FIter2
24066 swap_ranges(_FIter1, _FIter1, _FIter2);
24067 template<typename _FIter>
24068 _FIter
24069 unique(_FIter, _FIter);
24070 template<typename _FIter, typename _BinaryPredicate>
24071 _FIter
24072 unique(_FIter, _FIter, _BinaryPredicate);
24073 template<typename _FIter, typename _Tp>
24074 _FIter
24075 upper_bound(_FIter, _FIter, const _Tp&);
24076 template<typename _FIter, typename _Tp, typename _Compare>
24077 _FIter
24078 upper_bound(_FIter, _FIter, const _Tp&, _Compare);
24079}
24080namespace std __attribute__ ((__visibility__ ("default"))) {
24081 template<typename _FIter>
24082 _FIter
24083 adjacent_find(_FIter, _FIter);
24084 template<typename _FIter, typename _BinaryPredicate>
24085 _FIter
24086 adjacent_find(_FIter, _FIter, _BinaryPredicate);
24087 template<typename _IIter, typename _Tp>
24088 typename iterator_traits<_IIter>::difference_type
24089 count(_IIter, _IIter, const _Tp&);
24090 template<typename _IIter, typename _Predicate>
24091 typename iterator_traits<_IIter>::difference_type
24092 count_if(_IIter, _IIter, _Predicate);
24093 template<typename _IIter1, typename _IIter2>
24094 bool
24095 equal(_IIter1, _IIter1, _IIter2);
24096 template<typename _IIter1, typename _IIter2, typename _BinaryPredicate>
24097 bool
24098 equal(_IIter1, _IIter1, _IIter2, _BinaryPredicate);
24099 template<typename _IIter, typename _Tp>
24100 _IIter
24101 find(_IIter, _IIter, const _Tp&);
24102 template<typename _FIter1, typename _FIter2>
24103 _FIter1
24104 find_first_of(_FIter1, _FIter1, _FIter2, _FIter2);
24105 template<typename _FIter1, typename _FIter2, typename _BinaryPredicate>
24106 _FIter1
24107 find_first_of(_FIter1, _FIter1, _FIter2, _FIter2, _BinaryPredicate);
24108 template<typename _IIter, typename _Predicate>
24109 _IIter
24110 find_if(_IIter, _IIter, _Predicate);
24111 template<typename _IIter, typename _Funct>
24112 _Funct
24113 for_each(_IIter, _IIter, _Funct);
24114 template<typename _FIter, typename _Generator>
24115 void
24116 generate(_FIter, _FIter, _Generator);
24117 template<typename _OIter, typename _Size, typename _Generator>
24118 _OIter
24119 generate_n(_OIter, _Size, _Generator);
24120 template<typename _IIter1, typename _IIter2>
24121 bool
24122 lexicographical_compare(_IIter1, _IIter1, _IIter2, _IIter2);
24123 template<typename _IIter1, typename _IIter2, typename _Compare>
24124 bool
24125 lexicographical_compare(_IIter1, _IIter1, _IIter2, _IIter2, _Compare);
24126 template<typename _FIter>
24127 _FIter
24128 max_element(_FIter, _FIter);
24129 template<typename _FIter, typename _Compare>
24130 _FIter
24131 max_element(_FIter, _FIter, _Compare);
24132 template<typename _IIter1, typename _IIter2, typename _OIter>
24133 _OIter
24134 merge(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);
24135 template<typename _IIter1, typename _IIter2, typename _OIter,
24136 typename _Compare>
24137 _OIter
24138 merge(_IIter1, _IIter1, _IIter2, _IIter2, _OIter, _Compare);
24139 template<typename _FIter>
24140 _FIter
24141 min_element(_FIter, _FIter);
24142 template<typename _FIter, typename _Compare>
24143 _FIter
24144 min_element(_FIter, _FIter, _Compare);
24145 template<typename _IIter1, typename _IIter2>
24146 pair<_IIter1, _IIter2>
24147 mismatch(_IIter1, _IIter1, _IIter2);
24148 template<typename _IIter1, typename _IIter2, typename _BinaryPredicate>
24149 pair<_IIter1, _IIter2>
24150 mismatch(_IIter1, _IIter1, _IIter2, _BinaryPredicate);
24151 template<typename _RAIter>
24152 void
24153 nth_element(_RAIter, _RAIter, _RAIter);
24154 template<typename _RAIter, typename _Compare>
24155 void
24156 nth_element(_RAIter, _RAIter, _RAIter, _Compare);
24157 template<typename _RAIter>
24158 void
24159 partial_sort(_RAIter, _RAIter, _RAIter);
24160 template<typename _RAIter, typename _Compare>
24161 void
24162 partial_sort(_RAIter, _RAIter, _RAIter, _Compare);
24163 template<typename _BIter, typename _Predicate>
24164 _BIter
24165 partition(_BIter, _BIter, _Predicate);
24166 template<typename _RAIter>
24167 void
24168 random_shuffle(_RAIter, _RAIter);
24169 template<typename _RAIter, typename _Generator>
24170 void
24171 random_shuffle(_RAIter, _RAIter, _Generator&);
24172 template<typename _FIter, typename _Tp>
24173 void
24174 replace(_FIter, _FIter, const _Tp&, const _Tp&);
24175 template<typename _FIter, typename _Predicate, typename _Tp>
24176 void
24177 replace_if(_FIter, _FIter, _Predicate, const _Tp&);
24178 template<typename _FIter1, typename _FIter2>
24179 _FIter1
24180 search(_FIter1, _FIter1, _FIter2, _FIter2);
24181 template<typename _FIter1, typename _FIter2, typename _BinaryPredicate>
24182 _FIter1
24183 search(_FIter1, _FIter1, _FIter2, _FIter2, _BinaryPredicate);
24184 template<typename _FIter, typename _Size, typename _Tp>
24185 _FIter
24186 search_n(_FIter, _FIter, _Size, const _Tp&);
24187 template<typename _FIter, typename _Size, typename _Tp,
24188 typename _BinaryPredicate>
24189 _FIter
24190 search_n(_FIter, _FIter, _Size, const _Tp&, _BinaryPredicate);
24191 template<typename _IIter1, typename _IIter2, typename _OIter>
24192 _OIter
24193 set_difference(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);
24194 template<typename _IIter1, typename _IIter2, typename _OIter,
24195 typename _Compare>
24196 _OIter
24197 set_difference(_IIter1, _IIter1, _IIter2, _IIter2, _OIter, _Compare);
24198 template<typename _IIter1, typename _IIter2, typename _OIter>
24199 _OIter
24200 set_intersection(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);
24201 template<typename _IIter1, typename _IIter2, typename _OIter,
24202 typename _Compare>
24203 _OIter
24204 set_intersection(_IIter1, _IIter1, _IIter2, _IIter2, _OIter, _Compare);
24205 template<typename _IIter1, typename _IIter2, typename _OIter>
24206 _OIter
24207 set_symmetric_difference(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);
24208 template<typename _IIter1, typename _IIter2, typename _OIter,
24209 typename _Compare>
24210 _OIter
24211 set_symmetric_difference(_IIter1, _IIter1, _IIter2, _IIter2,
24212 _OIter, _Compare);
24213 template<typename _IIter1, typename _IIter2, typename _OIter>
24214 _OIter
24215 set_union(_IIter1, _IIter1, _IIter2, _IIter2, _OIter);
24216 template<typename _IIter1, typename _IIter2, typename _OIter,
24217 typename _Compare>
24218 _OIter
24219 set_union(_IIter1, _IIter1, _IIter2, _IIter2, _OIter, _Compare);
24220 template<typename _RAIter>
24221 void
24222 sort(_RAIter, _RAIter);
24223 template<typename _RAIter, typename _Compare>
24224 void
24225 sort(_RAIter, _RAIter, _Compare);
24226 template<typename _RAIter>
24227 void
24228 stable_sort(_RAIter, _RAIter);
24229 template<typename _RAIter, typename _Compare>
24230 void
24231 stable_sort(_RAIter, _RAIter, _Compare);
24232 template<typename _IIter, typename _OIter, typename _UnaryOperation>
24233 _OIter
24234 transform(_IIter, _IIter, _OIter, _UnaryOperation);
24235 template<typename _IIter1, typename _IIter2, typename _OIter,
24236 typename _BinaryOperation>
24237 _OIter
24238 transform(_IIter1, _IIter1, _IIter2, _OIter, _BinaryOperation);
24239 template<typename _IIter, typename _OIter>
24240 _OIter
24241 unique_copy(_IIter, _IIter, _OIter);
24242 template<typename _IIter, typename _OIter, typename _BinaryPredicate>
24243 _OIter
24244 unique_copy(_IIter, _IIter, _OIter, _BinaryPredicate);
24245}
24246namespace std __attribute__ ((__visibility__ ("default"))) {
24247 template<typename _RandomAccessIterator, typename _Distance>
24248 _Distance
24249 __is_heap_until(_RandomAccessIterator __first, _Distance __n)
24250 {
24251 _Distance __parent = 0;
24252 for (_Distance __child = 1; __child < __n; ++__child)
24253 {
24254 if (__first[__parent] < __first[__child])
24255 return __child;
24256 if ((__child & 1) == 0)
24257 ++__parent;
24258 }
24259 return __n;
24260 }
24261 template<typename _RandomAccessIterator, typename _Distance,
24262 typename _Compare>
24263 _Distance
24264 __is_heap_until(_RandomAccessIterator __first, _Distance __n,
24265 _Compare __comp)
24266 {
24267 _Distance __parent = 0;
24268 for (_Distance __child = 1; __child < __n; ++__child)
24269 {
24270 if (__comp(__first[__parent], __first[__child]))
24271 return __child;
24272 if ((__child & 1) == 0)
24273 ++__parent;
24274 }
24275 return __n;
24276 }
24277 template<typename _RandomAccessIterator, typename _Distance>
24278 inline bool
24279 __is_heap(_RandomAccessIterator __first, _Distance __n)
24280 { return std::__is_heap_until(__first, __n) == __n; }
24281 template<typename _RandomAccessIterator, typename _Compare,
24282 typename _Distance>
24283 inline bool
24284 __is_heap(_RandomAccessIterator __first, _Compare __comp, _Distance __n)
24285 { return std::__is_heap_until(__first, __n, __comp) == __n; }
24286 template<typename _RandomAccessIterator>
24287 inline bool
24288 __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
24289 { return std::__is_heap(__first, std::distance(__first, __last)); }
24290 template<typename _RandomAccessIterator, typename _Compare>
24291 inline bool
24292 __is_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
24293 _Compare __comp)
24294 { return std::__is_heap(__first, __comp, std::distance(__first, __last)); }
24295 template<typename _RandomAccessIterator, typename _Distance, typename _Tp>
24296 void
24297 __push_heap(_RandomAccessIterator __first,
24298 _Distance __holeIndex, _Distance __topIndex, _Tp __value)
24299 {
24300 _Distance __parent = (__holeIndex - 1) / 2;
24301 while (__holeIndex > __topIndex && *(__first + __parent) < __value)
24302 {
24303 *(__first + __holeIndex) = (*(__first + __parent));
24304 __holeIndex = __parent;
24305 __parent = (__holeIndex - 1) / 2;
24306 }
24307 *(__first + __holeIndex) = (__value);
24308 }
24309 template<typename _RandomAccessIterator>
24310 inline void
24311 push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
24312 {
24313 typedef typename iterator_traits<_RandomAccessIterator>::value_type
24314 _ValueType;
24315 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
24316 _DistanceType;
24317
24318
24319 ;
24320 ;
24321 _ValueType __value = (*(__last - 1));
24322 std::__push_heap(__first, _DistanceType((__last - __first) - 1),
24323 _DistanceType(0), (__value));
24324 }
24325 template<typename _RandomAccessIterator, typename _Distance, typename _Tp,
24326 typename _Compare>
24327 void
24328 __push_heap(_RandomAccessIterator __first, _Distance __holeIndex,
24329 _Distance __topIndex, _Tp __value, _Compare __comp)
24330 {
24331 _Distance __parent = (__holeIndex - 1) / 2;
24332 while (__holeIndex > __topIndex
24333 && __comp(*(__first + __parent), __value))
24334 {
24335 *(__first + __holeIndex) = (*(__first + __parent));
24336 __holeIndex = __parent;
24337 __parent = (__holeIndex - 1) / 2;
24338 }
24339 *(__first + __holeIndex) = (__value);
24340 }
24341 template<typename _RandomAccessIterator, typename _Compare>
24342 inline void
24343 push_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
24344 _Compare __comp)
24345 {
24346 typedef typename iterator_traits<_RandomAccessIterator>::value_type
24347 _ValueType;
24348 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
24349 _DistanceType;
24350
24351 ;
24352 ;
24353 _ValueType __value = (*(__last - 1));
24354 std::__push_heap(__first, _DistanceType((__last - __first) - 1),
24355 _DistanceType(0), (__value), __comp);
24356 }
24357 template<typename _RandomAccessIterator, typename _Distance, typename _Tp>
24358 void
24359 __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
24360 _Distance __len, _Tp __value)
24361 {
24362 const _Distance __topIndex = __holeIndex;
24363 _Distance __secondChild = __holeIndex;
24364 while (__secondChild < (__len - 1) / 2)
24365 {
24366 __secondChild = 2 * (__secondChild + 1);
24367 if (*(__first + __secondChild) < *(__first + (__secondChild - 1)))
24368 __secondChild--;
24369 *(__first + __holeIndex) = (*(__first + __secondChild));
24370 __holeIndex = __secondChild;
24371 }
24372 if ((__len & 1) == 0 && __secondChild == (__len - 2) / 2)
24373 {
24374 __secondChild = 2 * (__secondChild + 1);
24375 *(__first + __holeIndex) = (*(__first + (__secondChild - 1)));
24376 __holeIndex = __secondChild - 1;
24377 }
24378 std::__push_heap(__first, __holeIndex, __topIndex,
24379 (__value));
24380 }
24381 template<typename _RandomAccessIterator>
24382 inline void
24383 __pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
24384 _RandomAccessIterator __result)
24385 {
24386 typedef typename iterator_traits<_RandomAccessIterator>::value_type
24387 _ValueType;
24388 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
24389 _DistanceType;
24390 _ValueType __value = (*__result);
24391 *__result = (*__first);
24392 std::__adjust_heap(__first, _DistanceType(0),
24393 _DistanceType(__last - __first),
24394 (__value));
24395 }
24396 template<typename _RandomAccessIterator>
24397 inline void
24398 pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
24399 {
24400 typedef typename iterator_traits<_RandomAccessIterator>::value_type
24401 _ValueType;
24402
24403
24404 ;
24405 ;
24406 --__last;
24407 std::__pop_heap(__first, __last, __last);
24408 }
24409 template<typename _RandomAccessIterator, typename _Distance,
24410 typename _Tp, typename _Compare>
24411 void
24412 __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
24413 _Distance __len, _Tp __value, _Compare __comp)
24414 {
24415 const _Distance __topIndex = __holeIndex;
24416 _Distance __secondChild = __holeIndex;
24417 while (__secondChild < (__len - 1) / 2)
24418 {
24419 __secondChild = 2 * (__secondChild + 1);
24420 if (__comp(*(__first + __secondChild),
24421 *(__first + (__secondChild - 1))))
24422 __secondChild--;
24423 *(__first + __holeIndex) = (*(__first + __secondChild));
24424 __holeIndex = __secondChild;
24425 }
24426 if ((__len & 1) == 0 && __secondChild == (__len - 2) / 2)
24427 {
24428 __secondChild = 2 * (__secondChild + 1);
24429 *(__first + __holeIndex) = (*(__first + (__secondChild - 1)));
24430 __holeIndex = __secondChild - 1;
24431 }
24432 std::__push_heap(__first, __holeIndex, __topIndex,
24433 (__value), __comp);
24434 }
24435 template<typename _RandomAccessIterator, typename _Compare>
24436 inline void
24437 __pop_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
24438 _RandomAccessIterator __result, _Compare __comp)
24439 {
24440 typedef typename iterator_traits<_RandomAccessIterator>::value_type
24441 _ValueType;
24442 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
24443 _DistanceType;
24444 _ValueType __value = (*__result);
24445 *__result = (*__first);
24446 std::__adjust_heap(__first, _DistanceType(0),
24447 _DistanceType(__last - __first),
24448 (__value), __comp);
24449 }
24450 template<typename _RandomAccessIterator, typename _Compare>
24451 inline void
24452 pop_heap(_RandomAccessIterator __first,
24453 _RandomAccessIterator __last, _Compare __comp)
24454 {
24455
24456 ;
24457 ;
24458 --__last;
24459 std::__pop_heap(__first, __last, __last, __comp);
24460 }
24461 template<typename _RandomAccessIterator>
24462 void
24463 make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
24464 {
24465 typedef typename iterator_traits<_RandomAccessIterator>::value_type
24466 _ValueType;
24467 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
24468 _DistanceType;
24469
24470
24471 ;
24472 if (__last - __first < 2)
24473 return;
24474 const _DistanceType __len = __last - __first;
24475 _DistanceType __parent = (__len - 2) / 2;
24476 while (true)
24477 {
24478 _ValueType __value = (*(__first + __parent));
24479 std::__adjust_heap(__first, __parent, __len, (__value));
24480 if (__parent == 0)
24481 return;
24482 __parent--;
24483 }
24484 }
24485 template<typename _RandomAccessIterator, typename _Compare>
24486 void
24487 make_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
24488 _Compare __comp)
24489 {
24490 typedef typename iterator_traits<_RandomAccessIterator>::value_type
24491 _ValueType;
24492 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
24493 _DistanceType;
24494
24495 ;
24496 if (__last - __first < 2)
24497 return;
24498 const _DistanceType __len = __last - __first;
24499 _DistanceType __parent = (__len - 2) / 2;
24500 while (true)
24501 {
24502 _ValueType __value = (*(__first + __parent));
24503 std::__adjust_heap(__first, __parent, __len, (__value),
24504 __comp);
24505 if (__parent == 0)
24506 return;
24507 __parent--;
24508 }
24509 }
24510 template<typename _RandomAccessIterator>
24511 void
24512 sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last)
24513 {
24514
24515
24516 ;
24517 ;
24518 while (__last - __first > 1)
24519 {
24520 --__last;
24521 std::__pop_heap(__first, __last, __last);
24522 }
24523 }
24524 template<typename _RandomAccessIterator, typename _Compare>
24525 void
24526 sort_heap(_RandomAccessIterator __first, _RandomAccessIterator __last,
24527 _Compare __comp)
24528 {
24529
24530 ;
24531 ;
24532 while (__last - __first > 1)
24533 {
24534 --__last;
24535 std::__pop_heap(__first, __last, __last, __comp);
24536 }
24537 }
24538}
24539namespace std __attribute__ ((__visibility__ ("default"))) {
24540 template<typename _Tp>
24541 pair<_Tp*, ptrdiff_t>
24542 get_temporary_buffer(ptrdiff_t __len)
24543 {
24544 const ptrdiff_t __max =
24545 __gnu_cxx::__numeric_traits<ptrdiff_t>::__max / sizeof(_Tp);
24546 if (__len > __max)
24547 __len = __max;
24548 while (__len > 0)
24549 {
24550 _Tp* __tmp = static_cast<_Tp*>(::operator new(__len * sizeof(_Tp),
24551 std::nothrow));
24552 if (__tmp != 0)
24553 return std::pair<_Tp*, ptrdiff_t>(__tmp, __len);
24554 __len /= 2;
24555 }
24556 return std::pair<_Tp*, ptrdiff_t>(static_cast<_Tp*>(0), 0);
24557 }
24558 template<typename _Tp>
24559 inline void
24560 return_temporary_buffer(_Tp* __p)
24561 { ::operator delete(__p, std::nothrow); }
24562 template<typename _ForwardIterator, typename _Tp>
24563 class _Temporary_buffer
24564 {
24565
24566 public:
24567 typedef _Tp value_type;
24568 typedef value_type* pointer;
24569 typedef pointer iterator;
24570 typedef ptrdiff_t size_type;
24571 protected:
24572 size_type _M_original_len;
24573 size_type _M_len;
24574 pointer _M_buffer;
24575 public:
24576 size_type
24577 size() const
24578 { return _M_len; }
24579 size_type
24580 requested_size() const
24581 { return _M_original_len; }
24582 iterator
24583 begin()
24584 { return _M_buffer; }
24585 iterator
24586 end()
24587 { return _M_buffer + _M_len; }
24588 _Temporary_buffer(_ForwardIterator __first, _ForwardIterator __last);
24589 ~_Temporary_buffer()
24590 {
24591 std::_Destroy(_M_buffer, _M_buffer + _M_len);
24592 std::return_temporary_buffer(_M_buffer);
24593 }
24594 private:
24595 _Temporary_buffer(const _Temporary_buffer&);
24596 void
24597 operator=(const _Temporary_buffer&);
24598 };
24599 template<typename _ForwardIterator, typename _Tp>
24600 _Temporary_buffer<_ForwardIterator, _Tp>::
24601 _Temporary_buffer(_ForwardIterator __first, _ForwardIterator __last)
24602 : _M_original_len(std::distance(__first, __last)),
24603 _M_len(0), _M_buffer(0)
24604 {
24605 try
24606 {
24607 std::pair<pointer, size_type> __p(std::get_temporary_buffer<
24608 value_type>(_M_original_len));
24609 _M_buffer = __p.first;
24610 _M_len = __p.second;
24611 if (!__is_pod(_Tp) && _M_len > 0)
24612 std::uninitialized_fill_n(_M_buffer, _M_len, *__first);
24613 }
24614 catch(...)
24615 {
24616 std::return_temporary_buffer(_M_buffer);
24617 _M_buffer = 0;
24618 _M_len = 0;
24619 throw;
24620 }
24621 }
24622}
24623namespace std __attribute__ ((__visibility__ ("default"))) {
24624 template<typename _Tp>
24625 inline const _Tp&
24626 __median(const _Tp& __a, const _Tp& __b, const _Tp& __c)
24627 {
24628
24629 if (__a < __b)
24630 if (__b < __c)
24631 return __b;
24632 else if (__a < __c)
24633 return __c;
24634 else
24635 return __a;
24636 else if (__a < __c)
24637 return __a;
24638 else if (__b < __c)
24639 return __c;
24640 else
24641 return __b;
24642 }
24643 template<typename _Tp, typename _Compare>
24644 inline const _Tp&
24645 __median(const _Tp& __a, const _Tp& __b, const _Tp& __c, _Compare __comp)
24646 {
24647
24648 if (__comp(__a, __b))
24649 if (__comp(__b, __c))
24650 return __b;
24651 else if (__comp(__a, __c))
24652 return __c;
24653 else
24654 return __a;
24655 else if (__comp(__a, __c))
24656 return __a;
24657 else if (__comp(__b, __c))
24658 return __c;
24659 else
24660 return __b;
24661 }
24662 template<typename _InputIterator, typename _Tp>
24663 inline _InputIterator
24664 __find(_InputIterator __first, _InputIterator __last,
24665 const _Tp& __val, input_iterator_tag)
24666 {
24667 while (__first != __last && !(*__first == __val))
24668 ++__first;
24669 return __first;
24670 }
24671 template<typename _InputIterator, typename _Predicate>
24672 inline _InputIterator
24673 __find_if(_InputIterator __first, _InputIterator __last,
24674 _Predicate __pred, input_iterator_tag)
24675 {
24676 while (__first != __last && !bool(__pred(*__first)))
24677 ++__first;
24678 return __first;
24679 }
24680 template<typename _RandomAccessIterator, typename _Tp>
24681 _RandomAccessIterator
24682 __find(_RandomAccessIterator __first, _RandomAccessIterator __last,
24683 const _Tp& __val, random_access_iterator_tag)
24684 {
24685 typename iterator_traits<_RandomAccessIterator>::difference_type
24686 __trip_count = (__last - __first) >> 2;
24687 for (; __trip_count > 0; --__trip_count)
24688 {
24689 if (*__first == __val)
24690 return __first;
24691 ++__first;
24692 if (*__first == __val)
24693 return __first;
24694 ++__first;
24695 if (*__first == __val)
24696 return __first;
24697 ++__first;
24698 if (*__first == __val)
24699 return __first;
24700 ++__first;
24701 }
24702 switch (__last - __first)
24703 {
24704 case 3:
24705 if (*__first == __val)
24706 return __first;
24707 ++__first;
24708 case 2:
24709 if (*__first == __val)
24710 return __first;
24711 ++__first;
24712 case 1:
24713 if (*__first == __val)
24714 return __first;
24715 ++__first;
24716 case 0:
24717 default:
24718 return __last;
24719 }
24720 }
24721 template<typename _RandomAccessIterator, typename _Predicate>
24722 _RandomAccessIterator
24723 __find_if(_RandomAccessIterator __first, _RandomAccessIterator __last,
24724 _Predicate __pred, random_access_iterator_tag)
24725 {
24726 typename iterator_traits<_RandomAccessIterator>::difference_type
24727 __trip_count = (__last - __first) >> 2;
24728 for (; __trip_count > 0; --__trip_count)
24729 {
24730 if (__pred(*__first))
24731 return __first;
24732 ++__first;
24733 if (__pred(*__first))
24734 return __first;
24735 ++__first;
24736 if (__pred(*__first))
24737 return __first;
24738 ++__first;
24739 if (__pred(*__first))
24740 return __first;
24741 ++__first;
24742 }
24743 switch (__last - __first)
24744 {
24745 case 3:
24746 if (__pred(*__first))
24747 return __first;
24748 ++__first;
24749 case 2:
24750 if (__pred(*__first))
24751 return __first;
24752 ++__first;
24753 case 1:
24754 if (__pred(*__first))
24755 return __first;
24756 ++__first;
24757 case 0:
24758 default:
24759 return __last;
24760 }
24761 }
24762 template<typename _ForwardIterator, typename _Integer, typename _Tp>
24763 _ForwardIterator
24764 __search_n(_ForwardIterator __first, _ForwardIterator __last,
24765 _Integer __count, const _Tp& __val,
24766 std::forward_iterator_tag)
24767 {
24768 __first = std::find(__first, __last, __val);
24769 while (__first != __last)
24770 {
24771 typename iterator_traits<_ForwardIterator>::difference_type
24772 __n = __count;
24773 _ForwardIterator __i = __first;
24774 ++__i;
24775 while (__i != __last && __n != 1 && *__i == __val)
24776 {
24777 ++__i;
24778 --__n;
24779 }
24780 if (__n == 1)
24781 return __first;
24782 if (__i == __last)
24783 return __last;
24784 __first = std::find(++__i, __last, __val);
24785 }
24786 return __last;
24787 }
24788 template<typename _RandomAccessIter, typename _Integer, typename _Tp>
24789 _RandomAccessIter
24790 __search_n(_RandomAccessIter __first, _RandomAccessIter __last,
24791 _Integer __count, const _Tp& __val,
24792 std::random_access_iterator_tag)
24793 {
24794 typedef typename std::iterator_traits<_RandomAccessIter>::difference_type
24795 _DistanceType;
24796 _DistanceType __tailSize = __last - __first;
24797 const _DistanceType __pattSize = __count;
24798 if (__tailSize < __pattSize)
24799 return __last;
24800 const _DistanceType __skipOffset = __pattSize - 1;
24801 _RandomAccessIter __lookAhead = __first + __skipOffset;
24802 __tailSize -= __pattSize;
24803 while (1)
24804 {
24805 while (!(*__lookAhead == __val))
24806 {
24807 if (__tailSize < __pattSize)
24808 return __last;
24809 __lookAhead += __pattSize;
24810 __tailSize -= __pattSize;
24811 }
24812 _DistanceType __remainder = __skipOffset;
24813 for (_RandomAccessIter __backTrack = __lookAhead - 1;
24814 *__backTrack == __val; --__backTrack)
24815 {
24816 if (--__remainder == 0)
24817 return (__lookAhead - __skipOffset);
24818 }
24819 if (__remainder > __tailSize)
24820 return __last;
24821 __lookAhead += __remainder;
24822 __tailSize -= __remainder;
24823 }
24824 }
24825 template<typename _ForwardIterator, typename _Integer, typename _Tp,
24826 typename _BinaryPredicate>
24827 _ForwardIterator
24828 __search_n(_ForwardIterator __first, _ForwardIterator __last,
24829 _Integer __count, const _Tp& __val,
24830 _BinaryPredicate __binary_pred, std::forward_iterator_tag)
24831 {
24832 while (__first != __last && !bool(__binary_pred(*__first, __val)))
24833 ++__first;
24834 while (__first != __last)
24835 {
24836 typename iterator_traits<_ForwardIterator>::difference_type
24837 __n = __count;
24838 _ForwardIterator __i = __first;
24839 ++__i;
24840 while (__i != __last && __n != 1 && bool(__binary_pred(*__i, __val)))
24841 {
24842 ++__i;
24843 --__n;
24844 }
24845 if (__n == 1)
24846 return __first;
24847 if (__i == __last)
24848 return __last;
24849 __first = ++__i;
24850 while (__first != __last
24851 && !bool(__binary_pred(*__first, __val)))
24852 ++__first;
24853 }
24854 return __last;
24855 }
24856 template<typename _RandomAccessIter, typename _Integer, typename _Tp,
24857 typename _BinaryPredicate>
24858 _RandomAccessIter
24859 __search_n(_RandomAccessIter __first, _RandomAccessIter __last,
24860 _Integer __count, const _Tp& __val,
24861 _BinaryPredicate __binary_pred, std::random_access_iterator_tag)
24862 {
24863 typedef typename std::iterator_traits<_RandomAccessIter>::difference_type
24864 _DistanceType;
24865 _DistanceType __tailSize = __last - __first;
24866 const _DistanceType __pattSize = __count;
24867 if (__tailSize < __pattSize)
24868 return __last;
24869 const _DistanceType __skipOffset = __pattSize - 1;
24870 _RandomAccessIter __lookAhead = __first + __skipOffset;
24871 __tailSize -= __pattSize;
24872 while (1)
24873 {
24874 while (!bool(__binary_pred(*__lookAhead, __val)))
24875 {
24876 if (__tailSize < __pattSize)
24877 return __last;
24878 __lookAhead += __pattSize;
24879 __tailSize -= __pattSize;
24880 }
24881 _DistanceType __remainder = __skipOffset;
24882 for (_RandomAccessIter __backTrack = __lookAhead - 1;
24883 __binary_pred(*__backTrack, __val); --__backTrack)
24884 {
24885 if (--__remainder == 0)
24886 return (__lookAhead - __skipOffset);
24887 }
24888 if (__remainder > __tailSize)
24889 return __last;
24890 __lookAhead += __remainder;
24891 __tailSize -= __remainder;
24892 }
24893 }
24894 template<typename _ForwardIterator1, typename _ForwardIterator2>
24895 _ForwardIterator1
24896 __find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
24897 _ForwardIterator2 __first2, _ForwardIterator2 __last2,
24898 forward_iterator_tag, forward_iterator_tag)
24899 {
24900 if (__first2 == __last2)
24901 return __last1;
24902 else
24903 {
24904 _ForwardIterator1 __result = __last1;
24905 while (1)
24906 {
24907 _ForwardIterator1 __new_result
24908 = std::search(__first1, __last1, __first2, __last2);
24909 if (__new_result == __last1)
24910 return __result;
24911 else
24912 {
24913 __result = __new_result;
24914 __first1 = __new_result;
24915 ++__first1;
24916 }
24917 }
24918 }
24919 }
24920 template<typename _ForwardIterator1, typename _ForwardIterator2,
24921 typename _BinaryPredicate>
24922 _ForwardIterator1
24923 __find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
24924 _ForwardIterator2 __first2, _ForwardIterator2 __last2,
24925 forward_iterator_tag, forward_iterator_tag,
24926 _BinaryPredicate __comp)
24927 {
24928 if (__first2 == __last2)
24929 return __last1;
24930 else
24931 {
24932 _ForwardIterator1 __result = __last1;
24933 while (1)
24934 {
24935 _ForwardIterator1 __new_result
24936 = std::search(__first1, __last1, __first2,
24937 __last2, __comp);
24938 if (__new_result == __last1)
24939 return __result;
24940 else
24941 {
24942 __result = __new_result;
24943 __first1 = __new_result;
24944 ++__first1;
24945 }
24946 }
24947 }
24948 }
24949 template<typename _BidirectionalIterator1, typename _BidirectionalIterator2>
24950 _BidirectionalIterator1
24951 __find_end(_BidirectionalIterator1 __first1,
24952 _BidirectionalIterator1 __last1,
24953 _BidirectionalIterator2 __first2,
24954 _BidirectionalIterator2 __last2,
24955 bidirectional_iterator_tag, bidirectional_iterator_tag)
24956 {
24957
24958
24959 typedef reverse_iterator<_BidirectionalIterator1> _RevIterator1;
24960 typedef reverse_iterator<_BidirectionalIterator2> _RevIterator2;
24961 _RevIterator1 __rlast1(__first1);
24962 _RevIterator2 __rlast2(__first2);
24963 _RevIterator1 __rresult = std::search(_RevIterator1(__last1),
24964 __rlast1,
24965 _RevIterator2(__last2),
24966 __rlast2);
24967 if (__rresult == __rlast1)
24968 return __last1;
24969 else
24970 {
24971 _BidirectionalIterator1 __result = __rresult.base();
24972 std::advance(__result, -std::distance(__first2, __last2));
24973 return __result;
24974 }
24975 }
24976 template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
24977 typename _BinaryPredicate>
24978 _BidirectionalIterator1
24979 __find_end(_BidirectionalIterator1 __first1,
24980 _BidirectionalIterator1 __last1,
24981 _BidirectionalIterator2 __first2,
24982 _BidirectionalIterator2 __last2,
24983 bidirectional_iterator_tag, bidirectional_iterator_tag,
24984 _BinaryPredicate __comp)
24985 {
24986
24987
24988 typedef reverse_iterator<_BidirectionalIterator1> _RevIterator1;
24989 typedef reverse_iterator<_BidirectionalIterator2> _RevIterator2;
24990 _RevIterator1 __rlast1(__first1);
24991 _RevIterator2 __rlast2(__first2);
24992 _RevIterator1 __rresult = std::search(_RevIterator1(__last1), __rlast1,
24993 _RevIterator2(__last2), __rlast2,
24994 __comp);
24995 if (__rresult == __rlast1)
24996 return __last1;
24997 else
24998 {
24999 _BidirectionalIterator1 __result = __rresult.base();
25000 std::advance(__result, -std::distance(__first2, __last2));
25001 return __result;
25002 }
25003 }
25004 template<typename _ForwardIterator1, typename _ForwardIterator2>
25005 inline _ForwardIterator1
25006 find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
25007 _ForwardIterator2 __first2, _ForwardIterator2 __last2)
25008 {
25009
25010
25011
25012 ;
25013 ;
25014 return std::__find_end(__first1, __last1, __first2, __last2,
25015 std::__iterator_category(__first1),
25016 std::__iterator_category(__first2));
25017 }
25018 template<typename _ForwardIterator1, typename _ForwardIterator2,
25019 typename _BinaryPredicate>
25020 inline _ForwardIterator1
25021 find_end(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
25022 _ForwardIterator2 __first2, _ForwardIterator2 __last2,
25023 _BinaryPredicate __comp)
25024 {
25025
25026
25027
25028 ;
25029 ;
25030 return std::__find_end(__first1, __last1, __first2, __last2,
25031 std::__iterator_category(__first1),
25032 std::__iterator_category(__first2),
25033 __comp);
25034 }
25035 template<typename _InputIterator, typename _OutputIterator, typename _Tp>
25036 _OutputIterator
25037 remove_copy(_InputIterator __first, _InputIterator __last,
25038 _OutputIterator __result, const _Tp& __value)
25039 {
25040
25041
25042
25043 ;
25044 for (; __first != __last; ++__first)
25045 if (!(*__first == __value))
25046 {
25047 *__result = *__first;
25048 ++__result;
25049 }
25050 return __result;
25051 }
25052 template<typename _InputIterator, typename _OutputIterator,
25053 typename _Predicate>
25054 _OutputIterator
25055 remove_copy_if(_InputIterator __first, _InputIterator __last,
25056 _OutputIterator __result, _Predicate __pred)
25057 {
25058
25059
25060
25061 ;
25062 for (; __first != __last; ++__first)
25063 if (!bool(__pred(*__first)))
25064 {
25065 *__result = *__first;
25066 ++__result;
25067 }
25068 return __result;
25069 }
25070 template<typename _ForwardIterator, typename _Tp>
25071 _ForwardIterator
25072 remove(_ForwardIterator __first, _ForwardIterator __last,
25073 const _Tp& __value)
25074 {
25075
25076
25077 ;
25078 __first = std::find(__first, __last, __value);
25079 if(__first == __last)
25080 return __first;
25081 _ForwardIterator __result = __first;
25082 ++__first;
25083 for(; __first != __last; ++__first)
25084 if(!(*__first == __value))
25085 {
25086 *__result = (*__first);
25087 ++__result;
25088 }
25089 return __result;
25090 }
25091 template<typename _ForwardIterator, typename _Predicate>
25092 _ForwardIterator
25093 remove_if(_ForwardIterator __first, _ForwardIterator __last,
25094 _Predicate __pred)
25095 {
25096
25097
25098 ;
25099 __first = std::find_if(__first, __last, __pred);
25100 if(__first == __last)
25101 return __first;
25102 _ForwardIterator __result = __first;
25103 ++__first;
25104 for(; __first != __last; ++__first)
25105 if(!bool(__pred(*__first)))
25106 {
25107 *__result = (*__first);
25108 ++__result;
25109 }
25110 return __result;
25111 }
25112 template<typename _ForwardIterator>
25113 _ForwardIterator
25114 unique(_ForwardIterator __first, _ForwardIterator __last)
25115 {
25116
25117
25118 ;
25119 __first = std::adjacent_find(__first, __last);
25120 if (__first == __last)
25121 return __last;
25122 _ForwardIterator __dest = __first;
25123 ++__first;
25124 while (++__first != __last)
25125 if (!(*__dest == *__first))
25126 *++__dest = (*__first);
25127 return ++__dest;
25128 }
25129 template<typename _ForwardIterator, typename _BinaryPredicate>
25130 _ForwardIterator
25131 unique(_ForwardIterator __first, _ForwardIterator __last,
25132 _BinaryPredicate __binary_pred)
25133 {
25134
25135
25136 ;
25137 __first = std::adjacent_find(__first, __last, __binary_pred);
25138 if (__first == __last)
25139 return __last;
25140 _ForwardIterator __dest = __first;
25141 ++__first;
25142 while (++__first != __last)
25143 if (!bool(__binary_pred(*__dest, *__first)))
25144 *++__dest = (*__first);
25145 return ++__dest;
25146 }
25147 template<typename _ForwardIterator, typename _OutputIterator>
25148 _OutputIterator
25149 __unique_copy(_ForwardIterator __first, _ForwardIterator __last,
25150 _OutputIterator __result,
25151 forward_iterator_tag, output_iterator_tag)
25152 {
25153 _ForwardIterator __next = __first;
25154 *__result = *__first;
25155 while (++__next != __last)
25156 if (!(*__first == *__next))
25157 {
25158 __first = __next;
25159 *++__result = *__first;
25160 }
25161 return ++__result;
25162 }
25163 template<typename _InputIterator, typename _OutputIterator>
25164 _OutputIterator
25165 __unique_copy(_InputIterator __first, _InputIterator __last,
25166 _OutputIterator __result,
25167 input_iterator_tag, output_iterator_tag)
25168 {
25169 typename iterator_traits<_InputIterator>::value_type __value = *__first;
25170 *__result = __value;
25171 while (++__first != __last)
25172 if (!(__value == *__first))
25173 {
25174 __value = *__first;
25175 *++__result = __value;
25176 }
25177 return ++__result;
25178 }
25179 template<typename _InputIterator, typename _ForwardIterator>
25180 _ForwardIterator
25181 __unique_copy(_InputIterator __first, _InputIterator __last,
25182 _ForwardIterator __result,
25183 input_iterator_tag, forward_iterator_tag)
25184 {
25185 *__result = *__first;
25186 while (++__first != __last)
25187 if (!(*__result == *__first))
25188 *++__result = *__first;
25189 return ++__result;
25190 }
25191 template<typename _ForwardIterator, typename _OutputIterator,
25192 typename _BinaryPredicate>
25193 _OutputIterator
25194 __unique_copy(_ForwardIterator __first, _ForwardIterator __last,
25195 _OutputIterator __result, _BinaryPredicate __binary_pred,
25196 forward_iterator_tag, output_iterator_tag)
25197 {
25198
25199 _ForwardIterator __next = __first;
25200 *__result = *__first;
25201 while (++__next != __last)
25202 if (!bool(__binary_pred(*__first, *__next)))
25203 {
25204 __first = __next;
25205 *++__result = *__first;
25206 }
25207 return ++__result;
25208 }
25209 template<typename _InputIterator, typename _OutputIterator,
25210 typename _BinaryPredicate>
25211 _OutputIterator
25212 __unique_copy(_InputIterator __first, _InputIterator __last,
25213 _OutputIterator __result, _BinaryPredicate __binary_pred,
25214 input_iterator_tag, output_iterator_tag)
25215 {
25216
25217 typename iterator_traits<_InputIterator>::value_type __value = *__first;
25218 *__result = __value;
25219 while (++__first != __last)
25220 if (!bool(__binary_pred(__value, *__first)))
25221 {
25222 __value = *__first;
25223 *++__result = __value;
25224 }
25225 return ++__result;
25226 }
25227 template<typename _InputIterator, typename _ForwardIterator,
25228 typename _BinaryPredicate>
25229 _ForwardIterator
25230 __unique_copy(_InputIterator __first, _InputIterator __last,
25231 _ForwardIterator __result, _BinaryPredicate __binary_pred,
25232 input_iterator_tag, forward_iterator_tag)
25233 {
25234
25235 *__result = *__first;
25236 while (++__first != __last)
25237 if (!bool(__binary_pred(*__result, *__first)))
25238 *++__result = *__first;
25239 return ++__result;
25240 }
25241 template<typename _BidirectionalIterator>
25242 void
25243 __reverse(_BidirectionalIterator __first, _BidirectionalIterator __last,
25244 bidirectional_iterator_tag)
25245 {
25246 while (true)
25247 if (__first == __last || __first == --__last)
25248 return;
25249 else
25250 {
25251 std::iter_swap(__first, __last);
25252 ++__first;
25253 }
25254 }
25255 template<typename _RandomAccessIterator>
25256 void
25257 __reverse(_RandomAccessIterator __first, _RandomAccessIterator __last,
25258 random_access_iterator_tag)
25259 {
25260 if (__first == __last)
25261 return;
25262 --__last;
25263 while (__first < __last)
25264 {
25265 std::iter_swap(__first, __last);
25266 ++__first;
25267 --__last;
25268 }
25269 }
25270 template<typename _BidirectionalIterator>
25271 inline void
25272 reverse(_BidirectionalIterator __first, _BidirectionalIterator __last)
25273 {
25274
25275 ;
25276 std::__reverse(__first, __last, std::__iterator_category(__first));
25277 }
25278 template<typename _BidirectionalIterator, typename _OutputIterator>
25279 _OutputIterator
25280 reverse_copy(_BidirectionalIterator __first, _BidirectionalIterator __last,
25281 _OutputIterator __result)
25282 {
25283
25284
25285 ;
25286 while (__first != __last)
25287 {
25288 --__last;
25289 *__result = *__last;
25290 ++__result;
25291 }
25292 return __result;
25293 }
25294 template<typename _EuclideanRingElement>
25295 _EuclideanRingElement
25296 __gcd(_EuclideanRingElement __m, _EuclideanRingElement __n)
25297 {
25298 while (__n != 0)
25299 {
25300 _EuclideanRingElement __t = __m % __n;
25301 __m = __n;
25302 __n = __t;
25303 }
25304 return __m;
25305 }
25306 template<typename _ForwardIterator>
25307 void
25308 __rotate(_ForwardIterator __first,
25309 _ForwardIterator __middle,
25310 _ForwardIterator __last,
25311 forward_iterator_tag)
25312 {
25313 if (__first == __middle || __last == __middle)
25314 return;
25315 _ForwardIterator __first2 = __middle;
25316 do
25317 {
25318 std::iter_swap(__first, __first2);
25319 ++__first;
25320 ++__first2;
25321 if (__first == __middle)
25322 __middle = __first2;
25323 }
25324 while (__first2 != __last);
25325 __first2 = __middle;
25326 while (__first2 != __last)
25327 {
25328 std::iter_swap(__first, __first2);
25329 ++__first;
25330 ++__first2;
25331 if (__first == __middle)
25332 __middle = __first2;
25333 else if (__first2 == __last)
25334 __first2 = __middle;
25335 }
25336 }
25337 template<typename _BidirectionalIterator>
25338 void
25339 __rotate(_BidirectionalIterator __first,
25340 _BidirectionalIterator __middle,
25341 _BidirectionalIterator __last,
25342 bidirectional_iterator_tag)
25343 {
25344
25345 if (__first == __middle || __last == __middle)
25346 return;
25347 std::__reverse(__first, __middle, bidirectional_iterator_tag());
25348 std::__reverse(__middle, __last, bidirectional_iterator_tag());
25349 while (__first != __middle && __middle != __last)
25350 {
25351 std::iter_swap(__first, --__last);
25352 ++__first;
25353 }
25354 if (__first == __middle)
25355 std::__reverse(__middle, __last, bidirectional_iterator_tag());
25356 else
25357 std::__reverse(__first, __middle, bidirectional_iterator_tag());
25358 }
25359 template<typename _RandomAccessIterator>
25360 void
25361 __rotate(_RandomAccessIterator __first,
25362 _RandomAccessIterator __middle,
25363 _RandomAccessIterator __last,
25364 random_access_iterator_tag)
25365 {
25366
25367 if (__first == __middle || __last == __middle)
25368 return;
25369 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
25370 _Distance;
25371 typedef typename iterator_traits<_RandomAccessIterator>::value_type
25372 _ValueType;
25373 const _Distance __n = __last - __first;
25374 const _Distance __k = __middle - __first;
25375 const _Distance __l = __n - __k;
25376 if (__k == __l)
25377 {
25378 std::swap_ranges(__first, __middle, __middle);
25379 return;
25380 }
25381 const _Distance __d = std::__gcd(__n, __k);
25382 for (_Distance __i = 0; __i < __d; __i++)
25383 {
25384 _ValueType __tmp = (*__first);
25385 _RandomAccessIterator __p = __first;
25386 if (__k < __l)
25387 {
25388 for (_Distance __j = 0; __j < __l / __d; __j++)
25389 {
25390 if (__p > __first + __l)
25391 {
25392 *__p = (*(__p - __l));
25393 __p -= __l;
25394 }
25395 *__p = (*(__p + __k));
25396 __p += __k;
25397 }
25398 }
25399 else
25400 {
25401 for (_Distance __j = 0; __j < __k / __d - 1; __j ++)
25402 {
25403 if (__p < __last - __k)
25404 {
25405 *__p = (*(__p + __k));
25406 __p += __k;
25407 }
25408 *__p = (*(__p - __l));
25409 __p -= __l;
25410 }
25411 }
25412 *__p = (__tmp);
25413 ++__first;
25414 }
25415 }
25416 template<typename _ForwardIterator>
25417 inline void
25418 rotate(_ForwardIterator __first, _ForwardIterator __middle,
25419 _ForwardIterator __last)
25420 {
25421
25422 ;
25423 ;
25424 typedef typename iterator_traits<_ForwardIterator>::iterator_category
25425 _IterType;
25426 std::__rotate(__first, __middle, __last, _IterType());
25427 }
25428 template<typename _ForwardIterator, typename _OutputIterator>
25429 _OutputIterator
25430 rotate_copy(_ForwardIterator __first, _ForwardIterator __middle,
25431 _ForwardIterator __last, _OutputIterator __result)
25432 {
25433
25434
25435 ;
25436 ;
25437 return std::copy(__first, __middle,
25438 std::copy(__middle, __last, __result));
25439 }
25440 template<typename _ForwardIterator, typename _Predicate>
25441 _ForwardIterator
25442 __partition(_ForwardIterator __first, _ForwardIterator __last,
25443 _Predicate __pred, forward_iterator_tag)
25444 {
25445 if (__first == __last)
25446 return __first;
25447 while (__pred(*__first))
25448 if (++__first == __last)
25449 return __first;
25450 _ForwardIterator __next = __first;
25451 while (++__next != __last)
25452 if (__pred(*__next))
25453 {
25454 std::iter_swap(__first, __next);
25455 ++__first;
25456 }
25457 return __first;
25458 }
25459 template<typename _BidirectionalIterator, typename _Predicate>
25460 _BidirectionalIterator
25461 __partition(_BidirectionalIterator __first, _BidirectionalIterator __last,
25462 _Predicate __pred, bidirectional_iterator_tag)
25463 {
25464 while (true)
25465 {
25466 while (true)
25467 if (__first == __last)
25468 return __first;
25469 else if (__pred(*__first))
25470 ++__first;
25471 else
25472 break;
25473 --__last;
25474 while (true)
25475 if (__first == __last)
25476 return __first;
25477 else if (!bool(__pred(*__last)))
25478 --__last;
25479 else
25480 break;
25481 std::iter_swap(__first, __last);
25482 ++__first;
25483 }
25484 }
25485 template<typename _ForwardIterator, typename _Predicate, typename _Distance>
25486 _ForwardIterator
25487 __inplace_stable_partition(_ForwardIterator __first,
25488 _ForwardIterator __last,
25489 _Predicate __pred, _Distance __len)
25490 {
25491 if (__len == 1)
25492 return __pred(*__first) ? __last : __first;
25493 _ForwardIterator __middle = __first;
25494 std::advance(__middle, __len / 2);
25495 _ForwardIterator __begin = std::__inplace_stable_partition(__first,
25496 __middle,
25497 __pred,
25498 __len / 2);
25499 _ForwardIterator __end = std::__inplace_stable_partition(__middle, __last,
25500 __pred,
25501 __len
25502 - __len / 2);
25503 std::rotate(__begin, __middle, __end);
25504 std::advance(__begin, std::distance(__middle, __end));
25505 return __begin;
25506 }
25507 template<typename _ForwardIterator, typename _Pointer, typename _Predicate,
25508 typename _Distance>
25509 _ForwardIterator
25510 __stable_partition_adaptive(_ForwardIterator __first,
25511 _ForwardIterator __last,
25512 _Predicate __pred, _Distance __len,
25513 _Pointer __buffer,
25514 _Distance __buffer_size)
25515 {
25516 if (__len <= __buffer_size)
25517 {
25518 _ForwardIterator __result1 = __first;
25519 _Pointer __result2 = __buffer;
25520 for (; __first != __last; ++__first)
25521 if (__pred(*__first))
25522 {
25523 *__result1 = *__first;
25524 ++__result1;
25525 }
25526 else
25527 {
25528 *__result2 = *__first;
25529 ++__result2;
25530 }
25531 std::copy(__buffer, __result2, __result1);
25532 return __result1;
25533 }
25534 else
25535 {
25536 _ForwardIterator __middle = __first;
25537 std::advance(__middle, __len / 2);
25538 _ForwardIterator __begin =
25539 std::__stable_partition_adaptive(__first, __middle, __pred,
25540 __len / 2, __buffer,
25541 __buffer_size);
25542 _ForwardIterator __end =
25543 std::__stable_partition_adaptive(__middle, __last, __pred,
25544 __len - __len / 2,
25545 __buffer, __buffer_size);
25546 std::rotate(__begin, __middle, __end);
25547 std::advance(__begin, std::distance(__middle, __end));
25548 return __begin;
25549 }
25550 }
25551 template<typename _ForwardIterator, typename _Predicate>
25552 _ForwardIterator
25553 stable_partition(_ForwardIterator __first, _ForwardIterator __last,
25554 _Predicate __pred)
25555 {
25556
25557
25558 ;
25559 if (__first == __last)
25560 return __first;
25561 else
25562 {
25563 typedef typename iterator_traits<_ForwardIterator>::value_type
25564 _ValueType;
25565 typedef typename iterator_traits<_ForwardIterator>::difference_type
25566 _DistanceType;
25567 _Temporary_buffer<_ForwardIterator, _ValueType> __buf(__first,
25568 __last);
25569 if (__buf.size() > 0)
25570 return
25571 std::__stable_partition_adaptive(__first, __last, __pred,
25572 _DistanceType(__buf.requested_size()),
25573 __buf.begin(),
25574 _DistanceType(__buf.size()));
25575 else
25576 return
25577 std::__inplace_stable_partition(__first, __last, __pred,
25578 _DistanceType(__buf.requested_size()));
25579 }
25580 }
25581 template<typename _RandomAccessIterator>
25582 void
25583 __heap_select(_RandomAccessIterator __first,
25584 _RandomAccessIterator __middle,
25585 _RandomAccessIterator __last)
25586 {
25587 std::make_heap(__first, __middle);
25588 for (_RandomAccessIterator __i = __middle; __i < __last; ++__i)
25589 if (*__i < *__first)
25590 std::__pop_heap(__first, __middle, __i);
25591 }
25592 template<typename _RandomAccessIterator, typename _Compare>
25593 void
25594 __heap_select(_RandomAccessIterator __first,
25595 _RandomAccessIterator __middle,
25596 _RandomAccessIterator __last, _Compare __comp)
25597 {
25598 std::make_heap(__first, __middle, __comp);
25599 for (_RandomAccessIterator __i = __middle; __i < __last; ++__i)
25600 if (__comp(*__i, *__first))
25601 std::__pop_heap(__first, __middle, __i, __comp);
25602 }
25603 template<typename _InputIterator, typename _RandomAccessIterator>
25604 _RandomAccessIterator
25605 partial_sort_copy(_InputIterator __first, _InputIterator __last,
25606 _RandomAccessIterator __result_first,
25607 _RandomAccessIterator __result_last)
25608 {
25609 typedef typename iterator_traits<_InputIterator>::value_type
25610 _InputValueType;
25611 typedef typename iterator_traits<_RandomAccessIterator>::value_type
25612 _OutputValueType;
25613 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
25614 _DistanceType;
25615
25616
25617
25618
25619 ;
25620 ;
25621 if (__result_first == __result_last)
25622 return __result_last;
25623 _RandomAccessIterator __result_real_last = __result_first;
25624 while(__first != __last && __result_real_last != __result_last)
25625 {
25626 *__result_real_last = *__first;
25627 ++__result_real_last;
25628 ++__first;
25629 }
25630 std::make_heap(__result_first, __result_real_last);
25631 while (__first != __last)
25632 {
25633 if (*__first < *__result_first)
25634 std::__adjust_heap(__result_first, _DistanceType(0),
25635 _DistanceType(__result_real_last
25636 - __result_first),
25637 _InputValueType(*__first));
25638 ++__first;
25639 }
25640 std::sort_heap(__result_first, __result_real_last);
25641 return __result_real_last;
25642 }
25643 template<typename _InputIterator, typename _RandomAccessIterator, typename _Compare>
25644 _RandomAccessIterator
25645 partial_sort_copy(_InputIterator __first, _InputIterator __last,
25646 _RandomAccessIterator __result_first,
25647 _RandomAccessIterator __result_last,
25648 _Compare __comp)
25649 {
25650 typedef typename iterator_traits<_InputIterator>::value_type
25651 _InputValueType;
25652 typedef typename iterator_traits<_RandomAccessIterator>::value_type
25653 _OutputValueType;
25654 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
25655 _DistanceType;
25656
25657
25658
25659
25660
25661 ;
25662 ;
25663 if (__result_first == __result_last)
25664 return __result_last;
25665 _RandomAccessIterator __result_real_last = __result_first;
25666 while(__first != __last && __result_real_last != __result_last)
25667 {
25668 *__result_real_last = *__first;
25669 ++__result_real_last;
25670 ++__first;
25671 }
25672 std::make_heap(__result_first, __result_real_last, __comp);
25673 while (__first != __last)
25674 {
25675 if (__comp(*__first, *__result_first))
25676 std::__adjust_heap(__result_first, _DistanceType(0),
25677 _DistanceType(__result_real_last
25678 - __result_first),
25679 _InputValueType(*__first),
25680 __comp);
25681 ++__first;
25682 }
25683 std::sort_heap(__result_first, __result_real_last, __comp);
25684 return __result_real_last;
25685 }
25686 template<typename _RandomAccessIterator, typename _Tp>
25687 void
25688 __unguarded_linear_insert(_RandomAccessIterator __last, _Tp __val)
25689 {
25690 _RandomAccessIterator __next = __last;
25691 --__next;
25692 while (__val < *__next)
25693 {
25694 *__last = *__next;
25695 __last = __next;
25696 --__next;
25697 }
25698 *__last = __val;
25699 }
25700 template<typename _RandomAccessIterator, typename _Tp, typename _Compare>
25701 void
25702 __unguarded_linear_insert(_RandomAccessIterator __last, _Tp __val,
25703 _Compare __comp)
25704 {
25705 _RandomAccessIterator __next = __last;
25706 --__next;
25707 while (__comp(__val, *__next))
25708 {
25709 *__last = *__next;
25710 __last = __next;
25711 --__next;
25712 }
25713 *__last = __val;
25714 }
25715 template<typename _RandomAccessIterator>
25716 void
25717 __insertion_sort(_RandomAccessIterator __first,
25718 _RandomAccessIterator __last)
25719 {
25720 if (__first == __last)
25721 return;
25722 for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
25723 {
25724 typename iterator_traits<_RandomAccessIterator>::value_type
25725 __val = *__i;
25726 if (__val < *__first)
25727 {
25728 std::copy_backward(__first, __i, __i + 1);
25729 *__first = __val;
25730 }
25731 else
25732 std::__unguarded_linear_insert(__i, __val);
25733 }
25734 }
25735 template<typename _RandomAccessIterator, typename _Compare>
25736 void
25737 __insertion_sort(_RandomAccessIterator __first,
25738 _RandomAccessIterator __last, _Compare __comp)
25739 {
25740 if (__first == __last) return;
25741 for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
25742 {
25743 typename iterator_traits<_RandomAccessIterator>::value_type
25744 __val = *__i;
25745 if (__comp(__val, *__first))
25746 {
25747 std::copy_backward(__first, __i, __i + 1);
25748 *__first = __val;
25749 }
25750 else
25751 std::__unguarded_linear_insert(__i, __val, __comp);
25752 }
25753 }
25754 template<typename _RandomAccessIterator>
25755 inline void
25756 __unguarded_insertion_sort(_RandomAccessIterator __first,
25757 _RandomAccessIterator __last)
25758 {
25759 typedef typename iterator_traits<_RandomAccessIterator>::value_type
25760 _ValueType;
25761 for (_RandomAccessIterator __i = __first; __i != __last; ++__i)
25762 std::__unguarded_linear_insert(__i, _ValueType(*__i));
25763 }
25764 template<typename _RandomAccessIterator, typename _Compare>
25765 inline void
25766 __unguarded_insertion_sort(_RandomAccessIterator __first,
25767 _RandomAccessIterator __last, _Compare __comp)
25768 {
25769 typedef typename iterator_traits<_RandomAccessIterator>::value_type
25770 _ValueType;
25771 for (_RandomAccessIterator __i = __first; __i != __last; ++__i)
25772 std::__unguarded_linear_insert(__i, _ValueType(*__i), __comp);
25773 }
25774 enum { _S_threshold = 16 };
25775 template<typename _RandomAccessIterator>
25776 void
25777 __final_insertion_sort(_RandomAccessIterator __first,
25778 _RandomAccessIterator __last)
25779 {
25780 if (__last - __first > int(_S_threshold))
25781 {
25782 std::__insertion_sort(__first, __first + int(_S_threshold));
25783 std::__unguarded_insertion_sort(__first + int(_S_threshold), __last);
25784 }
25785 else
25786 std::__insertion_sort(__first, __last);
25787 }
25788 template<typename _RandomAccessIterator, typename _Compare>
25789 void
25790 __final_insertion_sort(_RandomAccessIterator __first,
25791 _RandomAccessIterator __last, _Compare __comp)
25792 {
25793 if (__last - __first > int(_S_threshold))
25794 {
25795 std::__insertion_sort(__first, __first + int(_S_threshold), __comp);
25796 std::__unguarded_insertion_sort(__first + int(_S_threshold), __last,
25797 __comp);
25798 }
25799 else
25800 std::__insertion_sort(__first, __last, __comp);
25801 }
25802 template<typename _RandomAccessIterator, typename _Tp>
25803 _RandomAccessIterator
25804 __unguarded_partition(_RandomAccessIterator __first,
25805 _RandomAccessIterator __last, _Tp __pivot)
25806 {
25807 while (true)
25808 {
25809 while (*__first < __pivot)
25810 ++__first;
25811 --__last;
25812 while (__pivot < *__last)
25813 --__last;
25814 if (!(__first < __last))
25815 return __first;
25816 std::iter_swap(__first, __last);
25817 ++__first;
25818 }
25819 }
25820 template<typename _RandomAccessIterator, typename _Tp, typename _Compare>
25821 _RandomAccessIterator
25822 __unguarded_partition(_RandomAccessIterator __first,
25823 _RandomAccessIterator __last,
25824 _Tp __pivot, _Compare __comp)
25825 {
25826 while (true)
25827 {
25828 while (__comp(*__first, __pivot))
25829 ++__first;
25830 --__last;
25831 while (__comp(__pivot, *__last))
25832 --__last;
25833 if (!(__first < __last))
25834 return __first;
25835 std::iter_swap(__first, __last);
25836 ++__first;
25837 }
25838 }
25839 template<typename _RandomAccessIterator, typename _Size>
25840 void
25841 __introsort_loop(_RandomAccessIterator __first,
25842 _RandomAccessIterator __last,
25843 _Size __depth_limit)
25844 {
25845 typedef typename iterator_traits<_RandomAccessIterator>::value_type
25846 _ValueType;
25847 while (__last - __first > int(_S_threshold))
25848 {
25849 if (__depth_limit == 0)
25850 {
25851 std::partial_sort(__first, __last, __last);
25852 return;
25853 }
25854 --__depth_limit;
25855 _RandomAccessIterator __cut =
25856 std::__unguarded_partition(__first, __last,
25857 _ValueType(std::__median(*__first,
25858 *(__first
25859 + (__last
25860 - __first)
25861 / 2),
25862 *(__last
25863 - 1))));
25864 std::__introsort_loop(__cut, __last, __depth_limit);
25865 __last = __cut;
25866 }
25867 }
25868 template<typename _RandomAccessIterator, typename _Size, typename _Compare>
25869 void
25870 __introsort_loop(_RandomAccessIterator __first,
25871 _RandomAccessIterator __last,
25872 _Size __depth_limit, _Compare __comp)
25873 {
25874 typedef typename iterator_traits<_RandomAccessIterator>::value_type
25875 _ValueType;
25876 while (__last - __first > int(_S_threshold))
25877 {
25878 if (__depth_limit == 0)
25879 {
25880 std::partial_sort(__first, __last, __last, __comp);
25881 return;
25882 }
25883 --__depth_limit;
25884 _RandomAccessIterator __cut =
25885 std::__unguarded_partition(__first, __last,
25886 _ValueType(std::__median(*__first,
25887 *(__first
25888 + (__last
25889 - __first)
25890 / 2),
25891 *(__last - 1),
25892 __comp)),
25893 __comp);
25894 std::__introsort_loop(__cut, __last, __depth_limit, __comp);
25895 __last = __cut;
25896 }
25897 }
25898 template<typename _Size>
25899 inline _Size
25900 __lg(_Size __n)
25901 {
25902 _Size __k;
25903 for (__k = 0; __n != 0; __n >>= 1)
25904 ++__k;
25905 return __k - 1;
25906 }
25907 inline int
25908 __lg(int __n)
25909 { return sizeof(int) * 8 - 1 - __builtin_clz(__n); }
25910 inline long
25911 __lg(long __n)
25912 { return sizeof(long) * 8 - 1 - __builtin_clzl(__n); }
25913 inline long long
25914 __lg(long long __n)
25915 { return sizeof(long long) * 8 - 1 - __builtin_clzll(__n); }
25916 template<typename _RandomAccessIterator, typename _Size>
25917 void
25918 __introselect(_RandomAccessIterator __first, _RandomAccessIterator __nth,
25919 _RandomAccessIterator __last, _Size __depth_limit)
25920 {
25921 typedef typename iterator_traits<_RandomAccessIterator>::value_type
25922 _ValueType;
25923 while (__last - __first > 3)
25924 {
25925 if (__depth_limit == 0)
25926 {
25927 std::__heap_select(__first, __nth + 1, __last);
25928 std::iter_swap(__first, __nth);
25929 return;
25930 }
25931 --__depth_limit;
25932 _RandomAccessIterator __cut =
25933 std::__unguarded_partition(__first, __last,
25934 _ValueType(std::__median(*__first,
25935 *(__first
25936 + (__last
25937 - __first)
25938 / 2),
25939 *(__last
25940 - 1))));
25941 if (__cut <= __nth)
25942 __first = __cut;
25943 else
25944 __last = __cut;
25945 }
25946 std::__insertion_sort(__first, __last);
25947 }
25948 template<typename _RandomAccessIterator, typename _Size, typename _Compare>
25949 void
25950 __introselect(_RandomAccessIterator __first, _RandomAccessIterator __nth,
25951 _RandomAccessIterator __last, _Size __depth_limit,
25952 _Compare __comp)
25953 {
25954 typedef typename iterator_traits<_RandomAccessIterator>::value_type
25955 _ValueType;
25956 while (__last - __first > 3)
25957 {
25958 if (__depth_limit == 0)
25959 {
25960 std::__heap_select(__first, __nth + 1, __last, __comp);
25961 std::iter_swap(__first, __nth);
25962 return;
25963 }
25964 --__depth_limit;
25965 _RandomAccessIterator __cut =
25966 std::__unguarded_partition(__first, __last,
25967 _ValueType(std::__median(*__first,
25968 *(__first
25969 + (__last
25970 - __first)
25971 / 2),
25972 *(__last - 1),
25973 __comp)),
25974 __comp);
25975 if (__cut <= __nth)
25976 __first = __cut;
25977 else
25978 __last = __cut;
25979 }
25980 std::__insertion_sort(__first, __last, __comp);
25981 }
25982 template<typename _ForwardIterator, typename _Tp>
25983 _ForwardIterator
25984 lower_bound(_ForwardIterator __first, _ForwardIterator __last,
25985 const _Tp& __val)
25986 {
25987 typedef typename iterator_traits<_ForwardIterator>::value_type
25988 _ValueType;
25989 typedef typename iterator_traits<_ForwardIterator>::difference_type
25990 _DistanceType;
25991
25992
25993 ;
25994 _DistanceType __len = std::distance(__first, __last);
25995 _DistanceType __half;
25996 _ForwardIterator __middle;
25997 while (__len > 0)
25998 {
25999 __half = __len >> 1;
26000 __middle = __first;
26001 std::advance(__middle, __half);
26002 if (*__middle < __val)
26003 {
26004 __first = __middle;
26005 ++__first;
26006 __len = __len - __half - 1;
26007 }
26008 else
26009 __len = __half;
26010 }
26011 return __first;
26012 }
26013 template<typename _ForwardIterator, typename _Tp, typename _Compare>
26014 _ForwardIterator
26015 lower_bound(_ForwardIterator __first, _ForwardIterator __last,
26016 const _Tp& __val, _Compare __comp)
26017 {
26018 typedef typename iterator_traits<_ForwardIterator>::value_type
26019 _ValueType;
26020 typedef typename iterator_traits<_ForwardIterator>::difference_type
26021 _DistanceType;
26022
26023
26024 ;
26025 _DistanceType __len = std::distance(__first, __last);
26026 _DistanceType __half;
26027 _ForwardIterator __middle;
26028 while (__len > 0)
26029 {
26030 __half = __len >> 1;
26031 __middle = __first;
26032 std::advance(__middle, __half);
26033 if (__comp(*__middle, __val))
26034 {
26035 __first = __middle;
26036 ++__first;
26037 __len = __len - __half - 1;
26038 }
26039 else
26040 __len = __half;
26041 }
26042 return __first;
26043 }
26044 template<typename _ForwardIterator, typename _Tp>
26045 _ForwardIterator
26046 upper_bound(_ForwardIterator __first, _ForwardIterator __last,
26047 const _Tp& __val)
26048 {
26049 typedef typename iterator_traits<_ForwardIterator>::value_type
26050 _ValueType;
26051 typedef typename iterator_traits<_ForwardIterator>::difference_type
26052 _DistanceType;
26053
26054
26055 ;
26056 _DistanceType __len = std::distance(__first, __last);
26057 _DistanceType __half;
26058 _ForwardIterator __middle;
26059 while (__len > 0)
26060 {
26061 __half = __len >> 1;
26062 __middle = __first;
26063 std::advance(__middle, __half);
26064 if (__val < *__middle)
26065 __len = __half;
26066 else
26067 {
26068 __first = __middle;
26069 ++__first;
26070 __len = __len - __half - 1;
26071 }
26072 }
26073 return __first;
26074 }
26075 template<typename _ForwardIterator, typename _Tp, typename _Compare>
26076 _ForwardIterator
26077 upper_bound(_ForwardIterator __first, _ForwardIterator __last,
26078 const _Tp& __val, _Compare __comp)
26079 {
26080 typedef typename iterator_traits<_ForwardIterator>::value_type
26081 _ValueType;
26082 typedef typename iterator_traits<_ForwardIterator>::difference_type
26083 _DistanceType;
26084
26085
26086 ;
26087 _DistanceType __len = std::distance(__first, __last);
26088 _DistanceType __half;
26089 _ForwardIterator __middle;
26090 while (__len > 0)
26091 {
26092 __half = __len >> 1;
26093 __middle = __first;
26094 std::advance(__middle, __half);
26095 if (__comp(__val, *__middle))
26096 __len = __half;
26097 else
26098 {
26099 __first = __middle;
26100 ++__first;
26101 __len = __len - __half - 1;
26102 }
26103 }
26104 return __first;
26105 }
26106 template<typename _ForwardIterator, typename _Tp>
26107 pair<_ForwardIterator, _ForwardIterator>
26108 equal_range(_ForwardIterator __first, _ForwardIterator __last,
26109 const _Tp& __val)
26110 {
26111 typedef typename iterator_traits<_ForwardIterator>::value_type
26112 _ValueType;
26113 typedef typename iterator_traits<_ForwardIterator>::difference_type
26114 _DistanceType;
26115
26116
26117
26118 ;
26119 ;
26120 _DistanceType __len = std::distance(__first, __last);
26121 _DistanceType __half;
26122 _ForwardIterator __middle, __left, __right;
26123 while (__len > 0)
26124 {
26125 __half = __len >> 1;
26126 __middle = __first;
26127 std::advance(__middle, __half);
26128 if (*__middle < __val)
26129 {
26130 __first = __middle;
26131 ++__first;
26132 __len = __len - __half - 1;
26133 }
26134 else if (__val < *__middle)
26135 __len = __half;
26136 else
26137 {
26138 __left = std::lower_bound(__first, __middle, __val);
26139 std::advance(__first, __len);
26140 __right = std::upper_bound(++__middle, __first, __val);
26141 return pair<_ForwardIterator, _ForwardIterator>(__left, __right);
26142 }
26143 }
26144 return pair<_ForwardIterator, _ForwardIterator>(__first, __first);
26145 }
26146 template<typename _ForwardIterator, typename _Tp, typename _Compare>
26147 pair<_ForwardIterator, _ForwardIterator>
26148 equal_range(_ForwardIterator __first, _ForwardIterator __last,
26149 const _Tp& __val,
26150 _Compare __comp)
26151 {
26152 typedef typename iterator_traits<_ForwardIterator>::value_type
26153 _ValueType;
26154 typedef typename iterator_traits<_ForwardIterator>::difference_type
26155 _DistanceType;
26156
26157
26158
26159 ;
26160 ;
26161 _DistanceType __len = std::distance(__first, __last);
26162 _DistanceType __half;
26163 _ForwardIterator __middle, __left, __right;
26164 while (__len > 0)
26165 {
26166 __half = __len >> 1;
26167 __middle = __first;
26168 std::advance(__middle, __half);
26169 if (__comp(*__middle, __val))
26170 {
26171 __first = __middle;
26172 ++__first;
26173 __len = __len - __half - 1;
26174 }
26175 else if (__comp(__val, *__middle))
26176 __len = __half;
26177 else
26178 {
26179 __left = std::lower_bound(__first, __middle, __val, __comp);
26180 std::advance(__first, __len);
26181 __right = std::upper_bound(++__middle, __first, __val, __comp);
26182 return pair<_ForwardIterator, _ForwardIterator>(__left, __right);
26183 }
26184 }
26185 return pair<_ForwardIterator, _ForwardIterator>(__first, __first);
26186 }
26187 template<typename _ForwardIterator, typename _Tp>
26188 bool
26189 binary_search(_ForwardIterator __first, _ForwardIterator __last,
26190 const _Tp& __val)
26191 {
26192 typedef typename iterator_traits<_ForwardIterator>::value_type
26193 _ValueType;
26194
26195
26196 ;
26197 ;
26198 _ForwardIterator __i = std::lower_bound(__first, __last, __val);
26199 return __i != __last && !(__val < *__i);
26200 }
26201 template<typename _ForwardIterator, typename _Tp, typename _Compare>
26202 bool
26203 binary_search(_ForwardIterator __first, _ForwardIterator __last,
26204 const _Tp& __val, _Compare __comp)
26205 {
26206 typedef typename iterator_traits<_ForwardIterator>::value_type
26207 _ValueType;
26208
26209
26210 ;
26211 ;
26212 _ForwardIterator __i = std::lower_bound(__first, __last, __val, __comp);
26213 return __i != __last && !bool(__comp(__val, *__i));
26214 }
26215 template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
26216 typename _BidirectionalIterator3>
26217 _BidirectionalIterator3
26218 __merge_backward(_BidirectionalIterator1 __first1,
26219 _BidirectionalIterator1 __last1,
26220 _BidirectionalIterator2 __first2,
26221 _BidirectionalIterator2 __last2,
26222 _BidirectionalIterator3 __result)
26223 {
26224 if (__first1 == __last1)
26225 return std::copy_backward(__first2, __last2, __result);
26226 if (__first2 == __last2)
26227 return std::copy_backward(__first1, __last1, __result);
26228 --__last1;
26229 --__last2;
26230 while (true)
26231 {
26232 if (*__last2 < *__last1)
26233 {
26234 *--__result = *__last1;
26235 if (__first1 == __last1)
26236 return std::copy_backward(__first2, ++__last2, __result);
26237 --__last1;
26238 }
26239 else
26240 {
26241 *--__result = *__last2;
26242 if (__first2 == __last2)
26243 return std::copy_backward(__first1, ++__last1, __result);
26244 --__last2;
26245 }
26246 }
26247 }
26248 template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
26249 typename _BidirectionalIterator3, typename _Compare>
26250 _BidirectionalIterator3
26251 __merge_backward(_BidirectionalIterator1 __first1,
26252 _BidirectionalIterator1 __last1,
26253 _BidirectionalIterator2 __first2,
26254 _BidirectionalIterator2 __last2,
26255 _BidirectionalIterator3 __result,
26256 _Compare __comp)
26257 {
26258 if (__first1 == __last1)
26259 return std::copy_backward(__first2, __last2, __result);
26260 if (__first2 == __last2)
26261 return std::copy_backward(__first1, __last1, __result);
26262 --__last1;
26263 --__last2;
26264 while (true)
26265 {
26266 if (__comp(*__last2, *__last1))
26267 {
26268 *--__result = *__last1;
26269 if (__first1 == __last1)
26270 return std::copy_backward(__first2, ++__last2, __result);
26271 --__last1;
26272 }
26273 else
26274 {
26275 *--__result = *__last2;
26276 if (__first2 == __last2)
26277 return std::copy_backward(__first1, ++__last1, __result);
26278 --__last2;
26279 }
26280 }
26281 }
26282 template<typename _BidirectionalIterator1, typename _BidirectionalIterator2,
26283 typename _Distance>
26284 _BidirectionalIterator1
26285 __rotate_adaptive(_BidirectionalIterator1 __first,
26286 _BidirectionalIterator1 __middle,
26287 _BidirectionalIterator1 __last,
26288 _Distance __len1, _Distance __len2,
26289 _BidirectionalIterator2 __buffer,
26290 _Distance __buffer_size)
26291 {
26292 _BidirectionalIterator2 __buffer_end;
26293 if (__len1 > __len2 && __len2 <= __buffer_size)
26294 {
26295 __buffer_end = std::copy(__middle, __last, __buffer);
26296 std::copy_backward(__first, __middle, __last);
26297 return std::copy(__buffer, __buffer_end, __first);
26298 }
26299 else if (__len1 <= __buffer_size)
26300 {
26301 __buffer_end = std::copy(__first, __middle, __buffer);
26302 std::copy(__middle, __last, __first);
26303 return std::copy_backward(__buffer, __buffer_end, __last);
26304 }
26305 else
26306 {
26307 std::rotate(__first, __middle, __last);
26308 std::advance(__first, std::distance(__middle, __last));
26309 return __first;
26310 }
26311 }
26312 template<typename _BidirectionalIterator, typename _Distance,
26313 typename _Pointer>
26314 void
26315 __merge_adaptive(_BidirectionalIterator __first,
26316 _BidirectionalIterator __middle,
26317 _BidirectionalIterator __last,
26318 _Distance __len1, _Distance __len2,
26319 _Pointer __buffer, _Distance __buffer_size)
26320 {
26321 if (__len1 <= __len2 && __len1 <= __buffer_size)
26322 {
26323 _Pointer __buffer_end = std::copy(__first, __middle, __buffer);
26324 std::merge(__buffer, __buffer_end, __middle, __last,
26325 __first);
26326 }
26327 else if (__len2 <= __buffer_size)
26328 {
26329 _Pointer __buffer_end = std::copy(__middle, __last, __buffer);
26330 std::__merge_backward(__first, __middle, __buffer,
26331 __buffer_end, __last);
26332 }
26333 else
26334 {
26335 _BidirectionalIterator __first_cut = __first;
26336 _BidirectionalIterator __second_cut = __middle;
26337 _Distance __len11 = 0;
26338 _Distance __len22 = 0;
26339 if (__len1 > __len2)
26340 {
26341 __len11 = __len1 / 2;
26342 std::advance(__first_cut, __len11);
26343 __second_cut = std::lower_bound(__middle, __last,
26344 *__first_cut);
26345 __len22 = std::distance(__middle, __second_cut);
26346 }
26347 else
26348 {
26349 __len22 = __len2 / 2;
26350 std::advance(__second_cut, __len22);
26351 __first_cut = std::upper_bound(__first, __middle,
26352 *__second_cut);
26353 __len11 = std::distance(__first, __first_cut);
26354 }
26355 _BidirectionalIterator __new_middle =
26356 std::__rotate_adaptive(__first_cut, __middle, __second_cut,
26357 __len1 - __len11, __len22, __buffer,
26358 __buffer_size);
26359 std::__merge_adaptive(__first, __first_cut, __new_middle, __len11,
26360 __len22, __buffer, __buffer_size);
26361 std::__merge_adaptive(__new_middle, __second_cut, __last,
26362 __len1 - __len11,
26363 __len2 - __len22, __buffer, __buffer_size);
26364 }
26365 }
26366 template<typename _BidirectionalIterator, typename _Distance,
26367 typename _Pointer, typename _Compare>
26368 void
26369 __merge_adaptive(_BidirectionalIterator __first,
26370 _BidirectionalIterator __middle,
26371 _BidirectionalIterator __last,
26372 _Distance __len1, _Distance __len2,
26373 _Pointer __buffer, _Distance __buffer_size,
26374 _Compare __comp)
26375 {
26376 if (__len1 <= __len2 && __len1 <= __buffer_size)
26377 {
26378 _Pointer __buffer_end = std::copy(__first, __middle, __buffer);
26379 std::merge(__buffer, __buffer_end, __middle, __last,
26380 __first, __comp);
26381 }
26382 else if (__len2 <= __buffer_size)
26383 {
26384 _Pointer __buffer_end = std::copy(__middle, __last, __buffer);
26385 std::__merge_backward(__first, __middle, __buffer, __buffer_end,
26386 __last, __comp);
26387 }
26388 else
26389 {
26390 _BidirectionalIterator __first_cut = __first;
26391 _BidirectionalIterator __second_cut = __middle;
26392 _Distance __len11 = 0;
26393 _Distance __len22 = 0;
26394 if (__len1 > __len2)
26395 {
26396 __len11 = __len1 / 2;
26397 std::advance(__first_cut, __len11);
26398 __second_cut = std::lower_bound(__middle, __last, *__first_cut,
26399 __comp);
26400 __len22 = std::distance(__middle, __second_cut);
26401 }
26402 else
26403 {
26404 __len22 = __len2 / 2;
26405 std::advance(__second_cut, __len22);
26406 __first_cut = std::upper_bound(__first, __middle, *__second_cut,
26407 __comp);
26408 __len11 = std::distance(__first, __first_cut);
26409 }
26410 _BidirectionalIterator __new_middle =
26411 std::__rotate_adaptive(__first_cut, __middle, __second_cut,
26412 __len1 - __len11, __len22, __buffer,
26413 __buffer_size);
26414 std::__merge_adaptive(__first, __first_cut, __new_middle, __len11,
26415 __len22, __buffer, __buffer_size, __comp);
26416 std::__merge_adaptive(__new_middle, __second_cut, __last,
26417 __len1 - __len11,
26418 __len2 - __len22, __buffer,
26419 __buffer_size, __comp);
26420 }
26421 }
26422 template<typename _BidirectionalIterator, typename _Distance>
26423 void
26424 __merge_without_buffer(_BidirectionalIterator __first,
26425 _BidirectionalIterator __middle,
26426 _BidirectionalIterator __last,
26427 _Distance __len1, _Distance __len2)
26428 {
26429 if (__len1 == 0 || __len2 == 0)
26430 return;
26431 if (__len1 + __len2 == 2)
26432 {
26433 if (*__middle < *__first)
26434 std::iter_swap(__first, __middle);
26435 return;
26436 }
26437 _BidirectionalIterator __first_cut = __first;
26438 _BidirectionalIterator __second_cut = __middle;
26439 _Distance __len11 = 0;
26440 _Distance __len22 = 0;
26441 if (__len1 > __len2)
26442 {
26443 __len11 = __len1 / 2;
26444 std::advance(__first_cut, __len11);
26445 __second_cut = std::lower_bound(__middle, __last, *__first_cut);
26446 __len22 = std::distance(__middle, __second_cut);
26447 }
26448 else
26449 {
26450 __len22 = __len2 / 2;
26451 std::advance(__second_cut, __len22);
26452 __first_cut = std::upper_bound(__first, __middle, *__second_cut);
26453 __len11 = std::distance(__first, __first_cut);
26454 }
26455 std::rotate(__first_cut, __middle, __second_cut);
26456 _BidirectionalIterator __new_middle = __first_cut;
26457 std::advance(__new_middle, std::distance(__middle, __second_cut));
26458 std::__merge_without_buffer(__first, __first_cut, __new_middle,
26459 __len11, __len22);
26460 std::__merge_without_buffer(__new_middle, __second_cut, __last,
26461 __len1 - __len11, __len2 - __len22);
26462 }
26463 template<typename _BidirectionalIterator, typename _Distance,
26464 typename _Compare>
26465 void
26466 __merge_without_buffer(_BidirectionalIterator __first,
26467 _BidirectionalIterator __middle,
26468 _BidirectionalIterator __last,
26469 _Distance __len1, _Distance __len2,
26470 _Compare __comp)
26471 {
26472 if (__len1 == 0 || __len2 == 0)
26473 return;
26474 if (__len1 + __len2 == 2)
26475 {
26476 if (__comp(*__middle, *__first))
26477 std::iter_swap(__first, __middle);
26478 return;
26479 }
26480 _BidirectionalIterator __first_cut = __first;
26481 _BidirectionalIterator __second_cut = __middle;
26482 _Distance __len11 = 0;
26483 _Distance __len22 = 0;
26484 if (__len1 > __len2)
26485 {
26486 __len11 = __len1 / 2;
26487 std::advance(__first_cut, __len11);
26488 __second_cut = std::lower_bound(__middle, __last, *__first_cut,
26489 __comp);
26490 __len22 = std::distance(__middle, __second_cut);
26491 }
26492 else
26493 {
26494 __len22 = __len2 / 2;
26495 std::advance(__second_cut, __len22);
26496 __first_cut = std::upper_bound(__first, __middle, *__second_cut,
26497 __comp);
26498 __len11 = std::distance(__first, __first_cut);
26499 }
26500 std::rotate(__first_cut, __middle, __second_cut);
26501 _BidirectionalIterator __new_middle = __first_cut;
26502 std::advance(__new_middle, std::distance(__middle, __second_cut));
26503 std::__merge_without_buffer(__first, __first_cut, __new_middle,
26504 __len11, __len22, __comp);
26505 std::__merge_without_buffer(__new_middle, __second_cut, __last,
26506 __len1 - __len11, __len2 - __len22, __comp);
26507 }
26508 template<typename _BidirectionalIterator>
26509 void
26510 inplace_merge(_BidirectionalIterator __first,
26511 _BidirectionalIterator __middle,
26512 _BidirectionalIterator __last)
26513 {
26514 typedef typename iterator_traits<_BidirectionalIterator>::value_type
26515 _ValueType;
26516 typedef typename iterator_traits<_BidirectionalIterator>::difference_type
26517 _DistanceType;
26518
26519
26520 ;
26521 ;
26522 if (__first == __middle || __middle == __last)
26523 return;
26524 _DistanceType __len1 = std::distance(__first, __middle);
26525 _DistanceType __len2 = std::distance(__middle, __last);
26526 _Temporary_buffer<_BidirectionalIterator, _ValueType> __buf(__first,
26527 __last);
26528 if (__buf.begin() == 0)
26529 std::__merge_without_buffer(__first, __middle, __last, __len1, __len2);
26530 else
26531 std::__merge_adaptive(__first, __middle, __last, __len1, __len2,
26532 __buf.begin(), _DistanceType(__buf.size()));
26533 }
26534 template<typename _BidirectionalIterator, typename _Compare>
26535 void
26536 inplace_merge(_BidirectionalIterator __first,
26537 _BidirectionalIterator __middle,
26538 _BidirectionalIterator __last,
26539 _Compare __comp)
26540 {
26541 typedef typename iterator_traits<_BidirectionalIterator>::value_type
26542 _ValueType;
26543 typedef typename iterator_traits<_BidirectionalIterator>::difference_type
26544 _DistanceType;
26545
26546
26547 ;
26548 ;
26549 if (__first == __middle || __middle == __last)
26550 return;
26551 const _DistanceType __len1 = std::distance(__first, __middle);
26552 const _DistanceType __len2 = std::distance(__middle, __last);
26553 _Temporary_buffer<_BidirectionalIterator, _ValueType> __buf(__first,
26554 __last);
26555 if (__buf.begin() == 0)
26556 std::__merge_without_buffer(__first, __middle, __last, __len1,
26557 __len2, __comp);
26558 else
26559 std::__merge_adaptive(__first, __middle, __last, __len1, __len2,
26560 __buf.begin(), _DistanceType(__buf.size()),
26561 __comp);
26562 }
26563 template<typename _RandomAccessIterator1, typename _RandomAccessIterator2,
26564 typename _Distance>
26565 void
26566 __merge_sort_loop(_RandomAccessIterator1 __first,
26567 _RandomAccessIterator1 __last,
26568 _RandomAccessIterator2 __result,
26569 _Distance __step_size)
26570 {
26571 const _Distance __two_step = 2 * __step_size;
26572 while (__last - __first >= __two_step)
26573 {
26574 __result = std::merge(__first, __first + __step_size,
26575 __first + __step_size,
26576 __first + __two_step,
26577 __result);
26578 __first += __two_step;
26579 }
26580 __step_size = std::min(_Distance(__last - __first), __step_size);
26581 std::merge(__first, __first + __step_size,
26582 __first + __step_size, __last,
26583 __result);
26584 }
26585 template<typename _RandomAccessIterator1, typename _RandomAccessIterator2,
26586 typename _Distance, typename _Compare>
26587 void
26588 __merge_sort_loop(_RandomAccessIterator1 __first,
26589 _RandomAccessIterator1 __last,
26590 _RandomAccessIterator2 __result, _Distance __step_size,
26591 _Compare __comp)
26592 {
26593 const _Distance __two_step = 2 * __step_size;
26594 while (__last - __first >= __two_step)
26595 {
26596 __result = std::merge(__first, __first + __step_size,
26597 __first + __step_size, __first + __two_step,
26598 __result,
26599 __comp);
26600 __first += __two_step;
26601 }
26602 __step_size = std::min(_Distance(__last - __first), __step_size);
26603 std::merge(__first, __first + __step_size,
26604 __first + __step_size, __last, __result, __comp);
26605 }
26606 template<typename _RandomAccessIterator, typename _Distance>
26607 void
26608 __chunk_insertion_sort(_RandomAccessIterator __first,
26609 _RandomAccessIterator __last,
26610 _Distance __chunk_size)
26611 {
26612 while (__last - __first >= __chunk_size)
26613 {
26614 std::__insertion_sort(__first, __first + __chunk_size);
26615 __first += __chunk_size;
26616 }
26617 std::__insertion_sort(__first, __last);
26618 }
26619 template<typename _RandomAccessIterator, typename _Distance,
26620 typename _Compare>
26621 void
26622 __chunk_insertion_sort(_RandomAccessIterator __first,
26623 _RandomAccessIterator __last,
26624 _Distance __chunk_size, _Compare __comp)
26625 {
26626 while (__last - __first >= __chunk_size)
26627 {
26628 std::__insertion_sort(__first, __first + __chunk_size, __comp);
26629 __first += __chunk_size;
26630 }
26631 std::__insertion_sort(__first, __last, __comp);
26632 }
26633 enum { _S_chunk_size = 7 };
26634 template<typename _RandomAccessIterator, typename _Pointer>
26635 void
26636 __merge_sort_with_buffer(_RandomAccessIterator __first,
26637 _RandomAccessIterator __last,
26638 _Pointer __buffer)
26639 {
26640 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
26641 _Distance;
26642 const _Distance __len = __last - __first;
26643 const _Pointer __buffer_last = __buffer + __len;
26644 _Distance __step_size = _S_chunk_size;
26645 std::__chunk_insertion_sort(__first, __last, __step_size);
26646 while (__step_size < __len)
26647 {
26648 std::__merge_sort_loop(__first, __last, __buffer, __step_size);
26649 __step_size *= 2;
26650 std::__merge_sort_loop(__buffer, __buffer_last, __first, __step_size);
26651 __step_size *= 2;
26652 }
26653 }
26654 template<typename _RandomAccessIterator, typename _Pointer, typename _Compare>
26655 void
26656 __merge_sort_with_buffer(_RandomAccessIterator __first,
26657 _RandomAccessIterator __last,
26658 _Pointer __buffer, _Compare __comp)
26659 {
26660 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
26661 _Distance;
26662 const _Distance __len = __last - __first;
26663 const _Pointer __buffer_last = __buffer + __len;
26664 _Distance __step_size = _S_chunk_size;
26665 std::__chunk_insertion_sort(__first, __last, __step_size, __comp);
26666 while (__step_size < __len)
26667 {
26668 std::__merge_sort_loop(__first, __last, __buffer,
26669 __step_size, __comp);
26670 __step_size *= 2;
26671 std::__merge_sort_loop(__buffer, __buffer_last, __first,
26672 __step_size, __comp);
26673 __step_size *= 2;
26674 }
26675 }
26676 template<typename _RandomAccessIterator, typename _Pointer,
26677 typename _Distance>
26678 void
26679 __stable_sort_adaptive(_RandomAccessIterator __first,
26680 _RandomAccessIterator __last,
26681 _Pointer __buffer, _Distance __buffer_size)
26682 {
26683 const _Distance __len = (__last - __first + 1) / 2;
26684 const _RandomAccessIterator __middle = __first + __len;
26685 if (__len > __buffer_size)
26686 {
26687 std::__stable_sort_adaptive(__first, __middle,
26688 __buffer, __buffer_size);
26689 std::__stable_sort_adaptive(__middle, __last,
26690 __buffer, __buffer_size);
26691 }
26692 else
26693 {
26694 std::__merge_sort_with_buffer(__first, __middle, __buffer);
26695 std::__merge_sort_with_buffer(__middle, __last, __buffer);
26696 }
26697 std::__merge_adaptive(__first, __middle, __last,
26698 _Distance(__middle - __first),
26699 _Distance(__last - __middle),
26700 __buffer, __buffer_size);
26701 }
26702 template<typename _RandomAccessIterator, typename _Pointer,
26703 typename _Distance, typename _Compare>
26704 void
26705 __stable_sort_adaptive(_RandomAccessIterator __first,
26706 _RandomAccessIterator __last,
26707 _Pointer __buffer, _Distance __buffer_size,
26708 _Compare __comp)
26709 {
26710 const _Distance __len = (__last - __first + 1) / 2;
26711 const _RandomAccessIterator __middle = __first + __len;
26712 if (__len > __buffer_size)
26713 {
26714 std::__stable_sort_adaptive(__first, __middle, __buffer,
26715 __buffer_size, __comp);
26716 std::__stable_sort_adaptive(__middle, __last, __buffer,
26717 __buffer_size, __comp);
26718 }
26719 else
26720 {
26721 std::__merge_sort_with_buffer(__first, __middle, __buffer, __comp);
26722 std::__merge_sort_with_buffer(__middle, __last, __buffer, __comp);
26723 }
26724 std::__merge_adaptive(__first, __middle, __last,
26725 _Distance(__middle - __first),
26726 _Distance(__last - __middle),
26727 __buffer, __buffer_size,
26728 __comp);
26729 }
26730 template<typename _RandomAccessIterator>
26731 void
26732 __inplace_stable_sort(_RandomAccessIterator __first,
26733 _RandomAccessIterator __last)
26734 {
26735 if (__last - __first < 15)
26736 {
26737 std::__insertion_sort(__first, __last);
26738 return;
26739 }
26740 _RandomAccessIterator __middle = __first + (__last - __first) / 2;
26741 std::__inplace_stable_sort(__first, __middle);
26742 std::__inplace_stable_sort(__middle, __last);
26743 std::__merge_without_buffer(__first, __middle, __last,
26744 __middle - __first,
26745 __last - __middle);
26746 }
26747 template<typename _RandomAccessIterator, typename _Compare>
26748 void
26749 __inplace_stable_sort(_RandomAccessIterator __first,
26750 _RandomAccessIterator __last, _Compare __comp)
26751 {
26752 if (__last - __first < 15)
26753 {
26754 std::__insertion_sort(__first, __last, __comp);
26755 return;
26756 }
26757 _RandomAccessIterator __middle = __first + (__last - __first) / 2;
26758 std::__inplace_stable_sort(__first, __middle, __comp);
26759 std::__inplace_stable_sort(__middle, __last, __comp);
26760 std::__merge_without_buffer(__first, __middle, __last,
26761 __middle - __first,
26762 __last - __middle,
26763 __comp);
26764 }
26765 template<typename _InputIterator1, typename _InputIterator2>
26766 bool
26767 includes(_InputIterator1 __first1, _InputIterator1 __last1,
26768 _InputIterator2 __first2, _InputIterator2 __last2)
26769 {
26770 typedef typename iterator_traits<_InputIterator1>::value_type
26771 _ValueType1;
26772 typedef typename iterator_traits<_InputIterator2>::value_type
26773 _ValueType2;
26774
26775
26776
26777
26778 ;
26779 ;
26780 while (__first1 != __last1 && __first2 != __last2)
26781 if (*__first2 < *__first1)
26782 return false;
26783 else if(*__first1 < *__first2)
26784 ++__first1;
26785 else
26786 ++__first1, ++__first2;
26787 return __first2 == __last2;
26788 }
26789 template<typename _InputIterator1, typename _InputIterator2,
26790 typename _Compare>
26791 bool
26792 includes(_InputIterator1 __first1, _InputIterator1 __last1,
26793 _InputIterator2 __first2, _InputIterator2 __last2,
26794 _Compare __comp)
26795 {
26796 typedef typename iterator_traits<_InputIterator1>::value_type
26797 _ValueType1;
26798 typedef typename iterator_traits<_InputIterator2>::value_type
26799 _ValueType2;
26800
26801
26802
26803
26804 ;
26805 ;
26806 while (__first1 != __last1 && __first2 != __last2)
26807 if (__comp(*__first2, *__first1))
26808 return false;
26809 else if(__comp(*__first1, *__first2))
26810 ++__first1;
26811 else
26812 ++__first1, ++__first2;
26813 return __first2 == __last2;
26814 }
26815 template<typename _BidirectionalIterator>
26816 bool
26817 next_permutation(_BidirectionalIterator __first,
26818 _BidirectionalIterator __last)
26819 {
26820
26821
26822 ;
26823 if (__first == __last)
26824 return false;
26825 _BidirectionalIterator __i = __first;
26826 ++__i;
26827 if (__i == __last)
26828 return false;
26829 __i = __last;
26830 --__i;
26831 for(;;)
26832 {
26833 _BidirectionalIterator __ii = __i;
26834 --__i;
26835 if (*__i < *__ii)
26836 {
26837 _BidirectionalIterator __j = __last;
26838 while (!(*__i < *--__j))
26839 {}
26840 std::iter_swap(__i, __j);
26841 std::reverse(__ii, __last);
26842 return true;
26843 }
26844 if (__i == __first)
26845 {
26846 std::reverse(__first, __last);
26847 return false;
26848 }
26849 }
26850 }
26851 template<typename _BidirectionalIterator, typename _Compare>
26852 bool
26853 next_permutation(_BidirectionalIterator __first,
26854 _BidirectionalIterator __last, _Compare __comp)
26855 {
26856
26857
26858 ;
26859 if (__first == __last)
26860 return false;
26861 _BidirectionalIterator __i = __first;
26862 ++__i;
26863 if (__i == __last)
26864 return false;
26865 __i = __last;
26866 --__i;
26867 for(;;)
26868 {
26869 _BidirectionalIterator __ii = __i;
26870 --__i;
26871 if (__comp(*__i, *__ii))
26872 {
26873 _BidirectionalIterator __j = __last;
26874 while (!bool(__comp(*__i, *--__j)))
26875 {}
26876 std::iter_swap(__i, __j);
26877 std::reverse(__ii, __last);
26878 return true;
26879 }
26880 if (__i == __first)
26881 {
26882 std::reverse(__first, __last);
26883 return false;
26884 }
26885 }
26886 }
26887 template<typename _BidirectionalIterator>
26888 bool
26889 prev_permutation(_BidirectionalIterator __first,
26890 _BidirectionalIterator __last)
26891 {
26892
26893
26894 ;
26895 if (__first == __last)
26896 return false;
26897 _BidirectionalIterator __i = __first;
26898 ++__i;
26899 if (__i == __last)
26900 return false;
26901 __i = __last;
26902 --__i;
26903 for(;;)
26904 {
26905 _BidirectionalIterator __ii = __i;
26906 --__i;
26907 if (*__ii < *__i)
26908 {
26909 _BidirectionalIterator __j = __last;
26910 while (!(*--__j < *__i))
26911 {}
26912 std::iter_swap(__i, __j);
26913 std::reverse(__ii, __last);
26914 return true;
26915 }
26916 if (__i == __first)
26917 {
26918 std::reverse(__first, __last);
26919 return false;
26920 }
26921 }
26922 }
26923 template<typename _BidirectionalIterator, typename _Compare>
26924 bool
26925 prev_permutation(_BidirectionalIterator __first,
26926 _BidirectionalIterator __last, _Compare __comp)
26927 {
26928
26929
26930 ;
26931 if (__first == __last)
26932 return false;
26933 _BidirectionalIterator __i = __first;
26934 ++__i;
26935 if (__i == __last)
26936 return false;
26937 __i = __last;
26938 --__i;
26939 for(;;)
26940 {
26941 _BidirectionalIterator __ii = __i;
26942 --__i;
26943 if (__comp(*__ii, *__i))
26944 {
26945 _BidirectionalIterator __j = __last;
26946 while (!bool(__comp(*--__j, *__i)))
26947 {}
26948 std::iter_swap(__i, __j);
26949 std::reverse(__ii, __last);
26950 return true;
26951 }
26952 if (__i == __first)
26953 {
26954 std::reverse(__first, __last);
26955 return false;
26956 }
26957 }
26958 }
26959 template<typename _InputIterator, typename _OutputIterator, typename _Tp>
26960 _OutputIterator
26961 replace_copy(_InputIterator __first, _InputIterator __last,
26962 _OutputIterator __result,
26963 const _Tp& __old_value, const _Tp& __new_value)
26964 {
26965
26966
26967
26968 ;
26969 for (; __first != __last; ++__first, ++__result)
26970 if (*__first == __old_value)
26971 *__result = __new_value;
26972 else
26973 *__result = *__first;
26974 return __result;
26975 }
26976 template<typename _InputIterator, typename _OutputIterator,
26977 typename _Predicate, typename _Tp>
26978 _OutputIterator
26979 replace_copy_if(_InputIterator __first, _InputIterator __last,
26980 _OutputIterator __result,
26981 _Predicate __pred, const _Tp& __new_value)
26982 {
26983
26984
26985
26986 ;
26987 for (; __first != __last; ++__first, ++__result)
26988 if (__pred(*__first))
26989 *__result = __new_value;
26990 else
26991 *__result = *__first;
26992 return __result;
26993 }
26994}
26995namespace std __attribute__ ((__visibility__ ("default"))) {
26996 template<typename _InputIterator, typename _Function>
26997 _Function
26998 for_each(_InputIterator __first, _InputIterator __last, _Function __f)
26999 {
27000
27001 ;
27002 for (; __first != __last; ++__first)
27003 __f(*__first);
27004 return __f;
27005 }
27006 template<typename _InputIterator, typename _Tp>
27007 inline _InputIterator
27008 find(_InputIterator __first, _InputIterator __last,
27009 const _Tp& __val)
27010 {
27011
27012
27013 ;
27014 return std::__find(__first, __last, __val,
27015 std::__iterator_category(__first));
27016 }
27017 template<typename _InputIterator, typename _Predicate>
27018 inline _InputIterator
27019 find_if(_InputIterator __first, _InputIterator __last,
27020 _Predicate __pred)
27021 {
27022
27023
27024 ;
27025 return std::__find_if(__first, __last, __pred,
27026 std::__iterator_category(__first));
27027 }
27028 template<typename _InputIterator, typename _ForwardIterator>
27029 _InputIterator
27030 find_first_of(_InputIterator __first1, _InputIterator __last1,
27031 _ForwardIterator __first2, _ForwardIterator __last2)
27032 {
27033
27034
27035
27036 ;
27037 ;
27038 for (; __first1 != __last1; ++__first1)
27039 for (_ForwardIterator __iter = __first2; __iter != __last2; ++__iter)
27040 if (*__first1 == *__iter)
27041 return __first1;
27042 return __last1;
27043 }
27044 template<typename _InputIterator, typename _ForwardIterator,
27045 typename _BinaryPredicate>
27046 _InputIterator
27047 find_first_of(_InputIterator __first1, _InputIterator __last1,
27048 _ForwardIterator __first2, _ForwardIterator __last2,
27049 _BinaryPredicate __comp)
27050 {
27051
27052
27053
27054 ;
27055 ;
27056 for (; __first1 != __last1; ++__first1)
27057 for (_ForwardIterator __iter = __first2; __iter != __last2; ++__iter)
27058 if (__comp(*__first1, *__iter))
27059 return __first1;
27060 return __last1;
27061 }
27062 template<typename _ForwardIterator>
27063 _ForwardIterator
27064 adjacent_find(_ForwardIterator __first, _ForwardIterator __last)
27065 {
27066
27067
27068 ;
27069 if (__first == __last)
27070 return __last;
27071 _ForwardIterator __next = __first;
27072 while(++__next != __last)
27073 {
27074 if (*__first == *__next)
27075 return __first;
27076 __first = __next;
27077 }
27078 return __last;
27079 }
27080 template<typename _ForwardIterator, typename _BinaryPredicate>
27081 _ForwardIterator
27082 adjacent_find(_ForwardIterator __first, _ForwardIterator __last,
27083 _BinaryPredicate __binary_pred)
27084 {
27085
27086
27087 ;
27088 if (__first == __last)
27089 return __last;
27090 _ForwardIterator __next = __first;
27091 while(++__next != __last)
27092 {
27093 if (__binary_pred(*__first, *__next))
27094 return __first;
27095 __first = __next;
27096 }
27097 return __last;
27098 }
27099 template<typename _InputIterator, typename _Tp>
27100 typename iterator_traits<_InputIterator>::difference_type
27101 count(_InputIterator __first, _InputIterator __last, const _Tp& __value)
27102 {
27103
27104
27105 ;
27106 typename iterator_traits<_InputIterator>::difference_type __n = 0;
27107 for (; __first != __last; ++__first)
27108 if (*__first == __value)
27109 ++__n;
27110 return __n;
27111 }
27112 template<typename _InputIterator, typename _Predicate>
27113 typename iterator_traits<_InputIterator>::difference_type
27114 count_if(_InputIterator __first, _InputIterator __last, _Predicate __pred)
27115 {
27116
27117
27118 ;
27119 typename iterator_traits<_InputIterator>::difference_type __n = 0;
27120 for (; __first != __last; ++__first)
27121 if (__pred(*__first))
27122 ++__n;
27123 return __n;
27124 }
27125 template<typename _ForwardIterator1, typename _ForwardIterator2>
27126 _ForwardIterator1
27127 search(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
27128 _ForwardIterator2 __first2, _ForwardIterator2 __last2)
27129 {
27130
27131
27132
27133 ;
27134 ;
27135 if (__first1 == __last1 || __first2 == __last2)
27136 return __first1;
27137 _ForwardIterator2 __p1(__first2);
27138 if (++__p1 == __last2)
27139 return std::find(__first1, __last1, *__first2);
27140 _ForwardIterator2 __p;
27141 _ForwardIterator1 __current = __first1;
27142 for (;;)
27143 {
27144 __first1 = std::find(__first1, __last1, *__first2);
27145 if (__first1 == __last1)
27146 return __last1;
27147 __p = __p1;
27148 __current = __first1;
27149 if (++__current == __last1)
27150 return __last1;
27151 while (*__current == *__p)
27152 {
27153 if (++__p == __last2)
27154 return __first1;
27155 if (++__current == __last1)
27156 return __last1;
27157 }
27158 ++__first1;
27159 }
27160 return __first1;
27161 }
27162 template<typename _ForwardIterator1, typename _ForwardIterator2,
27163 typename _BinaryPredicate>
27164 _ForwardIterator1
27165 search(_ForwardIterator1 __first1, _ForwardIterator1 __last1,
27166 _ForwardIterator2 __first2, _ForwardIterator2 __last2,
27167 _BinaryPredicate __predicate)
27168 {
27169
27170
27171
27172 ;
27173 ;
27174 if (__first1 == __last1 || __first2 == __last2)
27175 return __first1;
27176 _ForwardIterator2 __p1(__first2);
27177 if (++__p1 == __last2)
27178 {
27179 while (__first1 != __last1
27180 && !bool(__predicate(*__first1, *__first2)))
27181 ++__first1;
27182 return __first1;
27183 }
27184 _ForwardIterator2 __p;
27185 _ForwardIterator1 __current = __first1;
27186 for (;;)
27187 {
27188 while (__first1 != __last1
27189 && !bool(__predicate(*__first1, *__first2)))
27190 ++__first1;
27191 if (__first1 == __last1)
27192 return __last1;
27193 __p = __p1;
27194 __current = __first1;
27195 if (++__current == __last1)
27196 return __last1;
27197 while (__predicate(*__current, *__p))
27198 {
27199 if (++__p == __last2)
27200 return __first1;
27201 if (++__current == __last1)
27202 return __last1;
27203 }
27204 ++__first1;
27205 }
27206 return __first1;
27207 }
27208 template<typename _ForwardIterator, typename _Integer, typename _Tp>
27209 _ForwardIterator
27210 search_n(_ForwardIterator __first, _ForwardIterator __last,
27211 _Integer __count, const _Tp& __val)
27212 {
27213
27214
27215 ;
27216 if (__count <= 0)
27217 return __first;
27218 if (__count == 1)
27219 return std::find(__first, __last, __val);
27220 return std::__search_n(__first, __last, __count, __val,
27221 std::__iterator_category(__first));
27222 }
27223 template<typename _ForwardIterator, typename _Integer, typename _Tp,
27224 typename _BinaryPredicate>
27225 _ForwardIterator
27226 search_n(_ForwardIterator __first, _ForwardIterator __last,
27227 _Integer __count, const _Tp& __val,
27228 _BinaryPredicate __binary_pred)
27229 {
27230
27231
27232 ;
27233 if (__count <= 0)
27234 return __first;
27235 if (__count == 1)
27236 {
27237 while (__first != __last && !bool(__binary_pred(*__first, __val)))
27238 ++__first;
27239 return __first;
27240 }
27241 return std::__search_n(__first, __last, __count, __val, __binary_pred,
27242 std::__iterator_category(__first));
27243 }
27244 template<typename _InputIterator, typename _OutputIterator,
27245 typename _UnaryOperation>
27246 _OutputIterator
27247 transform(_InputIterator __first, _InputIterator __last,
27248 _OutputIterator __result, _UnaryOperation __unary_op)
27249 {
27250
27251
27252 ;
27253 for (; __first != __last; ++__first, ++__result)
27254 *__result = __unary_op(*__first);
27255 return __result;
27256 }
27257 template<typename _InputIterator1, typename _InputIterator2,
27258 typename _OutputIterator, typename _BinaryOperation>
27259 _OutputIterator
27260 transform(_InputIterator1 __first1, _InputIterator1 __last1,
27261 _InputIterator2 __first2, _OutputIterator __result,
27262 _BinaryOperation __binary_op)
27263 {
27264
27265
27266
27267 ;
27268 for (; __first1 != __last1; ++__first1, ++__first2, ++__result)
27269 *__result = __binary_op(*__first1, *__first2);
27270 return __result;
27271 }
27272 template<typename _ForwardIterator, typename _Tp>
27273 void
27274 replace(_ForwardIterator __first, _ForwardIterator __last,
27275 const _Tp& __old_value, const _Tp& __new_value)
27276 {
27277
27278
27279
27280 ;
27281 for (; __first != __last; ++__first)
27282 if (*__first == __old_value)
27283 *__first = __new_value;
27284 }
27285 template<typename _ForwardIterator, typename _Predicate, typename _Tp>
27286 void
27287 replace_if(_ForwardIterator __first, _ForwardIterator __last,
27288 _Predicate __pred, const _Tp& __new_value)
27289 {
27290
27291
27292
27293 ;
27294 for (; __first != __last; ++__first)
27295 if (__pred(*__first))
27296 *__first = __new_value;
27297 }
27298 template<typename _ForwardIterator, typename _Generator>
27299 void
27300 generate(_ForwardIterator __first, _ForwardIterator __last,
27301 _Generator __gen)
27302 {
27303
27304
27305 ;
27306 for (; __first != __last; ++__first)
27307 *__first = __gen();
27308 }
27309 template<typename _OutputIterator, typename _Size, typename _Generator>
27310 _OutputIterator
27311 generate_n(_OutputIterator __first, _Size __n, _Generator __gen)
27312 {
27313
27314 for (; __n > 0; --__n, ++__first)
27315 *__first = __gen();
27316 return __first;
27317 }
27318 template<typename _InputIterator, typename _OutputIterator>
27319 inline _OutputIterator
27320 unique_copy(_InputIterator __first, _InputIterator __last,
27321 _OutputIterator __result)
27322 {
27323
27324
27325
27326 ;
27327 if (__first == __last)
27328 return __result;
27329 return std::__unique_copy(__first, __last, __result,
27330 std::__iterator_category(__first),
27331 std::__iterator_category(__result));
27332 }
27333 template<typename _InputIterator, typename _OutputIterator,
27334 typename _BinaryPredicate>
27335 inline _OutputIterator
27336 unique_copy(_InputIterator __first, _InputIterator __last,
27337 _OutputIterator __result,
27338 _BinaryPredicate __binary_pred)
27339 {
27340
27341
27342 ;
27343 if (__first == __last)
27344 return __result;
27345 return std::__unique_copy(__first, __last, __result, __binary_pred,
27346 std::__iterator_category(__first),
27347 std::__iterator_category(__result));
27348 }
27349 template<typename _RandomAccessIterator>
27350 inline void
27351 random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last)
27352 {
27353
27354 ;
27355 if (__first != __last)
27356 for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
27357 std::iter_swap(__i, __first + (std::rand() % ((__i - __first) + 1)));
27358 }
27359 template<typename _RandomAccessIterator, typename _RandomNumberGenerator>
27360 void
27361 random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last,
27362 _RandomNumberGenerator& __rand)
27363 {
27364
27365 ;
27366 if (__first == __last)
27367 return;
27368 for (_RandomAccessIterator __i = __first + 1; __i != __last; ++__i)
27369 std::iter_swap(__i, __first + __rand((__i - __first) + 1));
27370 }
27371 template<typename _ForwardIterator, typename _Predicate>
27372 inline _ForwardIterator
27373 partition(_ForwardIterator __first, _ForwardIterator __last,
27374 _Predicate __pred)
27375 {
27376
27377
27378 ;
27379 return std::__partition(__first, __last, __pred,
27380 std::__iterator_category(__first));
27381 }
27382 template<typename _RandomAccessIterator>
27383 inline void
27384 partial_sort(_RandomAccessIterator __first,
27385 _RandomAccessIterator __middle,
27386 _RandomAccessIterator __last)
27387 {
27388 typedef typename iterator_traits<_RandomAccessIterator>::value_type
27389 _ValueType;
27390
27391
27392 ;
27393 ;
27394 std::__heap_select(__first, __middle, __last);
27395 std::sort_heap(__first, __middle);
27396 }
27397 template<typename _RandomAccessIterator, typename _Compare>
27398 inline void
27399 partial_sort(_RandomAccessIterator __first,
27400 _RandomAccessIterator __middle,
27401 _RandomAccessIterator __last,
27402 _Compare __comp)
27403 {
27404 typedef typename iterator_traits<_RandomAccessIterator>::value_type
27405 _ValueType;
27406
27407
27408 ;
27409 ;
27410 std::__heap_select(__first, __middle, __last, __comp);
27411 std::sort_heap(__first, __middle, __comp);
27412 }
27413 template<typename _RandomAccessIterator>
27414 inline void
27415 nth_element(_RandomAccessIterator __first, _RandomAccessIterator __nth,
27416 _RandomAccessIterator __last)
27417 {
27418 typedef typename iterator_traits<_RandomAccessIterator>::value_type
27419 _ValueType;
27420
27421
27422 ;
27423 ;
27424 if (__first == __last || __nth == __last)
27425 return;
27426 std::__introselect(__first, __nth, __last,
27427 std::__lg(__last - __first) * 2);
27428 }
27429 template<typename _RandomAccessIterator, typename _Compare>
27430 inline void
27431 nth_element(_RandomAccessIterator __first, _RandomAccessIterator __nth,
27432 _RandomAccessIterator __last, _Compare __comp)
27433 {
27434 typedef typename iterator_traits<_RandomAccessIterator>::value_type
27435 _ValueType;
27436
27437
27438 ;
27439 ;
27440 if (__first == __last || __nth == __last)
27441 return;
27442 std::__introselect(__first, __nth, __last,
27443 std::__lg(__last - __first) * 2, __comp);
27444 }
27445 template<typename _RandomAccessIterator>
27446 inline void
27447 sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
27448 {
27449 typedef typename iterator_traits<_RandomAccessIterator>::value_type
27450 _ValueType;
27451
27452
27453 ;
27454 if (__first != __last)
27455 {
27456 std::__introsort_loop(__first, __last,
27457 std::__lg(__last - __first) * 2);
27458 std::__final_insertion_sort(__first, __last);
27459 }
27460 }
27461 template<typename _RandomAccessIterator, typename _Compare>
27462 inline void
27463 sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
27464 _Compare __comp)
27465 {
27466 typedef typename iterator_traits<_RandomAccessIterator>::value_type
27467 _ValueType;
27468
27469
27470 ;
27471 if (__first != __last)
27472 {
27473 std::__introsort_loop(__first, __last,
27474 std::__lg(__last - __first) * 2, __comp);
27475 std::__final_insertion_sort(__first, __last, __comp);
27476 }
27477 }
27478 template<typename _InputIterator1, typename _InputIterator2,
27479 typename _OutputIterator>
27480 _OutputIterator
27481 merge(_InputIterator1 __first1, _InputIterator1 __last1,
27482 _InputIterator2 __first2, _InputIterator2 __last2,
27483 _OutputIterator __result)
27484 {
27485 typedef typename iterator_traits<_InputIterator1>::value_type
27486 _ValueType1;
27487 typedef typename iterator_traits<_InputIterator2>::value_type
27488 _ValueType2;
27489
27490
27491
27492
27493
27494 ;
27495 ;
27496 while (__first1 != __last1 && __first2 != __last2)
27497 {
27498 if (*__first2 < *__first1)
27499 {
27500 *__result = *__first2;
27501 ++__first2;
27502 }
27503 else
27504 {
27505 *__result = *__first1;
27506 ++__first1;
27507 }
27508 ++__result;
27509 }
27510 return std::copy(__first2, __last2, std::copy(__first1, __last1,
27511 __result));
27512 }
27513 template<typename _InputIterator1, typename _InputIterator2,
27514 typename _OutputIterator, typename _Compare>
27515 _OutputIterator
27516 merge(_InputIterator1 __first1, _InputIterator1 __last1,
27517 _InputIterator2 __first2, _InputIterator2 __last2,
27518 _OutputIterator __result, _Compare __comp)
27519 {
27520 typedef typename iterator_traits<_InputIterator1>::value_type
27521 _ValueType1;
27522 typedef typename iterator_traits<_InputIterator2>::value_type
27523 _ValueType2;
27524
27525
27526
27527
27528
27529 ;
27530 ;
27531 while (__first1 != __last1 && __first2 != __last2)
27532 {
27533 if (__comp(*__first2, *__first1))
27534 {
27535 *__result = *__first2;
27536 ++__first2;
27537 }
27538 else
27539 {
27540 *__result = *__first1;
27541 ++__first1;
27542 }
27543 ++__result;
27544 }
27545 return std::copy(__first2, __last2, std::copy(__first1, __last1,
27546 __result));
27547 }
27548 template<typename _RandomAccessIterator>
27549 inline void
27550 stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last)
27551 {
27552 typedef typename iterator_traits<_RandomAccessIterator>::value_type
27553 _ValueType;
27554 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
27555 _DistanceType;
27556
27557
27558 ;
27559 _Temporary_buffer<_RandomAccessIterator, _ValueType> __buf(__first,
27560 __last);
27561 if (__buf.begin() == 0)
27562 std::__inplace_stable_sort(__first, __last);
27563 else
27564 std::__stable_sort_adaptive(__first, __last, __buf.begin(),
27565 _DistanceType(__buf.size()));
27566 }
27567 template<typename _RandomAccessIterator, typename _Compare>
27568 inline void
27569 stable_sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
27570 _Compare __comp)
27571 {
27572 typedef typename iterator_traits<_RandomAccessIterator>::value_type
27573 _ValueType;
27574 typedef typename iterator_traits<_RandomAccessIterator>::difference_type
27575 _DistanceType;
27576
27577
27578 ;
27579 _Temporary_buffer<_RandomAccessIterator, _ValueType> __buf(__first,
27580 __last);
27581 if (__buf.begin() == 0)
27582 std::__inplace_stable_sort(__first, __last, __comp);
27583 else
27584 std::__stable_sort_adaptive(__first, __last, __buf.begin(),
27585 _DistanceType(__buf.size()), __comp);
27586 }
27587 template<typename _InputIterator1, typename _InputIterator2,
27588 typename _OutputIterator>
27589 _OutputIterator
27590 set_union(_InputIterator1 __first1, _InputIterator1 __last1,
27591 _InputIterator2 __first2, _InputIterator2 __last2,
27592 _OutputIterator __result)
27593 {
27594 typedef typename iterator_traits<_InputIterator1>::value_type
27595 _ValueType1;
27596 typedef typename iterator_traits<_InputIterator2>::value_type
27597 _ValueType2;
27598
27599
27600
27601
27602
27603
27604 ;
27605 ;
27606 while (__first1 != __last1 && __first2 != __last2)
27607 {
27608 if (*__first1 < *__first2)
27609 {
27610 *__result = *__first1;
27611 ++__first1;
27612 }
27613 else if (*__first2 < *__first1)
27614 {
27615 *__result = *__first2;
27616 ++__first2;
27617 }
27618 else
27619 {
27620 *__result = *__first1;
27621 ++__first1;
27622 ++__first2;
27623 }
27624 ++__result;
27625 }
27626 return std::copy(__first2, __last2, std::copy(__first1, __last1,
27627 __result));
27628 }
27629 template<typename _InputIterator1, typename _InputIterator2,
27630 typename _OutputIterator, typename _Compare>
27631 _OutputIterator
27632 set_union(_InputIterator1 __first1, _InputIterator1 __last1,
27633 _InputIterator2 __first2, _InputIterator2 __last2,
27634 _OutputIterator __result, _Compare __comp)
27635 {
27636 typedef typename iterator_traits<_InputIterator1>::value_type
27637 _ValueType1;
27638 typedef typename iterator_traits<_InputIterator2>::value_type
27639 _ValueType2;
27640
27641
27642
27643
27644
27645
27646 ;
27647 ;
27648 while (__first1 != __last1 && __first2 != __last2)
27649 {
27650 if (__comp(*__first1, *__first2))
27651 {
27652 *__result = *__first1;
27653 ++__first1;
27654 }
27655 else if (__comp(*__first2, *__first1))
27656 {
27657 *__result = *__first2;
27658 ++__first2;
27659 }
27660 else
27661 {
27662 *__result = *__first1;
27663 ++__first1;
27664 ++__first2;
27665 }
27666 ++__result;
27667 }
27668 return std::copy(__first2, __last2, std::copy(__first1, __last1,
27669 __result));
27670 }
27671 template<typename _InputIterator1, typename _InputIterator2,
27672 typename _OutputIterator>
27673 _OutputIterator
27674 set_intersection(_InputIterator1 __first1, _InputIterator1 __last1,
27675 _InputIterator2 __first2, _InputIterator2 __last2,
27676 _OutputIterator __result)
27677 {
27678 typedef typename iterator_traits<_InputIterator1>::value_type
27679 _ValueType1;
27680 typedef typename iterator_traits<_InputIterator2>::value_type
27681 _ValueType2;
27682
27683
27684
27685
27686
27687 ;
27688 ;
27689 while (__first1 != __last1 && __first2 != __last2)
27690 if (*__first1 < *__first2)
27691 ++__first1;
27692 else if (*__first2 < *__first1)
27693 ++__first2;
27694 else
27695 {
27696 *__result = *__first1;
27697 ++__first1;
27698 ++__first2;
27699 ++__result;
27700 }
27701 return __result;
27702 }
27703 template<typename _InputIterator1, typename _InputIterator2,
27704 typename _OutputIterator, typename _Compare>
27705 _OutputIterator
27706 set_intersection(_InputIterator1 __first1, _InputIterator1 __last1,
27707 _InputIterator2 __first2, _InputIterator2 __last2,
27708 _OutputIterator __result, _Compare __comp)
27709 {
27710 typedef typename iterator_traits<_InputIterator1>::value_type
27711 _ValueType1;
27712 typedef typename iterator_traits<_InputIterator2>::value_type
27713 _ValueType2;
27714
27715
27716
27717
27718
27719 ;
27720 ;
27721 while (__first1 != __last1 && __first2 != __last2)
27722 if (__comp(*__first1, *__first2))
27723 ++__first1;
27724 else if (__comp(*__first2, *__first1))
27725 ++__first2;
27726 else
27727 {
27728 *__result = *__first1;
27729 ++__first1;
27730 ++__first2;
27731 ++__result;
27732 }
27733 return __result;
27734 }
27735 template<typename _InputIterator1, typename _InputIterator2,
27736 typename _OutputIterator>
27737 _OutputIterator
27738 set_difference(_InputIterator1 __first1, _InputIterator1 __last1,
27739 _InputIterator2 __first2, _InputIterator2 __last2,
27740 _OutputIterator __result)
27741 {
27742 typedef typename iterator_traits<_InputIterator1>::value_type
27743 _ValueType1;
27744 typedef typename iterator_traits<_InputIterator2>::value_type
27745 _ValueType2;
27746
27747
27748
27749
27750
27751 ;
27752 ;
27753 while (__first1 != __last1 && __first2 != __last2)
27754 if (*__first1 < *__first2)
27755 {
27756 *__result = *__first1;
27757 ++__first1;
27758 ++__result;
27759 }
27760 else if (*__first2 < *__first1)
27761 ++__first2;
27762 else
27763 {
27764 ++__first1;
27765 ++__first2;
27766 }
27767 return std::copy(__first1, __last1, __result);
27768 }
27769 template<typename _InputIterator1, typename _InputIterator2,
27770 typename _OutputIterator, typename _Compare>
27771 _OutputIterator
27772 set_difference(_InputIterator1 __first1, _InputIterator1 __last1,
27773 _InputIterator2 __first2, _InputIterator2 __last2,
27774 _OutputIterator __result, _Compare __comp)
27775 {
27776 typedef typename iterator_traits<_InputIterator1>::value_type
27777 _ValueType1;
27778 typedef typename iterator_traits<_InputIterator2>::value_type
27779 _ValueType2;
27780
27781
27782
27783
27784
27785 ;
27786 ;
27787 while (__first1 != __last1 && __first2 != __last2)
27788 if (__comp(*__first1, *__first2))
27789 {
27790 *__result = *__first1;
27791 ++__first1;
27792 ++__result;
27793 }
27794 else if (__comp(*__first2, *__first1))
27795 ++__first2;
27796 else
27797 {
27798 ++__first1;
27799 ++__first2;
27800 }
27801 return std::copy(__first1, __last1, __result);
27802 }
27803 template<typename _InputIterator1, typename _InputIterator2,
27804 typename _OutputIterator>
27805 _OutputIterator
27806 set_symmetric_difference(_InputIterator1 __first1, _InputIterator1 __last1,
27807 _InputIterator2 __first2, _InputIterator2 __last2,
27808 _OutputIterator __result)
27809 {
27810 typedef typename iterator_traits<_InputIterator1>::value_type
27811 _ValueType1;
27812 typedef typename iterator_traits<_InputIterator2>::value_type
27813 _ValueType2;
27814
27815
27816
27817
27818
27819
27820 ;
27821 ;
27822 while (__first1 != __last1 && __first2 != __last2)
27823 if (*__first1 < *__first2)
27824 {
27825 *__result = *__first1;
27826 ++__first1;
27827 ++__result;
27828 }
27829 else if (*__first2 < *__first1)
27830 {
27831 *__result = *__first2;
27832 ++__first2;
27833 ++__result;
27834 }
27835 else
27836 {
27837 ++__first1;
27838 ++__first2;
27839 }
27840 return std::copy(__first2, __last2, std::copy(__first1,
27841 __last1, __result));
27842 }
27843 template<typename _InputIterator1, typename _InputIterator2,
27844 typename _OutputIterator, typename _Compare>
27845 _OutputIterator
27846 set_symmetric_difference(_InputIterator1 __first1, _InputIterator1 __last1,
27847 _InputIterator2 __first2, _InputIterator2 __last2,
27848 _OutputIterator __result,
27849 _Compare __comp)
27850 {
27851 typedef typename iterator_traits<_InputIterator1>::value_type
27852 _ValueType1;
27853 typedef typename iterator_traits<_InputIterator2>::value_type
27854 _ValueType2;
27855
27856
27857
27858
27859
27860
27861 ;
27862 ;
27863 while (__first1 != __last1 && __first2 != __last2)
27864 if (__comp(*__first1, *__first2))
27865 {
27866 *__result = *__first1;
27867 ++__first1;
27868 ++__result;
27869 }
27870 else if (__comp(*__first2, *__first1))
27871 {
27872 *__result = *__first2;
27873 ++__first2;
27874 ++__result;
27875 }
27876 else
27877 {
27878 ++__first1;
27879 ++__first2;
27880 }
27881 return std::copy(__first2, __last2,
27882 std::copy(__first1, __last1, __result));
27883 }
27884 template<typename _ForwardIterator>
27885 _ForwardIterator
27886 min_element(_ForwardIterator __first, _ForwardIterator __last)
27887 {
27888
27889
27890 ;
27891 if (__first == __last)
27892 return __first;
27893 _ForwardIterator __result = __first;
27894 while (++__first != __last)
27895 if (*__first < *__result)
27896 __result = __first;
27897 return __result;
27898 }
27899 template<typename _ForwardIterator, typename _Compare>
27900 _ForwardIterator
27901 min_element(_ForwardIterator __first, _ForwardIterator __last,
27902 _Compare __comp)
27903 {
27904
27905
27906 ;
27907 if (__first == __last)
27908 return __first;
27909 _ForwardIterator __result = __first;
27910 while (++__first != __last)
27911 if (__comp(*__first, *__result))
27912 __result = __first;
27913 return __result;
27914 }
27915 template<typename _ForwardIterator>
27916 _ForwardIterator
27917 max_element(_ForwardIterator __first, _ForwardIterator __last)
27918 {
27919
27920
27921 ;
27922 if (__first == __last)
27923 return __first;
27924 _ForwardIterator __result = __first;
27925 while (++__first != __last)
27926 if (*__result < *__first)
27927 __result = __first;
27928 return __result;
27929 }
27930 template<typename _ForwardIterator, typename _Compare>
27931 _ForwardIterator
27932 max_element(_ForwardIterator __first, _ForwardIterator __last,
27933 _Compare __comp)
27934 {
27935
27936
27937 ;
27938 if (__first == __last) return __first;
27939 _ForwardIterator __result = __first;
27940 while (++__first != __last)
27941 if (__comp(*__result, *__first))
27942 __result = __first;
27943 return __result;
27944 }
27945}
27946
27947namespace std __attribute__ ((__visibility__ ("default"))) {
27948 namespace rel_ops
27949 {
27950 template <class _Tp>
27951 inline bool
27952 operator!=(const _Tp& __x, const _Tp& __y)
27953 { return !(__x == __y); }
27954 template <class _Tp>
27955 inline bool
27956 operator>(const _Tp& __x, const _Tp& __y)
27957 { return __y < __x; }
27958 template <class _Tp>
27959 inline bool
27960 operator<=(const _Tp& __x, const _Tp& __y)
27961 { return !(__y < __x); }
27962 template <class _Tp>
27963 inline bool
27964 operator>=(const _Tp& __x, const _Tp& __y)
27965 { return !(__x < __y); }
27966 }
27967}
27968static __attribute__ ((__unused__)) inline PyObject*
27969SWIG_From_unsigned_SS_long (unsigned long value)
27970{
27971 return (value > 9223372036854775807L) ?
27972 PyLong_FromUnsignedLong(value) : PyInt_FromLong(static_cast< long >(value));
27973}
27974static __attribute__ ((__unused__)) inline PyObject *
27975SWIG_From_unsigned_SS_int (unsigned int value)
27976{
27977 return SWIG_From_unsigned_SS_long (value);
27978}
27979namespace Xapian {
27980 Query *get_py_query(PyObject *obj) {
27981 PyObject * mythis = PyObject_GetAttrString(obj, "this");
27982 if (!mythis)
27983 return 0;
27984 Query * retval = 0;
27985 int res = SWIG_Python_ConvertPtrAndOwn(mythis, (void **)&retval, swig_types[40], 0, 0);
27986 if (!(res >= 0)) {
27987 retval = 0;
27988 }
27989 if ( --((PyObject*)(mythis))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(mythis)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(mythis))));
27990 return retval;
27991 }
27992}
27993static __attribute__ ((__unused__)) inline PyObject *
27994SWIG_From_int (int value)
27995{
27996 return PyInt_FromLong (value);
27997}
27998PyObject *Xapian_MSet_items_get(Xapian::MSet *mset)
27999{
28000 PyObject *retval = PyList_New(mset->size());
28001 if (retval == 0) {
28002 return __null;
28003 }
28004 Py_ssize_t idx = 0;
28005 for (Xapian::MSetIterator i = mset->begin(); i != mset->end(); ++i) {
28006 PyObject *t = PyTuple_New(4);
28007 if (!t) {
28008 if ( --((PyObject*)(retval))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(retval)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(retval))));
28009 return __null;
28010 }
28011 (((PyListObject *)(retval))->ob_item[idx++] = (t));
28012 (((PyTupleObject *)(t))->ob_item[0] = PyInt_FromLong(*i));
28013 (((PyTupleObject *)(t))->ob_item[1] = PyFloat_FromDouble(i.get_weight()));
28014 (((PyTupleObject *)(t))->ob_item[2] = PyInt_FromLong(i.get_rank()));
28015 (((PyTupleObject *)(t))->ob_item[3] = PyInt_FromLong(i.get_percent()));
28016 }
28017 return retval;
28018}
28019PyObject *Xapian_ESet_items_get(Xapian::ESet *eset)
28020{
28021 PyObject *retval = PyList_New(eset->size());
28022 if (retval == 0) {
28023 return __null;
28024 }
28025 Py_ssize_t idx = 0;
28026 for (Xapian::ESetIterator i = eset->begin(); i != eset->end(); ++i) {
28027 PyObject *t = PyTuple_New(2);
28028 if (!t) {
28029 if ( --((PyObject*)(retval))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(retval)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(retval))));
28030 return __null;
28031 }
28032 (((PyListObject *)(retval))->ob_item[idx++] = (t));
28033 PyObject * str = PyString_FromStringAndSize((*i).data(), (*i).size());
28034 if (str == 0) {
28035 if ( --((PyObject*)(retval))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(retval)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(retval))));
28036 return __null;
28037 }
28038 (((PyTupleObject *)(t))->ob_item[0] = str);
28039 (((PyTupleObject *)(t))->ob_item[1] = PyFloat_FromDouble(i.get_weight()));
28040 }
28041 return retval;
28042}
28043static __attribute__ ((__unused__)) int
28044SWIG_AsPtr_std_string (PyObject * obj, std::string **val);
28045static __attribute__ ((__unused__)) int
28046SWIG_anystring_as_ptr(PyObject ** obj, std::string **val)
28047{
28048 if (((((((PyObject*)(*obj))->ob_type))->tp_flags & ((1L<<28))) != 0)) {
28049 PyObject * strobj = PyUnicodeUCS4_EncodeUTF8((((PyUnicodeObject *)(*obj))->str), (((PyUnicodeObject *)(*obj))->length), "ignore");
28050 if (strobj == __null) return (-1);
28051 int res = SWIG_AsPtr_std_string(strobj, val);
28052 if ( --((PyObject*)(strobj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(strobj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(strobj))));
28053 return res;
28054 } else {
28055 return SWIG_AsPtr_std_string(*obj, val);
28056 }
28057}
28058static __attribute__ ((__unused__)) swig_type_info*
28059SWIG_pchar_descriptor(void)
28060{
28061 static int init = 0;
28062 static swig_type_info* info = 0;
28063 if (!init) {
28064 info = SWIG_Python_TypeQuery("_p_char");
28065 init = 1;
28066 }
28067 return info;
28068}
28069static __attribute__ ((__unused__)) inline PyObject *
28070SWIG_FromCharPtrAndSize(const char* carray, size_t size)
28071{
28072 if (carray) {
28073 if (size > 2147483647) {
28074 swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
28075 return pchar_descriptor ?
28076 SWIG_Python_NewPointerObj(const_cast< char * >(carray), pchar_descriptor, 0) : SWIG_Py_Void();
28077 } else {
28078 return PyString_FromStringAndSize(carray, static_cast< int >(size));
28079 }
28080 } else {
28081 return SWIG_Py_Void();
28082 }
28083}
28084static __attribute__ ((__unused__)) inline PyObject *
28085SWIG_FromCharPtr(const char *cptr)
28086{
28087 return SWIG_FromCharPtrAndSize(cptr, (cptr ? strlen(cptr) : 0));
28088}
28089static __attribute__ ((__unused__)) inline PyObject *
28090SWIG_From_std_string (const std::string& s)
28091{
28092 if (s.size()) {
28093 return SWIG_FromCharPtrAndSize(s.data(), s.size());
28094 } else {
28095 return SWIG_FromCharPtrAndSize(s.c_str(), 0);
28096 }
28097}
28098static __attribute__ ((__unused__)) std::string Xapian_Error___str__(Xapian::Error const *self){
28099 std::string desc(self->get_msg());
28100 if (!self->get_context().empty()) {
28101 desc += " (context: ";
28102 desc += self->get_context();
28103 desc += ')';
28104 }
28105 if (self->get_error_string()) {
28106 desc += " (";
28107 desc += self->get_error_string();
28108 desc += ')';
28109 }
28110 return desc;
28111 }
28112static __attribute__ ((__unused__)) int
28113SWIG_AsCharPtrAndSize(PyObject *obj, char** cptr, size_t* psize, int *alloc)
28114{
28115 if (((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<27))) != 0))
28116 {
28117 char *cstr; Py_ssize_t len;
28118 PyString_AsStringAndSize(obj, &cstr, &len);
28119 if (cptr) {
28120 if (alloc) {
28121 if (*alloc == ((0) | ((1 << 8) << 1)))
28122 {
28123 *cptr = reinterpret_cast< char* >(memcpy((new char[len + 1]), cstr, sizeof(char)*(len + 1)));
28124 *alloc = ((0) | ((1 << 8) << 1));
28125 }
28126 else {
28127 *cptr = cstr;
28128 *alloc = ((0));
28129 }
28130 } else {
28131 *cptr = SWIG_Python_str_AsChar(obj);
28132 }
28133 }
28134 if (psize) *psize = len + 1;
28135 return (0);
28136 } else {
28137 swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
28138 if (pchar_descriptor) {
28139 void* vptr = 0;
28140 if (SWIG_Python_ConvertPtrAndOwn(obj, &vptr, pchar_descriptor, 0, 0) == (0)) {
28141 if (cptr) *cptr = (char *) vptr;
28142 if (psize) *psize = vptr ? (strlen((char *)vptr) + 1) : 0;
28143 if (alloc) *alloc = ((0));
28144 return (0);
28145 }
28146 }
28147 }
28148 return -5;
28149}
28150static __attribute__ ((__unused__)) int
28151SWIG_AsVal_int (PyObject * obj, int *val)
28152{
28153 long v;
28154 int res = SWIG_AsVal_long (obj, &v);
28155 if ((res >= 0)) {
28156 if ((v < (-2147483647 - 1) || v > 2147483647)) {
28157 return -7;
28158 } else {
28159 if (val) *val = static_cast< int >(v);
28160 }
28161 }
28162 return res;
28163}
28164namespace Xapian {
28165__attribute__ ((visibility("default"))) void SetPythonException() {
28166 try {
28167 throw;
28168 } catch (Swig::DirectorException &e) {
28169 } catch (const Xapian::RangeError &e) {
28170 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[44]), SWIG_Python_NewPointerObj((new Xapian::RangeError(e)), swig_types[44], 0x1));
28171 } catch (const Xapian::SerialisationError &e) {
28172 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[47]), SWIG_Python_NewPointerObj((new Xapian::SerialisationError(e)), swig_types[47], 0x1));
28173 } catch (const Xapian::QueryParserError &e) {
28174 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[42]), SWIG_Python_NewPointerObj((new Xapian::QueryParserError(e)), swig_types[42], 0x1));
28175 } catch (const Xapian::NetworkTimeoutError &e) {
28176 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[35]), SWIG_Python_NewPointerObj((new Xapian::NetworkTimeoutError(e)), swig_types[35], 0x1));
28177 } catch (const Xapian::NetworkError &e) {
28178 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[34]), SWIG_Python_NewPointerObj((new Xapian::NetworkError(e)), swig_types[34], 0x1));
28179 } catch (const Xapian::InternalError &e) {
28180 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[23]), SWIG_Python_NewPointerObj((new Xapian::InternalError(e)), swig_types[23], 0x1));
28181 } catch (const Xapian::FeatureUnavailableError &e) {
28182 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[21]), SWIG_Python_NewPointerObj((new Xapian::FeatureUnavailableError(e)), swig_types[21], 0x1));
28183 } catch (const Xapian::DocNotFoundError &e) {
28184 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[14]), SWIG_Python_NewPointerObj((new Xapian::DocNotFoundError(e)), swig_types[14], 0x1));
28185 } catch (const Xapian::DatabaseVersionError &e) {
28186 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[11]), SWIG_Python_NewPointerObj((new Xapian::DatabaseVersionError(e)), swig_types[11], 0x1));
28187 } catch (const Xapian::DatabaseOpeningError &e) {
28188 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[10]), SWIG_Python_NewPointerObj((new Xapian::DatabaseOpeningError(e)), swig_types[10], 0x1));
28189 } catch (const Xapian::DatabaseModifiedError &e) {
28190 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[9]), SWIG_Python_NewPointerObj((new Xapian::DatabaseModifiedError(e)), swig_types[9], 0x1));
28191 } catch (const Xapian::DatabaseLockError &e) {
28192 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[8]), SWIG_Python_NewPointerObj((new Xapian::DatabaseLockError(e)), swig_types[8], 0x1));
28193 } catch (const Xapian::DatabaseCreateError &e) {
28194 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[6]), SWIG_Python_NewPointerObj((new Xapian::DatabaseCreateError(e)), swig_types[6], 0x1));
28195 } catch (const Xapian::DatabaseCorruptError &e) {
28196 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[5]), SWIG_Python_NewPointerObj((new Xapian::DatabaseCorruptError(e)), swig_types[5], 0x1));
28197 } catch (const Xapian::DatabaseError &e) {
28198 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[7]), SWIG_Python_NewPointerObj((new Xapian::DatabaseError(e)), swig_types[7], 0x1));
28199 } catch (const Xapian::UnimplementedError &e) {
28200 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[57]), SWIG_Python_NewPointerObj((new Xapian::UnimplementedError(e)), swig_types[57], 0x1));
28201 } catch (const Xapian::InvalidOperationError &e) {
28202 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[25]), SWIG_Python_NewPointerObj((new Xapian::InvalidOperationError(e)), swig_types[25], 0x1));
28203 } catch (const Xapian::InvalidArgumentError &e) {
28204 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[24]), SWIG_Python_NewPointerObj((new Xapian::InvalidArgumentError(e)), swig_types[24], 0x1));
28205 } catch (const Xapian::AssertionError &e) {
28206 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[0]), SWIG_Python_NewPointerObj((new Xapian::AssertionError(e)), swig_types[0], 0x1));
28207 } catch (const Xapian::RuntimeError &e) {
28208 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[46]), SWIG_Python_NewPointerObj((new Xapian::RuntimeError(e)), swig_types[46], 0x1));
28209 } catch (const Xapian::LogicError &e) {
28210 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[27]), SWIG_Python_NewPointerObj((new Xapian::LogicError(e)), swig_types[27], 0x1));
28211 } catch (const Xapian::Error &e) {
28212 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[19]), SWIG_Python_NewPointerObj((new Xapian::Error(e)), swig_types[19], 0x1));
28213 } catch (const std::exception& e) {
28214 SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-3), e.what());
28215 } catch (...) {
28216 SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-1), "unknown error in Xapian");
28217 }
28218}
28219};
28220static __attribute__ ((__unused__)) Xapian::termpos Xapian_PositionIterator_get_termpos(Xapian::PositionIterator const *self){
28221 return *(*self);
28222 }
28223static __attribute__ ((__unused__)) void Xapian_PositionIterator_next(Xapian::PositionIterator *self){ ++(*self); }
28224static __attribute__ ((__unused__)) bool Xapian_PositionIterator_equals(Xapian::PositionIterator const *self,Xapian::PositionIterator const &other){
28225 return (*self) == other;
28226 }
28227static __attribute__ ((__unused__)) int
28228SWIG_AsVal_unsigned_SS_int (PyObject * obj, unsigned int *val)
28229{
28230 unsigned long v;
28231 int res = SWIG_AsVal_unsigned_SS_long (obj, &v);
28232 if ((res >= 0)) {
28233 if ((v > (2147483647 * 2U + 1U))) {
28234 return -7;
28235 } else {
28236 if (val) *val = static_cast< unsigned int >(v);
28237 }
28238 }
28239 return res;
28240}
28241static __attribute__ ((__unused__)) bool Xapian_PositionIterator___eq__(Xapian::PositionIterator *self,Xapian::PositionIterator const &other){
28242 return (*self)==other;
28243 }
28244static __attribute__ ((__unused__)) bool Xapian_PositionIterator___ne__(Xapian::PositionIterator *self,Xapian::PositionIterator const &other){
28245 return (*self)!=other;
28246 }
28247static __attribute__ ((__unused__)) bool Xapian_PostingIterator___eq__(Xapian::PostingIterator *self,Xapian::PostingIterator const &other){
28248 return (*self)==other;
28249 }
28250static __attribute__ ((__unused__)) bool Xapian_PostingIterator___ne__(Xapian::PostingIterator *self,Xapian::PostingIterator const &other){
28251 return (*self)!=other;
28252 }
28253static __attribute__ ((__unused__)) Xapian::docid Xapian_PostingIterator_get_docid(Xapian::PostingIterator const *self){
28254 return *(*self);
28255 }
28256static __attribute__ ((__unused__)) void Xapian_PostingIterator_next(Xapian::PostingIterator *self){ ++(*self); }
28257static __attribute__ ((__unused__)) bool Xapian_PostingIterator_equals(Xapian::PostingIterator const *self,Xapian::PostingIterator const &other){
28258 return (*self) == other;
28259 }
28260static __attribute__ ((__unused__)) std::string Xapian_TermIterator_get_term(Xapian::TermIterator const *self){
28261 return *(*self);
28262 }
28263static __attribute__ ((__unused__)) void Xapian_TermIterator_next(Xapian::TermIterator *self){ ++(*self); }
28264static __attribute__ ((__unused__)) bool Xapian_TermIterator_equals(Xapian::TermIterator const *self,Xapian::TermIterator const &other){
28265 return (*self) == other;
28266 }
28267static __attribute__ ((__unused__)) bool Xapian_TermIterator___eq__(Xapian::TermIterator *self,Xapian::TermIterator const &other){
28268 return (*self)==other;
28269 }
28270static __attribute__ ((__unused__)) bool Xapian_TermIterator___ne__(Xapian::TermIterator *self,Xapian::TermIterator const &other){
28271 return (*self)!=other;
28272 }
28273static __attribute__ ((__unused__)) std::string Xapian_ValueIterator_get_value(Xapian::ValueIterator const *self){
28274 return *(*self);
28275 }
28276static __attribute__ ((__unused__)) void Xapian_ValueIterator_next(Xapian::ValueIterator *self){ ++(*self); }
28277static __attribute__ ((__unused__)) bool Xapian_ValueIterator_equals(Xapian::ValueIterator const *self,Xapian::ValueIterator const &other){
28278 return (*self) == other;
28279 }
28280static __attribute__ ((__unused__)) bool Xapian_ValueIterator___eq__(Xapian::ValueIterator *self,Xapian::ValueIterator const &other){
28281 return (*self)==other;
28282 }
28283static __attribute__ ((__unused__)) bool Xapian_ValueIterator___ne__(Xapian::ValueIterator *self,Xapian::ValueIterator const &other){
28284 return (*self)!=other;
28285 }
28286static __attribute__ ((__unused__)) int
28287SWIG_AsVal_bool (PyObject *obj, bool *val)
28288{
28289 int r = PyObject_IsTrue(obj);
28290 if (r == -1)
28291 return (-1);
28292 if (val) *val = r ? true : false;
28293 return (0);
28294}
28295static __attribute__ ((__unused__)) int
28296SWIG_AsPtr_std_string (PyObject * obj, std::string **val)
28297{
28298 char* buf = 0 ; size_t size = 0; int alloc = ((0));
28299 if (((SWIG_AsCharPtrAndSize(obj, &buf, &size, &alloc)) >= 0)) {
28300 if (buf) {
28301 if (val) *val = new std::string(buf, size - 1);
28302 if (alloc == ((0) | ((1 << 8) << 1))) delete[] buf;
28303 return ((0) | ((1 << 8) << 1));
28304 } else {
28305 if (val) *val = 0;
28306 return ((0));
28307 }
28308 } else {
28309 static int init = 0;
28310 static swig_type_info* descriptor = 0;
28311 if (!init) {
28312 descriptor = SWIG_Python_TypeQuery("std::string" " *");
28313 init = 1;
28314 }
28315 if (descriptor) {
28316 std::string *vptr;
28317 int res = SWIG_Python_ConvertPtrAndOwn(obj, (void**)&vptr, descriptor, 0, 0);
28318 if ((res >= 0) && val) *val = vptr;
28319 return res;
28320 }
28321 }
28322 return (-1);
28323}
28324static __attribute__ ((__unused__)) Xapian::MSetIterator Xapian_MSet_get_hit(Xapian::MSet const *self,Xapian::doccount i){
28325 return ((*self)[i]);
28326 }
28327static __attribute__ ((__unused__)) int Xapian_MSet_get_document_percentage(Xapian::MSet const *self,Xapian::doccount i){
28328 return (*self).convert_to_percent( ((*self)[i]) );
28329 }
28330static __attribute__ ((__unused__)) Xapian::Document const Xapian_MSet_get_document(Xapian::MSet const *self,Xapian::doccount i){
28331 return ((*self)[i]).get_document();
28332 }
28333static __attribute__ ((__unused__)) Xapian::docid Xapian_MSet_get_docid(Xapian::MSet const *self,Xapian::doccount i){
28334 return *((*self)[i]);
28335 }
28336static __attribute__ ((__unused__)) int Xapian_MSet___cmp__(Xapian::MSet *self,Xapian::MSet const &other){
28337 if (self->get_max_possible() != other.get_max_possible()) {
28338 return (self->get_max_possible() < other.get_max_possible())? -1 : 1;
28339 }
28340 if (self->size() != other.size()) {
28341 return (self->size() < other.size())? -1 : 1;
28342 }
28343 for (size_t i=0; i<self->size(); ++i) {
28344 if (*(*self)[i] != *other[i]) {
28345 return (*(*self)[i] < *other[i])? -1 : 1;
28346 }
28347 if ((*self)[i].get_weight() != other[i].get_weight()) {
28348 return ((*self)[i].get_weight() < other[i].get_weight())? -1 : 1;
28349 }
28350 }
28351 return 0;
28352 }
28353static __attribute__ ((__unused__)) Xapian::docid Xapian_MSetIterator_get_docid(Xapian::MSetIterator const *self){
28354 return *(*self);
28355 }
28356static __attribute__ ((__unused__)) void Xapian_MSetIterator_next(Xapian::MSetIterator *self){ ++(*self); }
28357static __attribute__ ((__unused__)) void Xapian_MSetIterator_prev(Xapian::MSetIterator *self){ --(*self); }
28358static __attribute__ ((__unused__)) bool Xapian_MSetIterator_equals(Xapian::MSetIterator const *self,Xapian::MSetIterator const &other){
28359 return (*self) == other;
28360 }
28361static __attribute__ ((__unused__)) bool Xapian_MSetIterator___eq__(Xapian::MSetIterator *self,Xapian::MSetIterator const &other){
28362 return (*self)==other;
28363 }
28364static __attribute__ ((__unused__)) bool Xapian_MSetIterator___ne__(Xapian::MSetIterator *self,Xapian::MSetIterator const &other){
28365 return (*self)!=other;
28366 }
28367static __attribute__ ((__unused__)) std::string Xapian_ESetIterator_get_term(Xapian::ESetIterator const *self){
28368 return *(*self);
28369 }
28370static __attribute__ ((__unused__)) void Xapian_ESetIterator_next(Xapian::ESetIterator *self){ ++(*self); }
28371static __attribute__ ((__unused__)) void Xapian_ESetIterator_prev(Xapian::ESetIterator *self){ --(*self); }
28372static __attribute__ ((__unused__)) bool Xapian_ESetIterator_equals(Xapian::ESetIterator const *self,Xapian::ESetIterator const &other){
28373 return (*self) == other;
28374 }
28375static __attribute__ ((__unused__)) bool Xapian_ESetIterator___eq__(Xapian::ESetIterator *self,Xapian::ESetIterator const &other){
28376 return (*self)==other;
28377 }
28378static __attribute__ ((__unused__)) bool Xapian_ESetIterator___ne__(Xapian::ESetIterator *self,Xapian::ESetIterator const &other){
28379 return (*self)!=other;
28380 }
28381static __attribute__ ((__unused__)) std::pair< Xapian::TermIterator,Xapian::TermIterator > Xapian_Enquire_get_matching_terms(Xapian::Enquire const *self,Xapian::MSetIterator const &hit){
28382 return make_pair(self->get_matching_terms_begin(hit),
28383 self->get_matching_terms_end(hit));
28384 }
28385static __attribute__ ((__unused__)) inline PyObject *
28386SWIG_From_size_t (size_t value)
28387{
28388 return SWIG_From_unsigned_SS_long (static_cast< unsigned long >(value));
28389}
28390static __attribute__ ((__unused__)) Xapian::Query *new_Xapian_Query__SWIG_13(Xapian::Query::op op,std::vector< Xapian::Query > const &subqs,Xapian::termcount param=0){
28391 return new Xapian::Query(op, subqs.begin(), subqs.end(), param);
28392 }
28393class SwigDirector_PostingSource : public Xapian::PostingSource, public Swig::Director {
28394public:
28395 SwigDirector_PostingSource(PyObject *self);
28396 virtual ~SwigDirector_PostingSource();
28397 virtual Xapian::doccount get_termfreq_min() const;
28398 virtual Xapian::doccount get_termfreq_est() const;
28399 virtual Xapian::doccount get_termfreq_max() const;
28400 virtual Xapian::weight get_weight() const;
28401 virtual Xapian::docid get_docid() const;
28402 virtual void next(Xapian::weight min_wt);
28403 virtual void skip_to(Xapian::docid did, Xapian::weight min_wt);
28404 virtual bool check(Xapian::docid did, Xapian::weight min_wt);
28405 virtual bool at_end() const;
28406 virtual Xapian::PostingSource *clone() const;
28407 virtual std::string name() const;
28408 virtual std::string serialise() const;
28409 virtual Xapian::PostingSource *unserialise(std::string const &s) const;
28410 virtual void init(Xapian::Database const &db);
28411 virtual std::string get_description() const;
28412public:
28413 bool swig_get_inner(const char* name) const {
28414 std::map<std::string, bool>::const_iterator iv = inner.find(name);
28415 return (iv != inner.end() ? iv->second : false);
28416 }
28417 void swig_set_inner(const char* name, bool val) const
28418 { inner[name] = val;}
28419private:
28420 mutable std::map<std::string, bool> inner;
28421 PyObject *swig_get_method(size_t method_index, const char *method_name) const {
28422 PyObject *method = vtable[method_index];
28423 if (!method) {
28424 swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
28425 method = PyObject_GetAttr(swig_get_self(), name);
28426 if (method == __null) {
28427 std::string msg = "Method in class PostingSource doesn't exist, undefined ";
28428 msg += method_name;
28429 Swig::DirectorMethodException::raise(msg.c_str());
28430 }
28431 vtable[method_index] = method;
28432 };
28433 return method;
28434 }
28435private:
28436 mutable swig::SwigVar_PyObject vtable[12];
28437};
28438class SwigDirector_MatchDecider : public Xapian::MatchDecider, public Swig::Director {
28439public:
28440 SwigDirector_MatchDecider(PyObject *self);
28441 virtual bool operator ()(Xapian::Document const &doc) const;
28442 virtual ~SwigDirector_MatchDecider();
28443public:
28444 bool swig_get_inner(const char* name) const {
28445 std::map<std::string, bool>::const_iterator iv = inner.find(name);
28446 return (iv != inner.end() ? iv->second : false);
28447 }
28448 void swig_set_inner(const char* name, bool val) const
28449 { inner[name] = val;}
28450private:
28451 mutable std::map<std::string, bool> inner;
28452 PyObject *swig_get_method(size_t method_index, const char *method_name) const {
28453 PyObject *method = vtable[method_index];
28454 if (!method) {
28455 swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
28456 method = PyObject_GetAttr(swig_get_self(), name);
28457 if (method == __null) {
28458 std::string msg = "Method in class MatchDecider doesn't exist, undefined ";
28459 msg += method_name;
28460 Swig::DirectorMethodException::raise(msg.c_str());
28461 }
28462 vtable[method_index] = method;
28463 };
28464 return method;
28465 }
28466private:
28467 mutable swig::SwigVar_PyObject vtable[1];
28468};
28469class SwigDirector_ExpandDecider : public Xapian::ExpandDecider, public Swig::Director {
28470public:
28471 SwigDirector_ExpandDecider(PyObject *self);
28472 virtual bool operator ()(std::string const &term) const;
28473 virtual ~SwigDirector_ExpandDecider();
28474public:
28475 bool swig_get_inner(const char* name) const {
28476 std::map<std::string, bool>::const_iterator iv = inner.find(name);
28477 return (iv != inner.end() ? iv->second : false);
28478 }
28479 void swig_set_inner(const char* name, bool val) const
28480 { inner[name] = val;}
28481private:
28482 mutable std::map<std::string, bool> inner;
28483 PyObject *swig_get_method(size_t method_index, const char *method_name) const {
28484 PyObject *method = vtable[method_index];
28485 if (!method) {
28486 swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
28487 method = PyObject_GetAttr(swig_get_self(), name);
28488 if (method == __null) {
28489 std::string msg = "Method in class ExpandDecider doesn't exist, undefined ";
28490 msg += method_name;
28491 Swig::DirectorMethodException::raise(msg.c_str());
28492 }
28493 vtable[method_index] = method;
28494 };
28495 return method;
28496 }
28497private:
28498 mutable swig::SwigVar_PyObject vtable[1];
28499};
28500class SwigDirector_MatchSpy : public Xapian::MatchSpy, public Swig::Director {
28501public:
28502 SwigDirector_MatchSpy(PyObject *self);
28503 virtual ~SwigDirector_MatchSpy();
28504 virtual void operator ()(Xapian::Document const &doc, Xapian::weight wt);
28505 virtual Xapian::MatchSpy *clone() const;
28506 virtual std::string name() const;
28507 virtual std::string serialise() const;
28508 virtual Xapian::MatchSpy *unserialise(std::string const &s, Xapian::Registry const &context) const;
28509 virtual std::string serialise_results() const;
28510 virtual void merge_results(std::string const &s);
28511 virtual std::string get_description() const;
28512public:
28513 bool swig_get_inner(const char* name) const {
28514 std::map<std::string, bool>::const_iterator iv = inner.find(name);
28515 return (iv != inner.end() ? iv->second : false);
28516 }
28517 void swig_set_inner(const char* name, bool val) const
28518 { inner[name] = val;}
28519private:
28520 mutable std::map<std::string, bool> inner;
28521 PyObject *swig_get_method(size_t method_index, const char *method_name) const {
28522 PyObject *method = vtable[method_index];
28523 if (!method) {
28524 swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
28525 method = PyObject_GetAttr(swig_get_self(), name);
28526 if (method == __null) {
28527 std::string msg = "Method in class MatchSpy doesn't exist, undefined ";
28528 msg += method_name;
28529 Swig::DirectorMethodException::raise(msg.c_str());
28530 }
28531 vtable[method_index] = method;
28532 };
28533 return method;
28534 }
28535private:
28536 mutable swig::SwigVar_PyObject vtable[4];
28537};
28538class SwigDirector_Stopper : public Xapian::Stopper, public Swig::Director {
28539public:
28540 SwigDirector_Stopper(PyObject *self);
28541 virtual bool operator ()(std::string const &term) const;
28542 virtual ~SwigDirector_Stopper();
28543 virtual std::string get_description() const;
28544public:
28545 bool swig_get_inner(const char* name) const {
28546 std::map<std::string, bool>::const_iterator iv = inner.find(name);
28547 return (iv != inner.end() ? iv->second : false);
28548 }
28549 void swig_set_inner(const char* name, bool val) const
28550 { inner[name] = val;}
28551private:
28552 mutable std::map<std::string, bool> inner;
28553 PyObject *swig_get_method(size_t method_index, const char *method_name) const {
28554 PyObject *method = vtable[method_index];
28555 if (!method) {
28556 swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
28557 method = PyObject_GetAttr(swig_get_self(), name);
28558 if (method == __null) {
28559 std::string msg = "Method in class Stopper doesn't exist, undefined ";
28560 msg += method_name;
28561 Swig::DirectorMethodException::raise(msg.c_str());
28562 }
28563 vtable[method_index] = method;
28564 };
28565 return method;
28566 }
28567private:
28568 mutable swig::SwigVar_PyObject vtable[2];
28569};
28570struct SwigDirector_ValueRangeProcessor : public Xapian::ValueRangeProcessor, public Swig::Director {
28571public:
28572 SwigDirector_ValueRangeProcessor(PyObject *self);
28573 virtual ~SwigDirector_ValueRangeProcessor();
28574 virtual Xapian::valueno operator ()(std::string &begin, std::string &end);
28575public:
28576 bool swig_get_inner(const char* name) const {
28577 std::map<std::string, bool>::const_iterator iv = inner.find(name);
28578 return (iv != inner.end() ? iv->second : false);
28579 }
28580 void swig_set_inner(const char* name, bool val) const
28581 { inner[name] = val;}
28582private:
28583 mutable std::map<std::string, bool> inner;
28584 PyObject *swig_get_method(size_t method_index, const char *method_name) const {
28585 PyObject *method = vtable[method_index];
28586 if (!method) {
28587 swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
28588 method = PyObject_GetAttr(swig_get_self(), name);
28589 if (method == __null) {
28590 std::string msg = "Method in class ValueRangeProcessor doesn't exist, undefined ";
28591 msg += method_name;
28592 Swig::DirectorMethodException::raise(msg.c_str());
28593 }
28594 vtable[method_index] = method;
28595 };
28596 return method;
28597 }
28598private:
28599 mutable swig::SwigVar_PyObject vtable[1];
28600};
28601struct SwigDirector_StemImplementation : public Xapian::StemImplementation, public Swig::Director {
28602public:
28603 SwigDirector_StemImplementation(PyObject *self);
28604 virtual ~SwigDirector_StemImplementation();
28605 virtual std::string operator ()(std::string const &word);
28606 virtual std::string get_description() const;
28607public:
28608 bool swig_get_inner(const char* name) const {
28609 std::map<std::string, bool>::const_iterator iv = inner.find(name);
28610 return (iv != inner.end() ? iv->second : false);
28611 }
28612 void swig_set_inner(const char* name, bool val) const
28613 { inner[name] = val;}
28614private:
28615 mutable std::map<std::string, bool> inner;
28616 PyObject *swig_get_method(size_t method_index, const char *method_name) const {
28617 PyObject *method = vtable[method_index];
28618 if (!method) {
28619 swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
28620 method = PyObject_GetAttr(swig_get_self(), name);
28621 if (method == __null) {
28622 std::string msg = "Method in class StemImplementation doesn't exist, undefined ";
28623 msg += method_name;
28624 Swig::DirectorMethodException::raise(msg.c_str());
28625 }
28626 vtable[method_index] = method;
28627 };
28628 return method;
28629 }
28630private:
28631 mutable swig::SwigVar_PyObject vtable[2];
28632};
28633class SwigDirector_KeyMaker : public Xapian::KeyMaker, public Swig::Director {
28634public:
28635 SwigDirector_KeyMaker(PyObject *self);
28636 virtual std::string operator ()(Xapian::Document const &doc) const;
28637 virtual ~SwigDirector_KeyMaker();
28638public:
28639 bool swig_get_inner(const char* name) const {
28640 std::map<std::string, bool>::const_iterator iv = inner.find(name);
28641 return (iv != inner.end() ? iv->second : false);
28642 }
28643 void swig_set_inner(const char* name, bool val) const
28644 { inner[name] = val;}
28645private:
28646 mutable std::map<std::string, bool> inner;
28647 PyObject *swig_get_method(size_t method_index, const char *method_name) const {
28648 PyObject *method = vtable[method_index];
28649 if (!method) {
28650 swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
28651 method = PyObject_GetAttr(swig_get_self(), name);
28652 if (method == __null) {
28653 std::string msg = "Method in class KeyMaker doesn't exist, undefined ";
28654 msg += method_name;
28655 Swig::DirectorMethodException::raise(msg.c_str());
28656 }
28657 vtable[method_index] = method;
28658 };
28659 return method;
28660 }
28661private:
28662 mutable swig::SwigVar_PyObject vtable[1];
28663};
28664class SwigDirector_Compactor : public Xapian::Compactor, public Swig::Director {
28665public:
28666 SwigDirector_Compactor(PyObject *self);
28667 virtual ~SwigDirector_Compactor();
28668 virtual void set_status(std::string const &table, std::string const &status);
28669 virtual std::string resolve_duplicate_metadata(std::string const &key, size_t num_tags, std::string const tags[]);
28670public:
28671 bool swig_get_inner(const char* name) const {
28672 std::map<std::string, bool>::const_iterator iv = inner.find(name);
28673 return (iv != inner.end() ? iv->second : false);
28674 }
28675 void swig_set_inner(const char* name, bool val) const
28676 { inner[name] = val;}
28677private:
28678 mutable std::map<std::string, bool> inner;
28679 PyObject *swig_get_method(size_t method_index, const char *method_name) const {
28680 PyObject *method = vtable[method_index];
28681 if (!method) {
28682 swig::SwigVar_PyObject name = SWIG_Python_str_FromChar(method_name);
28683 method = PyObject_GetAttr(swig_get_self(), name);
28684 if (method == __null) {
28685 std::string msg = "Method in class Compactor doesn't exist, undefined ";
28686 msg += method_name;
28687 Swig::DirectorMethodException::raise(msg.c_str());
28688 }
28689 vtable[method_index] = method;
28690 };
28691 return method;
28692 }
28693private:
28694 mutable swig::SwigVar_PyObject vtable[2];
28695};
28696SwigDirector_PostingSource::SwigDirector_PostingSource(PyObject *self): Xapian::PostingSource(), Swig::Director(self) {
28697 ;
28698}
28699SwigDirector_PostingSource::~SwigDirector_PostingSource() {
28700}
28701Xapian::doccount SwigDirector_PostingSource::get_termfreq_min() const {
28702 Xapian::doccount c_result;
28703 SWIG_Python_Thread_Block _swig_thread_block;
28704 {
28705 if (!swig_get_self()) {
28706 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28707 }
28708 const size_t swig_method_index = 0;
28709 const char * const swig_method_name = "get_termfreq_min";
28710 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28711 swig::SwigVar_PyObject args = PyTuple_New(0);
28712 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
28713 if (result == __null) {
28714 PyObject *error = PyErr_Occurred();
28715 {
28716 if (error != __null) {
28717 throw Swig::DirectorMethodException();
28718 }
28719 }
28720 }
28721 unsigned int swig_val;
28722 int swig_res = SWIG_AsVal_unsigned_SS_int(result, &swig_val);
28723 if (!(swig_res >= 0)) {
28724 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""Xapian::doccount""'");
28725 }
28726 c_result = static_cast< Xapian::doccount >(swig_val);
28727 }
28728 _swig_thread_block.end();
28729 return (Xapian::doccount) c_result;
28730}
28731Xapian::doccount SwigDirector_PostingSource::get_termfreq_est() const {
28732 Xapian::doccount c_result;
28733 SWIG_Python_Thread_Block _swig_thread_block;
28734 {
28735 if (!swig_get_self()) {
28736 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28737 }
28738 const size_t swig_method_index = 1;
28739 const char * const swig_method_name = "get_termfreq_est";
28740 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28741 swig::SwigVar_PyObject args = PyTuple_New(0);
28742 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
28743 if (result == __null) {
28744 PyObject *error = PyErr_Occurred();
28745 {
28746 if (error != __null) {
28747 throw Swig::DirectorMethodException();
28748 }
28749 }
28750 }
28751 unsigned int swig_val;
28752 int swig_res = SWIG_AsVal_unsigned_SS_int(result, &swig_val);
28753 if (!(swig_res >= 0)) {
28754 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""Xapian::doccount""'");
28755 }
28756 c_result = static_cast< Xapian::doccount >(swig_val);
28757 }
28758 _swig_thread_block.end();
28759 return (Xapian::doccount) c_result;
28760}
28761Xapian::doccount SwigDirector_PostingSource::get_termfreq_max() const {
28762 Xapian::doccount c_result;
28763 SWIG_Python_Thread_Block _swig_thread_block;
28764 {
28765 if (!swig_get_self()) {
28766 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28767 }
28768 const size_t swig_method_index = 2;
28769 const char * const swig_method_name = "get_termfreq_max";
28770 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28771 swig::SwigVar_PyObject args = PyTuple_New(0);
28772 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
28773 if (result == __null) {
28774 PyObject *error = PyErr_Occurred();
28775 {
28776 if (error != __null) {
28777 throw Swig::DirectorMethodException();
28778 }
28779 }
28780 }
28781 unsigned int swig_val;
28782 int swig_res = SWIG_AsVal_unsigned_SS_int(result, &swig_val);
28783 if (!(swig_res >= 0)) {
28784 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""Xapian::doccount""'");
28785 }
28786 c_result = static_cast< Xapian::doccount >(swig_val);
28787 }
28788 _swig_thread_block.end();
28789 return (Xapian::doccount) c_result;
28790}
28791Xapian::weight SwigDirector_PostingSource::get_weight() const {
28792 Xapian::weight c_result;
28793 SWIG_Python_Thread_Block _swig_thread_block;
28794 {
28795 if (!swig_get_self()) {
28796 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28797 }
28798 const size_t swig_method_index = 3;
28799 const char * const swig_method_name = "get_weight";
28800 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28801 swig::SwigVar_PyObject args = PyTuple_New(0);
28802 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
28803 if (result == __null) {
28804 PyObject *error = PyErr_Occurred();
28805 {
28806 if (error != __null) {
28807 throw Swig::DirectorMethodException();
28808 }
28809 }
28810 }
28811 double swig_val;
28812 int swig_res = SWIG_AsVal_double(result, &swig_val);
28813 if (!(swig_res >= 0)) {
28814 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""Xapian::weight""'");
28815 }
28816 c_result = static_cast< Xapian::weight >(swig_val);
28817 }
28818 _swig_thread_block.end();
28819 return (Xapian::weight) c_result;
28820}
28821Xapian::docid SwigDirector_PostingSource::get_docid() const {
28822 Xapian::docid c_result;
28823 SWIG_Python_Thread_Block _swig_thread_block;
28824 {
28825 if (!swig_get_self()) {
28826 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28827 }
28828 const size_t swig_method_index = 4;
28829 const char * const swig_method_name = "get_docid";
28830 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28831 swig::SwigVar_PyObject args = PyTuple_New(0);
28832 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
28833 if (result == __null) {
28834 PyObject *error = PyErr_Occurred();
28835 {
28836 if (error != __null) {
28837 throw Swig::DirectorMethodException();
28838 }
28839 }
28840 }
28841 unsigned int swig_val;
28842 int swig_res = SWIG_AsVal_unsigned_SS_int(result, &swig_val);
28843 if (!(swig_res >= 0)) {
28844 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""Xapian::docid""'");
28845 }
28846 c_result = static_cast< Xapian::docid >(swig_val);
28847 }
28848 _swig_thread_block.end();
28849 return (Xapian::docid) c_result;
28850}
28851void SwigDirector_PostingSource::next(Xapian::weight min_wt) {
28852 SWIG_Python_Thread_Block _swig_thread_block;
28853 {
28854 swig::SwigVar_PyObject obj0;
28855 obj0 = PyFloat_FromDouble(static_cast< double >(min_wt));
28856 if (!swig_get_self()) {
28857 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28858 }
28859 const size_t swig_method_index = 5;
28860 const char * const swig_method_name = "next";
28861 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28862 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0, __null);
28863 if (result == __null) {
28864 PyObject *error = PyErr_Occurred();
28865 {
28866 if (error != __null) {
28867 throw Swig::DirectorMethodException();
28868 }
28869 }
28870 }
28871 }
28872 _swig_thread_block.end();
28873}
28874void SwigDirector_PostingSource::skip_to(Xapian::docid did, Xapian::weight min_wt) {
28875 SWIG_Python_Thread_Block _swig_thread_block;
28876 {
28877 swig::SwigVar_PyObject obj0;
28878 obj0 = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(did));
28879 swig::SwigVar_PyObject obj1;
28880 obj1 = PyFloat_FromDouble(static_cast< double >(min_wt));
28881 if (!swig_get_self()) {
28882 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28883 }
28884 const size_t swig_method_index = 6;
28885 const char * const swig_method_name = "skip_to";
28886 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28887 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0,(PyObject *)obj1, __null);
28888 if (result == __null) {
28889 PyObject *error = PyErr_Occurred();
28890 {
28891 if (error != __null) {
28892 throw Swig::DirectorMethodException();
28893 }
28894 }
28895 }
28896 }
28897 _swig_thread_block.end();
28898}
28899bool SwigDirector_PostingSource::check(Xapian::docid did, Xapian::weight min_wt) {
28900 bool c_result;
28901 SWIG_Python_Thread_Block _swig_thread_block;
28902 {
28903 swig::SwigVar_PyObject obj0;
28904 obj0 = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(did));
28905 swig::SwigVar_PyObject obj1;
28906 obj1 = PyFloat_FromDouble(static_cast< double >(min_wt));
28907 if (!swig_get_self()) {
28908 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28909 }
28910 const size_t swig_method_index = 7;
28911 const char * const swig_method_name = "check";
28912 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28913 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0,(PyObject *)obj1, __null);
28914 if (result == __null) {
28915 PyObject *error = PyErr_Occurred();
28916 {
28917 if (error != __null) {
28918 throw Swig::DirectorMethodException();
28919 }
28920 }
28921 }
28922 bool swig_val;
28923 int swig_res = SWIG_AsVal_bool(result, &swig_val);
28924 if (!(swig_res >= 0)) {
28925 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""bool""'");
28926 }
28927 c_result = static_cast< bool >(swig_val);
28928 }
28929 _swig_thread_block.end();
28930 return (bool) c_result;
28931}
28932bool SwigDirector_PostingSource::at_end() const {
28933 bool c_result;
28934 SWIG_Python_Thread_Block _swig_thread_block;
28935 {
28936 if (!swig_get_self()) {
28937 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28938 }
28939 const size_t swig_method_index = 8;
28940 const char * const swig_method_name = "at_end";
28941 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28942 swig::SwigVar_PyObject args = PyTuple_New(0);
28943 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
28944 if (result == __null) {
28945 PyObject *error = PyErr_Occurred();
28946 {
28947 if (error != __null) {
28948 throw Swig::DirectorMethodException();
28949 }
28950 }
28951 }
28952 bool swig_val;
28953 int swig_res = SWIG_AsVal_bool(result, &swig_val);
28954 if (!(swig_res >= 0)) {
28955 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""bool""'");
28956 }
28957 c_result = static_cast< bool >(swig_val);
28958 }
28959 _swig_thread_block.end();
28960 return (bool) c_result;
28961}
28962Xapian::PostingSource *SwigDirector_PostingSource::clone() const {
28963 return Xapian::PostingSource::clone();
28964}
28965std::string SwigDirector_PostingSource::name() const {
28966 std::string c_result;
28967 SWIG_Python_Thread_Block _swig_thread_block;
28968 {
28969 if (!swig_get_self()) {
28970 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
28971 }
28972 const size_t swig_method_index = 9;
28973 const char * const swig_method_name = "name";
28974 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
28975 swig::SwigVar_PyObject args = PyTuple_New(0);
28976 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
28977 if (result == __null) {
28978 PyObject *error = PyErr_Occurred();
28979 {
28980 if (error != __null) {
28981 throw Swig::DirectorMethodException();
28982 }
28983 }
28984 }
28985 std::string *swig_optr = 0;
28986 int swig_ores;
28987 {
28988 PyObject * tmp = result;
28989 ( ((PyObject*)(tmp))->ob_refcnt++);
28990 swig_ores = SWIG_anystring_as_ptr(&tmp, &swig_optr);
28991 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
28992 }
28993 if (!(swig_ores >= 0) || !swig_optr) {
28994 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((swig_optr ? swig_ores : -5) != (-1)) ? (swig_optr ? swig_ores : -5) : -5)), "in output value of type '""std::string""'");
28995 }
28996 c_result = *swig_optr;
28997 if (((swig_ores >= 0) && (swig_ores & ((1 << 8) << 1)))) delete swig_optr;
28998 }
28999 _swig_thread_block.end();
29000 return (std::string) c_result;
29001}
29002std::string SwigDirector_PostingSource::serialise() const {
29003 return Xapian::PostingSource::serialise();
29004}
29005Xapian::PostingSource *SwigDirector_PostingSource::unserialise(std::string const &s) const {
29006 return Xapian::PostingSource::unserialise(s);
29007}
29008void SwigDirector_PostingSource::init(Xapian::Database const &db) {
29009 SWIG_Python_Thread_Block _swig_thread_block;
29010 {
29011 swig::SwigVar_PyObject obj0;
29012 obj0 = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(&db)), swig_types[4], 0);
29013 if (!swig_get_self()) {
29014 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
29015 }
29016 const size_t swig_method_index = 10;
29017 const char * const swig_method_name = "init";
29018 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29019 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0, __null);
29020 if (result == __null) {
29021 PyObject *error = PyErr_Occurred();
29022 {
29023 if (error != __null) {
29024 throw Swig::DirectorMethodException();
29025 }
29026 }
29027 }
29028 }
29029 _swig_thread_block.end();
29030}
29031std::string SwigDirector_PostingSource::get_description() const {
29032 std::string c_result;
29033 SWIG_Python_Thread_Block _swig_thread_block;
29034 {
29035 if (!swig_get_self()) {
29036 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call PostingSource.__init__.");
29037 }
29038 const size_t swig_method_index = 11;
29039 const char * const swig_method_name = "__str__";
29040 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29041 swig::SwigVar_PyObject args = PyTuple_New(0);
29042 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
29043 if (result == __null) {
29044 PyObject *error = PyErr_Occurred();
29045 {
29046 if (error != __null) {
29047 throw Swig::DirectorMethodException();
29048 }
29049 }
29050 }
29051 std::string *swig_optr = 0;
29052 int swig_ores;
29053 {
29054 PyObject * tmp = result;
29055 ( ((PyObject*)(tmp))->ob_refcnt++);
29056 swig_ores = SWIG_anystring_as_ptr(&tmp, &swig_optr);
29057 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
29058 }
29059 if (!(swig_ores >= 0) || !swig_optr) {
29060 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((swig_optr ? swig_ores : -5) != (-1)) ? (swig_optr ? swig_ores : -5) : -5)), "in output value of type '""std::string""'");
29061 }
29062 c_result = *swig_optr;
29063 if (((swig_ores >= 0) && (swig_ores & ((1 << 8) << 1)))) delete swig_optr;
29064 }
29065 _swig_thread_block.end();
29066 return (std::string) c_result;
29067}
29068SwigDirector_MatchDecider::SwigDirector_MatchDecider(PyObject *self): Xapian::MatchDecider(), Swig::Director(self) {
29069 ;
29070}
29071bool SwigDirector_MatchDecider::operator ()(Xapian::Document const &doc) const {
29072 bool c_result;
29073 SWIG_Python_Thread_Block _swig_thread_block;
29074 {
29075 swig::SwigVar_PyObject obj0;
29076 obj0 = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(&doc)), swig_types[15], 0);
29077 if (!swig_get_self()) {
29078 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call MatchDecider.__init__.");
29079 }
29080 const size_t swig_method_index = 0;
29081 const char * const swig_method_name = "__call__";
29082 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29083 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0, __null);
29084 if (result == __null) {
29085 PyObject *error = PyErr_Occurred();
29086 {
29087 if (error != __null) {
29088 throw Swig::DirectorMethodException();
29089 }
29090 }
29091 }
29092 bool swig_val;
29093 int swig_res = SWIG_AsVal_bool(result, &swig_val);
29094 if (!(swig_res >= 0)) {
29095 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""bool""'");
29096 }
29097 c_result = static_cast< bool >(swig_val);
29098 }
29099 _swig_thread_block.end();
29100 return (bool) c_result;
29101}
29102SwigDirector_MatchDecider::~SwigDirector_MatchDecider() {
29103}
29104SwigDirector_ExpandDecider::SwigDirector_ExpandDecider(PyObject *self): Xapian::ExpandDecider(), Swig::Director(self) {
29105 ;
29106}
29107bool SwigDirector_ExpandDecider::operator ()(std::string const &term) const {
29108 bool c_result;
29109 SWIG_Python_Thread_Block _swig_thread_block;
29110 {
29111 swig::SwigVar_PyObject obj0;
29112 obj0 = SWIG_From_std_string(static_cast< std::string >(term));
29113 if (!swig_get_self()) {
29114 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call ExpandDecider.__init__.");
29115 }
29116 const size_t swig_method_index = 0;
29117 const char * const swig_method_name = "__call__";
29118 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29119 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0, __null);
29120 if (result == __null) {
29121 PyObject *error = PyErr_Occurred();
29122 {
29123 if (error != __null) {
29124 throw Swig::DirectorMethodException();
29125 }
29126 }
29127 }
29128 bool swig_val;
29129 int swig_res = SWIG_AsVal_bool(result, &swig_val);
29130 if (!(swig_res >= 0)) {
29131 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""bool""'");
29132 }
29133 c_result = static_cast< bool >(swig_val);
29134 }
29135 _swig_thread_block.end();
29136 return (bool) c_result;
29137}
29138SwigDirector_ExpandDecider::~SwigDirector_ExpandDecider() {
29139}
29140SwigDirector_MatchSpy::SwigDirector_MatchSpy(PyObject *self): Xapian::MatchSpy(), Swig::Director(self) {
29141 ;
29142}
29143SwigDirector_MatchSpy::~SwigDirector_MatchSpy() {
29144}
29145void SwigDirector_MatchSpy::operator ()(Xapian::Document const &doc, Xapian::weight wt) {
29146 SWIG_Python_Thread_Block _swig_thread_block;
29147 {
29148 swig::SwigVar_PyObject obj0;
29149 obj0 = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(&doc)), swig_types[15], 0);
29150 swig::SwigVar_PyObject obj1;
29151 obj1 = PyFloat_FromDouble(static_cast< double >(wt));
29152 if (!swig_get_self()) {
29153 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call MatchSpy.__init__.");
29154 }
29155 const size_t swig_method_index = 0;
29156 const char * const swig_method_name = "__call__";
29157 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29158 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0,(PyObject *)obj1, __null);
29159 if (result == __null) {
29160 PyObject *error = PyErr_Occurred();
29161 {
29162 if (error != __null) {
29163 throw Swig::DirectorMethodException();
29164 }
29165 }
29166 }
29167 }
29168 _swig_thread_block.end();
29169}
29170Xapian::MatchSpy *SwigDirector_MatchSpy::clone() const {
29171 return Xapian::MatchSpy::clone();
29172}
29173std::string SwigDirector_MatchSpy::name() const {
29174 std::string c_result;
29175 SWIG_Python_Thread_Block _swig_thread_block;
29176 {
29177 if (!swig_get_self()) {
29178 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call MatchSpy.__init__.");
29179 }
29180 const size_t swig_method_index = 1;
29181 const char * const swig_method_name = "name";
29182 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29183 swig::SwigVar_PyObject args = PyTuple_New(0);
29184 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
29185 if (result == __null) {
29186 PyObject *error = PyErr_Occurred();
29187 {
29188 if (error != __null) {
29189 throw Swig::DirectorMethodException();
29190 }
29191 }
29192 }
29193 std::string *swig_optr = 0;
29194 int swig_ores;
29195 {
29196 PyObject * tmp = result;
29197 ( ((PyObject*)(tmp))->ob_refcnt++);
29198 swig_ores = SWIG_anystring_as_ptr(&tmp, &swig_optr);
29199 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
29200 }
29201 if (!(swig_ores >= 0) || !swig_optr) {
29202 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((swig_optr ? swig_ores : -5) != (-1)) ? (swig_optr ? swig_ores : -5) : -5)), "in output value of type '""std::string""'");
29203 }
29204 c_result = *swig_optr;
29205 if (((swig_ores >= 0) && (swig_ores & ((1 << 8) << 1)))) delete swig_optr;
29206 }
29207 _swig_thread_block.end();
29208 return (std::string) c_result;
29209}
29210std::string SwigDirector_MatchSpy::serialise() const {
29211 return Xapian::MatchSpy::serialise();
29212}
29213Xapian::MatchSpy *SwigDirector_MatchSpy::unserialise(std::string const &s, Xapian::Registry const &context) const {
29214 return Xapian::MatchSpy::unserialise(s,context);
29215}
29216std::string SwigDirector_MatchSpy::serialise_results() const {
29217 return Xapian::MatchSpy::serialise_results();
29218}
29219void SwigDirector_MatchSpy::merge_results(std::string const &s) {
29220 SWIG_Python_Thread_Block _swig_thread_block;
29221 {
29222 swig::SwigVar_PyObject obj0;
29223 obj0 = SWIG_From_std_string(static_cast< std::string >(s));
29224 if (!swig_get_self()) {
29225 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call MatchSpy.__init__.");
29226 }
29227 const size_t swig_method_index = 2;
29228 const char * const swig_method_name = "merge_results";
29229 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29230 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0, __null);
29231 if (result == __null) {
29232 PyObject *error = PyErr_Occurred();
29233 {
29234 if (error != __null) {
29235 throw Swig::DirectorMethodException();
29236 }
29237 }
29238 }
29239 }
29240 _swig_thread_block.end();
29241}
29242std::string SwigDirector_MatchSpy::get_description() const {
29243 std::string c_result;
29244 SWIG_Python_Thread_Block _swig_thread_block;
29245 {
29246 if (!swig_get_self()) {
29247 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call MatchSpy.__init__.");
29248 }
29249 const size_t swig_method_index = 3;
29250 const char * const swig_method_name = "__str__";
29251 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29252 swig::SwigVar_PyObject args = PyTuple_New(0);
29253 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
29254 if (result == __null) {
29255 PyObject *error = PyErr_Occurred();
29256 {
29257 if (error != __null) {
29258 throw Swig::DirectorMethodException();
29259 }
29260 }
29261 }
29262 std::string *swig_optr = 0;
29263 int swig_ores;
29264 {
29265 PyObject * tmp = result;
29266 ( ((PyObject*)(tmp))->ob_refcnt++);
29267 swig_ores = SWIG_anystring_as_ptr(&tmp, &swig_optr);
29268 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
29269 }
29270 if (!(swig_ores >= 0) || !swig_optr) {
29271 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((swig_optr ? swig_ores : -5) != (-1)) ? (swig_optr ? swig_ores : -5) : -5)), "in output value of type '""std::string""'");
29272 }
29273 c_result = *swig_optr;
29274 if (((swig_ores >= 0) && (swig_ores & ((1 << 8) << 1)))) delete swig_optr;
29275 }
29276 _swig_thread_block.end();
29277 return (std::string) c_result;
29278}
29279SwigDirector_Stopper::SwigDirector_Stopper(PyObject *self): Xapian::Stopper(), Swig::Director(self) {
29280 ;
29281}
29282bool SwigDirector_Stopper::operator ()(std::string const &term) const {
29283 bool c_result;
29284 SWIG_Python_Thread_Block _swig_thread_block;
29285 {
29286 swig::SwigVar_PyObject obj0;
29287 obj0 = SWIG_From_std_string(static_cast< std::string >(term));
29288 if (!swig_get_self()) {
29289 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call Stopper.__init__.");
29290 }
29291 const size_t swig_method_index = 0;
29292 const char * const swig_method_name = "__call__";
29293 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29294 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0, __null);
29295 if (result == __null) {
29296 PyObject *error = PyErr_Occurred();
29297 {
29298 if (error != __null) {
29299 throw Swig::DirectorMethodException();
29300 }
29301 }
29302 }
29303 bool swig_val;
29304 int swig_res = SWIG_AsVal_bool(result, &swig_val);
29305 if (!(swig_res >= 0)) {
29306 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""bool""'");
29307 }
29308 c_result = static_cast< bool >(swig_val);
29309 }
29310 _swig_thread_block.end();
29311 return (bool) c_result;
29312}
29313SwigDirector_Stopper::~SwigDirector_Stopper() {
29314}
29315std::string SwigDirector_Stopper::get_description() const {
29316 std::string c_result;
29317 SWIG_Python_Thread_Block _swig_thread_block;
29318 {
29319 if (!swig_get_self()) {
29320 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call Stopper.__init__.");
29321 }
29322 const size_t swig_method_index = 1;
29323 const char * const swig_method_name = "__str__";
29324 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29325 swig::SwigVar_PyObject args = PyTuple_New(0);
29326 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
29327 if (result == __null) {
29328 PyObject *error = PyErr_Occurred();
29329 {
29330 if (error != __null) {
29331 throw Swig::DirectorMethodException();
29332 }
29333 }
29334 }
29335 std::string *swig_optr = 0;
29336 int swig_ores;
29337 {
29338 PyObject * tmp = result;
29339 ( ((PyObject*)(tmp))->ob_refcnt++);
29340 swig_ores = SWIG_anystring_as_ptr(&tmp, &swig_optr);
29341 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
29342 }
29343 if (!(swig_ores >= 0) || !swig_optr) {
29344 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((swig_optr ? swig_ores : -5) != (-1)) ? (swig_optr ? swig_ores : -5) : -5)), "in output value of type '""std::string""'");
29345 }
29346 c_result = *swig_optr;
29347 if (((swig_ores >= 0) && (swig_ores & ((1 << 8) << 1)))) delete swig_optr;
29348 }
29349 _swig_thread_block.end();
29350 return (std::string) c_result;
29351}
29352SwigDirector_ValueRangeProcessor::SwigDirector_ValueRangeProcessor(PyObject *self): Xapian::ValueRangeProcessor(), Swig::Director(self) {
29353 ;
29354}
29355SwigDirector_ValueRangeProcessor::~SwigDirector_ValueRangeProcessor() {
29356}
29357Xapian::valueno SwigDirector_ValueRangeProcessor::operator ()(std::string &begin, std::string &end) {
29358 Xapian::valueno c_result;
29359 SWIG_Python_Thread_Block _swig_thread_block;
29360 {
29361 swig::SwigVar_PyObject obj0;
29362 obj0 = SWIG_From_std_string(static_cast< std::string >(begin));
29363 swig::SwigVar_PyObject obj1;
29364 obj1 = SWIG_From_std_string(static_cast< std::string >(end));
29365 if (!swig_get_self()) {
29366 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call ValueRangeProcessor.__init__.");
29367 }
29368 const size_t swig_method_index = 0;
29369 const char * const swig_method_name = "__call__";
29370 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29371 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0,(PyObject *)obj1, __null);
29372 if (result == __null) {
29373 PyObject *error = PyErr_Occurred();
29374 {
29375 if (error != __null) {
29376 throw Swig::DirectorMethodException();
29377 }
29378 }
29379 }
29380 if (!((((((PyObject*)(result))->ob_type))->tp_flags & ((1L<<26))) != 0)) {
29381 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((-5 != (-1)) ? -5 : -5)), "in output value of type '""(Xapian::valueno, std::string, std::string)""'");
29382 }
29383 if (PyTuple_Size(result) != 3) {
29384 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((-4 != (-1)) ? -4 : -5)), "in output value of type '""(Xapian::valueno, std::string, std::string)""'");
29385 }
29386 unsigned int swig_val;
29387 int swig_res = SWIG_AsVal_unsigned_SS_int((((PyTupleObject *)((PyObject *)result))->ob_item[0]), &swig_val);
29388 if (!(swig_res >= 0)) {
29389 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType(((swig_res != (-1)) ? swig_res : -5)), "in output value of type '""(Xapian::valueno, std::string, std::string)""'");
29390 }
29391 c_result = static_cast< Xapian::valueno >(swig_val);
29392 std::string *ptr = (std::string *)0;
29393 swig_res = SWIG_AsPtr_std_string((((PyTupleObject *)((PyObject *)result))->ob_item[1]), &ptr);
29394 if (!(swig_res >= 0) || !ptr) {
29395 delete ptr;
29396 ptr = (std::string *)0;
29397 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((ptr ? swig_res : -5) != (-1)) ? (ptr ? swig_res : -5) : -5)), "in output value of type '""(Xapian::valueno, std::string, std::string)""'");
29398 }
29399 begin = *ptr;
29400 delete ptr;
29401 ptr = (std::string *)0;
29402 swig_res = SWIG_AsPtr_std_string((((PyTupleObject *)((PyObject *)result))->ob_item[2]), &ptr);
29403 if (!(swig_res >= 0) || !ptr) {
29404 delete ptr;
29405 ptr = (std::string *)0;
29406 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((ptr ? swig_res : -5) != (-1)) ? (ptr ? swig_res : -5) : -5)), "in output value of type '""(Xapian::valueno, std::string, std::string)""'");
29407 }
29408 end = *ptr;
29409 delete ptr;
29410 ptr = (std::string *)0;
29411 }
29412 _swig_thread_block.end();
29413 return (Xapian::valueno) c_result;
29414}
29415SwigDirector_StemImplementation::SwigDirector_StemImplementation(PyObject *self): Xapian::StemImplementation(), Swig::Director(self) {
29416 ;
29417}
29418SwigDirector_StemImplementation::~SwigDirector_StemImplementation() {
29419}
29420std::string SwigDirector_StemImplementation::operator ()(std::string const &word) {
29421 std::string c_result;
29422 SWIG_Python_Thread_Block _swig_thread_block;
29423 {
29424 swig::SwigVar_PyObject obj0;
29425 obj0 = SWIG_From_std_string(static_cast< std::string >(word));
29426 if (!swig_get_self()) {
29427 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call StemImplementation.__init__.");
29428 }
29429 const size_t swig_method_index = 0;
29430 const char * const swig_method_name = "__call__";
29431 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29432 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0, __null);
29433 if (result == __null) {
29434 PyObject *error = PyErr_Occurred();
29435 {
29436 if (error != __null) {
29437 throw Swig::DirectorMethodException();
29438 }
29439 }
29440 }
29441 std::string *swig_optr = 0;
29442 int swig_ores;
29443 {
29444 PyObject * tmp = result;
29445 ( ((PyObject*)(tmp))->ob_refcnt++);
29446 swig_ores = SWIG_anystring_as_ptr(&tmp, &swig_optr);
29447 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
29448 }
29449 if (!(swig_ores >= 0) || !swig_optr) {
29450 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((swig_optr ? swig_ores : -5) != (-1)) ? (swig_optr ? swig_ores : -5) : -5)), "in output value of type '""std::string""'");
29451 }
29452 c_result = *swig_optr;
29453 if (((swig_ores >= 0) && (swig_ores & ((1 << 8) << 1)))) delete swig_optr;
29454 }
29455 _swig_thread_block.end();
29456 return (std::string) c_result;
29457}
29458std::string SwigDirector_StemImplementation::get_description() const {
29459 std::string c_result;
29460 SWIG_Python_Thread_Block _swig_thread_block;
29461 {
29462 if (!swig_get_self()) {
29463 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call StemImplementation.__init__.");
29464 }
29465 const size_t swig_method_index = 1;
29466 const char * const swig_method_name = "__str__";
29467 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29468 swig::SwigVar_PyObject args = PyTuple_New(0);
29469 swig::SwigVar_PyObject result = PyObject_Call(method, (PyObject*) args, __null);
29470 if (result == __null) {
29471 PyObject *error = PyErr_Occurred();
29472 {
29473 if (error != __null) {
29474 throw Swig::DirectorMethodException();
29475 }
29476 }
29477 }
29478 std::string *swig_optr = 0;
29479 int swig_ores;
29480 {
29481 PyObject * tmp = result;
29482 ( ((PyObject*)(tmp))->ob_refcnt++);
29483 swig_ores = SWIG_anystring_as_ptr(&tmp, &swig_optr);
29484 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
29485 }
29486 if (!(swig_ores >= 0) || !swig_optr) {
29487 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((swig_optr ? swig_ores : -5) != (-1)) ? (swig_optr ? swig_ores : -5) : -5)), "in output value of type '""std::string""'");
29488 }
29489 c_result = *swig_optr;
29490 if (((swig_ores >= 0) && (swig_ores & ((1 << 8) << 1)))) delete swig_optr;
29491 }
29492 _swig_thread_block.end();
29493 return (std::string) c_result;
29494}
29495SwigDirector_KeyMaker::SwigDirector_KeyMaker(PyObject *self): Xapian::KeyMaker(), Swig::Director(self) {
29496 ;
29497}
29498std::string SwigDirector_KeyMaker::operator ()(Xapian::Document const &doc) const {
29499 std::string c_result;
29500 SWIG_Python_Thread_Block _swig_thread_block;
29501 {
29502 swig::SwigVar_PyObject obj0;
29503 obj0 = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(&doc)), swig_types[15], 0);
29504 if (!swig_get_self()) {
29505 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call KeyMaker.__init__.");
29506 }
29507 const size_t swig_method_index = 0;
29508 const char * const swig_method_name = "__call__";
29509 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29510 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0, __null);
29511 if (result == __null) {
29512 PyObject *error = PyErr_Occurred();
29513 {
29514 if (error != __null) {
29515 throw Swig::DirectorMethodException();
29516 }
29517 }
29518 }
29519 std::string *swig_optr = 0;
29520 int swig_ores;
29521 {
29522 PyObject * tmp = result;
29523 ( ((PyObject*)(tmp))->ob_refcnt++);
29524 swig_ores = SWIG_anystring_as_ptr(&tmp, &swig_optr);
29525 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
29526 }
29527 if (!(swig_ores >= 0) || !swig_optr) {
29528 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((swig_optr ? swig_ores : -5) != (-1)) ? (swig_optr ? swig_ores : -5) : -5)), "in output value of type '""std::string""'");
29529 }
29530 c_result = *swig_optr;
29531 if (((swig_ores >= 0) && (swig_ores & ((1 << 8) << 1)))) delete swig_optr;
29532 }
29533 _swig_thread_block.end();
29534 return (std::string) c_result;
29535}
29536SwigDirector_KeyMaker::~SwigDirector_KeyMaker() {
29537}
29538SwigDirector_Compactor::SwigDirector_Compactor(PyObject *self): Xapian::Compactor(), Swig::Director(self) {
29539 ;
29540}
29541SwigDirector_Compactor::~SwigDirector_Compactor() {
29542}
29543void SwigDirector_Compactor::set_status(std::string const &table, std::string const &status) {
29544 SWIG_Python_Thread_Block _swig_thread_block;
29545 {
29546 swig::SwigVar_PyObject obj0;
29547 obj0 = SWIG_From_std_string(static_cast< std::string >(table));
29548 swig::SwigVar_PyObject obj1;
29549 obj1 = SWIG_From_std_string(static_cast< std::string >(status));
29550 if (!swig_get_self()) {
29551 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call Compactor.__init__.");
29552 }
29553 const size_t swig_method_index = 0;
29554 const char * const swig_method_name = "set_status";
29555 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29556 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0,(PyObject *)obj1, __null);
29557 if (result == __null) {
29558 PyObject *error = PyErr_Occurred();
29559 {
29560 if (error != __null) {
29561 throw Swig::DirectorMethodException();
29562 }
29563 }
29564 }
29565 }
29566 _swig_thread_block.end();
29567}
29568std::string SwigDirector_Compactor::resolve_duplicate_metadata(std::string const &key, size_t num_tags, std::string const tags[]) {
29569 std::string c_result;
29570 SWIG_Python_Thread_Block _swig_thread_block;
29571 {
29572 swig::SwigVar_PyObject obj0;
29573 obj0 = SWIG_From_std_string(static_cast< std::string >(key));
29574 swig::SwigVar_PyObject obj1;
29575 {
29576 PyObject * result = PyList_New(num_tags);
29577 if (result == 0) {
29578 return __null;
29579 }
29580 for (size_t i = 0; i != num_tags; ++i) {
29581 PyObject * str = PyString_FromStringAndSize(tags[i].data(), tags[i].size());
29582 if (str == 0) {
29583 if ( --((PyObject*)(result))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(result)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(result))));
29584 return __null;
29585 }
29586 (((PyListObject *)(result))->ob_item[i] = (str));
29587 }
29588 obj1 = result;
29589 }
29590 if (!swig_get_self()) {
29591 Swig::DirectorException::raise("'self' uninitialized, maybe you forgot to call Compactor.__init__.");
29592 }
29593 const size_t swig_method_index = 1;
29594 const char * const swig_method_name = "resolve_duplicate_metadata";
29595 PyObject* method = swig_get_method(swig_method_index, swig_method_name);
29596 swig::SwigVar_PyObject result = PyObject_CallFunctionObjArgs(method ,(PyObject *)obj0,(PyObject *)obj1, __null);
29597 if (result == __null) {
29598 PyObject *error = PyErr_Occurred();
29599 {
29600 if (error != __null) {
29601 throw Swig::DirectorMethodException();
29602 }
29603 }
29604 }
29605 std::string *swig_optr = 0;
29606 int swig_ores;
29607 {
29608 PyObject * tmp = result;
29609 ( ((PyObject*)(tmp))->ob_refcnt++);
29610 swig_ores = SWIG_anystring_as_ptr(&tmp, &swig_optr);
29611 if ( --((PyObject*)(tmp))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(tmp)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(tmp))));
29612 }
29613 if (!(swig_ores >= 0) || !swig_optr) {
29614 Swig::DirectorTypeMismatchException::raise(SWIG_Python_ErrorType((((swig_optr ? swig_ores : -5) != (-1)) ? (swig_optr ? swig_ores : -5) : -5)), "in output value of type '""std::string""'");
29615 }
29616 c_result = *swig_optr;
29617 if (((swig_ores >= 0) && (swig_ores & ((1 << 8) << 1)))) delete swig_optr;
29618 }
29619 _swig_thread_block.end();
29620 return (std::string) c_result;
29621}
29622extern "C" {
29623static __attribute__ ((__unused__)) PyObject *_wrap_delete_SwigPyIterator(PyObject *, PyObject *args) {
29624 PyObject *resultobj = 0;
29625 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29626 void *argp1 = 0 ;
29627 int res1 = 0 ;
29628 PyObject *swig_obj[1] ;
29629 if (!args) goto fail;
29630 swig_obj[0] = args;
29631 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0x1 | 0, 0);
29632 if (!(res1 >= 0)) {
29633 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_SwigPyIterator" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
29634 }
29635 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29636 {
29637 SWIG_Python_Thread_Allow _swig_thread_allow;
29638 delete arg1;
29639 _swig_thread_allow.end();
29640 }
29641 resultobj = SWIG_Py_Void();
29642 return resultobj;
29643fail:
29644 return __null;
29645}
29646static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_value(PyObject *, PyObject *args) {
29647 PyObject *resultobj = 0;
29648 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29649 void *argp1 = 0 ;
29650 int res1 = 0 ;
29651 PyObject *swig_obj[1] ;
29652 PyObject *result = 0 ;
29653 if (!args) goto fail;
29654 swig_obj[0] = args;
29655 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
29656 if (!(res1 >= 0)) {
29657 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_value" "', argument " "1"" of type '" "swig::SwigPyIterator const *""'"); goto fail; } while(0);
29658 }
29659 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29660 {
29661 SWIG_Python_Thread_Allow _swig_thread_allow;
29662 try {
29663 result = (PyObject *)((swig::SwigPyIterator const *)arg1)->value();
29664 }
29665 catch(swig::stop_iteration &_e) {
29666 {
29667 (void)_e;
29668 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
29669 goto fail;
29670 }
29671 }
29672 _swig_thread_allow.end();
29673 }
29674 resultobj = result;
29675 return resultobj;
29676fail:
29677 return __null;
29678}
29679static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_incr__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
29680 PyObject *resultobj = 0;
29681 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29682 size_t arg2 ;
29683 void *argp1 = 0 ;
29684 int res1 = 0 ;
29685 size_t val2 ;
29686 int ecode2 = 0 ;
29687 swig::SwigPyIterator *result = 0 ;
29688 if ((nobjs < 2) || (nobjs > 2)) goto fail;
29689 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
29690 if (!(res1 >= 0)) {
29691 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_incr" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
29692 }
29693 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29694 ecode2 = SWIG_AsVal_size_t(swig_obj[1], &val2);
29695 if (!(ecode2 >= 0)) {
29696 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "SwigPyIterator_incr" "', argument " "2"" of type '" "size_t""'"); goto fail; } while(0);
29697 }
29698 arg2 = static_cast< size_t >(val2);
29699 {
29700 SWIG_Python_Thread_Allow _swig_thread_allow;
29701 try {
29702 result = (swig::SwigPyIterator *)(arg1)->incr(arg2);
29703 }
29704 catch(swig::stop_iteration &_e) {
29705 {
29706 (void)_e;
29707 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
29708 goto fail;
29709 }
29710 }
29711 _swig_thread_allow.end();
29712 }
29713 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0 | 0);
29714 return resultobj;
29715fail:
29716 return __null;
29717}
29718static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_incr__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
29719 PyObject *resultobj = 0;
29720 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29721 void *argp1 = 0 ;
29722 int res1 = 0 ;
29723 swig::SwigPyIterator *result = 0 ;
29724 if ((nobjs < 1) || (nobjs > 1)) goto fail;
29725 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
29726 if (!(res1 >= 0)) {
29727 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_incr" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
29728 }
29729 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29730 {
29731 SWIG_Python_Thread_Allow _swig_thread_allow;
29732 try {
29733 result = (swig::SwigPyIterator *)(arg1)->incr();
29734 }
29735 catch(swig::stop_iteration &_e) {
29736 {
29737 (void)_e;
29738 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
29739 goto fail;
29740 }
29741 }
29742 _swig_thread_allow.end();
29743 }
29744 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0 | 0);
29745 return resultobj;
29746fail:
29747 return __null;
29748}
29749static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_incr(PyObject *self, PyObject *args) {
29750 int argc;
29751 PyObject *argv[3];
29752 if (!(argc = SWIG_Python_UnpackTuple(args,"SwigPyIterator_incr",0,2,argv))) goto fail;
29753 --argc;
29754 if (argc == 1) {
29755 return _wrap_SwigPyIterator_incr__SWIG_1(self, argc, argv);
29756 }
29757 if (argc == 2) {
29758 return _wrap_SwigPyIterator_incr__SWIG_0(self, argc, argv);
29759 }
29760fail:
29761 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'SwigPyIterator_incr'.\n"
29762 " Possible C/C++ prototypes are:\n"
29763 " incr(swig::SwigPyIterator *,size_t)\n"
29764 " incr(swig::SwigPyIterator *)\n");
29765 return __null;
29766}
29767static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_decr__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
29768 PyObject *resultobj = 0;
29769 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29770 size_t arg2 ;
29771 void *argp1 = 0 ;
29772 int res1 = 0 ;
29773 size_t val2 ;
29774 int ecode2 = 0 ;
29775 swig::SwigPyIterator *result = 0 ;
29776 if ((nobjs < 2) || (nobjs > 2)) goto fail;
29777 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
29778 if (!(res1 >= 0)) {
29779 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_decr" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
29780 }
29781 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29782 ecode2 = SWIG_AsVal_size_t(swig_obj[1], &val2);
29783 if (!(ecode2 >= 0)) {
29784 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "SwigPyIterator_decr" "', argument " "2"" of type '" "size_t""'"); goto fail; } while(0);
29785 }
29786 arg2 = static_cast< size_t >(val2);
29787 {
29788 SWIG_Python_Thread_Allow _swig_thread_allow;
29789 try {
29790 result = (swig::SwigPyIterator *)(arg1)->decr(arg2);
29791 }
29792 catch(swig::stop_iteration &_e) {
29793 {
29794 (void)_e;
29795 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
29796 goto fail;
29797 }
29798 }
29799 _swig_thread_allow.end();
29800 }
29801 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0 | 0);
29802 return resultobj;
29803fail:
29804 return __null;
29805}
29806static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_decr__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
29807 PyObject *resultobj = 0;
29808 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29809 void *argp1 = 0 ;
29810 int res1 = 0 ;
29811 swig::SwigPyIterator *result = 0 ;
29812 if ((nobjs < 1) || (nobjs > 1)) goto fail;
29813 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
29814 if (!(res1 >= 0)) {
29815 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_decr" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
29816 }
29817 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29818 {
29819 SWIG_Python_Thread_Allow _swig_thread_allow;
29820 try {
29821 result = (swig::SwigPyIterator *)(arg1)->decr();
29822 }
29823 catch(swig::stop_iteration &_e) {
29824 {
29825 (void)_e;
29826 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
29827 goto fail;
29828 }
29829 }
29830 _swig_thread_allow.end();
29831 }
29832 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0 | 0);
29833 return resultobj;
29834fail:
29835 return __null;
29836}
29837static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_decr(PyObject *self, PyObject *args) {
29838 int argc;
29839 PyObject *argv[3];
29840 if (!(argc = SWIG_Python_UnpackTuple(args,"SwigPyIterator_decr",0,2,argv))) goto fail;
29841 --argc;
29842 if (argc == 1) {
29843 return _wrap_SwigPyIterator_decr__SWIG_1(self, argc, argv);
29844 }
29845 if (argc == 2) {
29846 return _wrap_SwigPyIterator_decr__SWIG_0(self, argc, argv);
29847 }
29848fail:
29849 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'SwigPyIterator_decr'.\n"
29850 " Possible C/C++ prototypes are:\n"
29851 " decr(swig::SwigPyIterator *,size_t)\n"
29852 " decr(swig::SwigPyIterator *)\n");
29853 return __null;
29854}
29855static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_distance(PyObject *, PyObject *args) {
29856 PyObject *resultobj = 0;
29857 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29858 swig::SwigPyIterator *arg2 = 0 ;
29859 void *argp1 = 0 ;
29860 int res1 = 0 ;
29861 void *argp2 = 0 ;
29862 int res2 = 0 ;
29863 PyObject *swig_obj[2] ;
29864 ptrdiff_t result;
29865 if (!SWIG_Python_UnpackTuple(args,"SwigPyIterator_distance",2,2,swig_obj)) goto fail;
29866 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
29867 if (!(res1 >= 0)) {
29868 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_distance" "', argument " "1"" of type '" "swig::SwigPyIterator const *""'"); goto fail; } while(0);
29869 }
29870 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29871 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[79], 0 | 0, 0);
29872 if (!(res2 >= 0)) {
29873 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "SwigPyIterator_distance" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
29874 }
29875 if (!argp2) {
29876 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "SwigPyIterator_distance" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
29877 }
29878 arg2 = reinterpret_cast< swig::SwigPyIterator * >(argp2);
29879 {
29880 SWIG_Python_Thread_Allow _swig_thread_allow;
29881 try {
29882 result = ((swig::SwigPyIterator const *)arg1)->distance((swig::SwigPyIterator const &)*arg2);
29883 }
29884 catch(std::invalid_argument &_e) {
29885 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[76]), SWIG_Python_NewPointerObj((new std::invalid_argument(static_cast< const std::invalid_argument& >(_e))), swig_types[76], 0x1)); goto fail;
29886 }
29887 _swig_thread_allow.end();
29888 }
29889 resultobj = SWIG_From_ptrdiff_t(static_cast< ptrdiff_t >(result));
29890 return resultobj;
29891fail:
29892 return __null;
29893}
29894static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_equal(PyObject *, PyObject *args) {
29895 PyObject *resultobj = 0;
29896 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29897 swig::SwigPyIterator *arg2 = 0 ;
29898 void *argp1 = 0 ;
29899 int res1 = 0 ;
29900 void *argp2 = 0 ;
29901 int res2 = 0 ;
29902 PyObject *swig_obj[2] ;
29903 bool result;
29904 if (!SWIG_Python_UnpackTuple(args,"SwigPyIterator_equal",2,2,swig_obj)) goto fail;
29905 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
29906 if (!(res1 >= 0)) {
29907 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_equal" "', argument " "1"" of type '" "swig::SwigPyIterator const *""'"); goto fail; } while(0);
29908 }
29909 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29910 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[79], 0 | 0, 0);
29911 if (!(res2 >= 0)) {
29912 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "SwigPyIterator_equal" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
29913 }
29914 if (!argp2) {
29915 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "SwigPyIterator_equal" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
29916 }
29917 arg2 = reinterpret_cast< swig::SwigPyIterator * >(argp2);
29918 {
29919 SWIG_Python_Thread_Allow _swig_thread_allow;
29920 try {
29921 result = (bool)((swig::SwigPyIterator const *)arg1)->equal((swig::SwigPyIterator const &)*arg2);
29922 }
29923 catch(std::invalid_argument &_e) {
29924 SWIG_Python_SetErrorObj(SWIG_Python_ExceptionType(swig_types[76]), SWIG_Python_NewPointerObj((new std::invalid_argument(static_cast< const std::invalid_argument& >(_e))), swig_types[76], 0x1)); goto fail;
29925 }
29926 _swig_thread_allow.end();
29927 }
29928 resultobj = SWIG_From_bool(static_cast< bool >(result));
29929 return resultobj;
29930fail:
29931 return __null;
29932}
29933static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_copy(PyObject *, PyObject *args) {
29934 PyObject *resultobj = 0;
29935 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29936 void *argp1 = 0 ;
29937 int res1 = 0 ;
29938 PyObject *swig_obj[1] ;
29939 swig::SwigPyIterator *result = 0 ;
29940 if (!args) goto fail;
29941 swig_obj[0] = args;
29942 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
29943 if (!(res1 >= 0)) {
29944 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_copy" "', argument " "1"" of type '" "swig::SwigPyIterator const *""'"); goto fail; } while(0);
29945 }
29946 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29947 {
29948 SWIG_Python_Thread_Allow _swig_thread_allow;
29949 result = (swig::SwigPyIterator *)((swig::SwigPyIterator const *)arg1)->copy();
29950 _swig_thread_allow.end();
29951 }
29952 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0x1 | 0);
29953 return resultobj;
29954fail:
29955 return __null;
29956}
29957static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_next(PyObject *, PyObject *args) {
29958 PyObject *resultobj = 0;
29959 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29960 void *argp1 = 0 ;
29961 int res1 = 0 ;
29962 PyObject *swig_obj[1] ;
29963 PyObject *result = 0 ;
29964 if (!args) goto fail;
29965 swig_obj[0] = args;
29966 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
29967 if (!(res1 >= 0)) {
29968 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_next" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
29969 }
29970 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
29971 {
29972 SWIG_Python_Thread_Allow _swig_thread_allow;
29973 try {
29974 result = (PyObject *)(arg1)->next();
29975 }
29976 catch(swig::stop_iteration &_e) {
29977 {
29978 (void)_e;
29979 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
29980 goto fail;
29981 }
29982 }
29983 _swig_thread_allow.end();
29984 }
29985 resultobj = result;
29986 return resultobj;
29987fail:
29988 return __null;
29989}
29990static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator___next__(PyObject *, PyObject *args) {
29991 PyObject *resultobj = 0;
29992 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
29993 void *argp1 = 0 ;
29994 int res1 = 0 ;
29995 PyObject *swig_obj[1] ;
29996 PyObject *result = 0 ;
29997 if (!args) goto fail;
29998 swig_obj[0] = args;
29999 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
30000 if (!(res1 >= 0)) {
30001 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator___next__" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
30002 }
30003 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30004 {
30005 SWIG_Python_Thread_Allow _swig_thread_allow;
30006 try {
30007 result = (PyObject *)(arg1)->__next__();
30008 }
30009 catch(swig::stop_iteration &_e) {
30010 {
30011 (void)_e;
30012 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
30013 goto fail;
30014 }
30015 }
30016 _swig_thread_allow.end();
30017 }
30018 resultobj = result;
30019 return resultobj;
30020fail:
30021 return __null;
30022}
30023static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_previous(PyObject *, PyObject *args) {
30024 PyObject *resultobj = 0;
30025 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
30026 void *argp1 = 0 ;
30027 int res1 = 0 ;
30028 PyObject *swig_obj[1] ;
30029 PyObject *result = 0 ;
30030 if (!args) goto fail;
30031 swig_obj[0] = args;
30032 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
30033 if (!(res1 >= 0)) {
30034 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_previous" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
30035 }
30036 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30037 {
30038 SWIG_Python_Thread_Allow _swig_thread_allow;
30039 try {
30040 result = (PyObject *)(arg1)->previous();
30041 }
30042 catch(swig::stop_iteration &_e) {
30043 {
30044 (void)_e;
30045 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
30046 goto fail;
30047 }
30048 }
30049 _swig_thread_allow.end();
30050 }
30051 resultobj = result;
30052 return resultobj;
30053fail:
30054 return __null;
30055}
30056static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator_advance(PyObject *, PyObject *args) {
30057 PyObject *resultobj = 0;
30058 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
30059 ptrdiff_t arg2 ;
30060 void *argp1 = 0 ;
30061 int res1 = 0 ;
30062 ptrdiff_t val2 ;
30063 int ecode2 = 0 ;
30064 PyObject *swig_obj[2] ;
30065 swig::SwigPyIterator *result = 0 ;
30066 if (!SWIG_Python_UnpackTuple(args,"SwigPyIterator_advance",2,2,swig_obj)) goto fail;
30067 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
30068 if (!(res1 >= 0)) {
30069 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator_advance" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
30070 }
30071 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30072 ecode2 = SWIG_AsVal_ptrdiff_t(swig_obj[1], &val2);
30073 if (!(ecode2 >= 0)) {
30074 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "SwigPyIterator_advance" "', argument " "2"" of type '" "ptrdiff_t""'"); goto fail; } while(0);
30075 }
30076 arg2 = static_cast< ptrdiff_t >(val2);
30077 {
30078 SWIG_Python_Thread_Allow _swig_thread_allow;
30079 try {
30080 result = (swig::SwigPyIterator *)(arg1)->advance(arg2);
30081 }
30082 catch(swig::stop_iteration &_e) {
30083 {
30084 (void)_e;
30085 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
30086 goto fail;
30087 }
30088 }
30089 _swig_thread_allow.end();
30090 }
30091 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0 | 0);
30092 return resultobj;
30093fail:
30094 return __null;
30095}
30096static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator___eq__(PyObject *, PyObject *args) {
30097 PyObject *resultobj = 0;
30098 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
30099 swig::SwigPyIterator *arg2 = 0 ;
30100 void *argp1 = 0 ;
30101 int res1 = 0 ;
30102 void *argp2 = 0 ;
30103 int res2 = 0 ;
30104 PyObject *swig_obj[2] ;
30105 bool result;
30106 if (!SWIG_Python_UnpackTuple(args,"SwigPyIterator___eq__",2,2,swig_obj)) goto fail;
30107 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
30108 if (!(res1 >= 0)) {
30109 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator___eq__" "', argument " "1"" of type '" "swig::SwigPyIterator const *""'"); goto fail; } while(0);
30110 }
30111 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30112 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[79], 0 | 0, 0);
30113 if (!(res2 >= 0)) {
30114 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "SwigPyIterator___eq__" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
30115 }
30116 if (!argp2) {
30117 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "SwigPyIterator___eq__" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
30118 }
30119 arg2 = reinterpret_cast< swig::SwigPyIterator * >(argp2);
30120 {
30121 SWIG_Python_Thread_Allow _swig_thread_allow;
30122 result = (bool)((swig::SwigPyIterator const *)arg1)->operator ==((swig::SwigPyIterator const &)*arg2);
30123 _swig_thread_allow.end();
30124 }
30125 resultobj = SWIG_From_bool(static_cast< bool >(result));
30126 return resultobj;
30127fail:
30128 return __null;
30129}
30130static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator___ne__(PyObject *, PyObject *args) {
30131 PyObject *resultobj = 0;
30132 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
30133 swig::SwigPyIterator *arg2 = 0 ;
30134 void *argp1 = 0 ;
30135 int res1 = 0 ;
30136 void *argp2 = 0 ;
30137 int res2 = 0 ;
30138 PyObject *swig_obj[2] ;
30139 bool result;
30140 if (!SWIG_Python_UnpackTuple(args,"SwigPyIterator___ne__",2,2,swig_obj)) goto fail;
30141 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
30142 if (!(res1 >= 0)) {
30143 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator___ne__" "', argument " "1"" of type '" "swig::SwigPyIterator const *""'"); goto fail; } while(0);
30144 }
30145 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30146 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[79], 0 | 0, 0);
30147 if (!(res2 >= 0)) {
30148 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "SwigPyIterator___ne__" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
30149 }
30150 if (!argp2) {
30151 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "SwigPyIterator___ne__" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
30152 }
30153 arg2 = reinterpret_cast< swig::SwigPyIterator * >(argp2);
30154 {
30155 SWIG_Python_Thread_Allow _swig_thread_allow;
30156 result = (bool)((swig::SwigPyIterator const *)arg1)->operator !=((swig::SwigPyIterator const &)*arg2);
30157 _swig_thread_allow.end();
30158 }
30159 resultobj = SWIG_From_bool(static_cast< bool >(result));
30160 return resultobj;
30161fail:
30162 return __null;
30163}
30164static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator___iadd__(PyObject *, PyObject *args) {
30165 PyObject *resultobj = 0;
30166 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
30167 ptrdiff_t arg2 ;
30168 void *argp1 = 0 ;
30169 int res1 = 0 ;
30170 ptrdiff_t val2 ;
30171 int ecode2 = 0 ;
30172 PyObject *swig_obj[2] ;
30173 swig::SwigPyIterator *result = 0 ;
30174 if (!SWIG_Python_UnpackTuple(args,"SwigPyIterator___iadd__",2,2,swig_obj)) goto fail;
30175 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0x1 | 0, 0);
30176 if (!(res1 >= 0)) {
30177 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator___iadd__" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
30178 }
30179 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30180 ecode2 = SWIG_AsVal_ptrdiff_t(swig_obj[1], &val2);
30181 if (!(ecode2 >= 0)) {
30182 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "SwigPyIterator___iadd__" "', argument " "2"" of type '" "ptrdiff_t""'"); goto fail; } while(0);
30183 }
30184 arg2 = static_cast< ptrdiff_t >(val2);
30185 {
30186 SWIG_Python_Thread_Allow _swig_thread_allow;
30187 try {
30188 result = (swig::SwigPyIterator *) &(arg1)->operator +=(arg2);
30189 }
30190 catch(swig::stop_iteration &_e) {
30191 {
30192 (void)_e;
30193 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
30194 goto fail;
30195 }
30196 }
30197 _swig_thread_allow.end();
30198 }
30199 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0x1 | 0);
30200 return resultobj;
30201fail:
30202 return __null;
30203}
30204static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator___isub__(PyObject *, PyObject *args) {
30205 PyObject *resultobj = 0;
30206 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
30207 ptrdiff_t arg2 ;
30208 void *argp1 = 0 ;
30209 int res1 = 0 ;
30210 ptrdiff_t val2 ;
30211 int ecode2 = 0 ;
30212 PyObject *swig_obj[2] ;
30213 swig::SwigPyIterator *result = 0 ;
30214 if (!SWIG_Python_UnpackTuple(args,"SwigPyIterator___isub__",2,2,swig_obj)) goto fail;
30215 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0x1 | 0, 0);
30216 if (!(res1 >= 0)) {
30217 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator___isub__" "', argument " "1"" of type '" "swig::SwigPyIterator *""'"); goto fail; } while(0);
30218 }
30219 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30220 ecode2 = SWIG_AsVal_ptrdiff_t(swig_obj[1], &val2);
30221 if (!(ecode2 >= 0)) {
30222 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "SwigPyIterator___isub__" "', argument " "2"" of type '" "ptrdiff_t""'"); goto fail; } while(0);
30223 }
30224 arg2 = static_cast< ptrdiff_t >(val2);
30225 {
30226 SWIG_Python_Thread_Allow _swig_thread_allow;
30227 try {
30228 result = (swig::SwigPyIterator *) &(arg1)->operator -=(arg2);
30229 }
30230 catch(swig::stop_iteration &_e) {
30231 {
30232 (void)_e;
30233 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
30234 goto fail;
30235 }
30236 }
30237 _swig_thread_allow.end();
30238 }
30239 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0x1 | 0);
30240 return resultobj;
30241fail:
30242 return __null;
30243}
30244static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator___add__(PyObject *, PyObject *args) {
30245 PyObject *resultobj = 0;
30246 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
30247 ptrdiff_t arg2 ;
30248 void *argp1 = 0 ;
30249 int res1 = 0 ;
30250 ptrdiff_t val2 ;
30251 int ecode2 = 0 ;
30252 PyObject *swig_obj[2] ;
30253 swig::SwigPyIterator *result = 0 ;
30254 if (!SWIG_Python_UnpackTuple(args,"SwigPyIterator___add__",2,2,swig_obj)) goto fail;
30255 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
30256 if (!(res1 >= 0)) {
30257 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator___add__" "', argument " "1"" of type '" "swig::SwigPyIterator const *""'"); goto fail; } while(0);
30258 }
30259 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30260 ecode2 = SWIG_AsVal_ptrdiff_t(swig_obj[1], &val2);
30261 if (!(ecode2 >= 0)) {
30262 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "SwigPyIterator___add__" "', argument " "2"" of type '" "ptrdiff_t""'"); goto fail; } while(0);
30263 }
30264 arg2 = static_cast< ptrdiff_t >(val2);
30265 {
30266 SWIG_Python_Thread_Allow _swig_thread_allow;
30267 try {
30268 result = (swig::SwigPyIterator *)((swig::SwigPyIterator const *)arg1)->operator +(arg2);
30269 }
30270 catch(swig::stop_iteration &_e) {
30271 {
30272 (void)_e;
30273 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
30274 goto fail;
30275 }
30276 }
30277 _swig_thread_allow.end();
30278 }
30279 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0x1 | 0);
30280 return resultobj;
30281fail:
30282 return __null;
30283}
30284static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator___sub____SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
30285 PyObject *resultobj = 0;
30286 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
30287 ptrdiff_t arg2 ;
30288 void *argp1 = 0 ;
30289 int res1 = 0 ;
30290 ptrdiff_t val2 ;
30291 int ecode2 = 0 ;
30292 swig::SwigPyIterator *result = 0 ;
30293 if ((nobjs < 2) || (nobjs > 2)) goto fail;
30294 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
30295 if (!(res1 >= 0)) {
30296 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator___sub__" "', argument " "1"" of type '" "swig::SwigPyIterator const *""'"); goto fail; } while(0);
30297 }
30298 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30299 ecode2 = SWIG_AsVal_ptrdiff_t(swig_obj[1], &val2);
30300 if (!(ecode2 >= 0)) {
30301 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "SwigPyIterator___sub__" "', argument " "2"" of type '" "ptrdiff_t""'"); goto fail; } while(0);
30302 }
30303 arg2 = static_cast< ptrdiff_t >(val2);
30304 {
30305 SWIG_Python_Thread_Allow _swig_thread_allow;
30306 try {
30307 result = (swig::SwigPyIterator *)((swig::SwigPyIterator const *)arg1)->operator -(arg2);
30308 }
30309 catch(swig::stop_iteration &_e) {
30310 {
30311 (void)_e;
30312 SWIG_Python_SetErrorObj(PyExc_StopIteration, SWIG_Py_Void());
30313 goto fail;
30314 }
30315 }
30316 _swig_thread_allow.end();
30317 }
30318 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[79], 0x1 | 0);
30319 return resultobj;
30320fail:
30321 return __null;
30322}
30323static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator___sub____SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
30324 PyObject *resultobj = 0;
30325 swig::SwigPyIterator *arg1 = (swig::SwigPyIterator *) 0 ;
30326 swig::SwigPyIterator *arg2 = 0 ;
30327 void *argp1 = 0 ;
30328 int res1 = 0 ;
30329 void *argp2 = 0 ;
30330 int res2 = 0 ;
30331 ptrdiff_t result;
30332 if ((nobjs < 2) || (nobjs > 2)) goto fail;
30333 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[79], 0 | 0, 0);
30334 if (!(res1 >= 0)) {
30335 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SwigPyIterator___sub__" "', argument " "1"" of type '" "swig::SwigPyIterator const *""'"); goto fail; } while(0);
30336 }
30337 arg1 = reinterpret_cast< swig::SwigPyIterator * >(argp1);
30338 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[79], 0 | 0, 0);
30339 if (!(res2 >= 0)) {
30340 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "SwigPyIterator___sub__" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
30341 }
30342 if (!argp2) {
30343 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "SwigPyIterator___sub__" "', argument " "2"" of type '" "swig::SwigPyIterator const &""'"); goto fail; } while(0);
30344 }
30345 arg2 = reinterpret_cast< swig::SwigPyIterator * >(argp2);
30346 {
30347 SWIG_Python_Thread_Allow _swig_thread_allow;
30348 result = ((swig::SwigPyIterator const *)arg1)->operator -((swig::SwigPyIterator const &)*arg2);
30349 _swig_thread_allow.end();
30350 }
30351 resultobj = SWIG_From_ptrdiff_t(static_cast< ptrdiff_t >(result));
30352 return resultobj;
30353fail:
30354 return __null;
30355}
30356static __attribute__ ((__unused__)) PyObject *_wrap_SwigPyIterator___sub__(PyObject *self, PyObject *args) {
30357 int argc;
30358 PyObject *argv[3];
30359 if (!(argc = SWIG_Python_UnpackTuple(args,"SwigPyIterator___sub__",0,2,argv))) goto fail;
30360 --argc;
30361 if (argc == 2) {
30362 int _v = 0;
30363 {
30364 int res = SWIG_Python_ConvertPtrAndOwn(argv[1], 0, swig_types[79], 0, 0);
30365 _v = ((res >= 0) ? 1 : 0);
30366 }
30367 if (!_v) goto check_1;
30368 return _wrap_SwigPyIterator___sub____SWIG_1(self, argc, argv);
30369 }
30370check_1:
30371 if (argc == 2) {
30372 return _wrap_SwigPyIterator___sub____SWIG_0(self, argc, argv);
30373 }
30374fail:
30375 ( ((PyObject*)((&_Py_NotImplementedStruct)))->ob_refcnt++);
30376 return (&_Py_NotImplementedStruct);
30377}
30378static __attribute__ ((__unused__)) PyObject *SwigPyIterator_swigregister(PyObject *, PyObject *args) {
30379 PyObject *obj;
30380 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
30381 SWIG_TypeNewClientData(swig_types[79], SwigPyClientData_New(obj));
30382 return SWIG_Py_Void();
30383}
30384static __attribute__ ((__unused__)) PyObject *_wrap_Error_get_type(PyObject *, PyObject *args) {
30385 PyObject *resultobj = 0;
30386 Xapian::Error *arg1 = (Xapian::Error *) 0 ;
30387 void *argp1 = 0 ;
30388 int res1 = 0 ;
30389 PyObject *swig_obj[1] ;
30390 char *result = 0 ;
30391 if (!args) goto fail;
30392 swig_obj[0] = args;
30393 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[19], 0 | 0, 0);
30394 if (!(res1 >= 0)) {
30395 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Error_get_type" "', argument " "1"" of type '" "Xapian::Error const *""'"); goto fail; } while(0);
30396 }
30397 arg1 = reinterpret_cast< Xapian::Error * >(argp1);
30398 {
30399 SWIG_Python_Thread_Allow _swig_thread_allow;
30400 result = (char *)((Xapian::Error const *)arg1)->get_type();
30401 _swig_thread_allow.end();
30402 }
30403 resultobj = SWIG_FromCharPtr((const char *)result);
30404 return resultobj;
30405fail:
30406 return __null;
30407}
30408static __attribute__ ((__unused__)) PyObject *_wrap_Error_get_msg(PyObject *, PyObject *args) {
30409 PyObject *resultobj = 0;
30410 Xapian::Error *arg1 = (Xapian::Error *) 0 ;
30411 void *argp1 = 0 ;
30412 int res1 = 0 ;
30413 PyObject *swig_obj[1] ;
30414 std::string *result = 0 ;
30415 if (!args) goto fail;
30416 swig_obj[0] = args;
30417 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[19], 0 | 0, 0);
30418 if (!(res1 >= 0)) {
30419 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Error_get_msg" "', argument " "1"" of type '" "Xapian::Error const *""'"); goto fail; } while(0);
30420 }
30421 arg1 = reinterpret_cast< Xapian::Error * >(argp1);
30422 {
30423 SWIG_Python_Thread_Allow _swig_thread_allow;
30424 result = (std::string *) &((Xapian::Error const *)arg1)->get_msg();
30425 _swig_thread_allow.end();
30426 }
30427 resultobj = SWIG_From_std_string(static_cast< std::string >(*result));
30428 return resultobj;
30429fail:
30430 return __null;
30431}
30432static __attribute__ ((__unused__)) PyObject *_wrap_Error_get_context(PyObject *, PyObject *args) {
30433 PyObject *resultobj = 0;
30434 Xapian::Error *arg1 = (Xapian::Error *) 0 ;
30435 void *argp1 = 0 ;
30436 int res1 = 0 ;
30437 PyObject *swig_obj[1] ;
30438 std::string *result = 0 ;
30439 if (!args) goto fail;
30440 swig_obj[0] = args;
30441 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[19], 0 | 0, 0);
30442 if (!(res1 >= 0)) {
30443 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Error_get_context" "', argument " "1"" of type '" "Xapian::Error const *""'"); goto fail; } while(0);
30444 }
30445 arg1 = reinterpret_cast< Xapian::Error * >(argp1);
30446 {
30447 SWIG_Python_Thread_Allow _swig_thread_allow;
30448 result = (std::string *) &((Xapian::Error const *)arg1)->get_context();
30449 _swig_thread_allow.end();
30450 }
30451 resultobj = SWIG_From_std_string(static_cast< std::string >(*result));
30452 return resultobj;
30453fail:
30454 return __null;
30455}
30456static __attribute__ ((__unused__)) PyObject *_wrap_Error_get_error_string(PyObject *, PyObject *args) {
30457 PyObject *resultobj = 0;
30458 Xapian::Error *arg1 = (Xapian::Error *) 0 ;
30459 void *argp1 = 0 ;
30460 int res1 = 0 ;
30461 PyObject *swig_obj[1] ;
30462 char *result = 0 ;
30463 if (!args) goto fail;
30464 swig_obj[0] = args;
30465 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[19], 0 | 0, 0);
30466 if (!(res1 >= 0)) {
30467 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Error_get_error_string" "', argument " "1"" of type '" "Xapian::Error const *""'"); goto fail; } while(0);
30468 }
30469 arg1 = reinterpret_cast< Xapian::Error * >(argp1);
30470 {
30471 SWIG_Python_Thread_Allow _swig_thread_allow;
30472 result = (char *)((Xapian::Error const *)arg1)->get_error_string();
30473 _swig_thread_allow.end();
30474 }
30475 resultobj = SWIG_FromCharPtr((const char *)result);
30476 return resultobj;
30477fail:
30478 return __null;
30479}
30480static __attribute__ ((__unused__)) PyObject *_wrap_Error___str__(PyObject *, PyObject *args) {
30481 PyObject *resultobj = 0;
30482 Xapian::Error *arg1 = (Xapian::Error *) 0 ;
30483 void *argp1 = 0 ;
30484 int res1 = 0 ;
30485 PyObject *swig_obj[1] ;
30486 std::string result;
30487 if (!args) goto fail;
30488 swig_obj[0] = args;
30489 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[19], 0 | 0, 0);
30490 if (!(res1 >= 0)) {
30491 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Error___str__" "', argument " "1"" of type '" "Xapian::Error const *""'"); goto fail; } while(0);
30492 }
30493 arg1 = reinterpret_cast< Xapian::Error * >(argp1);
30494 {
30495 SWIG_Python_Thread_Allow _swig_thread_allow;
30496 result = Xapian_Error___str__((Xapian::Error const *)arg1);
30497 _swig_thread_allow.end();
30498 }
30499 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
30500 return resultobj;
30501fail:
30502 return __null;
30503}
30504static __attribute__ ((__unused__)) PyObject *_wrap_delete_Error(PyObject *, PyObject *args) {
30505 PyObject *resultobj = 0;
30506 Xapian::Error *arg1 = (Xapian::Error *) 0 ;
30507 void *argp1 = 0 ;
30508 int res1 = 0 ;
30509 PyObject *swig_obj[1] ;
30510 if (!args) goto fail;
30511 swig_obj[0] = args;
30512 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[19], 0x1 | 0, 0);
30513 if (!(res1 >= 0)) {
30514 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Error" "', argument " "1"" of type '" "Xapian::Error *""'"); goto fail; } while(0);
30515 }
30516 arg1 = reinterpret_cast< Xapian::Error * >(argp1);
30517 {
30518 SWIG_Python_Thread_Allow _swig_thread_allow;
30519 {
30520 try {
30521 delete arg1;
30522 } catch (...) {
30523 _swig_thread_allow.end();
30524 Xapian::SetPythonException();
30525 goto fail;
30526 }
30527 }
30528 _swig_thread_allow.end();
30529 }
30530 resultobj = SWIG_Py_Void();
30531 return resultobj;
30532fail:
30533 return __null;
30534}
30535static __attribute__ ((__unused__)) PyObject *Error_swigregister(PyObject *, PyObject *args) {
30536 PyObject *obj;
30537 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
30538 SWIG_TypeNewClientData(swig_types[19], SwigPyClientData_New(obj));
30539 return SWIG_Py_Void();
30540}
30541static __attribute__ ((__unused__)) PyObject *_wrap_delete_LogicError(PyObject *, PyObject *args) {
30542 PyObject *resultobj = 0;
30543 Xapian::LogicError *arg1 = (Xapian::LogicError *) 0 ;
30544 void *argp1 = 0 ;
30545 int res1 = 0 ;
30546 PyObject *swig_obj[1] ;
30547 if (!args) goto fail;
30548 swig_obj[0] = args;
30549 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[27], 0x1 | 0, 0);
30550 if (!(res1 >= 0)) {
30551 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_LogicError" "', argument " "1"" of type '" "Xapian::LogicError *""'"); goto fail; } while(0);
30552 }
30553 arg1 = reinterpret_cast< Xapian::LogicError * >(argp1);
30554 {
30555 SWIG_Python_Thread_Allow _swig_thread_allow;
30556 {
30557 try {
30558 delete arg1;
30559 } catch (...) {
30560 _swig_thread_allow.end();
30561 Xapian::SetPythonException();
30562 goto fail;
30563 }
30564 }
30565 _swig_thread_allow.end();
30566 }
30567 resultobj = SWIG_Py_Void();
30568 return resultobj;
30569fail:
30570 return __null;
30571}
30572static __attribute__ ((__unused__)) PyObject *LogicError_swigregister(PyObject *, PyObject *args) {
30573 PyObject *obj;
30574 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
30575 SWIG_TypeNewClientData(swig_types[27], SwigPyClientData_New(obj));
30576 return SWIG_Py_Void();
30577}
30578static __attribute__ ((__unused__)) PyObject *_wrap_delete_RuntimeError(PyObject *, PyObject *args) {
30579 PyObject *resultobj = 0;
30580 Xapian::RuntimeError *arg1 = (Xapian::RuntimeError *) 0 ;
30581 void *argp1 = 0 ;
30582 int res1 = 0 ;
30583 PyObject *swig_obj[1] ;
30584 if (!args) goto fail;
30585 swig_obj[0] = args;
30586 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[46], 0x1 | 0, 0);
30587 if (!(res1 >= 0)) {
30588 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_RuntimeError" "', argument " "1"" of type '" "Xapian::RuntimeError *""'"); goto fail; } while(0);
30589 }
30590 arg1 = reinterpret_cast< Xapian::RuntimeError * >(argp1);
30591 {
30592 SWIG_Python_Thread_Allow _swig_thread_allow;
30593 {
30594 try {
30595 delete arg1;
30596 } catch (...) {
30597 _swig_thread_allow.end();
30598 Xapian::SetPythonException();
30599 goto fail;
30600 }
30601 }
30602 _swig_thread_allow.end();
30603 }
30604 resultobj = SWIG_Py_Void();
30605 return resultobj;
30606fail:
30607 return __null;
30608}
30609static __attribute__ ((__unused__)) PyObject *RuntimeError_swigregister(PyObject *, PyObject *args) {
30610 PyObject *obj;
30611 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
30612 SWIG_TypeNewClientData(swig_types[46], SwigPyClientData_New(obj));
30613 return SWIG_Py_Void();
30614}
30615static __attribute__ ((__unused__)) PyObject *_wrap_new_AssertionError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
30616 PyObject *resultobj = 0;
30617 std::string *arg1 = 0 ;
30618 std::string *arg2 = 0 ;
30619 char *arg3 = (char *) 0 ;
30620 int res1 = ((0)) ;
30621 int res2 = ((0)) ;
30622 int res3 ;
30623 char *buf3 = 0 ;
30624 int alloc3 = 0 ;
30625 Xapian::AssertionError *result = 0 ;
30626 if ((nobjs < 3) || (nobjs > 3)) goto fail;
30627 {
30628 std::string *ptr = (std::string *)0;
30629 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
30630 if (!(res1 >= 0)) {
30631 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30632 }
30633 if (!ptr) {
30634 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30635 }
30636 arg1 = ptr;
30637 }
30638 {
30639 std::string *ptr = (std::string *)0;
30640 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
30641 if (!(res2 >= 0)) {
30642 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_AssertionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
30643 }
30644 if (!ptr) {
30645 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_AssertionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
30646 }
30647 arg2 = ptr;
30648 }
30649 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
30650 if (!(res3 >= 0)) {
30651 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_AssertionError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
30652 }
30653 arg3 = reinterpret_cast< char * >(buf3);
30654 {
30655 SWIG_Python_Thread_Allow _swig_thread_allow;
30656 result = (Xapian::AssertionError *)new Xapian::AssertionError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
30657 _swig_thread_allow.end();
30658 }
30659 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[0], ((0x1 << 1) | 0x1) | 0);
30660 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30661 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
30662 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
30663 return resultobj;
30664fail:
30665 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30666 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
30667 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
30668 return __null;
30669}
30670static __attribute__ ((__unused__)) PyObject *_wrap_new_AssertionError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
30671 PyObject *resultobj = 0;
30672 std::string *arg1 = 0 ;
30673 std::string *arg2 = 0 ;
30674 int arg3 ;
30675 int res1 = ((0)) ;
30676 int res2 = ((0)) ;
30677 int val3 ;
30678 int ecode3 = 0 ;
30679 Xapian::AssertionError *result = 0 ;
30680 if ((nobjs < 3) || (nobjs > 3)) goto fail;
30681 {
30682 std::string *ptr = (std::string *)0;
30683 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
30684 if (!(res1 >= 0)) {
30685 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30686 }
30687 if (!ptr) {
30688 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30689 }
30690 arg1 = ptr;
30691 }
30692 {
30693 std::string *ptr = (std::string *)0;
30694 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
30695 if (!(res2 >= 0)) {
30696 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_AssertionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
30697 }
30698 if (!ptr) {
30699 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_AssertionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
30700 }
30701 arg2 = ptr;
30702 }
30703 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
30704 if (!(ecode3 >= 0)) {
30705 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_AssertionError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
30706 }
30707 arg3 = static_cast< int >(val3);
30708 {
30709 SWIG_Python_Thread_Allow _swig_thread_allow;
30710 result = (Xapian::AssertionError *)new Xapian::AssertionError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
30711 _swig_thread_allow.end();
30712 }
30713 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[0], ((0x1 << 1) | 0x1) | 0);
30714 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30715 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
30716 return resultobj;
30717fail:
30718 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30719 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
30720 return __null;
30721}
30722static __attribute__ ((__unused__)) PyObject *_wrap_new_AssertionError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
30723 PyObject *resultobj = 0;
30724 std::string *arg1 = 0 ;
30725 std::string *arg2 = 0 ;
30726 int res1 = ((0)) ;
30727 int res2 = ((0)) ;
30728 Xapian::AssertionError *result = 0 ;
30729 if ((nobjs < 2) || (nobjs > 2)) goto fail;
30730 {
30731 std::string *ptr = (std::string *)0;
30732 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
30733 if (!(res1 >= 0)) {
30734 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30735 }
30736 if (!ptr) {
30737 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30738 }
30739 arg1 = ptr;
30740 }
30741 {
30742 std::string *ptr = (std::string *)0;
30743 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
30744 if (!(res2 >= 0)) {
30745 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_AssertionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
30746 }
30747 if (!ptr) {
30748 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_AssertionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
30749 }
30750 arg2 = ptr;
30751 }
30752 {
30753 SWIG_Python_Thread_Allow _swig_thread_allow;
30754 result = (Xapian::AssertionError *)new Xapian::AssertionError((std::string const &)*arg1,(std::string const &)*arg2);
30755 _swig_thread_allow.end();
30756 }
30757 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[0], ((0x1 << 1) | 0x1) | 0);
30758 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30759 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
30760 return resultobj;
30761fail:
30762 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30763 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
30764 return __null;
30765}
30766static __attribute__ ((__unused__)) PyObject *_wrap_new_AssertionError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
30767 PyObject *resultobj = 0;
30768 std::string *arg1 = 0 ;
30769 int res1 = ((0)) ;
30770 Xapian::AssertionError *result = 0 ;
30771 if ((nobjs < 1) || (nobjs > 1)) goto fail;
30772 {
30773 std::string *ptr = (std::string *)0;
30774 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
30775 if (!(res1 >= 0)) {
30776 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30777 }
30778 if (!ptr) {
30779 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30780 }
30781 arg1 = ptr;
30782 }
30783 {
30784 SWIG_Python_Thread_Allow _swig_thread_allow;
30785 result = (Xapian::AssertionError *)new Xapian::AssertionError((std::string const &)*arg1);
30786 _swig_thread_allow.end();
30787 }
30788 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[0], ((0x1 << 1) | 0x1) | 0);
30789 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30790 return resultobj;
30791fail:
30792 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30793 return __null;
30794}
30795static __attribute__ ((__unused__)) PyObject *_wrap_new_AssertionError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
30796 PyObject *resultobj = 0;
30797 std::string *arg1 = 0 ;
30798 int arg2 ;
30799 int res1 = ((0)) ;
30800 int val2 ;
30801 int ecode2 = 0 ;
30802 Xapian::AssertionError *result = 0 ;
30803 if ((nobjs < 2) || (nobjs > 2)) goto fail;
30804 {
30805 std::string *ptr = (std::string *)0;
30806 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
30807 if (!(res1 >= 0)) {
30808 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30809 }
30810 if (!ptr) {
30811 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_AssertionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30812 }
30813 arg1 = ptr;
30814 }
30815 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
30816 if (!(ecode2 >= 0)) {
30817 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_AssertionError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
30818 }
30819 arg2 = static_cast< int >(val2);
30820 {
30821 SWIG_Python_Thread_Allow _swig_thread_allow;
30822 result = (Xapian::AssertionError *)new Xapian::AssertionError((std::string const &)*arg1,arg2);
30823 _swig_thread_allow.end();
30824 }
30825 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[0], ((0x1 << 1) | 0x1) | 0);
30826 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30827 return resultobj;
30828fail:
30829 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30830 return __null;
30831}
30832static __attribute__ ((__unused__)) PyObject *_wrap_new_AssertionError(PyObject *self, PyObject *args) {
30833 int argc;
30834 PyObject *argv[4];
30835 if (!(argc = SWIG_Python_UnpackTuple(args,"new_AssertionError",0,3,argv))) goto fail;
30836 --argc;
30837 if (argc == 1) {
30838 return _wrap_new_AssertionError__SWIG_3(self, argc, argv);
30839 }
30840 if (argc == 2) {
30841 int _v = 0;
30842 {
30843 {
30844 int res = SWIG_AsVal_int(argv[1], __null);
30845 _v = ((res >= 0) ? 1 : 0);
30846 }
30847 }
30848 if (!_v) goto check_2;
30849 return _wrap_new_AssertionError__SWIG_4(self, argc, argv);
30850 }
30851check_2:
30852 if (argc == 2) {
30853 return _wrap_new_AssertionError__SWIG_2(self, argc, argv);
30854 }
30855 if (argc == 3) {
30856 int _v = 0;
30857 {
30858 {
30859 int res = SWIG_AsVal_int(argv[2], __null);
30860 _v = ((res >= 0) ? 1 : 0);
30861 }
30862 }
30863 if (!_v) goto check_4;
30864 return _wrap_new_AssertionError__SWIG_1(self, argc, argv);
30865 }
30866check_4:
30867 if (argc == 3) {
30868 return _wrap_new_AssertionError__SWIG_0(self, argc, argv);
30869 }
30870fail:
30871 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_AssertionError'.\n"
30872 " Possible C/C++ prototypes are:\n"
30873 " Xapian::AssertionError(std::string const &,std::string const &,char const *)\n"
30874 " Xapian::AssertionError(std::string const &,std::string const &,int)\n"
30875 " Xapian::AssertionError(std::string const &,std::string const &)\n"
30876 " Xapian::AssertionError(std::string const &)\n"
30877 " Xapian::AssertionError(std::string const &,int)\n");
30878 return __null;
30879}
30880static __attribute__ ((__unused__)) PyObject *_wrap_delete_AssertionError(PyObject *, PyObject *args) {
30881 PyObject *resultobj = 0;
30882 Xapian::AssertionError *arg1 = (Xapian::AssertionError *) 0 ;
30883 void *argp1 = 0 ;
30884 int res1 = 0 ;
30885 PyObject *swig_obj[1] ;
30886 if (!args) goto fail;
30887 swig_obj[0] = args;
30888 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[0], 0x1 | 0, 0);
30889 if (!(res1 >= 0)) {
30890 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_AssertionError" "', argument " "1"" of type '" "Xapian::AssertionError *""'"); goto fail; } while(0);
30891 }
30892 arg1 = reinterpret_cast< Xapian::AssertionError * >(argp1);
30893 {
30894 SWIG_Python_Thread_Allow _swig_thread_allow;
30895 {
30896 try {
30897 delete arg1;
30898 } catch (...) {
30899 _swig_thread_allow.end();
30900 Xapian::SetPythonException();
30901 goto fail;
30902 }
30903 }
30904 _swig_thread_allow.end();
30905 }
30906 resultobj = SWIG_Py_Void();
30907 return resultobj;
30908fail:
30909 return __null;
30910}
30911static __attribute__ ((__unused__)) PyObject *AssertionError_swigregister(PyObject *, PyObject *args) {
30912 PyObject *obj;
30913 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
30914 SWIG_TypeNewClientData(swig_types[0], SwigPyClientData_New(obj));
30915 return SWIG_Py_Void();
30916}
30917static __attribute__ ((__unused__)) PyObject *AssertionError_swiginit(PyObject *, PyObject *args) {
30918 return SWIG_Python_InitShadowInstance(args);
30919}
30920static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidArgumentError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
30921 PyObject *resultobj = 0;
30922 std::string *arg1 = 0 ;
30923 std::string *arg2 = 0 ;
30924 char *arg3 = (char *) 0 ;
30925 int res1 = ((0)) ;
30926 int res2 = ((0)) ;
30927 int res3 ;
30928 char *buf3 = 0 ;
30929 int alloc3 = 0 ;
30930 Xapian::InvalidArgumentError *result = 0 ;
30931 if ((nobjs < 3) || (nobjs > 3)) goto fail;
30932 {
30933 std::string *ptr = (std::string *)0;
30934 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
30935 if (!(res1 >= 0)) {
30936 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30937 }
30938 if (!ptr) {
30939 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30940 }
30941 arg1 = ptr;
30942 }
30943 {
30944 std::string *ptr = (std::string *)0;
30945 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
30946 if (!(res2 >= 0)) {
30947 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
30948 }
30949 if (!ptr) {
30950 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidArgumentError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
30951 }
30952 arg2 = ptr;
30953 }
30954 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
30955 if (!(res3 >= 0)) {
30956 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
30957 }
30958 arg3 = reinterpret_cast< char * >(buf3);
30959 {
30960 SWIG_Python_Thread_Allow _swig_thread_allow;
30961 result = (Xapian::InvalidArgumentError *)new Xapian::InvalidArgumentError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
30962 _swig_thread_allow.end();
30963 }
30964 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[24], ((0x1 << 1) | 0x1) | 0);
30965 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30966 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
30967 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
30968 return resultobj;
30969fail:
30970 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
30971 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
30972 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
30973 return __null;
30974}
30975static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidArgumentError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
30976 PyObject *resultobj = 0;
30977 std::string *arg1 = 0 ;
30978 std::string *arg2 = 0 ;
30979 int arg3 ;
30980 int res1 = ((0)) ;
30981 int res2 = ((0)) ;
30982 int val3 ;
30983 int ecode3 = 0 ;
30984 Xapian::InvalidArgumentError *result = 0 ;
30985 if ((nobjs < 3) || (nobjs > 3)) goto fail;
30986 {
30987 std::string *ptr = (std::string *)0;
30988 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
30989 if (!(res1 >= 0)) {
30990 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30991 }
30992 if (!ptr) {
30993 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
30994 }
30995 arg1 = ptr;
30996 }
30997 {
30998 std::string *ptr = (std::string *)0;
30999 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31000 if (!(res2 >= 0)) {
31001 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31002 }
31003 if (!ptr) {
31004 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidArgumentError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31005 }
31006 arg2 = ptr;
31007 }
31008 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
31009 if (!(ecode3 >= 0)) {
31010 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
31011 }
31012 arg3 = static_cast< int >(val3);
31013 {
31014 SWIG_Python_Thread_Allow _swig_thread_allow;
31015 result = (Xapian::InvalidArgumentError *)new Xapian::InvalidArgumentError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
31016 _swig_thread_allow.end();
31017 }
31018 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[24], ((0x1 << 1) | 0x1) | 0);
31019 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31020 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31021 return resultobj;
31022fail:
31023 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31024 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31025 return __null;
31026}
31027static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidArgumentError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
31028 PyObject *resultobj = 0;
31029 std::string *arg1 = 0 ;
31030 std::string *arg2 = 0 ;
31031 int res1 = ((0)) ;
31032 int res2 = ((0)) ;
31033 Xapian::InvalidArgumentError *result = 0 ;
31034 if ((nobjs < 2) || (nobjs > 2)) goto fail;
31035 {
31036 std::string *ptr = (std::string *)0;
31037 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31038 if (!(res1 >= 0)) {
31039 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31040 }
31041 if (!ptr) {
31042 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31043 }
31044 arg1 = ptr;
31045 }
31046 {
31047 std::string *ptr = (std::string *)0;
31048 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31049 if (!(res2 >= 0)) {
31050 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31051 }
31052 if (!ptr) {
31053 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidArgumentError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31054 }
31055 arg2 = ptr;
31056 }
31057 {
31058 SWIG_Python_Thread_Allow _swig_thread_allow;
31059 result = (Xapian::InvalidArgumentError *)new Xapian::InvalidArgumentError((std::string const &)*arg1,(std::string const &)*arg2);
31060 _swig_thread_allow.end();
31061 }
31062 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[24], ((0x1 << 1) | 0x1) | 0);
31063 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31064 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31065 return resultobj;
31066fail:
31067 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31068 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31069 return __null;
31070}
31071static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidArgumentError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
31072 PyObject *resultobj = 0;
31073 std::string *arg1 = 0 ;
31074 int res1 = ((0)) ;
31075 Xapian::InvalidArgumentError *result = 0 ;
31076 if ((nobjs < 1) || (nobjs > 1)) goto fail;
31077 {
31078 std::string *ptr = (std::string *)0;
31079 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31080 if (!(res1 >= 0)) {
31081 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31082 }
31083 if (!ptr) {
31084 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31085 }
31086 arg1 = ptr;
31087 }
31088 {
31089 SWIG_Python_Thread_Allow _swig_thread_allow;
31090 result = (Xapian::InvalidArgumentError *)new Xapian::InvalidArgumentError((std::string const &)*arg1);
31091 _swig_thread_allow.end();
31092 }
31093 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[24], ((0x1 << 1) | 0x1) | 0);
31094 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31095 return resultobj;
31096fail:
31097 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31098 return __null;
31099}
31100static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidArgumentError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
31101 PyObject *resultobj = 0;
31102 std::string *arg1 = 0 ;
31103 int arg2 ;
31104 int res1 = ((0)) ;
31105 int val2 ;
31106 int ecode2 = 0 ;
31107 Xapian::InvalidArgumentError *result = 0 ;
31108 if ((nobjs < 2) || (nobjs > 2)) goto fail;
31109 {
31110 std::string *ptr = (std::string *)0;
31111 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31112 if (!(res1 >= 0)) {
31113 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31114 }
31115 if (!ptr) {
31116 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidArgumentError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31117 }
31118 arg1 = ptr;
31119 }
31120 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
31121 if (!(ecode2 >= 0)) {
31122 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_InvalidArgumentError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
31123 }
31124 arg2 = static_cast< int >(val2);
31125 {
31126 SWIG_Python_Thread_Allow _swig_thread_allow;
31127 result = (Xapian::InvalidArgumentError *)new Xapian::InvalidArgumentError((std::string const &)*arg1,arg2);
31128 _swig_thread_allow.end();
31129 }
31130 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[24], ((0x1 << 1) | 0x1) | 0);
31131 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31132 return resultobj;
31133fail:
31134 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31135 return __null;
31136}
31137static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidArgumentError(PyObject *self, PyObject *args) {
31138 int argc;
31139 PyObject *argv[4];
31140 if (!(argc = SWIG_Python_UnpackTuple(args,"new_InvalidArgumentError",0,3,argv))) goto fail;
31141 --argc;
31142 if (argc == 1) {
31143 return _wrap_new_InvalidArgumentError__SWIG_3(self, argc, argv);
31144 }
31145 if (argc == 2) {
31146 int _v = 0;
31147 {
31148 {
31149 int res = SWIG_AsVal_int(argv[1], __null);
31150 _v = ((res >= 0) ? 1 : 0);
31151 }
31152 }
31153 if (!_v) goto check_2;
31154 return _wrap_new_InvalidArgumentError__SWIG_4(self, argc, argv);
31155 }
31156check_2:
31157 if (argc == 2) {
31158 return _wrap_new_InvalidArgumentError__SWIG_2(self, argc, argv);
31159 }
31160 if (argc == 3) {
31161 int _v = 0;
31162 {
31163 {
31164 int res = SWIG_AsVal_int(argv[2], __null);
31165 _v = ((res >= 0) ? 1 : 0);
31166 }
31167 }
31168 if (!_v) goto check_4;
31169 return _wrap_new_InvalidArgumentError__SWIG_1(self, argc, argv);
31170 }
31171check_4:
31172 if (argc == 3) {
31173 return _wrap_new_InvalidArgumentError__SWIG_0(self, argc, argv);
31174 }
31175fail:
31176 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_InvalidArgumentError'.\n"
31177 " Possible C/C++ prototypes are:\n"
31178 " Xapian::InvalidArgumentError(std::string const &,std::string const &,char const *)\n"
31179 " Xapian::InvalidArgumentError(std::string const &,std::string const &,int)\n"
31180 " Xapian::InvalidArgumentError(std::string const &,std::string const &)\n"
31181 " Xapian::InvalidArgumentError(std::string const &)\n"
31182 " Xapian::InvalidArgumentError(std::string const &,int)\n");
31183 return __null;
31184}
31185static __attribute__ ((__unused__)) PyObject *_wrap_delete_InvalidArgumentError(PyObject *, PyObject *args) {
31186 PyObject *resultobj = 0;
31187 Xapian::InvalidArgumentError *arg1 = (Xapian::InvalidArgumentError *) 0 ;
31188 void *argp1 = 0 ;
31189 int res1 = 0 ;
31190 PyObject *swig_obj[1] ;
31191 if (!args) goto fail;
31192 swig_obj[0] = args;
31193 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[24], 0x1 | 0, 0);
31194 if (!(res1 >= 0)) {
31195 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_InvalidArgumentError" "', argument " "1"" of type '" "Xapian::InvalidArgumentError *""'"); goto fail; } while(0);
31196 }
31197 arg1 = reinterpret_cast< Xapian::InvalidArgumentError * >(argp1);
31198 {
31199 SWIG_Python_Thread_Allow _swig_thread_allow;
31200 {
31201 try {
31202 delete arg1;
31203 } catch (...) {
31204 _swig_thread_allow.end();
31205 Xapian::SetPythonException();
31206 goto fail;
31207 }
31208 }
31209 _swig_thread_allow.end();
31210 }
31211 resultobj = SWIG_Py_Void();
31212 return resultobj;
31213fail:
31214 return __null;
31215}
31216static __attribute__ ((__unused__)) PyObject *InvalidArgumentError_swigregister(PyObject *, PyObject *args) {
31217 PyObject *obj;
31218 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
31219 SWIG_TypeNewClientData(swig_types[24], SwigPyClientData_New(obj));
31220 return SWIG_Py_Void();
31221}
31222static __attribute__ ((__unused__)) PyObject *InvalidArgumentError_swiginit(PyObject *, PyObject *args) {
31223 return SWIG_Python_InitShadowInstance(args);
31224}
31225static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidOperationError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
31226 PyObject *resultobj = 0;
31227 std::string *arg1 = 0 ;
31228 std::string *arg2 = 0 ;
31229 char *arg3 = (char *) 0 ;
31230 int res1 = ((0)) ;
31231 int res2 = ((0)) ;
31232 int res3 ;
31233 char *buf3 = 0 ;
31234 int alloc3 = 0 ;
31235 Xapian::InvalidOperationError *result = 0 ;
31236 if ((nobjs < 3) || (nobjs > 3)) goto fail;
31237 {
31238 std::string *ptr = (std::string *)0;
31239 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31240 if (!(res1 >= 0)) {
31241 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31242 }
31243 if (!ptr) {
31244 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31245 }
31246 arg1 = ptr;
31247 }
31248 {
31249 std::string *ptr = (std::string *)0;
31250 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31251 if (!(res2 >= 0)) {
31252 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_InvalidOperationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31253 }
31254 if (!ptr) {
31255 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidOperationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31256 }
31257 arg2 = ptr;
31258 }
31259 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
31260 if (!(res3 >= 0)) {
31261 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_InvalidOperationError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
31262 }
31263 arg3 = reinterpret_cast< char * >(buf3);
31264 {
31265 SWIG_Python_Thread_Allow _swig_thread_allow;
31266 result = (Xapian::InvalidOperationError *)new Xapian::InvalidOperationError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
31267 _swig_thread_allow.end();
31268 }
31269 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[25], ((0x1 << 1) | 0x1) | 0);
31270 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31271 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31272 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
31273 return resultobj;
31274fail:
31275 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31276 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31277 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
31278 return __null;
31279}
31280static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidOperationError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
31281 PyObject *resultobj = 0;
31282 std::string *arg1 = 0 ;
31283 std::string *arg2 = 0 ;
31284 int arg3 ;
31285 int res1 = ((0)) ;
31286 int res2 = ((0)) ;
31287 int val3 ;
31288 int ecode3 = 0 ;
31289 Xapian::InvalidOperationError *result = 0 ;
31290 if ((nobjs < 3) || (nobjs > 3)) goto fail;
31291 {
31292 std::string *ptr = (std::string *)0;
31293 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31294 if (!(res1 >= 0)) {
31295 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31296 }
31297 if (!ptr) {
31298 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31299 }
31300 arg1 = ptr;
31301 }
31302 {
31303 std::string *ptr = (std::string *)0;
31304 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31305 if (!(res2 >= 0)) {
31306 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_InvalidOperationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31307 }
31308 if (!ptr) {
31309 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidOperationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31310 }
31311 arg2 = ptr;
31312 }
31313 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
31314 if (!(ecode3 >= 0)) {
31315 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_InvalidOperationError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
31316 }
31317 arg3 = static_cast< int >(val3);
31318 {
31319 SWIG_Python_Thread_Allow _swig_thread_allow;
31320 result = (Xapian::InvalidOperationError *)new Xapian::InvalidOperationError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
31321 _swig_thread_allow.end();
31322 }
31323 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[25], ((0x1 << 1) | 0x1) | 0);
31324 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31325 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31326 return resultobj;
31327fail:
31328 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31329 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31330 return __null;
31331}
31332static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidOperationError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
31333 PyObject *resultobj = 0;
31334 std::string *arg1 = 0 ;
31335 std::string *arg2 = 0 ;
31336 int res1 = ((0)) ;
31337 int res2 = ((0)) ;
31338 Xapian::InvalidOperationError *result = 0 ;
31339 if ((nobjs < 2) || (nobjs > 2)) goto fail;
31340 {
31341 std::string *ptr = (std::string *)0;
31342 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31343 if (!(res1 >= 0)) {
31344 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31345 }
31346 if (!ptr) {
31347 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31348 }
31349 arg1 = ptr;
31350 }
31351 {
31352 std::string *ptr = (std::string *)0;
31353 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31354 if (!(res2 >= 0)) {
31355 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_InvalidOperationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31356 }
31357 if (!ptr) {
31358 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidOperationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31359 }
31360 arg2 = ptr;
31361 }
31362 {
31363 SWIG_Python_Thread_Allow _swig_thread_allow;
31364 result = (Xapian::InvalidOperationError *)new Xapian::InvalidOperationError((std::string const &)*arg1,(std::string const &)*arg2);
31365 _swig_thread_allow.end();
31366 }
31367 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[25], ((0x1 << 1) | 0x1) | 0);
31368 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31369 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31370 return resultobj;
31371fail:
31372 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31373 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31374 return __null;
31375}
31376static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidOperationError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
31377 PyObject *resultobj = 0;
31378 std::string *arg1 = 0 ;
31379 int res1 = ((0)) ;
31380 Xapian::InvalidOperationError *result = 0 ;
31381 if ((nobjs < 1) || (nobjs > 1)) goto fail;
31382 {
31383 std::string *ptr = (std::string *)0;
31384 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31385 if (!(res1 >= 0)) {
31386 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31387 }
31388 if (!ptr) {
31389 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31390 }
31391 arg1 = ptr;
31392 }
31393 {
31394 SWIG_Python_Thread_Allow _swig_thread_allow;
31395 result = (Xapian::InvalidOperationError *)new Xapian::InvalidOperationError((std::string const &)*arg1);
31396 _swig_thread_allow.end();
31397 }
31398 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[25], ((0x1 << 1) | 0x1) | 0);
31399 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31400 return resultobj;
31401fail:
31402 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31403 return __null;
31404}
31405static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidOperationError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
31406 PyObject *resultobj = 0;
31407 std::string *arg1 = 0 ;
31408 int arg2 ;
31409 int res1 = ((0)) ;
31410 int val2 ;
31411 int ecode2 = 0 ;
31412 Xapian::InvalidOperationError *result = 0 ;
31413 if ((nobjs < 2) || (nobjs > 2)) goto fail;
31414 {
31415 std::string *ptr = (std::string *)0;
31416 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31417 if (!(res1 >= 0)) {
31418 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31419 }
31420 if (!ptr) {
31421 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InvalidOperationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31422 }
31423 arg1 = ptr;
31424 }
31425 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
31426 if (!(ecode2 >= 0)) {
31427 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_InvalidOperationError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
31428 }
31429 arg2 = static_cast< int >(val2);
31430 {
31431 SWIG_Python_Thread_Allow _swig_thread_allow;
31432 result = (Xapian::InvalidOperationError *)new Xapian::InvalidOperationError((std::string const &)*arg1,arg2);
31433 _swig_thread_allow.end();
31434 }
31435 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[25], ((0x1 << 1) | 0x1) | 0);
31436 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31437 return resultobj;
31438fail:
31439 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31440 return __null;
31441}
31442static __attribute__ ((__unused__)) PyObject *_wrap_new_InvalidOperationError(PyObject *self, PyObject *args) {
31443 int argc;
31444 PyObject *argv[4];
31445 if (!(argc = SWIG_Python_UnpackTuple(args,"new_InvalidOperationError",0,3,argv))) goto fail;
31446 --argc;
31447 if (argc == 1) {
31448 return _wrap_new_InvalidOperationError__SWIG_3(self, argc, argv);
31449 }
31450 if (argc == 2) {
31451 int _v = 0;
31452 {
31453 {
31454 int res = SWIG_AsVal_int(argv[1], __null);
31455 _v = ((res >= 0) ? 1 : 0);
31456 }
31457 }
31458 if (!_v) goto check_2;
31459 return _wrap_new_InvalidOperationError__SWIG_4(self, argc, argv);
31460 }
31461check_2:
31462 if (argc == 2) {
31463 return _wrap_new_InvalidOperationError__SWIG_2(self, argc, argv);
31464 }
31465 if (argc == 3) {
31466 int _v = 0;
31467 {
31468 {
31469 int res = SWIG_AsVal_int(argv[2], __null);
31470 _v = ((res >= 0) ? 1 : 0);
31471 }
31472 }
31473 if (!_v) goto check_4;
31474 return _wrap_new_InvalidOperationError__SWIG_1(self, argc, argv);
31475 }
31476check_4:
31477 if (argc == 3) {
31478 return _wrap_new_InvalidOperationError__SWIG_0(self, argc, argv);
31479 }
31480fail:
31481 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_InvalidOperationError'.\n"
31482 " Possible C/C++ prototypes are:\n"
31483 " Xapian::InvalidOperationError(std::string const &,std::string const &,char const *)\n"
31484 " Xapian::InvalidOperationError(std::string const &,std::string const &,int)\n"
31485 " Xapian::InvalidOperationError(std::string const &,std::string const &)\n"
31486 " Xapian::InvalidOperationError(std::string const &)\n"
31487 " Xapian::InvalidOperationError(std::string const &,int)\n");
31488 return __null;
31489}
31490static __attribute__ ((__unused__)) PyObject *_wrap_delete_InvalidOperationError(PyObject *, PyObject *args) {
31491 PyObject *resultobj = 0;
31492 Xapian::InvalidOperationError *arg1 = (Xapian::InvalidOperationError *) 0 ;
31493 void *argp1 = 0 ;
31494 int res1 = 0 ;
31495 PyObject *swig_obj[1] ;
31496 if (!args) goto fail;
31497 swig_obj[0] = args;
31498 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[25], 0x1 | 0, 0);
31499 if (!(res1 >= 0)) {
31500 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_InvalidOperationError" "', argument " "1"" of type '" "Xapian::InvalidOperationError *""'"); goto fail; } while(0);
31501 }
31502 arg1 = reinterpret_cast< Xapian::InvalidOperationError * >(argp1);
31503 {
31504 SWIG_Python_Thread_Allow _swig_thread_allow;
31505 {
31506 try {
31507 delete arg1;
31508 } catch (...) {
31509 _swig_thread_allow.end();
31510 Xapian::SetPythonException();
31511 goto fail;
31512 }
31513 }
31514 _swig_thread_allow.end();
31515 }
31516 resultobj = SWIG_Py_Void();
31517 return resultobj;
31518fail:
31519 return __null;
31520}
31521static __attribute__ ((__unused__)) PyObject *InvalidOperationError_swigregister(PyObject *, PyObject *args) {
31522 PyObject *obj;
31523 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
31524 SWIG_TypeNewClientData(swig_types[25], SwigPyClientData_New(obj));
31525 return SWIG_Py_Void();
31526}
31527static __attribute__ ((__unused__)) PyObject *InvalidOperationError_swiginit(PyObject *, PyObject *args) {
31528 return SWIG_Python_InitShadowInstance(args);
31529}
31530static __attribute__ ((__unused__)) PyObject *_wrap_new_UnimplementedError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
31531 PyObject *resultobj = 0;
31532 std::string *arg1 = 0 ;
31533 std::string *arg2 = 0 ;
31534 char *arg3 = (char *) 0 ;
31535 int res1 = ((0)) ;
31536 int res2 = ((0)) ;
31537 int res3 ;
31538 char *buf3 = 0 ;
31539 int alloc3 = 0 ;
31540 Xapian::UnimplementedError *result = 0 ;
31541 if ((nobjs < 3) || (nobjs > 3)) goto fail;
31542 {
31543 std::string *ptr = (std::string *)0;
31544 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31545 if (!(res1 >= 0)) {
31546 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31547 }
31548 if (!ptr) {
31549 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31550 }
31551 arg1 = ptr;
31552 }
31553 {
31554 std::string *ptr = (std::string *)0;
31555 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31556 if (!(res2 >= 0)) {
31557 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_UnimplementedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31558 }
31559 if (!ptr) {
31560 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_UnimplementedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31561 }
31562 arg2 = ptr;
31563 }
31564 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
31565 if (!(res3 >= 0)) {
31566 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_UnimplementedError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
31567 }
31568 arg3 = reinterpret_cast< char * >(buf3);
31569 {
31570 SWIG_Python_Thread_Allow _swig_thread_allow;
31571 result = (Xapian::UnimplementedError *)new Xapian::UnimplementedError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
31572 _swig_thread_allow.end();
31573 }
31574 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[57], ((0x1 << 1) | 0x1) | 0);
31575 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31576 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31577 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
31578 return resultobj;
31579fail:
31580 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31581 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31582 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
31583 return __null;
31584}
31585static __attribute__ ((__unused__)) PyObject *_wrap_new_UnimplementedError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
31586 PyObject *resultobj = 0;
31587 std::string *arg1 = 0 ;
31588 std::string *arg2 = 0 ;
31589 int arg3 ;
31590 int res1 = ((0)) ;
31591 int res2 = ((0)) ;
31592 int val3 ;
31593 int ecode3 = 0 ;
31594 Xapian::UnimplementedError *result = 0 ;
31595 if ((nobjs < 3) || (nobjs > 3)) goto fail;
31596 {
31597 std::string *ptr = (std::string *)0;
31598 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31599 if (!(res1 >= 0)) {
31600 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31601 }
31602 if (!ptr) {
31603 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31604 }
31605 arg1 = ptr;
31606 }
31607 {
31608 std::string *ptr = (std::string *)0;
31609 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31610 if (!(res2 >= 0)) {
31611 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_UnimplementedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31612 }
31613 if (!ptr) {
31614 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_UnimplementedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31615 }
31616 arg2 = ptr;
31617 }
31618 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
31619 if (!(ecode3 >= 0)) {
31620 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_UnimplementedError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
31621 }
31622 arg3 = static_cast< int >(val3);
31623 {
31624 SWIG_Python_Thread_Allow _swig_thread_allow;
31625 result = (Xapian::UnimplementedError *)new Xapian::UnimplementedError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
31626 _swig_thread_allow.end();
31627 }
31628 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[57], ((0x1 << 1) | 0x1) | 0);
31629 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31630 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31631 return resultobj;
31632fail:
31633 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31634 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31635 return __null;
31636}
31637static __attribute__ ((__unused__)) PyObject *_wrap_new_UnimplementedError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
31638 PyObject *resultobj = 0;
31639 std::string *arg1 = 0 ;
31640 std::string *arg2 = 0 ;
31641 int res1 = ((0)) ;
31642 int res2 = ((0)) ;
31643 Xapian::UnimplementedError *result = 0 ;
31644 if ((nobjs < 2) || (nobjs > 2)) goto fail;
31645 {
31646 std::string *ptr = (std::string *)0;
31647 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31648 if (!(res1 >= 0)) {
31649 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31650 }
31651 if (!ptr) {
31652 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31653 }
31654 arg1 = ptr;
31655 }
31656 {
31657 std::string *ptr = (std::string *)0;
31658 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31659 if (!(res2 >= 0)) {
31660 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_UnimplementedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31661 }
31662 if (!ptr) {
31663 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_UnimplementedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31664 }
31665 arg2 = ptr;
31666 }
31667 {
31668 SWIG_Python_Thread_Allow _swig_thread_allow;
31669 result = (Xapian::UnimplementedError *)new Xapian::UnimplementedError((std::string const &)*arg1,(std::string const &)*arg2);
31670 _swig_thread_allow.end();
31671 }
31672 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[57], ((0x1 << 1) | 0x1) | 0);
31673 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31674 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31675 return resultobj;
31676fail:
31677 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31678 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31679 return __null;
31680}
31681static __attribute__ ((__unused__)) PyObject *_wrap_new_UnimplementedError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
31682 PyObject *resultobj = 0;
31683 std::string *arg1 = 0 ;
31684 int res1 = ((0)) ;
31685 Xapian::UnimplementedError *result = 0 ;
31686 if ((nobjs < 1) || (nobjs > 1)) goto fail;
31687 {
31688 std::string *ptr = (std::string *)0;
31689 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31690 if (!(res1 >= 0)) {
31691 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31692 }
31693 if (!ptr) {
31694 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31695 }
31696 arg1 = ptr;
31697 }
31698 {
31699 SWIG_Python_Thread_Allow _swig_thread_allow;
31700 result = (Xapian::UnimplementedError *)new Xapian::UnimplementedError((std::string const &)*arg1);
31701 _swig_thread_allow.end();
31702 }
31703 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[57], ((0x1 << 1) | 0x1) | 0);
31704 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31705 return resultobj;
31706fail:
31707 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31708 return __null;
31709}
31710static __attribute__ ((__unused__)) PyObject *_wrap_new_UnimplementedError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
31711 PyObject *resultobj = 0;
31712 std::string *arg1 = 0 ;
31713 int arg2 ;
31714 int res1 = ((0)) ;
31715 int val2 ;
31716 int ecode2 = 0 ;
31717 Xapian::UnimplementedError *result = 0 ;
31718 if ((nobjs < 2) || (nobjs > 2)) goto fail;
31719 {
31720 std::string *ptr = (std::string *)0;
31721 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31722 if (!(res1 >= 0)) {
31723 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31724 }
31725 if (!ptr) {
31726 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_UnimplementedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31727 }
31728 arg1 = ptr;
31729 }
31730 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
31731 if (!(ecode2 >= 0)) {
31732 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_UnimplementedError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
31733 }
31734 arg2 = static_cast< int >(val2);
31735 {
31736 SWIG_Python_Thread_Allow _swig_thread_allow;
31737 result = (Xapian::UnimplementedError *)new Xapian::UnimplementedError((std::string const &)*arg1,arg2);
31738 _swig_thread_allow.end();
31739 }
31740 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[57], ((0x1 << 1) | 0x1) | 0);
31741 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31742 return resultobj;
31743fail:
31744 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31745 return __null;
31746}
31747static __attribute__ ((__unused__)) PyObject *_wrap_new_UnimplementedError(PyObject *self, PyObject *args) {
31748 int argc;
31749 PyObject *argv[4];
31750 if (!(argc = SWIG_Python_UnpackTuple(args,"new_UnimplementedError",0,3,argv))) goto fail;
31751 --argc;
31752 if (argc == 1) {
31753 return _wrap_new_UnimplementedError__SWIG_3(self, argc, argv);
31754 }
31755 if (argc == 2) {
31756 int _v = 0;
31757 {
31758 {
31759 int res = SWIG_AsVal_int(argv[1], __null);
31760 _v = ((res >= 0) ? 1 : 0);
31761 }
31762 }
31763 if (!_v) goto check_2;
31764 return _wrap_new_UnimplementedError__SWIG_4(self, argc, argv);
31765 }
31766check_2:
31767 if (argc == 2) {
31768 return _wrap_new_UnimplementedError__SWIG_2(self, argc, argv);
31769 }
31770 if (argc == 3) {
31771 int _v = 0;
31772 {
31773 {
31774 int res = SWIG_AsVal_int(argv[2], __null);
31775 _v = ((res >= 0) ? 1 : 0);
31776 }
31777 }
31778 if (!_v) goto check_4;
31779 return _wrap_new_UnimplementedError__SWIG_1(self, argc, argv);
31780 }
31781check_4:
31782 if (argc == 3) {
31783 return _wrap_new_UnimplementedError__SWIG_0(self, argc, argv);
31784 }
31785fail:
31786 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_UnimplementedError'.\n"
31787 " Possible C/C++ prototypes are:\n"
31788 " Xapian::UnimplementedError(std::string const &,std::string const &,char const *)\n"
31789 " Xapian::UnimplementedError(std::string const &,std::string const &,int)\n"
31790 " Xapian::UnimplementedError(std::string const &,std::string const &)\n"
31791 " Xapian::UnimplementedError(std::string const &)\n"
31792 " Xapian::UnimplementedError(std::string const &,int)\n");
31793 return __null;
31794}
31795static __attribute__ ((__unused__)) PyObject *_wrap_delete_UnimplementedError(PyObject *, PyObject *args) {
31796 PyObject *resultobj = 0;
31797 Xapian::UnimplementedError *arg1 = (Xapian::UnimplementedError *) 0 ;
31798 void *argp1 = 0 ;
31799 int res1 = 0 ;
31800 PyObject *swig_obj[1] ;
31801 if (!args) goto fail;
31802 swig_obj[0] = args;
31803 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[57], 0x1 | 0, 0);
31804 if (!(res1 >= 0)) {
31805 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_UnimplementedError" "', argument " "1"" of type '" "Xapian::UnimplementedError *""'"); goto fail; } while(0);
31806 }
31807 arg1 = reinterpret_cast< Xapian::UnimplementedError * >(argp1);
31808 {
31809 SWIG_Python_Thread_Allow _swig_thread_allow;
31810 {
31811 try {
31812 delete arg1;
31813 } catch (...) {
31814 _swig_thread_allow.end();
31815 Xapian::SetPythonException();
31816 goto fail;
31817 }
31818 }
31819 _swig_thread_allow.end();
31820 }
31821 resultobj = SWIG_Py_Void();
31822 return resultobj;
31823fail:
31824 return __null;
31825}
31826static __attribute__ ((__unused__)) PyObject *UnimplementedError_swigregister(PyObject *, PyObject *args) {
31827 PyObject *obj;
31828 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
31829 SWIG_TypeNewClientData(swig_types[57], SwigPyClientData_New(obj));
31830 return SWIG_Py_Void();
31831}
31832static __attribute__ ((__unused__)) PyObject *UnimplementedError_swiginit(PyObject *, PyObject *args) {
31833 return SWIG_Python_InitShadowInstance(args);
31834}
31835static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
31836 PyObject *resultobj = 0;
31837 std::string *arg1 = 0 ;
31838 std::string *arg2 = 0 ;
31839 char *arg3 = (char *) 0 ;
31840 int res1 = ((0)) ;
31841 int res2 = ((0)) ;
31842 int res3 ;
31843 char *buf3 = 0 ;
31844 int alloc3 = 0 ;
31845 Xapian::DatabaseError *result = 0 ;
31846 if ((nobjs < 3) || (nobjs > 3)) goto fail;
31847 {
31848 std::string *ptr = (std::string *)0;
31849 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31850 if (!(res1 >= 0)) {
31851 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31852 }
31853 if (!ptr) {
31854 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31855 }
31856 arg1 = ptr;
31857 }
31858 {
31859 std::string *ptr = (std::string *)0;
31860 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31861 if (!(res2 >= 0)) {
31862 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31863 }
31864 if (!ptr) {
31865 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31866 }
31867 arg2 = ptr;
31868 }
31869 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
31870 if (!(res3 >= 0)) {
31871 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_DatabaseError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
31872 }
31873 arg3 = reinterpret_cast< char * >(buf3);
31874 {
31875 SWIG_Python_Thread_Allow _swig_thread_allow;
31876 result = (Xapian::DatabaseError *)new Xapian::DatabaseError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
31877 _swig_thread_allow.end();
31878 }
31879 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[7], ((0x1 << 1) | 0x1) | 0);
31880 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31881 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31882 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
31883 return resultobj;
31884fail:
31885 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31886 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31887 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
31888 return __null;
31889}
31890static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
31891 PyObject *resultobj = 0;
31892 std::string *arg1 = 0 ;
31893 std::string *arg2 = 0 ;
31894 int arg3 ;
31895 int res1 = ((0)) ;
31896 int res2 = ((0)) ;
31897 int val3 ;
31898 int ecode3 = 0 ;
31899 Xapian::DatabaseError *result = 0 ;
31900 if ((nobjs < 3) || (nobjs > 3)) goto fail;
31901 {
31902 std::string *ptr = (std::string *)0;
31903 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31904 if (!(res1 >= 0)) {
31905 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31906 }
31907 if (!ptr) {
31908 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31909 }
31910 arg1 = ptr;
31911 }
31912 {
31913 std::string *ptr = (std::string *)0;
31914 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31915 if (!(res2 >= 0)) {
31916 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31917 }
31918 if (!ptr) {
31919 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31920 }
31921 arg2 = ptr;
31922 }
31923 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
31924 if (!(ecode3 >= 0)) {
31925 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DatabaseError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
31926 }
31927 arg3 = static_cast< int >(val3);
31928 {
31929 SWIG_Python_Thread_Allow _swig_thread_allow;
31930 result = (Xapian::DatabaseError *)new Xapian::DatabaseError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
31931 _swig_thread_allow.end();
31932 }
31933 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[7], ((0x1 << 1) | 0x1) | 0);
31934 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31935 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31936 return resultobj;
31937fail:
31938 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31939 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31940 return __null;
31941}
31942static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
31943 PyObject *resultobj = 0;
31944 std::string *arg1 = 0 ;
31945 std::string *arg2 = 0 ;
31946 int res1 = ((0)) ;
31947 int res2 = ((0)) ;
31948 Xapian::DatabaseError *result = 0 ;
31949 if ((nobjs < 2) || (nobjs > 2)) goto fail;
31950 {
31951 std::string *ptr = (std::string *)0;
31952 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31953 if (!(res1 >= 0)) {
31954 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31955 }
31956 if (!ptr) {
31957 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31958 }
31959 arg1 = ptr;
31960 }
31961 {
31962 std::string *ptr = (std::string *)0;
31963 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
31964 if (!(res2 >= 0)) {
31965 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31966 }
31967 if (!ptr) {
31968 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
31969 }
31970 arg2 = ptr;
31971 }
31972 {
31973 SWIG_Python_Thread_Allow _swig_thread_allow;
31974 result = (Xapian::DatabaseError *)new Xapian::DatabaseError((std::string const &)*arg1,(std::string const &)*arg2);
31975 _swig_thread_allow.end();
31976 }
31977 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[7], ((0x1 << 1) | 0x1) | 0);
31978 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31979 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31980 return resultobj;
31981fail:
31982 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
31983 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
31984 return __null;
31985}
31986static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
31987 PyObject *resultobj = 0;
31988 std::string *arg1 = 0 ;
31989 int res1 = ((0)) ;
31990 Xapian::DatabaseError *result = 0 ;
31991 if ((nobjs < 1) || (nobjs > 1)) goto fail;
31992 {
31993 std::string *ptr = (std::string *)0;
31994 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
31995 if (!(res1 >= 0)) {
31996 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
31997 }
31998 if (!ptr) {
31999 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32000 }
32001 arg1 = ptr;
32002 }
32003 {
32004 SWIG_Python_Thread_Allow _swig_thread_allow;
32005 result = (Xapian::DatabaseError *)new Xapian::DatabaseError((std::string const &)*arg1);
32006 _swig_thread_allow.end();
32007 }
32008 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[7], ((0x1 << 1) | 0x1) | 0);
32009 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32010 return resultobj;
32011fail:
32012 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32013 return __null;
32014}
32015static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
32016 PyObject *resultobj = 0;
32017 std::string *arg1 = 0 ;
32018 int arg2 ;
32019 int res1 = ((0)) ;
32020 int val2 ;
32021 int ecode2 = 0 ;
32022 Xapian::DatabaseError *result = 0 ;
32023 if ((nobjs < 2) || (nobjs > 2)) goto fail;
32024 {
32025 std::string *ptr = (std::string *)0;
32026 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32027 if (!(res1 >= 0)) {
32028 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32029 }
32030 if (!ptr) {
32031 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32032 }
32033 arg1 = ptr;
32034 }
32035 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
32036 if (!(ecode2 >= 0)) {
32037 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DatabaseError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
32038 }
32039 arg2 = static_cast< int >(val2);
32040 {
32041 SWIG_Python_Thread_Allow _swig_thread_allow;
32042 result = (Xapian::DatabaseError *)new Xapian::DatabaseError((std::string const &)*arg1,arg2);
32043 _swig_thread_allow.end();
32044 }
32045 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[7], ((0x1 << 1) | 0x1) | 0);
32046 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32047 return resultobj;
32048fail:
32049 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32050 return __null;
32051}
32052static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseError(PyObject *self, PyObject *args) {
32053 int argc;
32054 PyObject *argv[4];
32055 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DatabaseError",0,3,argv))) goto fail;
32056 --argc;
32057 if (argc == 1) {
32058 return _wrap_new_DatabaseError__SWIG_3(self, argc, argv);
32059 }
32060 if (argc == 2) {
32061 int _v = 0;
32062 {
32063 {
32064 int res = SWIG_AsVal_int(argv[1], __null);
32065 _v = ((res >= 0) ? 1 : 0);
32066 }
32067 }
32068 if (!_v) goto check_2;
32069 return _wrap_new_DatabaseError__SWIG_4(self, argc, argv);
32070 }
32071check_2:
32072 if (argc == 2) {
32073 return _wrap_new_DatabaseError__SWIG_2(self, argc, argv);
32074 }
32075 if (argc == 3) {
32076 int _v = 0;
32077 {
32078 {
32079 int res = SWIG_AsVal_int(argv[2], __null);
32080 _v = ((res >= 0) ? 1 : 0);
32081 }
32082 }
32083 if (!_v) goto check_4;
32084 return _wrap_new_DatabaseError__SWIG_1(self, argc, argv);
32085 }
32086check_4:
32087 if (argc == 3) {
32088 return _wrap_new_DatabaseError__SWIG_0(self, argc, argv);
32089 }
32090fail:
32091 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DatabaseError'.\n"
32092 " Possible C/C++ prototypes are:\n"
32093 " Xapian::DatabaseError(std::string const &,std::string const &,char const *)\n"
32094 " Xapian::DatabaseError(std::string const &,std::string const &,int)\n"
32095 " Xapian::DatabaseError(std::string const &,std::string const &)\n"
32096 " Xapian::DatabaseError(std::string const &)\n"
32097 " Xapian::DatabaseError(std::string const &,int)\n");
32098 return __null;
32099}
32100static __attribute__ ((__unused__)) PyObject *_wrap_delete_DatabaseError(PyObject *, PyObject *args) {
32101 PyObject *resultobj = 0;
32102 Xapian::DatabaseError *arg1 = (Xapian::DatabaseError *) 0 ;
32103 void *argp1 = 0 ;
32104 int res1 = 0 ;
32105 PyObject *swig_obj[1] ;
32106 if (!args) goto fail;
32107 swig_obj[0] = args;
32108 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[7], 0x1 | 0, 0);
32109 if (!(res1 >= 0)) {
32110 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DatabaseError" "', argument " "1"" of type '" "Xapian::DatabaseError *""'"); goto fail; } while(0);
32111 }
32112 arg1 = reinterpret_cast< Xapian::DatabaseError * >(argp1);
32113 {
32114 SWIG_Python_Thread_Allow _swig_thread_allow;
32115 {
32116 try {
32117 delete arg1;
32118 } catch (...) {
32119 _swig_thread_allow.end();
32120 Xapian::SetPythonException();
32121 goto fail;
32122 }
32123 }
32124 _swig_thread_allow.end();
32125 }
32126 resultobj = SWIG_Py_Void();
32127 return resultobj;
32128fail:
32129 return __null;
32130}
32131static __attribute__ ((__unused__)) PyObject *DatabaseError_swigregister(PyObject *, PyObject *args) {
32132 PyObject *obj;
32133 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
32134 SWIG_TypeNewClientData(swig_types[7], SwigPyClientData_New(obj));
32135 return SWIG_Py_Void();
32136}
32137static __attribute__ ((__unused__)) PyObject *DatabaseError_swiginit(PyObject *, PyObject *args) {
32138 return SWIG_Python_InitShadowInstance(args);
32139}
32140static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCorruptError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
32141 PyObject *resultobj = 0;
32142 std::string *arg1 = 0 ;
32143 std::string *arg2 = 0 ;
32144 char *arg3 = (char *) 0 ;
32145 int res1 = ((0)) ;
32146 int res2 = ((0)) ;
32147 int res3 ;
32148 char *buf3 = 0 ;
32149 int alloc3 = 0 ;
32150 Xapian::DatabaseCorruptError *result = 0 ;
32151 if ((nobjs < 3) || (nobjs > 3)) goto fail;
32152 {
32153 std::string *ptr = (std::string *)0;
32154 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32155 if (!(res1 >= 0)) {
32156 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32157 }
32158 if (!ptr) {
32159 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32160 }
32161 arg1 = ptr;
32162 }
32163 {
32164 std::string *ptr = (std::string *)0;
32165 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
32166 if (!(res2 >= 0)) {
32167 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32168 }
32169 if (!ptr) {
32170 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCorruptError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32171 }
32172 arg2 = ptr;
32173 }
32174 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
32175 if (!(res3 >= 0)) {
32176 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
32177 }
32178 arg3 = reinterpret_cast< char * >(buf3);
32179 {
32180 SWIG_Python_Thread_Allow _swig_thread_allow;
32181 result = (Xapian::DatabaseCorruptError *)new Xapian::DatabaseCorruptError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
32182 _swig_thread_allow.end();
32183 }
32184 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[5], ((0x1 << 1) | 0x1) | 0);
32185 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32186 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32187 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
32188 return resultobj;
32189fail:
32190 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32191 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32192 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
32193 return __null;
32194}
32195static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCorruptError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
32196 PyObject *resultobj = 0;
32197 std::string *arg1 = 0 ;
32198 std::string *arg2 = 0 ;
32199 int arg3 ;
32200 int res1 = ((0)) ;
32201 int res2 = ((0)) ;
32202 int val3 ;
32203 int ecode3 = 0 ;
32204 Xapian::DatabaseCorruptError *result = 0 ;
32205 if ((nobjs < 3) || (nobjs > 3)) goto fail;
32206 {
32207 std::string *ptr = (std::string *)0;
32208 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32209 if (!(res1 >= 0)) {
32210 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32211 }
32212 if (!ptr) {
32213 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32214 }
32215 arg1 = ptr;
32216 }
32217 {
32218 std::string *ptr = (std::string *)0;
32219 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
32220 if (!(res2 >= 0)) {
32221 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32222 }
32223 if (!ptr) {
32224 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCorruptError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32225 }
32226 arg2 = ptr;
32227 }
32228 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
32229 if (!(ecode3 >= 0)) {
32230 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
32231 }
32232 arg3 = static_cast< int >(val3);
32233 {
32234 SWIG_Python_Thread_Allow _swig_thread_allow;
32235 result = (Xapian::DatabaseCorruptError *)new Xapian::DatabaseCorruptError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
32236 _swig_thread_allow.end();
32237 }
32238 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[5], ((0x1 << 1) | 0x1) | 0);
32239 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32240 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32241 return resultobj;
32242fail:
32243 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32244 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32245 return __null;
32246}
32247static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCorruptError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
32248 PyObject *resultobj = 0;
32249 std::string *arg1 = 0 ;
32250 std::string *arg2 = 0 ;
32251 int res1 = ((0)) ;
32252 int res2 = ((0)) ;
32253 Xapian::DatabaseCorruptError *result = 0 ;
32254 if ((nobjs < 2) || (nobjs > 2)) goto fail;
32255 {
32256 std::string *ptr = (std::string *)0;
32257 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32258 if (!(res1 >= 0)) {
32259 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32260 }
32261 if (!ptr) {
32262 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32263 }
32264 arg1 = ptr;
32265 }
32266 {
32267 std::string *ptr = (std::string *)0;
32268 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
32269 if (!(res2 >= 0)) {
32270 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32271 }
32272 if (!ptr) {
32273 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCorruptError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32274 }
32275 arg2 = ptr;
32276 }
32277 {
32278 SWIG_Python_Thread_Allow _swig_thread_allow;
32279 result = (Xapian::DatabaseCorruptError *)new Xapian::DatabaseCorruptError((std::string const &)*arg1,(std::string const &)*arg2);
32280 _swig_thread_allow.end();
32281 }
32282 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[5], ((0x1 << 1) | 0x1) | 0);
32283 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32284 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32285 return resultobj;
32286fail:
32287 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32288 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32289 return __null;
32290}
32291static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCorruptError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
32292 PyObject *resultobj = 0;
32293 std::string *arg1 = 0 ;
32294 int res1 = ((0)) ;
32295 Xapian::DatabaseCorruptError *result = 0 ;
32296 if ((nobjs < 1) || (nobjs > 1)) goto fail;
32297 {
32298 std::string *ptr = (std::string *)0;
32299 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32300 if (!(res1 >= 0)) {
32301 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32302 }
32303 if (!ptr) {
32304 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32305 }
32306 arg1 = ptr;
32307 }
32308 {
32309 SWIG_Python_Thread_Allow _swig_thread_allow;
32310 result = (Xapian::DatabaseCorruptError *)new Xapian::DatabaseCorruptError((std::string const &)*arg1);
32311 _swig_thread_allow.end();
32312 }
32313 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[5], ((0x1 << 1) | 0x1) | 0);
32314 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32315 return resultobj;
32316fail:
32317 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32318 return __null;
32319}
32320static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCorruptError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
32321 PyObject *resultobj = 0;
32322 std::string *arg1 = 0 ;
32323 int arg2 ;
32324 int res1 = ((0)) ;
32325 int val2 ;
32326 int ecode2 = 0 ;
32327 Xapian::DatabaseCorruptError *result = 0 ;
32328 if ((nobjs < 2) || (nobjs > 2)) goto fail;
32329 {
32330 std::string *ptr = (std::string *)0;
32331 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32332 if (!(res1 >= 0)) {
32333 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32334 }
32335 if (!ptr) {
32336 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCorruptError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32337 }
32338 arg1 = ptr;
32339 }
32340 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
32341 if (!(ecode2 >= 0)) {
32342 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DatabaseCorruptError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
32343 }
32344 arg2 = static_cast< int >(val2);
32345 {
32346 SWIG_Python_Thread_Allow _swig_thread_allow;
32347 result = (Xapian::DatabaseCorruptError *)new Xapian::DatabaseCorruptError((std::string const &)*arg1,arg2);
32348 _swig_thread_allow.end();
32349 }
32350 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[5], ((0x1 << 1) | 0x1) | 0);
32351 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32352 return resultobj;
32353fail:
32354 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32355 return __null;
32356}
32357static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCorruptError(PyObject *self, PyObject *args) {
32358 int argc;
32359 PyObject *argv[4];
32360 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DatabaseCorruptError",0,3,argv))) goto fail;
32361 --argc;
32362 if (argc == 1) {
32363 return _wrap_new_DatabaseCorruptError__SWIG_3(self, argc, argv);
32364 }
32365 if (argc == 2) {
32366 int _v = 0;
32367 {
32368 {
32369 int res = SWIG_AsVal_int(argv[1], __null);
32370 _v = ((res >= 0) ? 1 : 0);
32371 }
32372 }
32373 if (!_v) goto check_2;
32374 return _wrap_new_DatabaseCorruptError__SWIG_4(self, argc, argv);
32375 }
32376check_2:
32377 if (argc == 2) {
32378 return _wrap_new_DatabaseCorruptError__SWIG_2(self, argc, argv);
32379 }
32380 if (argc == 3) {
32381 int _v = 0;
32382 {
32383 {
32384 int res = SWIG_AsVal_int(argv[2], __null);
32385 _v = ((res >= 0) ? 1 : 0);
32386 }
32387 }
32388 if (!_v) goto check_4;
32389 return _wrap_new_DatabaseCorruptError__SWIG_1(self, argc, argv);
32390 }
32391check_4:
32392 if (argc == 3) {
32393 return _wrap_new_DatabaseCorruptError__SWIG_0(self, argc, argv);
32394 }
32395fail:
32396 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DatabaseCorruptError'.\n"
32397 " Possible C/C++ prototypes are:\n"
32398 " Xapian::DatabaseCorruptError(std::string const &,std::string const &,char const *)\n"
32399 " Xapian::DatabaseCorruptError(std::string const &,std::string const &,int)\n"
32400 " Xapian::DatabaseCorruptError(std::string const &,std::string const &)\n"
32401 " Xapian::DatabaseCorruptError(std::string const &)\n"
32402 " Xapian::DatabaseCorruptError(std::string const &,int)\n");
32403 return __null;
32404}
32405static __attribute__ ((__unused__)) PyObject *_wrap_delete_DatabaseCorruptError(PyObject *, PyObject *args) {
32406 PyObject *resultobj = 0;
32407 Xapian::DatabaseCorruptError *arg1 = (Xapian::DatabaseCorruptError *) 0 ;
32408 void *argp1 = 0 ;
32409 int res1 = 0 ;
32410 PyObject *swig_obj[1] ;
32411 if (!args) goto fail;
32412 swig_obj[0] = args;
32413 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[5], 0x1 | 0, 0);
32414 if (!(res1 >= 0)) {
32415 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DatabaseCorruptError" "', argument " "1"" of type '" "Xapian::DatabaseCorruptError *""'"); goto fail; } while(0);
32416 }
32417 arg1 = reinterpret_cast< Xapian::DatabaseCorruptError * >(argp1);
32418 {
32419 SWIG_Python_Thread_Allow _swig_thread_allow;
32420 {
32421 try {
32422 delete arg1;
32423 } catch (...) {
32424 _swig_thread_allow.end();
32425 Xapian::SetPythonException();
32426 goto fail;
32427 }
32428 }
32429 _swig_thread_allow.end();
32430 }
32431 resultobj = SWIG_Py_Void();
32432 return resultobj;
32433fail:
32434 return __null;
32435}
32436static __attribute__ ((__unused__)) PyObject *DatabaseCorruptError_swigregister(PyObject *, PyObject *args) {
32437 PyObject *obj;
32438 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
32439 SWIG_TypeNewClientData(swig_types[5], SwigPyClientData_New(obj));
32440 return SWIG_Py_Void();
32441}
32442static __attribute__ ((__unused__)) PyObject *DatabaseCorruptError_swiginit(PyObject *, PyObject *args) {
32443 return SWIG_Python_InitShadowInstance(args);
32444}
32445static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCreateError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
32446 PyObject *resultobj = 0;
32447 std::string *arg1 = 0 ;
32448 std::string *arg2 = 0 ;
32449 char *arg3 = (char *) 0 ;
32450 int res1 = ((0)) ;
32451 int res2 = ((0)) ;
32452 int res3 ;
32453 char *buf3 = 0 ;
32454 int alloc3 = 0 ;
32455 Xapian::DatabaseCreateError *result = 0 ;
32456 if ((nobjs < 3) || (nobjs > 3)) goto fail;
32457 {
32458 std::string *ptr = (std::string *)0;
32459 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32460 if (!(res1 >= 0)) {
32461 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32462 }
32463 if (!ptr) {
32464 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32465 }
32466 arg1 = ptr;
32467 }
32468 {
32469 std::string *ptr = (std::string *)0;
32470 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
32471 if (!(res2 >= 0)) {
32472 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32473 }
32474 if (!ptr) {
32475 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCreateError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32476 }
32477 arg2 = ptr;
32478 }
32479 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
32480 if (!(res3 >= 0)) {
32481 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
32482 }
32483 arg3 = reinterpret_cast< char * >(buf3);
32484 {
32485 SWIG_Python_Thread_Allow _swig_thread_allow;
32486 result = (Xapian::DatabaseCreateError *)new Xapian::DatabaseCreateError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
32487 _swig_thread_allow.end();
32488 }
32489 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[6], ((0x1 << 1) | 0x1) | 0);
32490 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32491 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32492 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
32493 return resultobj;
32494fail:
32495 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32496 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32497 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
32498 return __null;
32499}
32500static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCreateError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
32501 PyObject *resultobj = 0;
32502 std::string *arg1 = 0 ;
32503 std::string *arg2 = 0 ;
32504 int arg3 ;
32505 int res1 = ((0)) ;
32506 int res2 = ((0)) ;
32507 int val3 ;
32508 int ecode3 = 0 ;
32509 Xapian::DatabaseCreateError *result = 0 ;
32510 if ((nobjs < 3) || (nobjs > 3)) goto fail;
32511 {
32512 std::string *ptr = (std::string *)0;
32513 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32514 if (!(res1 >= 0)) {
32515 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32516 }
32517 if (!ptr) {
32518 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32519 }
32520 arg1 = ptr;
32521 }
32522 {
32523 std::string *ptr = (std::string *)0;
32524 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
32525 if (!(res2 >= 0)) {
32526 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32527 }
32528 if (!ptr) {
32529 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCreateError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32530 }
32531 arg2 = ptr;
32532 }
32533 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
32534 if (!(ecode3 >= 0)) {
32535 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
32536 }
32537 arg3 = static_cast< int >(val3);
32538 {
32539 SWIG_Python_Thread_Allow _swig_thread_allow;
32540 result = (Xapian::DatabaseCreateError *)new Xapian::DatabaseCreateError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
32541 _swig_thread_allow.end();
32542 }
32543 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[6], ((0x1 << 1) | 0x1) | 0);
32544 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32545 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32546 return resultobj;
32547fail:
32548 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32549 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32550 return __null;
32551}
32552static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCreateError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
32553 PyObject *resultobj = 0;
32554 std::string *arg1 = 0 ;
32555 std::string *arg2 = 0 ;
32556 int res1 = ((0)) ;
32557 int res2 = ((0)) ;
32558 Xapian::DatabaseCreateError *result = 0 ;
32559 if ((nobjs < 2) || (nobjs > 2)) goto fail;
32560 {
32561 std::string *ptr = (std::string *)0;
32562 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32563 if (!(res1 >= 0)) {
32564 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32565 }
32566 if (!ptr) {
32567 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32568 }
32569 arg1 = ptr;
32570 }
32571 {
32572 std::string *ptr = (std::string *)0;
32573 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
32574 if (!(res2 >= 0)) {
32575 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32576 }
32577 if (!ptr) {
32578 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCreateError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32579 }
32580 arg2 = ptr;
32581 }
32582 {
32583 SWIG_Python_Thread_Allow _swig_thread_allow;
32584 result = (Xapian::DatabaseCreateError *)new Xapian::DatabaseCreateError((std::string const &)*arg1,(std::string const &)*arg2);
32585 _swig_thread_allow.end();
32586 }
32587 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[6], ((0x1 << 1) | 0x1) | 0);
32588 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32589 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32590 return resultobj;
32591fail:
32592 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32593 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32594 return __null;
32595}
32596static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCreateError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
32597 PyObject *resultobj = 0;
32598 std::string *arg1 = 0 ;
32599 int res1 = ((0)) ;
32600 Xapian::DatabaseCreateError *result = 0 ;
32601 if ((nobjs < 1) || (nobjs > 1)) goto fail;
32602 {
32603 std::string *ptr = (std::string *)0;
32604 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32605 if (!(res1 >= 0)) {
32606 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32607 }
32608 if (!ptr) {
32609 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32610 }
32611 arg1 = ptr;
32612 }
32613 {
32614 SWIG_Python_Thread_Allow _swig_thread_allow;
32615 result = (Xapian::DatabaseCreateError *)new Xapian::DatabaseCreateError((std::string const &)*arg1);
32616 _swig_thread_allow.end();
32617 }
32618 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[6], ((0x1 << 1) | 0x1) | 0);
32619 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32620 return resultobj;
32621fail:
32622 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32623 return __null;
32624}
32625static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCreateError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
32626 PyObject *resultobj = 0;
32627 std::string *arg1 = 0 ;
32628 int arg2 ;
32629 int res1 = ((0)) ;
32630 int val2 ;
32631 int ecode2 = 0 ;
32632 Xapian::DatabaseCreateError *result = 0 ;
32633 if ((nobjs < 2) || (nobjs > 2)) goto fail;
32634 {
32635 std::string *ptr = (std::string *)0;
32636 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32637 if (!(res1 >= 0)) {
32638 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32639 }
32640 if (!ptr) {
32641 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseCreateError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32642 }
32643 arg1 = ptr;
32644 }
32645 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
32646 if (!(ecode2 >= 0)) {
32647 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DatabaseCreateError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
32648 }
32649 arg2 = static_cast< int >(val2);
32650 {
32651 SWIG_Python_Thread_Allow _swig_thread_allow;
32652 result = (Xapian::DatabaseCreateError *)new Xapian::DatabaseCreateError((std::string const &)*arg1,arg2);
32653 _swig_thread_allow.end();
32654 }
32655 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[6], ((0x1 << 1) | 0x1) | 0);
32656 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32657 return resultobj;
32658fail:
32659 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32660 return __null;
32661}
32662static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseCreateError(PyObject *self, PyObject *args) {
32663 int argc;
32664 PyObject *argv[4];
32665 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DatabaseCreateError",0,3,argv))) goto fail;
32666 --argc;
32667 if (argc == 1) {
32668 return _wrap_new_DatabaseCreateError__SWIG_3(self, argc, argv);
32669 }
32670 if (argc == 2) {
32671 int _v = 0;
32672 {
32673 {
32674 int res = SWIG_AsVal_int(argv[1], __null);
32675 _v = ((res >= 0) ? 1 : 0);
32676 }
32677 }
32678 if (!_v) goto check_2;
32679 return _wrap_new_DatabaseCreateError__SWIG_4(self, argc, argv);
32680 }
32681check_2:
32682 if (argc == 2) {
32683 return _wrap_new_DatabaseCreateError__SWIG_2(self, argc, argv);
32684 }
32685 if (argc == 3) {
32686 int _v = 0;
32687 {
32688 {
32689 int res = SWIG_AsVal_int(argv[2], __null);
32690 _v = ((res >= 0) ? 1 : 0);
32691 }
32692 }
32693 if (!_v) goto check_4;
32694 return _wrap_new_DatabaseCreateError__SWIG_1(self, argc, argv);
32695 }
32696check_4:
32697 if (argc == 3) {
32698 return _wrap_new_DatabaseCreateError__SWIG_0(self, argc, argv);
32699 }
32700fail:
32701 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DatabaseCreateError'.\n"
32702 " Possible C/C++ prototypes are:\n"
32703 " Xapian::DatabaseCreateError(std::string const &,std::string const &,char const *)\n"
32704 " Xapian::DatabaseCreateError(std::string const &,std::string const &,int)\n"
32705 " Xapian::DatabaseCreateError(std::string const &,std::string const &)\n"
32706 " Xapian::DatabaseCreateError(std::string const &)\n"
32707 " Xapian::DatabaseCreateError(std::string const &,int)\n");
32708 return __null;
32709}
32710static __attribute__ ((__unused__)) PyObject *_wrap_delete_DatabaseCreateError(PyObject *, PyObject *args) {
32711 PyObject *resultobj = 0;
32712 Xapian::DatabaseCreateError *arg1 = (Xapian::DatabaseCreateError *) 0 ;
32713 void *argp1 = 0 ;
32714 int res1 = 0 ;
32715 PyObject *swig_obj[1] ;
32716 if (!args) goto fail;
32717 swig_obj[0] = args;
32718 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[6], 0x1 | 0, 0);
32719 if (!(res1 >= 0)) {
32720 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DatabaseCreateError" "', argument " "1"" of type '" "Xapian::DatabaseCreateError *""'"); goto fail; } while(0);
32721 }
32722 arg1 = reinterpret_cast< Xapian::DatabaseCreateError * >(argp1);
32723 {
32724 SWIG_Python_Thread_Allow _swig_thread_allow;
32725 {
32726 try {
32727 delete arg1;
32728 } catch (...) {
32729 _swig_thread_allow.end();
32730 Xapian::SetPythonException();
32731 goto fail;
32732 }
32733 }
32734 _swig_thread_allow.end();
32735 }
32736 resultobj = SWIG_Py_Void();
32737 return resultobj;
32738fail:
32739 return __null;
32740}
32741static __attribute__ ((__unused__)) PyObject *DatabaseCreateError_swigregister(PyObject *, PyObject *args) {
32742 PyObject *obj;
32743 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
32744 SWIG_TypeNewClientData(swig_types[6], SwigPyClientData_New(obj));
32745 return SWIG_Py_Void();
32746}
32747static __attribute__ ((__unused__)) PyObject *DatabaseCreateError_swiginit(PyObject *, PyObject *args) {
32748 return SWIG_Python_InitShadowInstance(args);
32749}
32750static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseLockError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
32751 PyObject *resultobj = 0;
32752 std::string *arg1 = 0 ;
32753 std::string *arg2 = 0 ;
32754 char *arg3 = (char *) 0 ;
32755 int res1 = ((0)) ;
32756 int res2 = ((0)) ;
32757 int res3 ;
32758 char *buf3 = 0 ;
32759 int alloc3 = 0 ;
32760 Xapian::DatabaseLockError *result = 0 ;
32761 if ((nobjs < 3) || (nobjs > 3)) goto fail;
32762 {
32763 std::string *ptr = (std::string *)0;
32764 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32765 if (!(res1 >= 0)) {
32766 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32767 }
32768 if (!ptr) {
32769 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32770 }
32771 arg1 = ptr;
32772 }
32773 {
32774 std::string *ptr = (std::string *)0;
32775 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
32776 if (!(res2 >= 0)) {
32777 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseLockError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32778 }
32779 if (!ptr) {
32780 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseLockError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32781 }
32782 arg2 = ptr;
32783 }
32784 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
32785 if (!(res3 >= 0)) {
32786 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_DatabaseLockError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
32787 }
32788 arg3 = reinterpret_cast< char * >(buf3);
32789 {
32790 SWIG_Python_Thread_Allow _swig_thread_allow;
32791 result = (Xapian::DatabaseLockError *)new Xapian::DatabaseLockError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
32792 _swig_thread_allow.end();
32793 }
32794 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[8], ((0x1 << 1) | 0x1) | 0);
32795 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32796 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32797 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
32798 return resultobj;
32799fail:
32800 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32801 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32802 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
32803 return __null;
32804}
32805static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseLockError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
32806 PyObject *resultobj = 0;
32807 std::string *arg1 = 0 ;
32808 std::string *arg2 = 0 ;
32809 int arg3 ;
32810 int res1 = ((0)) ;
32811 int res2 = ((0)) ;
32812 int val3 ;
32813 int ecode3 = 0 ;
32814 Xapian::DatabaseLockError *result = 0 ;
32815 if ((nobjs < 3) || (nobjs > 3)) goto fail;
32816 {
32817 std::string *ptr = (std::string *)0;
32818 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32819 if (!(res1 >= 0)) {
32820 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32821 }
32822 if (!ptr) {
32823 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32824 }
32825 arg1 = ptr;
32826 }
32827 {
32828 std::string *ptr = (std::string *)0;
32829 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
32830 if (!(res2 >= 0)) {
32831 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseLockError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32832 }
32833 if (!ptr) {
32834 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseLockError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32835 }
32836 arg2 = ptr;
32837 }
32838 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
32839 if (!(ecode3 >= 0)) {
32840 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DatabaseLockError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
32841 }
32842 arg3 = static_cast< int >(val3);
32843 {
32844 SWIG_Python_Thread_Allow _swig_thread_allow;
32845 result = (Xapian::DatabaseLockError *)new Xapian::DatabaseLockError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
32846 _swig_thread_allow.end();
32847 }
32848 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[8], ((0x1 << 1) | 0x1) | 0);
32849 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32850 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32851 return resultobj;
32852fail:
32853 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32854 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32855 return __null;
32856}
32857static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseLockError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
32858 PyObject *resultobj = 0;
32859 std::string *arg1 = 0 ;
32860 std::string *arg2 = 0 ;
32861 int res1 = ((0)) ;
32862 int res2 = ((0)) ;
32863 Xapian::DatabaseLockError *result = 0 ;
32864 if ((nobjs < 2) || (nobjs > 2)) goto fail;
32865 {
32866 std::string *ptr = (std::string *)0;
32867 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32868 if (!(res1 >= 0)) {
32869 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32870 }
32871 if (!ptr) {
32872 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32873 }
32874 arg1 = ptr;
32875 }
32876 {
32877 std::string *ptr = (std::string *)0;
32878 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
32879 if (!(res2 >= 0)) {
32880 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseLockError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32881 }
32882 if (!ptr) {
32883 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseLockError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
32884 }
32885 arg2 = ptr;
32886 }
32887 {
32888 SWIG_Python_Thread_Allow _swig_thread_allow;
32889 result = (Xapian::DatabaseLockError *)new Xapian::DatabaseLockError((std::string const &)*arg1,(std::string const &)*arg2);
32890 _swig_thread_allow.end();
32891 }
32892 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[8], ((0x1 << 1) | 0x1) | 0);
32893 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32894 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32895 return resultobj;
32896fail:
32897 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32898 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
32899 return __null;
32900}
32901static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseLockError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
32902 PyObject *resultobj = 0;
32903 std::string *arg1 = 0 ;
32904 int res1 = ((0)) ;
32905 Xapian::DatabaseLockError *result = 0 ;
32906 if ((nobjs < 1) || (nobjs > 1)) goto fail;
32907 {
32908 std::string *ptr = (std::string *)0;
32909 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32910 if (!(res1 >= 0)) {
32911 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32912 }
32913 if (!ptr) {
32914 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32915 }
32916 arg1 = ptr;
32917 }
32918 {
32919 SWIG_Python_Thread_Allow _swig_thread_allow;
32920 result = (Xapian::DatabaseLockError *)new Xapian::DatabaseLockError((std::string const &)*arg1);
32921 _swig_thread_allow.end();
32922 }
32923 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[8], ((0x1 << 1) | 0x1) | 0);
32924 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32925 return resultobj;
32926fail:
32927 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32928 return __null;
32929}
32930static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseLockError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
32931 PyObject *resultobj = 0;
32932 std::string *arg1 = 0 ;
32933 int arg2 ;
32934 int res1 = ((0)) ;
32935 int val2 ;
32936 int ecode2 = 0 ;
32937 Xapian::DatabaseLockError *result = 0 ;
32938 if ((nobjs < 2) || (nobjs > 2)) goto fail;
32939 {
32940 std::string *ptr = (std::string *)0;
32941 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
32942 if (!(res1 >= 0)) {
32943 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32944 }
32945 if (!ptr) {
32946 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseLockError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
32947 }
32948 arg1 = ptr;
32949 }
32950 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
32951 if (!(ecode2 >= 0)) {
32952 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DatabaseLockError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
32953 }
32954 arg2 = static_cast< int >(val2);
32955 {
32956 SWIG_Python_Thread_Allow _swig_thread_allow;
32957 result = (Xapian::DatabaseLockError *)new Xapian::DatabaseLockError((std::string const &)*arg1,arg2);
32958 _swig_thread_allow.end();
32959 }
32960 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[8], ((0x1 << 1) | 0x1) | 0);
32961 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32962 return resultobj;
32963fail:
32964 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
32965 return __null;
32966}
32967static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseLockError(PyObject *self, PyObject *args) {
32968 int argc;
32969 PyObject *argv[4];
32970 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DatabaseLockError",0,3,argv))) goto fail;
32971 --argc;
32972 if (argc == 1) {
32973 return _wrap_new_DatabaseLockError__SWIG_3(self, argc, argv);
32974 }
32975 if (argc == 2) {
32976 int _v = 0;
32977 {
32978 {
32979 int res = SWIG_AsVal_int(argv[1], __null);
32980 _v = ((res >= 0) ? 1 : 0);
32981 }
32982 }
32983 if (!_v) goto check_2;
32984 return _wrap_new_DatabaseLockError__SWIG_4(self, argc, argv);
32985 }
32986check_2:
32987 if (argc == 2) {
32988 return _wrap_new_DatabaseLockError__SWIG_2(self, argc, argv);
32989 }
32990 if (argc == 3) {
32991 int _v = 0;
32992 {
32993 {
32994 int res = SWIG_AsVal_int(argv[2], __null);
32995 _v = ((res >= 0) ? 1 : 0);
32996 }
32997 }
32998 if (!_v) goto check_4;
32999 return _wrap_new_DatabaseLockError__SWIG_1(self, argc, argv);
33000 }
33001check_4:
33002 if (argc == 3) {
33003 return _wrap_new_DatabaseLockError__SWIG_0(self, argc, argv);
33004 }
33005fail:
33006 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DatabaseLockError'.\n"
33007 " Possible C/C++ prototypes are:\n"
33008 " Xapian::DatabaseLockError(std::string const &,std::string const &,char const *)\n"
33009 " Xapian::DatabaseLockError(std::string const &,std::string const &,int)\n"
33010 " Xapian::DatabaseLockError(std::string const &,std::string const &)\n"
33011 " Xapian::DatabaseLockError(std::string const &)\n"
33012 " Xapian::DatabaseLockError(std::string const &,int)\n");
33013 return __null;
33014}
33015static __attribute__ ((__unused__)) PyObject *_wrap_delete_DatabaseLockError(PyObject *, PyObject *args) {
33016 PyObject *resultobj = 0;
33017 Xapian::DatabaseLockError *arg1 = (Xapian::DatabaseLockError *) 0 ;
33018 void *argp1 = 0 ;
33019 int res1 = 0 ;
33020 PyObject *swig_obj[1] ;
33021 if (!args) goto fail;
33022 swig_obj[0] = args;
33023 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[8], 0x1 | 0, 0);
33024 if (!(res1 >= 0)) {
33025 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DatabaseLockError" "', argument " "1"" of type '" "Xapian::DatabaseLockError *""'"); goto fail; } while(0);
33026 }
33027 arg1 = reinterpret_cast< Xapian::DatabaseLockError * >(argp1);
33028 {
33029 SWIG_Python_Thread_Allow _swig_thread_allow;
33030 {
33031 try {
33032 delete arg1;
33033 } catch (...) {
33034 _swig_thread_allow.end();
33035 Xapian::SetPythonException();
33036 goto fail;
33037 }
33038 }
33039 _swig_thread_allow.end();
33040 }
33041 resultobj = SWIG_Py_Void();
33042 return resultobj;
33043fail:
33044 return __null;
33045}
33046static __attribute__ ((__unused__)) PyObject *DatabaseLockError_swigregister(PyObject *, PyObject *args) {
33047 PyObject *obj;
33048 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
33049 SWIG_TypeNewClientData(swig_types[8], SwigPyClientData_New(obj));
33050 return SWIG_Py_Void();
33051}
33052static __attribute__ ((__unused__)) PyObject *DatabaseLockError_swiginit(PyObject *, PyObject *args) {
33053 return SWIG_Python_InitShadowInstance(args);
33054}
33055static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseModifiedError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
33056 PyObject *resultobj = 0;
33057 std::string *arg1 = 0 ;
33058 std::string *arg2 = 0 ;
33059 char *arg3 = (char *) 0 ;
33060 int res1 = ((0)) ;
33061 int res2 = ((0)) ;
33062 int res3 ;
33063 char *buf3 = 0 ;
33064 int alloc3 = 0 ;
33065 Xapian::DatabaseModifiedError *result = 0 ;
33066 if ((nobjs < 3) || (nobjs > 3)) goto fail;
33067 {
33068 std::string *ptr = (std::string *)0;
33069 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33070 if (!(res1 >= 0)) {
33071 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33072 }
33073 if (!ptr) {
33074 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33075 }
33076 arg1 = ptr;
33077 }
33078 {
33079 std::string *ptr = (std::string *)0;
33080 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33081 if (!(res2 >= 0)) {
33082 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33083 }
33084 if (!ptr) {
33085 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseModifiedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33086 }
33087 arg2 = ptr;
33088 }
33089 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
33090 if (!(res3 >= 0)) {
33091 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
33092 }
33093 arg3 = reinterpret_cast< char * >(buf3);
33094 {
33095 SWIG_Python_Thread_Allow _swig_thread_allow;
33096 result = (Xapian::DatabaseModifiedError *)new Xapian::DatabaseModifiedError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
33097 _swig_thread_allow.end();
33098 }
33099 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[9], ((0x1 << 1) | 0x1) | 0);
33100 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33101 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33102 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
33103 return resultobj;
33104fail:
33105 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33106 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33107 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
33108 return __null;
33109}
33110static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseModifiedError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
33111 PyObject *resultobj = 0;
33112 std::string *arg1 = 0 ;
33113 std::string *arg2 = 0 ;
33114 int arg3 ;
33115 int res1 = ((0)) ;
33116 int res2 = ((0)) ;
33117 int val3 ;
33118 int ecode3 = 0 ;
33119 Xapian::DatabaseModifiedError *result = 0 ;
33120 if ((nobjs < 3) || (nobjs > 3)) goto fail;
33121 {
33122 std::string *ptr = (std::string *)0;
33123 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33124 if (!(res1 >= 0)) {
33125 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33126 }
33127 if (!ptr) {
33128 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33129 }
33130 arg1 = ptr;
33131 }
33132 {
33133 std::string *ptr = (std::string *)0;
33134 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33135 if (!(res2 >= 0)) {
33136 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33137 }
33138 if (!ptr) {
33139 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseModifiedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33140 }
33141 arg2 = ptr;
33142 }
33143 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
33144 if (!(ecode3 >= 0)) {
33145 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
33146 }
33147 arg3 = static_cast< int >(val3);
33148 {
33149 SWIG_Python_Thread_Allow _swig_thread_allow;
33150 result = (Xapian::DatabaseModifiedError *)new Xapian::DatabaseModifiedError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
33151 _swig_thread_allow.end();
33152 }
33153 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[9], ((0x1 << 1) | 0x1) | 0);
33154 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33155 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33156 return resultobj;
33157fail:
33158 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33159 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33160 return __null;
33161}
33162static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseModifiedError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
33163 PyObject *resultobj = 0;
33164 std::string *arg1 = 0 ;
33165 std::string *arg2 = 0 ;
33166 int res1 = ((0)) ;
33167 int res2 = ((0)) ;
33168 Xapian::DatabaseModifiedError *result = 0 ;
33169 if ((nobjs < 2) || (nobjs > 2)) goto fail;
33170 {
33171 std::string *ptr = (std::string *)0;
33172 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33173 if (!(res1 >= 0)) {
33174 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33175 }
33176 if (!ptr) {
33177 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33178 }
33179 arg1 = ptr;
33180 }
33181 {
33182 std::string *ptr = (std::string *)0;
33183 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33184 if (!(res2 >= 0)) {
33185 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33186 }
33187 if (!ptr) {
33188 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseModifiedError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33189 }
33190 arg2 = ptr;
33191 }
33192 {
33193 SWIG_Python_Thread_Allow _swig_thread_allow;
33194 result = (Xapian::DatabaseModifiedError *)new Xapian::DatabaseModifiedError((std::string const &)*arg1,(std::string const &)*arg2);
33195 _swig_thread_allow.end();
33196 }
33197 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[9], ((0x1 << 1) | 0x1) | 0);
33198 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33199 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33200 return resultobj;
33201fail:
33202 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33203 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33204 return __null;
33205}
33206static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseModifiedError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
33207 PyObject *resultobj = 0;
33208 std::string *arg1 = 0 ;
33209 int res1 = ((0)) ;
33210 Xapian::DatabaseModifiedError *result = 0 ;
33211 if ((nobjs < 1) || (nobjs > 1)) goto fail;
33212 {
33213 std::string *ptr = (std::string *)0;
33214 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33215 if (!(res1 >= 0)) {
33216 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33217 }
33218 if (!ptr) {
33219 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33220 }
33221 arg1 = ptr;
33222 }
33223 {
33224 SWIG_Python_Thread_Allow _swig_thread_allow;
33225 result = (Xapian::DatabaseModifiedError *)new Xapian::DatabaseModifiedError((std::string const &)*arg1);
33226 _swig_thread_allow.end();
33227 }
33228 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[9], ((0x1 << 1) | 0x1) | 0);
33229 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33230 return resultobj;
33231fail:
33232 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33233 return __null;
33234}
33235static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseModifiedError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
33236 PyObject *resultobj = 0;
33237 std::string *arg1 = 0 ;
33238 int arg2 ;
33239 int res1 = ((0)) ;
33240 int val2 ;
33241 int ecode2 = 0 ;
33242 Xapian::DatabaseModifiedError *result = 0 ;
33243 if ((nobjs < 2) || (nobjs > 2)) goto fail;
33244 {
33245 std::string *ptr = (std::string *)0;
33246 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33247 if (!(res1 >= 0)) {
33248 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33249 }
33250 if (!ptr) {
33251 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseModifiedError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33252 }
33253 arg1 = ptr;
33254 }
33255 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
33256 if (!(ecode2 >= 0)) {
33257 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DatabaseModifiedError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
33258 }
33259 arg2 = static_cast< int >(val2);
33260 {
33261 SWIG_Python_Thread_Allow _swig_thread_allow;
33262 result = (Xapian::DatabaseModifiedError *)new Xapian::DatabaseModifiedError((std::string const &)*arg1,arg2);
33263 _swig_thread_allow.end();
33264 }
33265 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[9], ((0x1 << 1) | 0x1) | 0);
33266 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33267 return resultobj;
33268fail:
33269 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33270 return __null;
33271}
33272static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseModifiedError(PyObject *self, PyObject *args) {
33273 int argc;
33274 PyObject *argv[4];
33275 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DatabaseModifiedError",0,3,argv))) goto fail;
33276 --argc;
33277 if (argc == 1) {
33278 return _wrap_new_DatabaseModifiedError__SWIG_3(self, argc, argv);
33279 }
33280 if (argc == 2) {
33281 int _v = 0;
33282 {
33283 {
33284 int res = SWIG_AsVal_int(argv[1], __null);
33285 _v = ((res >= 0) ? 1 : 0);
33286 }
33287 }
33288 if (!_v) goto check_2;
33289 return _wrap_new_DatabaseModifiedError__SWIG_4(self, argc, argv);
33290 }
33291check_2:
33292 if (argc == 2) {
33293 return _wrap_new_DatabaseModifiedError__SWIG_2(self, argc, argv);
33294 }
33295 if (argc == 3) {
33296 int _v = 0;
33297 {
33298 {
33299 int res = SWIG_AsVal_int(argv[2], __null);
33300 _v = ((res >= 0) ? 1 : 0);
33301 }
33302 }
33303 if (!_v) goto check_4;
33304 return _wrap_new_DatabaseModifiedError__SWIG_1(self, argc, argv);
33305 }
33306check_4:
33307 if (argc == 3) {
33308 return _wrap_new_DatabaseModifiedError__SWIG_0(self, argc, argv);
33309 }
33310fail:
33311 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DatabaseModifiedError'.\n"
33312 " Possible C/C++ prototypes are:\n"
33313 " Xapian::DatabaseModifiedError(std::string const &,std::string const &,char const *)\n"
33314 " Xapian::DatabaseModifiedError(std::string const &,std::string const &,int)\n"
33315 " Xapian::DatabaseModifiedError(std::string const &,std::string const &)\n"
33316 " Xapian::DatabaseModifiedError(std::string const &)\n"
33317 " Xapian::DatabaseModifiedError(std::string const &,int)\n");
33318 return __null;
33319}
33320static __attribute__ ((__unused__)) PyObject *_wrap_delete_DatabaseModifiedError(PyObject *, PyObject *args) {
33321 PyObject *resultobj = 0;
33322 Xapian::DatabaseModifiedError *arg1 = (Xapian::DatabaseModifiedError *) 0 ;
33323 void *argp1 = 0 ;
33324 int res1 = 0 ;
33325 PyObject *swig_obj[1] ;
33326 if (!args) goto fail;
33327 swig_obj[0] = args;
33328 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[9], 0x1 | 0, 0);
33329 if (!(res1 >= 0)) {
33330 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DatabaseModifiedError" "', argument " "1"" of type '" "Xapian::DatabaseModifiedError *""'"); goto fail; } while(0);
33331 }
33332 arg1 = reinterpret_cast< Xapian::DatabaseModifiedError * >(argp1);
33333 {
33334 SWIG_Python_Thread_Allow _swig_thread_allow;
33335 {
33336 try {
33337 delete arg1;
33338 } catch (...) {
33339 _swig_thread_allow.end();
33340 Xapian::SetPythonException();
33341 goto fail;
33342 }
33343 }
33344 _swig_thread_allow.end();
33345 }
33346 resultobj = SWIG_Py_Void();
33347 return resultobj;
33348fail:
33349 return __null;
33350}
33351static __attribute__ ((__unused__)) PyObject *DatabaseModifiedError_swigregister(PyObject *, PyObject *args) {
33352 PyObject *obj;
33353 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
33354 SWIG_TypeNewClientData(swig_types[9], SwigPyClientData_New(obj));
33355 return SWIG_Py_Void();
33356}
33357static __attribute__ ((__unused__)) PyObject *DatabaseModifiedError_swiginit(PyObject *, PyObject *args) {
33358 return SWIG_Python_InitShadowInstance(args);
33359}
33360static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseOpeningError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
33361 PyObject *resultobj = 0;
33362 std::string *arg1 = 0 ;
33363 std::string *arg2 = 0 ;
33364 char *arg3 = (char *) 0 ;
33365 int res1 = ((0)) ;
33366 int res2 = ((0)) ;
33367 int res3 ;
33368 char *buf3 = 0 ;
33369 int alloc3 = 0 ;
33370 Xapian::DatabaseOpeningError *result = 0 ;
33371 if ((nobjs < 3) || (nobjs > 3)) goto fail;
33372 {
33373 std::string *ptr = (std::string *)0;
33374 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33375 if (!(res1 >= 0)) {
33376 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33377 }
33378 if (!ptr) {
33379 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33380 }
33381 arg1 = ptr;
33382 }
33383 {
33384 std::string *ptr = (std::string *)0;
33385 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33386 if (!(res2 >= 0)) {
33387 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33388 }
33389 if (!ptr) {
33390 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseOpeningError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33391 }
33392 arg2 = ptr;
33393 }
33394 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
33395 if (!(res3 >= 0)) {
33396 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
33397 }
33398 arg3 = reinterpret_cast< char * >(buf3);
33399 {
33400 SWIG_Python_Thread_Allow _swig_thread_allow;
33401 result = (Xapian::DatabaseOpeningError *)new Xapian::DatabaseOpeningError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
33402 _swig_thread_allow.end();
33403 }
33404 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[10], ((0x1 << 1) | 0x1) | 0);
33405 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33406 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33407 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
33408 return resultobj;
33409fail:
33410 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33411 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33412 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
33413 return __null;
33414}
33415static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseOpeningError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
33416 PyObject *resultobj = 0;
33417 std::string *arg1 = 0 ;
33418 std::string *arg2 = 0 ;
33419 int arg3 ;
33420 int res1 = ((0)) ;
33421 int res2 = ((0)) ;
33422 int val3 ;
33423 int ecode3 = 0 ;
33424 Xapian::DatabaseOpeningError *result = 0 ;
33425 if ((nobjs < 3) || (nobjs > 3)) goto fail;
33426 {
33427 std::string *ptr = (std::string *)0;
33428 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33429 if (!(res1 >= 0)) {
33430 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33431 }
33432 if (!ptr) {
33433 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33434 }
33435 arg1 = ptr;
33436 }
33437 {
33438 std::string *ptr = (std::string *)0;
33439 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33440 if (!(res2 >= 0)) {
33441 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33442 }
33443 if (!ptr) {
33444 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseOpeningError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33445 }
33446 arg2 = ptr;
33447 }
33448 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
33449 if (!(ecode3 >= 0)) {
33450 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
33451 }
33452 arg3 = static_cast< int >(val3);
33453 {
33454 SWIG_Python_Thread_Allow _swig_thread_allow;
33455 result = (Xapian::DatabaseOpeningError *)new Xapian::DatabaseOpeningError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
33456 _swig_thread_allow.end();
33457 }
33458 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[10], ((0x1 << 1) | 0x1) | 0);
33459 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33460 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33461 return resultobj;
33462fail:
33463 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33464 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33465 return __null;
33466}
33467static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseOpeningError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
33468 PyObject *resultobj = 0;
33469 std::string *arg1 = 0 ;
33470 std::string *arg2 = 0 ;
33471 int res1 = ((0)) ;
33472 int res2 = ((0)) ;
33473 Xapian::DatabaseOpeningError *result = 0 ;
33474 if ((nobjs < 2) || (nobjs > 2)) goto fail;
33475 {
33476 std::string *ptr = (std::string *)0;
33477 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33478 if (!(res1 >= 0)) {
33479 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33480 }
33481 if (!ptr) {
33482 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33483 }
33484 arg1 = ptr;
33485 }
33486 {
33487 std::string *ptr = (std::string *)0;
33488 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33489 if (!(res2 >= 0)) {
33490 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33491 }
33492 if (!ptr) {
33493 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseOpeningError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33494 }
33495 arg2 = ptr;
33496 }
33497 {
33498 SWIG_Python_Thread_Allow _swig_thread_allow;
33499 result = (Xapian::DatabaseOpeningError *)new Xapian::DatabaseOpeningError((std::string const &)*arg1,(std::string const &)*arg2);
33500 _swig_thread_allow.end();
33501 }
33502 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[10], ((0x1 << 1) | 0x1) | 0);
33503 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33504 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33505 return resultobj;
33506fail:
33507 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33508 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33509 return __null;
33510}
33511static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseOpeningError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
33512 PyObject *resultobj = 0;
33513 std::string *arg1 = 0 ;
33514 int res1 = ((0)) ;
33515 Xapian::DatabaseOpeningError *result = 0 ;
33516 if ((nobjs < 1) || (nobjs > 1)) goto fail;
33517 {
33518 std::string *ptr = (std::string *)0;
33519 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33520 if (!(res1 >= 0)) {
33521 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33522 }
33523 if (!ptr) {
33524 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33525 }
33526 arg1 = ptr;
33527 }
33528 {
33529 SWIG_Python_Thread_Allow _swig_thread_allow;
33530 result = (Xapian::DatabaseOpeningError *)new Xapian::DatabaseOpeningError((std::string const &)*arg1);
33531 _swig_thread_allow.end();
33532 }
33533 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[10], ((0x1 << 1) | 0x1) | 0);
33534 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33535 return resultobj;
33536fail:
33537 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33538 return __null;
33539}
33540static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseOpeningError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
33541 PyObject *resultobj = 0;
33542 std::string *arg1 = 0 ;
33543 int arg2 ;
33544 int res1 = ((0)) ;
33545 int val2 ;
33546 int ecode2 = 0 ;
33547 Xapian::DatabaseOpeningError *result = 0 ;
33548 if ((nobjs < 2) || (nobjs > 2)) goto fail;
33549 {
33550 std::string *ptr = (std::string *)0;
33551 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33552 if (!(res1 >= 0)) {
33553 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33554 }
33555 if (!ptr) {
33556 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseOpeningError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33557 }
33558 arg1 = ptr;
33559 }
33560 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
33561 if (!(ecode2 >= 0)) {
33562 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DatabaseOpeningError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
33563 }
33564 arg2 = static_cast< int >(val2);
33565 {
33566 SWIG_Python_Thread_Allow _swig_thread_allow;
33567 result = (Xapian::DatabaseOpeningError *)new Xapian::DatabaseOpeningError((std::string const &)*arg1,arg2);
33568 _swig_thread_allow.end();
33569 }
33570 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[10], ((0x1 << 1) | 0x1) | 0);
33571 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33572 return resultobj;
33573fail:
33574 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33575 return __null;
33576}
33577static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseOpeningError(PyObject *self, PyObject *args) {
33578 int argc;
33579 PyObject *argv[4];
33580 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DatabaseOpeningError",0,3,argv))) goto fail;
33581 --argc;
33582 if (argc == 1) {
33583 return _wrap_new_DatabaseOpeningError__SWIG_3(self, argc, argv);
33584 }
33585 if (argc == 2) {
33586 int _v = 0;
33587 {
33588 {
33589 int res = SWIG_AsVal_int(argv[1], __null);
33590 _v = ((res >= 0) ? 1 : 0);
33591 }
33592 }
33593 if (!_v) goto check_2;
33594 return _wrap_new_DatabaseOpeningError__SWIG_4(self, argc, argv);
33595 }
33596check_2:
33597 if (argc == 2) {
33598 return _wrap_new_DatabaseOpeningError__SWIG_2(self, argc, argv);
33599 }
33600 if (argc == 3) {
33601 int _v = 0;
33602 {
33603 {
33604 int res = SWIG_AsVal_int(argv[2], __null);
33605 _v = ((res >= 0) ? 1 : 0);
33606 }
33607 }
33608 if (!_v) goto check_4;
33609 return _wrap_new_DatabaseOpeningError__SWIG_1(self, argc, argv);
33610 }
33611check_4:
33612 if (argc == 3) {
33613 return _wrap_new_DatabaseOpeningError__SWIG_0(self, argc, argv);
33614 }
33615fail:
33616 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DatabaseOpeningError'.\n"
33617 " Possible C/C++ prototypes are:\n"
33618 " Xapian::DatabaseOpeningError(std::string const &,std::string const &,char const *)\n"
33619 " Xapian::DatabaseOpeningError(std::string const &,std::string const &,int)\n"
33620 " Xapian::DatabaseOpeningError(std::string const &,std::string const &)\n"
33621 " Xapian::DatabaseOpeningError(std::string const &)\n"
33622 " Xapian::DatabaseOpeningError(std::string const &,int)\n");
33623 return __null;
33624}
33625static __attribute__ ((__unused__)) PyObject *_wrap_delete_DatabaseOpeningError(PyObject *, PyObject *args) {
33626 PyObject *resultobj = 0;
33627 Xapian::DatabaseOpeningError *arg1 = (Xapian::DatabaseOpeningError *) 0 ;
33628 void *argp1 = 0 ;
33629 int res1 = 0 ;
33630 PyObject *swig_obj[1] ;
33631 if (!args) goto fail;
33632 swig_obj[0] = args;
33633 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[10], 0x1 | 0, 0);
33634 if (!(res1 >= 0)) {
33635 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DatabaseOpeningError" "', argument " "1"" of type '" "Xapian::DatabaseOpeningError *""'"); goto fail; } while(0);
33636 }
33637 arg1 = reinterpret_cast< Xapian::DatabaseOpeningError * >(argp1);
33638 {
33639 SWIG_Python_Thread_Allow _swig_thread_allow;
33640 {
33641 try {
33642 delete arg1;
33643 } catch (...) {
33644 _swig_thread_allow.end();
33645 Xapian::SetPythonException();
33646 goto fail;
33647 }
33648 }
33649 _swig_thread_allow.end();
33650 }
33651 resultobj = SWIG_Py_Void();
33652 return resultobj;
33653fail:
33654 return __null;
33655}
33656static __attribute__ ((__unused__)) PyObject *DatabaseOpeningError_swigregister(PyObject *, PyObject *args) {
33657 PyObject *obj;
33658 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
33659 SWIG_TypeNewClientData(swig_types[10], SwigPyClientData_New(obj));
33660 return SWIG_Py_Void();
33661}
33662static __attribute__ ((__unused__)) PyObject *DatabaseOpeningError_swiginit(PyObject *, PyObject *args) {
33663 return SWIG_Python_InitShadowInstance(args);
33664}
33665static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseVersionError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
33666 PyObject *resultobj = 0;
33667 std::string *arg1 = 0 ;
33668 std::string *arg2 = 0 ;
33669 char *arg3 = (char *) 0 ;
33670 int res1 = ((0)) ;
33671 int res2 = ((0)) ;
33672 int res3 ;
33673 char *buf3 = 0 ;
33674 int alloc3 = 0 ;
33675 Xapian::DatabaseVersionError *result = 0 ;
33676 if ((nobjs < 3) || (nobjs > 3)) goto fail;
33677 {
33678 std::string *ptr = (std::string *)0;
33679 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33680 if (!(res1 >= 0)) {
33681 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33682 }
33683 if (!ptr) {
33684 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33685 }
33686 arg1 = ptr;
33687 }
33688 {
33689 std::string *ptr = (std::string *)0;
33690 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33691 if (!(res2 >= 0)) {
33692 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33693 }
33694 if (!ptr) {
33695 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseVersionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33696 }
33697 arg2 = ptr;
33698 }
33699 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
33700 if (!(res3 >= 0)) {
33701 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
33702 }
33703 arg3 = reinterpret_cast< char * >(buf3);
33704 {
33705 SWIG_Python_Thread_Allow _swig_thread_allow;
33706 result = (Xapian::DatabaseVersionError *)new Xapian::DatabaseVersionError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
33707 _swig_thread_allow.end();
33708 }
33709 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[11], ((0x1 << 1) | 0x1) | 0);
33710 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33711 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33712 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
33713 return resultobj;
33714fail:
33715 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33716 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33717 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
33718 return __null;
33719}
33720static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseVersionError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
33721 PyObject *resultobj = 0;
33722 std::string *arg1 = 0 ;
33723 std::string *arg2 = 0 ;
33724 int arg3 ;
33725 int res1 = ((0)) ;
33726 int res2 = ((0)) ;
33727 int val3 ;
33728 int ecode3 = 0 ;
33729 Xapian::DatabaseVersionError *result = 0 ;
33730 if ((nobjs < 3) || (nobjs > 3)) goto fail;
33731 {
33732 std::string *ptr = (std::string *)0;
33733 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33734 if (!(res1 >= 0)) {
33735 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33736 }
33737 if (!ptr) {
33738 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33739 }
33740 arg1 = ptr;
33741 }
33742 {
33743 std::string *ptr = (std::string *)0;
33744 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33745 if (!(res2 >= 0)) {
33746 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33747 }
33748 if (!ptr) {
33749 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseVersionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33750 }
33751 arg2 = ptr;
33752 }
33753 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
33754 if (!(ecode3 >= 0)) {
33755 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
33756 }
33757 arg3 = static_cast< int >(val3);
33758 {
33759 SWIG_Python_Thread_Allow _swig_thread_allow;
33760 result = (Xapian::DatabaseVersionError *)new Xapian::DatabaseVersionError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
33761 _swig_thread_allow.end();
33762 }
33763 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[11], ((0x1 << 1) | 0x1) | 0);
33764 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33765 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33766 return resultobj;
33767fail:
33768 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33769 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33770 return __null;
33771}
33772static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseVersionError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
33773 PyObject *resultobj = 0;
33774 std::string *arg1 = 0 ;
33775 std::string *arg2 = 0 ;
33776 int res1 = ((0)) ;
33777 int res2 = ((0)) ;
33778 Xapian::DatabaseVersionError *result = 0 ;
33779 if ((nobjs < 2) || (nobjs > 2)) goto fail;
33780 {
33781 std::string *ptr = (std::string *)0;
33782 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33783 if (!(res1 >= 0)) {
33784 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33785 }
33786 if (!ptr) {
33787 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33788 }
33789 arg1 = ptr;
33790 }
33791 {
33792 std::string *ptr = (std::string *)0;
33793 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33794 if (!(res2 >= 0)) {
33795 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33796 }
33797 if (!ptr) {
33798 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseVersionError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33799 }
33800 arg2 = ptr;
33801 }
33802 {
33803 SWIG_Python_Thread_Allow _swig_thread_allow;
33804 result = (Xapian::DatabaseVersionError *)new Xapian::DatabaseVersionError((std::string const &)*arg1,(std::string const &)*arg2);
33805 _swig_thread_allow.end();
33806 }
33807 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[11], ((0x1 << 1) | 0x1) | 0);
33808 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33809 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33810 return resultobj;
33811fail:
33812 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33813 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
33814 return __null;
33815}
33816static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseVersionError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
33817 PyObject *resultobj = 0;
33818 std::string *arg1 = 0 ;
33819 int res1 = ((0)) ;
33820 Xapian::DatabaseVersionError *result = 0 ;
33821 if ((nobjs < 1) || (nobjs > 1)) goto fail;
33822 {
33823 std::string *ptr = (std::string *)0;
33824 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33825 if (!(res1 >= 0)) {
33826 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33827 }
33828 if (!ptr) {
33829 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33830 }
33831 arg1 = ptr;
33832 }
33833 {
33834 SWIG_Python_Thread_Allow _swig_thread_allow;
33835 result = (Xapian::DatabaseVersionError *)new Xapian::DatabaseVersionError((std::string const &)*arg1);
33836 _swig_thread_allow.end();
33837 }
33838 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[11], ((0x1 << 1) | 0x1) | 0);
33839 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33840 return resultobj;
33841fail:
33842 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33843 return __null;
33844}
33845static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseVersionError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
33846 PyObject *resultobj = 0;
33847 std::string *arg1 = 0 ;
33848 int arg2 ;
33849 int res1 = ((0)) ;
33850 int val2 ;
33851 int ecode2 = 0 ;
33852 Xapian::DatabaseVersionError *result = 0 ;
33853 if ((nobjs < 2) || (nobjs > 2)) goto fail;
33854 {
33855 std::string *ptr = (std::string *)0;
33856 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33857 if (!(res1 >= 0)) {
33858 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33859 }
33860 if (!ptr) {
33861 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DatabaseVersionError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33862 }
33863 arg1 = ptr;
33864 }
33865 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
33866 if (!(ecode2 >= 0)) {
33867 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DatabaseVersionError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
33868 }
33869 arg2 = static_cast< int >(val2);
33870 {
33871 SWIG_Python_Thread_Allow _swig_thread_allow;
33872 result = (Xapian::DatabaseVersionError *)new Xapian::DatabaseVersionError((std::string const &)*arg1,arg2);
33873 _swig_thread_allow.end();
33874 }
33875 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[11], ((0x1 << 1) | 0x1) | 0);
33876 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33877 return resultobj;
33878fail:
33879 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
33880 return __null;
33881}
33882static __attribute__ ((__unused__)) PyObject *_wrap_new_DatabaseVersionError(PyObject *self, PyObject *args) {
33883 int argc;
33884 PyObject *argv[4];
33885 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DatabaseVersionError",0,3,argv))) goto fail;
33886 --argc;
33887 if (argc == 1) {
33888 return _wrap_new_DatabaseVersionError__SWIG_3(self, argc, argv);
33889 }
33890 if (argc == 2) {
33891 int _v = 0;
33892 {
33893 {
33894 int res = SWIG_AsVal_int(argv[1], __null);
33895 _v = ((res >= 0) ? 1 : 0);
33896 }
33897 }
33898 if (!_v) goto check_2;
33899 return _wrap_new_DatabaseVersionError__SWIG_4(self, argc, argv);
33900 }
33901check_2:
33902 if (argc == 2) {
33903 return _wrap_new_DatabaseVersionError__SWIG_2(self, argc, argv);
33904 }
33905 if (argc == 3) {
33906 int _v = 0;
33907 {
33908 {
33909 int res = SWIG_AsVal_int(argv[2], __null);
33910 _v = ((res >= 0) ? 1 : 0);
33911 }
33912 }
33913 if (!_v) goto check_4;
33914 return _wrap_new_DatabaseVersionError__SWIG_1(self, argc, argv);
33915 }
33916check_4:
33917 if (argc == 3) {
33918 return _wrap_new_DatabaseVersionError__SWIG_0(self, argc, argv);
33919 }
33920fail:
33921 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DatabaseVersionError'.\n"
33922 " Possible C/C++ prototypes are:\n"
33923 " Xapian::DatabaseVersionError(std::string const &,std::string const &,char const *)\n"
33924 " Xapian::DatabaseVersionError(std::string const &,std::string const &,int)\n"
33925 " Xapian::DatabaseVersionError(std::string const &,std::string const &)\n"
33926 " Xapian::DatabaseVersionError(std::string const &)\n"
33927 " Xapian::DatabaseVersionError(std::string const &,int)\n");
33928 return __null;
33929}
33930static __attribute__ ((__unused__)) PyObject *_wrap_delete_DatabaseVersionError(PyObject *, PyObject *args) {
33931 PyObject *resultobj = 0;
33932 Xapian::DatabaseVersionError *arg1 = (Xapian::DatabaseVersionError *) 0 ;
33933 void *argp1 = 0 ;
33934 int res1 = 0 ;
33935 PyObject *swig_obj[1] ;
33936 if (!args) goto fail;
33937 swig_obj[0] = args;
33938 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[11], 0x1 | 0, 0);
33939 if (!(res1 >= 0)) {
33940 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DatabaseVersionError" "', argument " "1"" of type '" "Xapian::DatabaseVersionError *""'"); goto fail; } while(0);
33941 }
33942 arg1 = reinterpret_cast< Xapian::DatabaseVersionError * >(argp1);
33943 {
33944 SWIG_Python_Thread_Allow _swig_thread_allow;
33945 {
33946 try {
33947 delete arg1;
33948 } catch (...) {
33949 _swig_thread_allow.end();
33950 Xapian::SetPythonException();
33951 goto fail;
33952 }
33953 }
33954 _swig_thread_allow.end();
33955 }
33956 resultobj = SWIG_Py_Void();
33957 return resultobj;
33958fail:
33959 return __null;
33960}
33961static __attribute__ ((__unused__)) PyObject *DatabaseVersionError_swigregister(PyObject *, PyObject *args) {
33962 PyObject *obj;
33963 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
33964 SWIG_TypeNewClientData(swig_types[11], SwigPyClientData_New(obj));
33965 return SWIG_Py_Void();
33966}
33967static __attribute__ ((__unused__)) PyObject *DatabaseVersionError_swiginit(PyObject *, PyObject *args) {
33968 return SWIG_Python_InitShadowInstance(args);
33969}
33970static __attribute__ ((__unused__)) PyObject *_wrap_new_DocNotFoundError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
33971 PyObject *resultobj = 0;
33972 std::string *arg1 = 0 ;
33973 std::string *arg2 = 0 ;
33974 char *arg3 = (char *) 0 ;
33975 int res1 = ((0)) ;
33976 int res2 = ((0)) ;
33977 int res3 ;
33978 char *buf3 = 0 ;
33979 int alloc3 = 0 ;
33980 Xapian::DocNotFoundError *result = 0 ;
33981 if ((nobjs < 3) || (nobjs > 3)) goto fail;
33982 {
33983 std::string *ptr = (std::string *)0;
33984 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
33985 if (!(res1 >= 0)) {
33986 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33987 }
33988 if (!ptr) {
33989 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
33990 }
33991 arg1 = ptr;
33992 }
33993 {
33994 std::string *ptr = (std::string *)0;
33995 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
33996 if (!(res2 >= 0)) {
33997 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DocNotFoundError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
33998 }
33999 if (!ptr) {
34000 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DocNotFoundError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34001 }
34002 arg2 = ptr;
34003 }
34004 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
34005 if (!(res3 >= 0)) {
34006 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_DocNotFoundError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
34007 }
34008 arg3 = reinterpret_cast< char * >(buf3);
34009 {
34010 SWIG_Python_Thread_Allow _swig_thread_allow;
34011 result = (Xapian::DocNotFoundError *)new Xapian::DocNotFoundError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
34012 _swig_thread_allow.end();
34013 }
34014 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[14], ((0x1 << 1) | 0x1) | 0);
34015 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34016 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34017 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
34018 return resultobj;
34019fail:
34020 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34021 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34022 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
34023 return __null;
34024}
34025static __attribute__ ((__unused__)) PyObject *_wrap_new_DocNotFoundError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
34026 PyObject *resultobj = 0;
34027 std::string *arg1 = 0 ;
34028 std::string *arg2 = 0 ;
34029 int arg3 ;
34030 int res1 = ((0)) ;
34031 int res2 = ((0)) ;
34032 int val3 ;
34033 int ecode3 = 0 ;
34034 Xapian::DocNotFoundError *result = 0 ;
34035 if ((nobjs < 3) || (nobjs > 3)) goto fail;
34036 {
34037 std::string *ptr = (std::string *)0;
34038 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34039 if (!(res1 >= 0)) {
34040 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34041 }
34042 if (!ptr) {
34043 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34044 }
34045 arg1 = ptr;
34046 }
34047 {
34048 std::string *ptr = (std::string *)0;
34049 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34050 if (!(res2 >= 0)) {
34051 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DocNotFoundError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34052 }
34053 if (!ptr) {
34054 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DocNotFoundError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34055 }
34056 arg2 = ptr;
34057 }
34058 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
34059 if (!(ecode3 >= 0)) {
34060 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DocNotFoundError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
34061 }
34062 arg3 = static_cast< int >(val3);
34063 {
34064 SWIG_Python_Thread_Allow _swig_thread_allow;
34065 result = (Xapian::DocNotFoundError *)new Xapian::DocNotFoundError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
34066 _swig_thread_allow.end();
34067 }
34068 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[14], ((0x1 << 1) | 0x1) | 0);
34069 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34070 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34071 return resultobj;
34072fail:
34073 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34074 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34075 return __null;
34076}
34077static __attribute__ ((__unused__)) PyObject *_wrap_new_DocNotFoundError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
34078 PyObject *resultobj = 0;
34079 std::string *arg1 = 0 ;
34080 std::string *arg2 = 0 ;
34081 int res1 = ((0)) ;
34082 int res2 = ((0)) ;
34083 Xapian::DocNotFoundError *result = 0 ;
34084 if ((nobjs < 2) || (nobjs > 2)) goto fail;
34085 {
34086 std::string *ptr = (std::string *)0;
34087 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34088 if (!(res1 >= 0)) {
34089 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34090 }
34091 if (!ptr) {
34092 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34093 }
34094 arg1 = ptr;
34095 }
34096 {
34097 std::string *ptr = (std::string *)0;
34098 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34099 if (!(res2 >= 0)) {
34100 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DocNotFoundError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34101 }
34102 if (!ptr) {
34103 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DocNotFoundError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34104 }
34105 arg2 = ptr;
34106 }
34107 {
34108 SWIG_Python_Thread_Allow _swig_thread_allow;
34109 result = (Xapian::DocNotFoundError *)new Xapian::DocNotFoundError((std::string const &)*arg1,(std::string const &)*arg2);
34110 _swig_thread_allow.end();
34111 }
34112 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[14], ((0x1 << 1) | 0x1) | 0);
34113 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34114 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34115 return resultobj;
34116fail:
34117 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34118 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34119 return __null;
34120}
34121static __attribute__ ((__unused__)) PyObject *_wrap_new_DocNotFoundError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
34122 PyObject *resultobj = 0;
34123 std::string *arg1 = 0 ;
34124 int res1 = ((0)) ;
34125 Xapian::DocNotFoundError *result = 0 ;
34126 if ((nobjs < 1) || (nobjs > 1)) goto fail;
34127 {
34128 std::string *ptr = (std::string *)0;
34129 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34130 if (!(res1 >= 0)) {
34131 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34132 }
34133 if (!ptr) {
34134 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34135 }
34136 arg1 = ptr;
34137 }
34138 {
34139 SWIG_Python_Thread_Allow _swig_thread_allow;
34140 result = (Xapian::DocNotFoundError *)new Xapian::DocNotFoundError((std::string const &)*arg1);
34141 _swig_thread_allow.end();
34142 }
34143 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[14], ((0x1 << 1) | 0x1) | 0);
34144 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34145 return resultobj;
34146fail:
34147 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34148 return __null;
34149}
34150static __attribute__ ((__unused__)) PyObject *_wrap_new_DocNotFoundError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
34151 PyObject *resultobj = 0;
34152 std::string *arg1 = 0 ;
34153 int arg2 ;
34154 int res1 = ((0)) ;
34155 int val2 ;
34156 int ecode2 = 0 ;
34157 Xapian::DocNotFoundError *result = 0 ;
34158 if ((nobjs < 2) || (nobjs > 2)) goto fail;
34159 {
34160 std::string *ptr = (std::string *)0;
34161 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34162 if (!(res1 >= 0)) {
34163 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34164 }
34165 if (!ptr) {
34166 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DocNotFoundError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34167 }
34168 arg1 = ptr;
34169 }
34170 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
34171 if (!(ecode2 >= 0)) {
34172 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DocNotFoundError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
34173 }
34174 arg2 = static_cast< int >(val2);
34175 {
34176 SWIG_Python_Thread_Allow _swig_thread_allow;
34177 result = (Xapian::DocNotFoundError *)new Xapian::DocNotFoundError((std::string const &)*arg1,arg2);
34178 _swig_thread_allow.end();
34179 }
34180 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[14], ((0x1 << 1) | 0x1) | 0);
34181 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34182 return resultobj;
34183fail:
34184 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34185 return __null;
34186}
34187static __attribute__ ((__unused__)) PyObject *_wrap_new_DocNotFoundError(PyObject *self, PyObject *args) {
34188 int argc;
34189 PyObject *argv[4];
34190 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DocNotFoundError",0,3,argv))) goto fail;
34191 --argc;
34192 if (argc == 1) {
34193 return _wrap_new_DocNotFoundError__SWIG_3(self, argc, argv);
34194 }
34195 if (argc == 2) {
34196 int _v = 0;
34197 {
34198 {
34199 int res = SWIG_AsVal_int(argv[1], __null);
34200 _v = ((res >= 0) ? 1 : 0);
34201 }
34202 }
34203 if (!_v) goto check_2;
34204 return _wrap_new_DocNotFoundError__SWIG_4(self, argc, argv);
34205 }
34206check_2:
34207 if (argc == 2) {
34208 return _wrap_new_DocNotFoundError__SWIG_2(self, argc, argv);
34209 }
34210 if (argc == 3) {
34211 int _v = 0;
34212 {
34213 {
34214 int res = SWIG_AsVal_int(argv[2], __null);
34215 _v = ((res >= 0) ? 1 : 0);
34216 }
34217 }
34218 if (!_v) goto check_4;
34219 return _wrap_new_DocNotFoundError__SWIG_1(self, argc, argv);
34220 }
34221check_4:
34222 if (argc == 3) {
34223 return _wrap_new_DocNotFoundError__SWIG_0(self, argc, argv);
34224 }
34225fail:
34226 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DocNotFoundError'.\n"
34227 " Possible C/C++ prototypes are:\n"
34228 " Xapian::DocNotFoundError(std::string const &,std::string const &,char const *)\n"
34229 " Xapian::DocNotFoundError(std::string const &,std::string const &,int)\n"
34230 " Xapian::DocNotFoundError(std::string const &,std::string const &)\n"
34231 " Xapian::DocNotFoundError(std::string const &)\n"
34232 " Xapian::DocNotFoundError(std::string const &,int)\n");
34233 return __null;
34234}
34235static __attribute__ ((__unused__)) PyObject *_wrap_delete_DocNotFoundError(PyObject *, PyObject *args) {
34236 PyObject *resultobj = 0;
34237 Xapian::DocNotFoundError *arg1 = (Xapian::DocNotFoundError *) 0 ;
34238 void *argp1 = 0 ;
34239 int res1 = 0 ;
34240 PyObject *swig_obj[1] ;
34241 if (!args) goto fail;
34242 swig_obj[0] = args;
34243 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[14], 0x1 | 0, 0);
34244 if (!(res1 >= 0)) {
34245 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DocNotFoundError" "', argument " "1"" of type '" "Xapian::DocNotFoundError *""'"); goto fail; } while(0);
34246 }
34247 arg1 = reinterpret_cast< Xapian::DocNotFoundError * >(argp1);
34248 {
34249 SWIG_Python_Thread_Allow _swig_thread_allow;
34250 {
34251 try {
34252 delete arg1;
34253 } catch (...) {
34254 _swig_thread_allow.end();
34255 Xapian::SetPythonException();
34256 goto fail;
34257 }
34258 }
34259 _swig_thread_allow.end();
34260 }
34261 resultobj = SWIG_Py_Void();
34262 return resultobj;
34263fail:
34264 return __null;
34265}
34266static __attribute__ ((__unused__)) PyObject *DocNotFoundError_swigregister(PyObject *, PyObject *args) {
34267 PyObject *obj;
34268 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
34269 SWIG_TypeNewClientData(swig_types[14], SwigPyClientData_New(obj));
34270 return SWIG_Py_Void();
34271}
34272static __attribute__ ((__unused__)) PyObject *DocNotFoundError_swiginit(PyObject *, PyObject *args) {
34273 return SWIG_Python_InitShadowInstance(args);
34274}
34275static __attribute__ ((__unused__)) PyObject *_wrap_new_FeatureUnavailableError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
34276 PyObject *resultobj = 0;
34277 std::string *arg1 = 0 ;
34278 std::string *arg2 = 0 ;
34279 char *arg3 = (char *) 0 ;
34280 int res1 = ((0)) ;
34281 int res2 = ((0)) ;
34282 int res3 ;
34283 char *buf3 = 0 ;
34284 int alloc3 = 0 ;
34285 Xapian::FeatureUnavailableError *result = 0 ;
34286 if ((nobjs < 3) || (nobjs > 3)) goto fail;
34287 {
34288 std::string *ptr = (std::string *)0;
34289 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34290 if (!(res1 >= 0)) {
34291 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34292 }
34293 if (!ptr) {
34294 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34295 }
34296 arg1 = ptr;
34297 }
34298 {
34299 std::string *ptr = (std::string *)0;
34300 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34301 if (!(res2 >= 0)) {
34302 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34303 }
34304 if (!ptr) {
34305 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_FeatureUnavailableError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34306 }
34307 arg2 = ptr;
34308 }
34309 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
34310 if (!(res3 >= 0)) {
34311 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
34312 }
34313 arg3 = reinterpret_cast< char * >(buf3);
34314 {
34315 SWIG_Python_Thread_Allow _swig_thread_allow;
34316 result = (Xapian::FeatureUnavailableError *)new Xapian::FeatureUnavailableError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
34317 _swig_thread_allow.end();
34318 }
34319 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[21], ((0x1 << 1) | 0x1) | 0);
34320 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34321 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34322 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
34323 return resultobj;
34324fail:
34325 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34326 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34327 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
34328 return __null;
34329}
34330static __attribute__ ((__unused__)) PyObject *_wrap_new_FeatureUnavailableError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
34331 PyObject *resultobj = 0;
34332 std::string *arg1 = 0 ;
34333 std::string *arg2 = 0 ;
34334 int arg3 ;
34335 int res1 = ((0)) ;
34336 int res2 = ((0)) ;
34337 int val3 ;
34338 int ecode3 = 0 ;
34339 Xapian::FeatureUnavailableError *result = 0 ;
34340 if ((nobjs < 3) || (nobjs > 3)) goto fail;
34341 {
34342 std::string *ptr = (std::string *)0;
34343 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34344 if (!(res1 >= 0)) {
34345 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34346 }
34347 if (!ptr) {
34348 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34349 }
34350 arg1 = ptr;
34351 }
34352 {
34353 std::string *ptr = (std::string *)0;
34354 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34355 if (!(res2 >= 0)) {
34356 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34357 }
34358 if (!ptr) {
34359 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_FeatureUnavailableError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34360 }
34361 arg2 = ptr;
34362 }
34363 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
34364 if (!(ecode3 >= 0)) {
34365 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
34366 }
34367 arg3 = static_cast< int >(val3);
34368 {
34369 SWIG_Python_Thread_Allow _swig_thread_allow;
34370 result = (Xapian::FeatureUnavailableError *)new Xapian::FeatureUnavailableError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
34371 _swig_thread_allow.end();
34372 }
34373 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[21], ((0x1 << 1) | 0x1) | 0);
34374 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34375 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34376 return resultobj;
34377fail:
34378 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34379 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34380 return __null;
34381}
34382static __attribute__ ((__unused__)) PyObject *_wrap_new_FeatureUnavailableError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
34383 PyObject *resultobj = 0;
34384 std::string *arg1 = 0 ;
34385 std::string *arg2 = 0 ;
34386 int res1 = ((0)) ;
34387 int res2 = ((0)) ;
34388 Xapian::FeatureUnavailableError *result = 0 ;
34389 if ((nobjs < 2) || (nobjs > 2)) goto fail;
34390 {
34391 std::string *ptr = (std::string *)0;
34392 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34393 if (!(res1 >= 0)) {
34394 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34395 }
34396 if (!ptr) {
34397 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34398 }
34399 arg1 = ptr;
34400 }
34401 {
34402 std::string *ptr = (std::string *)0;
34403 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34404 if (!(res2 >= 0)) {
34405 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34406 }
34407 if (!ptr) {
34408 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_FeatureUnavailableError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34409 }
34410 arg2 = ptr;
34411 }
34412 {
34413 SWIG_Python_Thread_Allow _swig_thread_allow;
34414 result = (Xapian::FeatureUnavailableError *)new Xapian::FeatureUnavailableError((std::string const &)*arg1,(std::string const &)*arg2);
34415 _swig_thread_allow.end();
34416 }
34417 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[21], ((0x1 << 1) | 0x1) | 0);
34418 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34419 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34420 return resultobj;
34421fail:
34422 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34423 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34424 return __null;
34425}
34426static __attribute__ ((__unused__)) PyObject *_wrap_new_FeatureUnavailableError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
34427 PyObject *resultobj = 0;
34428 std::string *arg1 = 0 ;
34429 int res1 = ((0)) ;
34430 Xapian::FeatureUnavailableError *result = 0 ;
34431 if ((nobjs < 1) || (nobjs > 1)) goto fail;
34432 {
34433 std::string *ptr = (std::string *)0;
34434 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34435 if (!(res1 >= 0)) {
34436 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34437 }
34438 if (!ptr) {
34439 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34440 }
34441 arg1 = ptr;
34442 }
34443 {
34444 SWIG_Python_Thread_Allow _swig_thread_allow;
34445 result = (Xapian::FeatureUnavailableError *)new Xapian::FeatureUnavailableError((std::string const &)*arg1);
34446 _swig_thread_allow.end();
34447 }
34448 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[21], ((0x1 << 1) | 0x1) | 0);
34449 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34450 return resultobj;
34451fail:
34452 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34453 return __null;
34454}
34455static __attribute__ ((__unused__)) PyObject *_wrap_new_FeatureUnavailableError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
34456 PyObject *resultobj = 0;
34457 std::string *arg1 = 0 ;
34458 int arg2 ;
34459 int res1 = ((0)) ;
34460 int val2 ;
34461 int ecode2 = 0 ;
34462 Xapian::FeatureUnavailableError *result = 0 ;
34463 if ((nobjs < 2) || (nobjs > 2)) goto fail;
34464 {
34465 std::string *ptr = (std::string *)0;
34466 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34467 if (!(res1 >= 0)) {
34468 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34469 }
34470 if (!ptr) {
34471 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_FeatureUnavailableError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34472 }
34473 arg1 = ptr;
34474 }
34475 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
34476 if (!(ecode2 >= 0)) {
34477 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_FeatureUnavailableError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
34478 }
34479 arg2 = static_cast< int >(val2);
34480 {
34481 SWIG_Python_Thread_Allow _swig_thread_allow;
34482 result = (Xapian::FeatureUnavailableError *)new Xapian::FeatureUnavailableError((std::string const &)*arg1,arg2);
34483 _swig_thread_allow.end();
34484 }
34485 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[21], ((0x1 << 1) | 0x1) | 0);
34486 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34487 return resultobj;
34488fail:
34489 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34490 return __null;
34491}
34492static __attribute__ ((__unused__)) PyObject *_wrap_new_FeatureUnavailableError(PyObject *self, PyObject *args) {
34493 int argc;
34494 PyObject *argv[4];
34495 if (!(argc = SWIG_Python_UnpackTuple(args,"new_FeatureUnavailableError",0,3,argv))) goto fail;
34496 --argc;
34497 if (argc == 1) {
34498 return _wrap_new_FeatureUnavailableError__SWIG_3(self, argc, argv);
34499 }
34500 if (argc == 2) {
34501 int _v = 0;
34502 {
34503 {
34504 int res = SWIG_AsVal_int(argv[1], __null);
34505 _v = ((res >= 0) ? 1 : 0);
34506 }
34507 }
34508 if (!_v) goto check_2;
34509 return _wrap_new_FeatureUnavailableError__SWIG_4(self, argc, argv);
34510 }
34511check_2:
34512 if (argc == 2) {
34513 return _wrap_new_FeatureUnavailableError__SWIG_2(self, argc, argv);
34514 }
34515 if (argc == 3) {
34516 int _v = 0;
34517 {
34518 {
34519 int res = SWIG_AsVal_int(argv[2], __null);
34520 _v = ((res >= 0) ? 1 : 0);
34521 }
34522 }
34523 if (!_v) goto check_4;
34524 return _wrap_new_FeatureUnavailableError__SWIG_1(self, argc, argv);
34525 }
34526check_4:
34527 if (argc == 3) {
34528 return _wrap_new_FeatureUnavailableError__SWIG_0(self, argc, argv);
34529 }
34530fail:
34531 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_FeatureUnavailableError'.\n"
34532 " Possible C/C++ prototypes are:\n"
34533 " Xapian::FeatureUnavailableError(std::string const &,std::string const &,char const *)\n"
34534 " Xapian::FeatureUnavailableError(std::string const &,std::string const &,int)\n"
34535 " Xapian::FeatureUnavailableError(std::string const &,std::string const &)\n"
34536 " Xapian::FeatureUnavailableError(std::string const &)\n"
34537 " Xapian::FeatureUnavailableError(std::string const &,int)\n");
34538 return __null;
34539}
34540static __attribute__ ((__unused__)) PyObject *_wrap_delete_FeatureUnavailableError(PyObject *, PyObject *args) {
34541 PyObject *resultobj = 0;
34542 Xapian::FeatureUnavailableError *arg1 = (Xapian::FeatureUnavailableError *) 0 ;
34543 void *argp1 = 0 ;
34544 int res1 = 0 ;
34545 PyObject *swig_obj[1] ;
34546 if (!args) goto fail;
34547 swig_obj[0] = args;
34548 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[21], 0x1 | 0, 0);
34549 if (!(res1 >= 0)) {
34550 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_FeatureUnavailableError" "', argument " "1"" of type '" "Xapian::FeatureUnavailableError *""'"); goto fail; } while(0);
34551 }
34552 arg1 = reinterpret_cast< Xapian::FeatureUnavailableError * >(argp1);
34553 {
34554 SWIG_Python_Thread_Allow _swig_thread_allow;
34555 {
34556 try {
34557 delete arg1;
34558 } catch (...) {
34559 _swig_thread_allow.end();
34560 Xapian::SetPythonException();
34561 goto fail;
34562 }
34563 }
34564 _swig_thread_allow.end();
34565 }
34566 resultobj = SWIG_Py_Void();
34567 return resultobj;
34568fail:
34569 return __null;
34570}
34571static __attribute__ ((__unused__)) PyObject *FeatureUnavailableError_swigregister(PyObject *, PyObject *args) {
34572 PyObject *obj;
34573 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
34574 SWIG_TypeNewClientData(swig_types[21], SwigPyClientData_New(obj));
34575 return SWIG_Py_Void();
34576}
34577static __attribute__ ((__unused__)) PyObject *FeatureUnavailableError_swiginit(PyObject *, PyObject *args) {
34578 return SWIG_Python_InitShadowInstance(args);
34579}
34580static __attribute__ ((__unused__)) PyObject *_wrap_new_InternalError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
34581 PyObject *resultobj = 0;
34582 std::string *arg1 = 0 ;
34583 std::string *arg2 = 0 ;
34584 char *arg3 = (char *) 0 ;
34585 int res1 = ((0)) ;
34586 int res2 = ((0)) ;
34587 int res3 ;
34588 char *buf3 = 0 ;
34589 int alloc3 = 0 ;
34590 Xapian::InternalError *result = 0 ;
34591 if ((nobjs < 3) || (nobjs > 3)) goto fail;
34592 {
34593 std::string *ptr = (std::string *)0;
34594 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34595 if (!(res1 >= 0)) {
34596 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34597 }
34598 if (!ptr) {
34599 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34600 }
34601 arg1 = ptr;
34602 }
34603 {
34604 std::string *ptr = (std::string *)0;
34605 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34606 if (!(res2 >= 0)) {
34607 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_InternalError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34608 }
34609 if (!ptr) {
34610 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InternalError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34611 }
34612 arg2 = ptr;
34613 }
34614 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
34615 if (!(res3 >= 0)) {
34616 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_InternalError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
34617 }
34618 arg3 = reinterpret_cast< char * >(buf3);
34619 {
34620 SWIG_Python_Thread_Allow _swig_thread_allow;
34621 result = (Xapian::InternalError *)new Xapian::InternalError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
34622 _swig_thread_allow.end();
34623 }
34624 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[23], ((0x1 << 1) | 0x1) | 0);
34625 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34626 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34627 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
34628 return resultobj;
34629fail:
34630 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34631 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34632 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
34633 return __null;
34634}
34635static __attribute__ ((__unused__)) PyObject *_wrap_new_InternalError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
34636 PyObject *resultobj = 0;
34637 std::string *arg1 = 0 ;
34638 std::string *arg2 = 0 ;
34639 int arg3 ;
34640 int res1 = ((0)) ;
34641 int res2 = ((0)) ;
34642 int val3 ;
34643 int ecode3 = 0 ;
34644 Xapian::InternalError *result = 0 ;
34645 if ((nobjs < 3) || (nobjs > 3)) goto fail;
34646 {
34647 std::string *ptr = (std::string *)0;
34648 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34649 if (!(res1 >= 0)) {
34650 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34651 }
34652 if (!ptr) {
34653 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34654 }
34655 arg1 = ptr;
34656 }
34657 {
34658 std::string *ptr = (std::string *)0;
34659 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34660 if (!(res2 >= 0)) {
34661 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_InternalError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34662 }
34663 if (!ptr) {
34664 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InternalError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34665 }
34666 arg2 = ptr;
34667 }
34668 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
34669 if (!(ecode3 >= 0)) {
34670 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_InternalError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
34671 }
34672 arg3 = static_cast< int >(val3);
34673 {
34674 SWIG_Python_Thread_Allow _swig_thread_allow;
34675 result = (Xapian::InternalError *)new Xapian::InternalError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
34676 _swig_thread_allow.end();
34677 }
34678 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[23], ((0x1 << 1) | 0x1) | 0);
34679 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34680 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34681 return resultobj;
34682fail:
34683 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34684 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34685 return __null;
34686}
34687static __attribute__ ((__unused__)) PyObject *_wrap_new_InternalError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
34688 PyObject *resultobj = 0;
34689 std::string *arg1 = 0 ;
34690 std::string *arg2 = 0 ;
34691 int res1 = ((0)) ;
34692 int res2 = ((0)) ;
34693 Xapian::InternalError *result = 0 ;
34694 if ((nobjs < 2) || (nobjs > 2)) goto fail;
34695 {
34696 std::string *ptr = (std::string *)0;
34697 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34698 if (!(res1 >= 0)) {
34699 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34700 }
34701 if (!ptr) {
34702 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34703 }
34704 arg1 = ptr;
34705 }
34706 {
34707 std::string *ptr = (std::string *)0;
34708 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34709 if (!(res2 >= 0)) {
34710 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_InternalError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34711 }
34712 if (!ptr) {
34713 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InternalError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34714 }
34715 arg2 = ptr;
34716 }
34717 {
34718 SWIG_Python_Thread_Allow _swig_thread_allow;
34719 result = (Xapian::InternalError *)new Xapian::InternalError((std::string const &)*arg1,(std::string const &)*arg2);
34720 _swig_thread_allow.end();
34721 }
34722 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[23], ((0x1 << 1) | 0x1) | 0);
34723 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34724 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34725 return resultobj;
34726fail:
34727 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34728 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34729 return __null;
34730}
34731static __attribute__ ((__unused__)) PyObject *_wrap_new_InternalError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
34732 PyObject *resultobj = 0;
34733 std::string *arg1 = 0 ;
34734 int res1 = ((0)) ;
34735 Xapian::InternalError *result = 0 ;
34736 if ((nobjs < 1) || (nobjs > 1)) goto fail;
34737 {
34738 std::string *ptr = (std::string *)0;
34739 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34740 if (!(res1 >= 0)) {
34741 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34742 }
34743 if (!ptr) {
34744 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34745 }
34746 arg1 = ptr;
34747 }
34748 {
34749 SWIG_Python_Thread_Allow _swig_thread_allow;
34750 result = (Xapian::InternalError *)new Xapian::InternalError((std::string const &)*arg1);
34751 _swig_thread_allow.end();
34752 }
34753 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[23], ((0x1 << 1) | 0x1) | 0);
34754 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34755 return resultobj;
34756fail:
34757 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34758 return __null;
34759}
34760static __attribute__ ((__unused__)) PyObject *_wrap_new_InternalError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
34761 PyObject *resultobj = 0;
34762 std::string *arg1 = 0 ;
34763 int arg2 ;
34764 int res1 = ((0)) ;
34765 int val2 ;
34766 int ecode2 = 0 ;
34767 Xapian::InternalError *result = 0 ;
34768 if ((nobjs < 2) || (nobjs > 2)) goto fail;
34769 {
34770 std::string *ptr = (std::string *)0;
34771 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34772 if (!(res1 >= 0)) {
34773 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34774 }
34775 if (!ptr) {
34776 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_InternalError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34777 }
34778 arg1 = ptr;
34779 }
34780 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
34781 if (!(ecode2 >= 0)) {
34782 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_InternalError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
34783 }
34784 arg2 = static_cast< int >(val2);
34785 {
34786 SWIG_Python_Thread_Allow _swig_thread_allow;
34787 result = (Xapian::InternalError *)new Xapian::InternalError((std::string const &)*arg1,arg2);
34788 _swig_thread_allow.end();
34789 }
34790 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[23], ((0x1 << 1) | 0x1) | 0);
34791 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34792 return resultobj;
34793fail:
34794 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34795 return __null;
34796}
34797static __attribute__ ((__unused__)) PyObject *_wrap_new_InternalError(PyObject *self, PyObject *args) {
34798 int argc;
34799 PyObject *argv[4];
34800 if (!(argc = SWIG_Python_UnpackTuple(args,"new_InternalError",0,3,argv))) goto fail;
34801 --argc;
34802 if (argc == 1) {
34803 return _wrap_new_InternalError__SWIG_3(self, argc, argv);
34804 }
34805 if (argc == 2) {
34806 int _v = 0;
34807 {
34808 {
34809 int res = SWIG_AsVal_int(argv[1], __null);
34810 _v = ((res >= 0) ? 1 : 0);
34811 }
34812 }
34813 if (!_v) goto check_2;
34814 return _wrap_new_InternalError__SWIG_4(self, argc, argv);
34815 }
34816check_2:
34817 if (argc == 2) {
34818 return _wrap_new_InternalError__SWIG_2(self, argc, argv);
34819 }
34820 if (argc == 3) {
34821 int _v = 0;
34822 {
34823 {
34824 int res = SWIG_AsVal_int(argv[2], __null);
34825 _v = ((res >= 0) ? 1 : 0);
34826 }
34827 }
34828 if (!_v) goto check_4;
34829 return _wrap_new_InternalError__SWIG_1(self, argc, argv);
34830 }
34831check_4:
34832 if (argc == 3) {
34833 return _wrap_new_InternalError__SWIG_0(self, argc, argv);
34834 }
34835fail:
34836 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_InternalError'.\n"
34837 " Possible C/C++ prototypes are:\n"
34838 " Xapian::InternalError(std::string const &,std::string const &,char const *)\n"
34839 " Xapian::InternalError(std::string const &,std::string const &,int)\n"
34840 " Xapian::InternalError(std::string const &,std::string const &)\n"
34841 " Xapian::InternalError(std::string const &)\n"
34842 " Xapian::InternalError(std::string const &,int)\n");
34843 return __null;
34844}
34845static __attribute__ ((__unused__)) PyObject *_wrap_delete_InternalError(PyObject *, PyObject *args) {
34846 PyObject *resultobj = 0;
34847 Xapian::InternalError *arg1 = (Xapian::InternalError *) 0 ;
34848 void *argp1 = 0 ;
34849 int res1 = 0 ;
34850 PyObject *swig_obj[1] ;
34851 if (!args) goto fail;
34852 swig_obj[0] = args;
34853 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[23], 0x1 | 0, 0);
34854 if (!(res1 >= 0)) {
34855 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_InternalError" "', argument " "1"" of type '" "Xapian::InternalError *""'"); goto fail; } while(0);
34856 }
34857 arg1 = reinterpret_cast< Xapian::InternalError * >(argp1);
34858 {
34859 SWIG_Python_Thread_Allow _swig_thread_allow;
34860 {
34861 try {
34862 delete arg1;
34863 } catch (...) {
34864 _swig_thread_allow.end();
34865 Xapian::SetPythonException();
34866 goto fail;
34867 }
34868 }
34869 _swig_thread_allow.end();
34870 }
34871 resultobj = SWIG_Py_Void();
34872 return resultobj;
34873fail:
34874 return __null;
34875}
34876static __attribute__ ((__unused__)) PyObject *InternalError_swigregister(PyObject *, PyObject *args) {
34877 PyObject *obj;
34878 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
34879 SWIG_TypeNewClientData(swig_types[23], SwigPyClientData_New(obj));
34880 return SWIG_Py_Void();
34881}
34882static __attribute__ ((__unused__)) PyObject *InternalError_swiginit(PyObject *, PyObject *args) {
34883 return SWIG_Python_InitShadowInstance(args);
34884}
34885static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
34886 PyObject *resultobj = 0;
34887 std::string *arg1 = 0 ;
34888 std::string *arg2 = 0 ;
34889 char *arg3 = (char *) 0 ;
34890 int res1 = ((0)) ;
34891 int res2 = ((0)) ;
34892 int res3 ;
34893 char *buf3 = 0 ;
34894 int alloc3 = 0 ;
34895 Xapian::NetworkError *result = 0 ;
34896 if ((nobjs < 3) || (nobjs > 3)) goto fail;
34897 {
34898 std::string *ptr = (std::string *)0;
34899 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34900 if (!(res1 >= 0)) {
34901 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34902 }
34903 if (!ptr) {
34904 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34905 }
34906 arg1 = ptr;
34907 }
34908 {
34909 std::string *ptr = (std::string *)0;
34910 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34911 if (!(res2 >= 0)) {
34912 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_NetworkError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34913 }
34914 if (!ptr) {
34915 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34916 }
34917 arg2 = ptr;
34918 }
34919 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
34920 if (!(res3 >= 0)) {
34921 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_NetworkError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
34922 }
34923 arg3 = reinterpret_cast< char * >(buf3);
34924 {
34925 SWIG_Python_Thread_Allow _swig_thread_allow;
34926 result = (Xapian::NetworkError *)new Xapian::NetworkError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
34927 _swig_thread_allow.end();
34928 }
34929 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[34], ((0x1 << 1) | 0x1) | 0);
34930 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34931 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34932 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
34933 return resultobj;
34934fail:
34935 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34936 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34937 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
34938 return __null;
34939}
34940static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
34941 PyObject *resultobj = 0;
34942 std::string *arg1 = 0 ;
34943 std::string *arg2 = 0 ;
34944 int arg3 ;
34945 int res1 = ((0)) ;
34946 int res2 = ((0)) ;
34947 int val3 ;
34948 int ecode3 = 0 ;
34949 Xapian::NetworkError *result = 0 ;
34950 if ((nobjs < 3) || (nobjs > 3)) goto fail;
34951 {
34952 std::string *ptr = (std::string *)0;
34953 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
34954 if (!(res1 >= 0)) {
34955 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34956 }
34957 if (!ptr) {
34958 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
34959 }
34960 arg1 = ptr;
34961 }
34962 {
34963 std::string *ptr = (std::string *)0;
34964 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
34965 if (!(res2 >= 0)) {
34966 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_NetworkError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34967 }
34968 if (!ptr) {
34969 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
34970 }
34971 arg2 = ptr;
34972 }
34973 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
34974 if (!(ecode3 >= 0)) {
34975 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_NetworkError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
34976 }
34977 arg3 = static_cast< int >(val3);
34978 {
34979 SWIG_Python_Thread_Allow _swig_thread_allow;
34980 result = (Xapian::NetworkError *)new Xapian::NetworkError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
34981 _swig_thread_allow.end();
34982 }
34983 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[34], ((0x1 << 1) | 0x1) | 0);
34984 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34985 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34986 return resultobj;
34987fail:
34988 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
34989 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
34990 return __null;
34991}
34992static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
34993 PyObject *resultobj = 0;
34994 std::string *arg1 = 0 ;
34995 std::string *arg2 = 0 ;
34996 int res1 = ((0)) ;
34997 int res2 = ((0)) ;
34998 Xapian::NetworkError *result = 0 ;
34999 if ((nobjs < 2) || (nobjs > 2)) goto fail;
35000 {
35001 std::string *ptr = (std::string *)0;
35002 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35003 if (!(res1 >= 0)) {
35004 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35005 }
35006 if (!ptr) {
35007 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35008 }
35009 arg1 = ptr;
35010 }
35011 {
35012 std::string *ptr = (std::string *)0;
35013 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35014 if (!(res2 >= 0)) {
35015 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_NetworkError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35016 }
35017 if (!ptr) {
35018 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35019 }
35020 arg2 = ptr;
35021 }
35022 {
35023 SWIG_Python_Thread_Allow _swig_thread_allow;
35024 result = (Xapian::NetworkError *)new Xapian::NetworkError((std::string const &)*arg1,(std::string const &)*arg2);
35025 _swig_thread_allow.end();
35026 }
35027 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[34], ((0x1 << 1) | 0x1) | 0);
35028 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35029 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35030 return resultobj;
35031fail:
35032 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35033 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35034 return __null;
35035}
35036static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
35037 PyObject *resultobj = 0;
35038 std::string *arg1 = 0 ;
35039 int res1 = ((0)) ;
35040 Xapian::NetworkError *result = 0 ;
35041 if ((nobjs < 1) || (nobjs > 1)) goto fail;
35042 {
35043 std::string *ptr = (std::string *)0;
35044 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35045 if (!(res1 >= 0)) {
35046 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35047 }
35048 if (!ptr) {
35049 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35050 }
35051 arg1 = ptr;
35052 }
35053 {
35054 SWIG_Python_Thread_Allow _swig_thread_allow;
35055 result = (Xapian::NetworkError *)new Xapian::NetworkError((std::string const &)*arg1);
35056 _swig_thread_allow.end();
35057 }
35058 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[34], ((0x1 << 1) | 0x1) | 0);
35059 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35060 return resultobj;
35061fail:
35062 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35063 return __null;
35064}
35065static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
35066 PyObject *resultobj = 0;
35067 std::string *arg1 = 0 ;
35068 int arg2 ;
35069 int res1 = ((0)) ;
35070 int val2 ;
35071 int ecode2 = 0 ;
35072 Xapian::NetworkError *result = 0 ;
35073 if ((nobjs < 2) || (nobjs > 2)) goto fail;
35074 {
35075 std::string *ptr = (std::string *)0;
35076 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35077 if (!(res1 >= 0)) {
35078 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35079 }
35080 if (!ptr) {
35081 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35082 }
35083 arg1 = ptr;
35084 }
35085 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
35086 if (!(ecode2 >= 0)) {
35087 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_NetworkError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
35088 }
35089 arg2 = static_cast< int >(val2);
35090 {
35091 SWIG_Python_Thread_Allow _swig_thread_allow;
35092 result = (Xapian::NetworkError *)new Xapian::NetworkError((std::string const &)*arg1,arg2);
35093 _swig_thread_allow.end();
35094 }
35095 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[34], ((0x1 << 1) | 0x1) | 0);
35096 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35097 return resultobj;
35098fail:
35099 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35100 return __null;
35101}
35102static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkError(PyObject *self, PyObject *args) {
35103 int argc;
35104 PyObject *argv[4];
35105 if (!(argc = SWIG_Python_UnpackTuple(args,"new_NetworkError",0,3,argv))) goto fail;
35106 --argc;
35107 if (argc == 1) {
35108 return _wrap_new_NetworkError__SWIG_3(self, argc, argv);
35109 }
35110 if (argc == 2) {
35111 int _v = 0;
35112 {
35113 {
35114 int res = SWIG_AsVal_int(argv[1], __null);
35115 _v = ((res >= 0) ? 1 : 0);
35116 }
35117 }
35118 if (!_v) goto check_2;
35119 return _wrap_new_NetworkError__SWIG_4(self, argc, argv);
35120 }
35121check_2:
35122 if (argc == 2) {
35123 return _wrap_new_NetworkError__SWIG_2(self, argc, argv);
35124 }
35125 if (argc == 3) {
35126 int _v = 0;
35127 {
35128 {
35129 int res = SWIG_AsVal_int(argv[2], __null);
35130 _v = ((res >= 0) ? 1 : 0);
35131 }
35132 }
35133 if (!_v) goto check_4;
35134 return _wrap_new_NetworkError__SWIG_1(self, argc, argv);
35135 }
35136check_4:
35137 if (argc == 3) {
35138 return _wrap_new_NetworkError__SWIG_0(self, argc, argv);
35139 }
35140fail:
35141 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_NetworkError'.\n"
35142 " Possible C/C++ prototypes are:\n"
35143 " Xapian::NetworkError(std::string const &,std::string const &,char const *)\n"
35144 " Xapian::NetworkError(std::string const &,std::string const &,int)\n"
35145 " Xapian::NetworkError(std::string const &,std::string const &)\n"
35146 " Xapian::NetworkError(std::string const &)\n"
35147 " Xapian::NetworkError(std::string const &,int)\n");
35148 return __null;
35149}
35150static __attribute__ ((__unused__)) PyObject *_wrap_delete_NetworkError(PyObject *, PyObject *args) {
35151 PyObject *resultobj = 0;
35152 Xapian::NetworkError *arg1 = (Xapian::NetworkError *) 0 ;
35153 void *argp1 = 0 ;
35154 int res1 = 0 ;
35155 PyObject *swig_obj[1] ;
35156 if (!args) goto fail;
35157 swig_obj[0] = args;
35158 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[34], 0x1 | 0, 0);
35159 if (!(res1 >= 0)) {
35160 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_NetworkError" "', argument " "1"" of type '" "Xapian::NetworkError *""'"); goto fail; } while(0);
35161 }
35162 arg1 = reinterpret_cast< Xapian::NetworkError * >(argp1);
35163 {
35164 SWIG_Python_Thread_Allow _swig_thread_allow;
35165 {
35166 try {
35167 delete arg1;
35168 } catch (...) {
35169 _swig_thread_allow.end();
35170 Xapian::SetPythonException();
35171 goto fail;
35172 }
35173 }
35174 _swig_thread_allow.end();
35175 }
35176 resultobj = SWIG_Py_Void();
35177 return resultobj;
35178fail:
35179 return __null;
35180}
35181static __attribute__ ((__unused__)) PyObject *NetworkError_swigregister(PyObject *, PyObject *args) {
35182 PyObject *obj;
35183 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
35184 SWIG_TypeNewClientData(swig_types[34], SwigPyClientData_New(obj));
35185 return SWIG_Py_Void();
35186}
35187static __attribute__ ((__unused__)) PyObject *NetworkError_swiginit(PyObject *, PyObject *args) {
35188 return SWIG_Python_InitShadowInstance(args);
35189}
35190static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkTimeoutError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
35191 PyObject *resultobj = 0;
35192 std::string *arg1 = 0 ;
35193 std::string *arg2 = 0 ;
35194 char *arg3 = (char *) 0 ;
35195 int res1 = ((0)) ;
35196 int res2 = ((0)) ;
35197 int res3 ;
35198 char *buf3 = 0 ;
35199 int alloc3 = 0 ;
35200 Xapian::NetworkTimeoutError *result = 0 ;
35201 if ((nobjs < 3) || (nobjs > 3)) goto fail;
35202 {
35203 std::string *ptr = (std::string *)0;
35204 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35205 if (!(res1 >= 0)) {
35206 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35207 }
35208 if (!ptr) {
35209 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35210 }
35211 arg1 = ptr;
35212 }
35213 {
35214 std::string *ptr = (std::string *)0;
35215 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35216 if (!(res2 >= 0)) {
35217 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35218 }
35219 if (!ptr) {
35220 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkTimeoutError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35221 }
35222 arg2 = ptr;
35223 }
35224 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
35225 if (!(res3 >= 0)) {
35226 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
35227 }
35228 arg3 = reinterpret_cast< char * >(buf3);
35229 {
35230 SWIG_Python_Thread_Allow _swig_thread_allow;
35231 result = (Xapian::NetworkTimeoutError *)new Xapian::NetworkTimeoutError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
35232 _swig_thread_allow.end();
35233 }
35234 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[35], ((0x1 << 1) | 0x1) | 0);
35235 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35236 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35237 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
35238 return resultobj;
35239fail:
35240 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35241 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35242 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
35243 return __null;
35244}
35245static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkTimeoutError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
35246 PyObject *resultobj = 0;
35247 std::string *arg1 = 0 ;
35248 std::string *arg2 = 0 ;
35249 int arg3 ;
35250 int res1 = ((0)) ;
35251 int res2 = ((0)) ;
35252 int val3 ;
35253 int ecode3 = 0 ;
35254 Xapian::NetworkTimeoutError *result = 0 ;
35255 if ((nobjs < 3) || (nobjs > 3)) goto fail;
35256 {
35257 std::string *ptr = (std::string *)0;
35258 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35259 if (!(res1 >= 0)) {
35260 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35261 }
35262 if (!ptr) {
35263 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35264 }
35265 arg1 = ptr;
35266 }
35267 {
35268 std::string *ptr = (std::string *)0;
35269 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35270 if (!(res2 >= 0)) {
35271 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35272 }
35273 if (!ptr) {
35274 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkTimeoutError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35275 }
35276 arg2 = ptr;
35277 }
35278 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
35279 if (!(ecode3 >= 0)) {
35280 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
35281 }
35282 arg3 = static_cast< int >(val3);
35283 {
35284 SWIG_Python_Thread_Allow _swig_thread_allow;
35285 result = (Xapian::NetworkTimeoutError *)new Xapian::NetworkTimeoutError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
35286 _swig_thread_allow.end();
35287 }
35288 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[35], ((0x1 << 1) | 0x1) | 0);
35289 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35290 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35291 return resultobj;
35292fail:
35293 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35294 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35295 return __null;
35296}
35297static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkTimeoutError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
35298 PyObject *resultobj = 0;
35299 std::string *arg1 = 0 ;
35300 std::string *arg2 = 0 ;
35301 int res1 = ((0)) ;
35302 int res2 = ((0)) ;
35303 Xapian::NetworkTimeoutError *result = 0 ;
35304 if ((nobjs < 2) || (nobjs > 2)) goto fail;
35305 {
35306 std::string *ptr = (std::string *)0;
35307 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35308 if (!(res1 >= 0)) {
35309 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35310 }
35311 if (!ptr) {
35312 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35313 }
35314 arg1 = ptr;
35315 }
35316 {
35317 std::string *ptr = (std::string *)0;
35318 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35319 if (!(res2 >= 0)) {
35320 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35321 }
35322 if (!ptr) {
35323 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkTimeoutError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35324 }
35325 arg2 = ptr;
35326 }
35327 {
35328 SWIG_Python_Thread_Allow _swig_thread_allow;
35329 result = (Xapian::NetworkTimeoutError *)new Xapian::NetworkTimeoutError((std::string const &)*arg1,(std::string const &)*arg2);
35330 _swig_thread_allow.end();
35331 }
35332 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[35], ((0x1 << 1) | 0x1) | 0);
35333 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35334 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35335 return resultobj;
35336fail:
35337 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35338 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35339 return __null;
35340}
35341static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkTimeoutError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
35342 PyObject *resultobj = 0;
35343 std::string *arg1 = 0 ;
35344 int res1 = ((0)) ;
35345 Xapian::NetworkTimeoutError *result = 0 ;
35346 if ((nobjs < 1) || (nobjs > 1)) goto fail;
35347 {
35348 std::string *ptr = (std::string *)0;
35349 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35350 if (!(res1 >= 0)) {
35351 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35352 }
35353 if (!ptr) {
35354 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35355 }
35356 arg1 = ptr;
35357 }
35358 {
35359 SWIG_Python_Thread_Allow _swig_thread_allow;
35360 result = (Xapian::NetworkTimeoutError *)new Xapian::NetworkTimeoutError((std::string const &)*arg1);
35361 _swig_thread_allow.end();
35362 }
35363 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[35], ((0x1 << 1) | 0x1) | 0);
35364 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35365 return resultobj;
35366fail:
35367 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35368 return __null;
35369}
35370static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkTimeoutError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
35371 PyObject *resultobj = 0;
35372 std::string *arg1 = 0 ;
35373 int arg2 ;
35374 int res1 = ((0)) ;
35375 int val2 ;
35376 int ecode2 = 0 ;
35377 Xapian::NetworkTimeoutError *result = 0 ;
35378 if ((nobjs < 2) || (nobjs > 2)) goto fail;
35379 {
35380 std::string *ptr = (std::string *)0;
35381 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35382 if (!(res1 >= 0)) {
35383 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35384 }
35385 if (!ptr) {
35386 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NetworkTimeoutError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35387 }
35388 arg1 = ptr;
35389 }
35390 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
35391 if (!(ecode2 >= 0)) {
35392 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_NetworkTimeoutError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
35393 }
35394 arg2 = static_cast< int >(val2);
35395 {
35396 SWIG_Python_Thread_Allow _swig_thread_allow;
35397 result = (Xapian::NetworkTimeoutError *)new Xapian::NetworkTimeoutError((std::string const &)*arg1,arg2);
35398 _swig_thread_allow.end();
35399 }
35400 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[35], ((0x1 << 1) | 0x1) | 0);
35401 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35402 return resultobj;
35403fail:
35404 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35405 return __null;
35406}
35407static __attribute__ ((__unused__)) PyObject *_wrap_new_NetworkTimeoutError(PyObject *self, PyObject *args) {
35408 int argc;
35409 PyObject *argv[4];
35410 if (!(argc = SWIG_Python_UnpackTuple(args,"new_NetworkTimeoutError",0,3,argv))) goto fail;
35411 --argc;
35412 if (argc == 1) {
35413 return _wrap_new_NetworkTimeoutError__SWIG_3(self, argc, argv);
35414 }
35415 if (argc == 2) {
35416 int _v = 0;
35417 {
35418 {
35419 int res = SWIG_AsVal_int(argv[1], __null);
35420 _v = ((res >= 0) ? 1 : 0);
35421 }
35422 }
35423 if (!_v) goto check_2;
35424 return _wrap_new_NetworkTimeoutError__SWIG_4(self, argc, argv);
35425 }
35426check_2:
35427 if (argc == 2) {
35428 return _wrap_new_NetworkTimeoutError__SWIG_2(self, argc, argv);
35429 }
35430 if (argc == 3) {
35431 int _v = 0;
35432 {
35433 {
35434 int res = SWIG_AsVal_int(argv[2], __null);
35435 _v = ((res >= 0) ? 1 : 0);
35436 }
35437 }
35438 if (!_v) goto check_4;
35439 return _wrap_new_NetworkTimeoutError__SWIG_1(self, argc, argv);
35440 }
35441check_4:
35442 if (argc == 3) {
35443 return _wrap_new_NetworkTimeoutError__SWIG_0(self, argc, argv);
35444 }
35445fail:
35446 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_NetworkTimeoutError'.\n"
35447 " Possible C/C++ prototypes are:\n"
35448 " Xapian::NetworkTimeoutError(std::string const &,std::string const &,char const *)\n"
35449 " Xapian::NetworkTimeoutError(std::string const &,std::string const &,int)\n"
35450 " Xapian::NetworkTimeoutError(std::string const &,std::string const &)\n"
35451 " Xapian::NetworkTimeoutError(std::string const &)\n"
35452 " Xapian::NetworkTimeoutError(std::string const &,int)\n");
35453 return __null;
35454}
35455static __attribute__ ((__unused__)) PyObject *_wrap_delete_NetworkTimeoutError(PyObject *, PyObject *args) {
35456 PyObject *resultobj = 0;
35457 Xapian::NetworkTimeoutError *arg1 = (Xapian::NetworkTimeoutError *) 0 ;
35458 void *argp1 = 0 ;
35459 int res1 = 0 ;
35460 PyObject *swig_obj[1] ;
35461 if (!args) goto fail;
35462 swig_obj[0] = args;
35463 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[35], 0x1 | 0, 0);
35464 if (!(res1 >= 0)) {
35465 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_NetworkTimeoutError" "', argument " "1"" of type '" "Xapian::NetworkTimeoutError *""'"); goto fail; } while(0);
35466 }
35467 arg1 = reinterpret_cast< Xapian::NetworkTimeoutError * >(argp1);
35468 {
35469 SWIG_Python_Thread_Allow _swig_thread_allow;
35470 {
35471 try {
35472 delete arg1;
35473 } catch (...) {
35474 _swig_thread_allow.end();
35475 Xapian::SetPythonException();
35476 goto fail;
35477 }
35478 }
35479 _swig_thread_allow.end();
35480 }
35481 resultobj = SWIG_Py_Void();
35482 return resultobj;
35483fail:
35484 return __null;
35485}
35486static __attribute__ ((__unused__)) PyObject *NetworkTimeoutError_swigregister(PyObject *, PyObject *args) {
35487 PyObject *obj;
35488 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
35489 SWIG_TypeNewClientData(swig_types[35], SwigPyClientData_New(obj));
35490 return SWIG_Py_Void();
35491}
35492static __attribute__ ((__unused__)) PyObject *NetworkTimeoutError_swiginit(PyObject *, PyObject *args) {
35493 return SWIG_Python_InitShadowInstance(args);
35494}
35495static __attribute__ ((__unused__)) PyObject *_wrap_new_QueryParserError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
35496 PyObject *resultobj = 0;
35497 std::string *arg1 = 0 ;
35498 std::string *arg2 = 0 ;
35499 char *arg3 = (char *) 0 ;
35500 int res1 = ((0)) ;
35501 int res2 = ((0)) ;
35502 int res3 ;
35503 char *buf3 = 0 ;
35504 int alloc3 = 0 ;
35505 Xapian::QueryParserError *result = 0 ;
35506 if ((nobjs < 3) || (nobjs > 3)) goto fail;
35507 {
35508 std::string *ptr = (std::string *)0;
35509 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35510 if (!(res1 >= 0)) {
35511 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35512 }
35513 if (!ptr) {
35514 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35515 }
35516 arg1 = ptr;
35517 }
35518 {
35519 std::string *ptr = (std::string *)0;
35520 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35521 if (!(res2 >= 0)) {
35522 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_QueryParserError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35523 }
35524 if (!ptr) {
35525 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_QueryParserError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35526 }
35527 arg2 = ptr;
35528 }
35529 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
35530 if (!(res3 >= 0)) {
35531 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_QueryParserError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
35532 }
35533 arg3 = reinterpret_cast< char * >(buf3);
35534 {
35535 SWIG_Python_Thread_Allow _swig_thread_allow;
35536 result = (Xapian::QueryParserError *)new Xapian::QueryParserError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
35537 _swig_thread_allow.end();
35538 }
35539 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[42], ((0x1 << 1) | 0x1) | 0);
35540 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35541 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35542 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
35543 return resultobj;
35544fail:
35545 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35546 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35547 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
35548 return __null;
35549}
35550static __attribute__ ((__unused__)) PyObject *_wrap_new_QueryParserError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
35551 PyObject *resultobj = 0;
35552 std::string *arg1 = 0 ;
35553 std::string *arg2 = 0 ;
35554 int arg3 ;
35555 int res1 = ((0)) ;
35556 int res2 = ((0)) ;
35557 int val3 ;
35558 int ecode3 = 0 ;
35559 Xapian::QueryParserError *result = 0 ;
35560 if ((nobjs < 3) || (nobjs > 3)) goto fail;
35561 {
35562 std::string *ptr = (std::string *)0;
35563 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35564 if (!(res1 >= 0)) {
35565 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35566 }
35567 if (!ptr) {
35568 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35569 }
35570 arg1 = ptr;
35571 }
35572 {
35573 std::string *ptr = (std::string *)0;
35574 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35575 if (!(res2 >= 0)) {
35576 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_QueryParserError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35577 }
35578 if (!ptr) {
35579 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_QueryParserError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35580 }
35581 arg2 = ptr;
35582 }
35583 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
35584 if (!(ecode3 >= 0)) {
35585 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_QueryParserError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
35586 }
35587 arg3 = static_cast< int >(val3);
35588 {
35589 SWIG_Python_Thread_Allow _swig_thread_allow;
35590 result = (Xapian::QueryParserError *)new Xapian::QueryParserError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
35591 _swig_thread_allow.end();
35592 }
35593 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[42], ((0x1 << 1) | 0x1) | 0);
35594 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35595 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35596 return resultobj;
35597fail:
35598 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35599 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35600 return __null;
35601}
35602static __attribute__ ((__unused__)) PyObject *_wrap_new_QueryParserError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
35603 PyObject *resultobj = 0;
35604 std::string *arg1 = 0 ;
35605 std::string *arg2 = 0 ;
35606 int res1 = ((0)) ;
35607 int res2 = ((0)) ;
35608 Xapian::QueryParserError *result = 0 ;
35609 if ((nobjs < 2) || (nobjs > 2)) goto fail;
35610 {
35611 std::string *ptr = (std::string *)0;
35612 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35613 if (!(res1 >= 0)) {
35614 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35615 }
35616 if (!ptr) {
35617 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35618 }
35619 arg1 = ptr;
35620 }
35621 {
35622 std::string *ptr = (std::string *)0;
35623 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35624 if (!(res2 >= 0)) {
35625 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_QueryParserError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35626 }
35627 if (!ptr) {
35628 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_QueryParserError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35629 }
35630 arg2 = ptr;
35631 }
35632 {
35633 SWIG_Python_Thread_Allow _swig_thread_allow;
35634 result = (Xapian::QueryParserError *)new Xapian::QueryParserError((std::string const &)*arg1,(std::string const &)*arg2);
35635 _swig_thread_allow.end();
35636 }
35637 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[42], ((0x1 << 1) | 0x1) | 0);
35638 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35639 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35640 return resultobj;
35641fail:
35642 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35643 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35644 return __null;
35645}
35646static __attribute__ ((__unused__)) PyObject *_wrap_new_QueryParserError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
35647 PyObject *resultobj = 0;
35648 std::string *arg1 = 0 ;
35649 int res1 = ((0)) ;
35650 Xapian::QueryParserError *result = 0 ;
35651 if ((nobjs < 1) || (nobjs > 1)) goto fail;
35652 {
35653 std::string *ptr = (std::string *)0;
35654 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35655 if (!(res1 >= 0)) {
35656 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35657 }
35658 if (!ptr) {
35659 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35660 }
35661 arg1 = ptr;
35662 }
35663 {
35664 SWIG_Python_Thread_Allow _swig_thread_allow;
35665 result = (Xapian::QueryParserError *)new Xapian::QueryParserError((std::string const &)*arg1);
35666 _swig_thread_allow.end();
35667 }
35668 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[42], ((0x1 << 1) | 0x1) | 0);
35669 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35670 return resultobj;
35671fail:
35672 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35673 return __null;
35674}
35675static __attribute__ ((__unused__)) PyObject *_wrap_new_QueryParserError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
35676 PyObject *resultobj = 0;
35677 std::string *arg1 = 0 ;
35678 int arg2 ;
35679 int res1 = ((0)) ;
35680 int val2 ;
35681 int ecode2 = 0 ;
35682 Xapian::QueryParserError *result = 0 ;
35683 if ((nobjs < 2) || (nobjs > 2)) goto fail;
35684 {
35685 std::string *ptr = (std::string *)0;
35686 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35687 if (!(res1 >= 0)) {
35688 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35689 }
35690 if (!ptr) {
35691 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_QueryParserError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35692 }
35693 arg1 = ptr;
35694 }
35695 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
35696 if (!(ecode2 >= 0)) {
35697 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_QueryParserError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
35698 }
35699 arg2 = static_cast< int >(val2);
35700 {
35701 SWIG_Python_Thread_Allow _swig_thread_allow;
35702 result = (Xapian::QueryParserError *)new Xapian::QueryParserError((std::string const &)*arg1,arg2);
35703 _swig_thread_allow.end();
35704 }
35705 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[42], ((0x1 << 1) | 0x1) | 0);
35706 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35707 return resultobj;
35708fail:
35709 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35710 return __null;
35711}
35712static __attribute__ ((__unused__)) PyObject *_wrap_new_QueryParserError(PyObject *self, PyObject *args) {
35713 int argc;
35714 PyObject *argv[4];
35715 if (!(argc = SWIG_Python_UnpackTuple(args,"new_QueryParserError",0,3,argv))) goto fail;
35716 --argc;
35717 if (argc == 1) {
35718 return _wrap_new_QueryParserError__SWIG_3(self, argc, argv);
35719 }
35720 if (argc == 2) {
35721 int _v = 0;
35722 {
35723 {
35724 int res = SWIG_AsVal_int(argv[1], __null);
35725 _v = ((res >= 0) ? 1 : 0);
35726 }
35727 }
35728 if (!_v) goto check_2;
35729 return _wrap_new_QueryParserError__SWIG_4(self, argc, argv);
35730 }
35731check_2:
35732 if (argc == 2) {
35733 return _wrap_new_QueryParserError__SWIG_2(self, argc, argv);
35734 }
35735 if (argc == 3) {
35736 int _v = 0;
35737 {
35738 {
35739 int res = SWIG_AsVal_int(argv[2], __null);
35740 _v = ((res >= 0) ? 1 : 0);
35741 }
35742 }
35743 if (!_v) goto check_4;
35744 return _wrap_new_QueryParserError__SWIG_1(self, argc, argv);
35745 }
35746check_4:
35747 if (argc == 3) {
35748 return _wrap_new_QueryParserError__SWIG_0(self, argc, argv);
35749 }
35750fail:
35751 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_QueryParserError'.\n"
35752 " Possible C/C++ prototypes are:\n"
35753 " Xapian::QueryParserError(std::string const &,std::string const &,char const *)\n"
35754 " Xapian::QueryParserError(std::string const &,std::string const &,int)\n"
35755 " Xapian::QueryParserError(std::string const &,std::string const &)\n"
35756 " Xapian::QueryParserError(std::string const &)\n"
35757 " Xapian::QueryParserError(std::string const &,int)\n");
35758 return __null;
35759}
35760static __attribute__ ((__unused__)) PyObject *_wrap_delete_QueryParserError(PyObject *, PyObject *args) {
35761 PyObject *resultobj = 0;
35762 Xapian::QueryParserError *arg1 = (Xapian::QueryParserError *) 0 ;
35763 void *argp1 = 0 ;
35764 int res1 = 0 ;
35765 PyObject *swig_obj[1] ;
35766 if (!args) goto fail;
35767 swig_obj[0] = args;
35768 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[42], 0x1 | 0, 0);
35769 if (!(res1 >= 0)) {
35770 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_QueryParserError" "', argument " "1"" of type '" "Xapian::QueryParserError *""'"); goto fail; } while(0);
35771 }
35772 arg1 = reinterpret_cast< Xapian::QueryParserError * >(argp1);
35773 {
35774 SWIG_Python_Thread_Allow _swig_thread_allow;
35775 {
35776 try {
35777 delete arg1;
35778 } catch (...) {
35779 _swig_thread_allow.end();
35780 Xapian::SetPythonException();
35781 goto fail;
35782 }
35783 }
35784 _swig_thread_allow.end();
35785 }
35786 resultobj = SWIG_Py_Void();
35787 return resultobj;
35788fail:
35789 return __null;
35790}
35791static __attribute__ ((__unused__)) PyObject *QueryParserError_swigregister(PyObject *, PyObject *args) {
35792 PyObject *obj;
35793 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
35794 SWIG_TypeNewClientData(swig_types[42], SwigPyClientData_New(obj));
35795 return SWIG_Py_Void();
35796}
35797static __attribute__ ((__unused__)) PyObject *QueryParserError_swiginit(PyObject *, PyObject *args) {
35798 return SWIG_Python_InitShadowInstance(args);
35799}
35800static __attribute__ ((__unused__)) PyObject *_wrap_new_SerialisationError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
35801 PyObject *resultobj = 0;
35802 std::string *arg1 = 0 ;
35803 std::string *arg2 = 0 ;
35804 char *arg3 = (char *) 0 ;
35805 int res1 = ((0)) ;
35806 int res2 = ((0)) ;
35807 int res3 ;
35808 char *buf3 = 0 ;
35809 int alloc3 = 0 ;
35810 Xapian::SerialisationError *result = 0 ;
35811 if ((nobjs < 3) || (nobjs > 3)) goto fail;
35812 {
35813 std::string *ptr = (std::string *)0;
35814 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35815 if (!(res1 >= 0)) {
35816 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35817 }
35818 if (!ptr) {
35819 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35820 }
35821 arg1 = ptr;
35822 }
35823 {
35824 std::string *ptr = (std::string *)0;
35825 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35826 if (!(res2 >= 0)) {
35827 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_SerialisationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35828 }
35829 if (!ptr) {
35830 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_SerialisationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35831 }
35832 arg2 = ptr;
35833 }
35834 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
35835 if (!(res3 >= 0)) {
35836 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_SerialisationError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
35837 }
35838 arg3 = reinterpret_cast< char * >(buf3);
35839 {
35840 SWIG_Python_Thread_Allow _swig_thread_allow;
35841 result = (Xapian::SerialisationError *)new Xapian::SerialisationError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
35842 _swig_thread_allow.end();
35843 }
35844 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[47], ((0x1 << 1) | 0x1) | 0);
35845 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35846 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35847 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
35848 return resultobj;
35849fail:
35850 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35851 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35852 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
35853 return __null;
35854}
35855static __attribute__ ((__unused__)) PyObject *_wrap_new_SerialisationError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
35856 PyObject *resultobj = 0;
35857 std::string *arg1 = 0 ;
35858 std::string *arg2 = 0 ;
35859 int arg3 ;
35860 int res1 = ((0)) ;
35861 int res2 = ((0)) ;
35862 int val3 ;
35863 int ecode3 = 0 ;
35864 Xapian::SerialisationError *result = 0 ;
35865 if ((nobjs < 3) || (nobjs > 3)) goto fail;
35866 {
35867 std::string *ptr = (std::string *)0;
35868 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35869 if (!(res1 >= 0)) {
35870 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35871 }
35872 if (!ptr) {
35873 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35874 }
35875 arg1 = ptr;
35876 }
35877 {
35878 std::string *ptr = (std::string *)0;
35879 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35880 if (!(res2 >= 0)) {
35881 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_SerialisationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35882 }
35883 if (!ptr) {
35884 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_SerialisationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35885 }
35886 arg2 = ptr;
35887 }
35888 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
35889 if (!(ecode3 >= 0)) {
35890 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_SerialisationError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
35891 }
35892 arg3 = static_cast< int >(val3);
35893 {
35894 SWIG_Python_Thread_Allow _swig_thread_allow;
35895 result = (Xapian::SerialisationError *)new Xapian::SerialisationError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
35896 _swig_thread_allow.end();
35897 }
35898 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[47], ((0x1 << 1) | 0x1) | 0);
35899 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35900 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35901 return resultobj;
35902fail:
35903 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35904 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35905 return __null;
35906}
35907static __attribute__ ((__unused__)) PyObject *_wrap_new_SerialisationError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
35908 PyObject *resultobj = 0;
35909 std::string *arg1 = 0 ;
35910 std::string *arg2 = 0 ;
35911 int res1 = ((0)) ;
35912 int res2 = ((0)) ;
35913 Xapian::SerialisationError *result = 0 ;
35914 if ((nobjs < 2) || (nobjs > 2)) goto fail;
35915 {
35916 std::string *ptr = (std::string *)0;
35917 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35918 if (!(res1 >= 0)) {
35919 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35920 }
35921 if (!ptr) {
35922 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35923 }
35924 arg1 = ptr;
35925 }
35926 {
35927 std::string *ptr = (std::string *)0;
35928 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
35929 if (!(res2 >= 0)) {
35930 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_SerialisationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35931 }
35932 if (!ptr) {
35933 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_SerialisationError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
35934 }
35935 arg2 = ptr;
35936 }
35937 {
35938 SWIG_Python_Thread_Allow _swig_thread_allow;
35939 result = (Xapian::SerialisationError *)new Xapian::SerialisationError((std::string const &)*arg1,(std::string const &)*arg2);
35940 _swig_thread_allow.end();
35941 }
35942 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[47], ((0x1 << 1) | 0x1) | 0);
35943 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35944 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35945 return resultobj;
35946fail:
35947 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35948 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
35949 return __null;
35950}
35951static __attribute__ ((__unused__)) PyObject *_wrap_new_SerialisationError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
35952 PyObject *resultobj = 0;
35953 std::string *arg1 = 0 ;
35954 int res1 = ((0)) ;
35955 Xapian::SerialisationError *result = 0 ;
35956 if ((nobjs < 1) || (nobjs > 1)) goto fail;
35957 {
35958 std::string *ptr = (std::string *)0;
35959 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35960 if (!(res1 >= 0)) {
35961 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35962 }
35963 if (!ptr) {
35964 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35965 }
35966 arg1 = ptr;
35967 }
35968 {
35969 SWIG_Python_Thread_Allow _swig_thread_allow;
35970 result = (Xapian::SerialisationError *)new Xapian::SerialisationError((std::string const &)*arg1);
35971 _swig_thread_allow.end();
35972 }
35973 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[47], ((0x1 << 1) | 0x1) | 0);
35974 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35975 return resultobj;
35976fail:
35977 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
35978 return __null;
35979}
35980static __attribute__ ((__unused__)) PyObject *_wrap_new_SerialisationError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
35981 PyObject *resultobj = 0;
35982 std::string *arg1 = 0 ;
35983 int arg2 ;
35984 int res1 = ((0)) ;
35985 int val2 ;
35986 int ecode2 = 0 ;
35987 Xapian::SerialisationError *result = 0 ;
35988 if ((nobjs < 2) || (nobjs > 2)) goto fail;
35989 {
35990 std::string *ptr = (std::string *)0;
35991 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
35992 if (!(res1 >= 0)) {
35993 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35994 }
35995 if (!ptr) {
35996 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_SerialisationError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
35997 }
35998 arg1 = ptr;
35999 }
36000 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
36001 if (!(ecode2 >= 0)) {
36002 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_SerialisationError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
36003 }
36004 arg2 = static_cast< int >(val2);
36005 {
36006 SWIG_Python_Thread_Allow _swig_thread_allow;
36007 result = (Xapian::SerialisationError *)new Xapian::SerialisationError((std::string const &)*arg1,arg2);
36008 _swig_thread_allow.end();
36009 }
36010 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[47], ((0x1 << 1) | 0x1) | 0);
36011 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36012 return resultobj;
36013fail:
36014 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36015 return __null;
36016}
36017static __attribute__ ((__unused__)) PyObject *_wrap_new_SerialisationError(PyObject *self, PyObject *args) {
36018 int argc;
36019 PyObject *argv[4];
36020 if (!(argc = SWIG_Python_UnpackTuple(args,"new_SerialisationError",0,3,argv))) goto fail;
36021 --argc;
36022 if (argc == 1) {
36023 return _wrap_new_SerialisationError__SWIG_3(self, argc, argv);
36024 }
36025 if (argc == 2) {
36026 int _v = 0;
36027 {
36028 {
36029 int res = SWIG_AsVal_int(argv[1], __null);
36030 _v = ((res >= 0) ? 1 : 0);
36031 }
36032 }
36033 if (!_v) goto check_2;
36034 return _wrap_new_SerialisationError__SWIG_4(self, argc, argv);
36035 }
36036check_2:
36037 if (argc == 2) {
36038 return _wrap_new_SerialisationError__SWIG_2(self, argc, argv);
36039 }
36040 if (argc == 3) {
36041 int _v = 0;
36042 {
36043 {
36044 int res = SWIG_AsVal_int(argv[2], __null);
36045 _v = ((res >= 0) ? 1 : 0);
36046 }
36047 }
36048 if (!_v) goto check_4;
36049 return _wrap_new_SerialisationError__SWIG_1(self, argc, argv);
36050 }
36051check_4:
36052 if (argc == 3) {
36053 return _wrap_new_SerialisationError__SWIG_0(self, argc, argv);
36054 }
36055fail:
36056 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_SerialisationError'.\n"
36057 " Possible C/C++ prototypes are:\n"
36058 " Xapian::SerialisationError(std::string const &,std::string const &,char const *)\n"
36059 " Xapian::SerialisationError(std::string const &,std::string const &,int)\n"
36060 " Xapian::SerialisationError(std::string const &,std::string const &)\n"
36061 " Xapian::SerialisationError(std::string const &)\n"
36062 " Xapian::SerialisationError(std::string const &,int)\n");
36063 return __null;
36064}
36065static __attribute__ ((__unused__)) PyObject *_wrap_delete_SerialisationError(PyObject *, PyObject *args) {
36066 PyObject *resultobj = 0;
36067 Xapian::SerialisationError *arg1 = (Xapian::SerialisationError *) 0 ;
36068 void *argp1 = 0 ;
36069 int res1 = 0 ;
36070 PyObject *swig_obj[1] ;
36071 if (!args) goto fail;
36072 swig_obj[0] = args;
36073 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[47], 0x1 | 0, 0);
36074 if (!(res1 >= 0)) {
36075 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_SerialisationError" "', argument " "1"" of type '" "Xapian::SerialisationError *""'"); goto fail; } while(0);
36076 }
36077 arg1 = reinterpret_cast< Xapian::SerialisationError * >(argp1);
36078 {
36079 SWIG_Python_Thread_Allow _swig_thread_allow;
36080 {
36081 try {
36082 delete arg1;
36083 } catch (...) {
36084 _swig_thread_allow.end();
36085 Xapian::SetPythonException();
36086 goto fail;
36087 }
36088 }
36089 _swig_thread_allow.end();
36090 }
36091 resultobj = SWIG_Py_Void();
36092 return resultobj;
36093fail:
36094 return __null;
36095}
36096static __attribute__ ((__unused__)) PyObject *SerialisationError_swigregister(PyObject *, PyObject *args) {
36097 PyObject *obj;
36098 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
36099 SWIG_TypeNewClientData(swig_types[47], SwigPyClientData_New(obj));
36100 return SWIG_Py_Void();
36101}
36102static __attribute__ ((__unused__)) PyObject *SerialisationError_swiginit(PyObject *, PyObject *args) {
36103 return SWIG_Python_InitShadowInstance(args);
36104}
36105static __attribute__ ((__unused__)) PyObject *_wrap_new_RangeError__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
36106 PyObject *resultobj = 0;
36107 std::string *arg1 = 0 ;
36108 std::string *arg2 = 0 ;
36109 char *arg3 = (char *) 0 ;
36110 int res1 = ((0)) ;
36111 int res2 = ((0)) ;
36112 int res3 ;
36113 char *buf3 = 0 ;
36114 int alloc3 = 0 ;
36115 Xapian::RangeError *result = 0 ;
36116 if ((nobjs < 3) || (nobjs > 3)) goto fail;
36117 {
36118 std::string *ptr = (std::string *)0;
36119 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
36120 if (!(res1 >= 0)) {
36121 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36122 }
36123 if (!ptr) {
36124 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36125 }
36126 arg1 = ptr;
36127 }
36128 {
36129 std::string *ptr = (std::string *)0;
36130 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
36131 if (!(res2 >= 0)) {
36132 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_RangeError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
36133 }
36134 if (!ptr) {
36135 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_RangeError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
36136 }
36137 arg2 = ptr;
36138 }
36139 res3 = SWIG_AsCharPtrAndSize(swig_obj[2], &buf3, __null, &alloc3);
36140 if (!(res3 >= 0)) {
36141 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_RangeError" "', argument " "3"" of type '" "char const *""'"); goto fail; } while(0);
36142 }
36143 arg3 = reinterpret_cast< char * >(buf3);
36144 {
36145 SWIG_Python_Thread_Allow _swig_thread_allow;
36146 result = (Xapian::RangeError *)new Xapian::RangeError((std::string const &)*arg1,(std::string const &)*arg2,(char const *)arg3);
36147 _swig_thread_allow.end();
36148 }
36149 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[44], ((0x1 << 1) | 0x1) | 0);
36150 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36151 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
36152 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
36153 return resultobj;
36154fail:
36155 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36156 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
36157 if (alloc3 == ((0) | ((1 << 8) << 1))) delete[] buf3;
36158 return __null;
36159}
36160static __attribute__ ((__unused__)) PyObject *_wrap_new_RangeError__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
36161 PyObject *resultobj = 0;
36162 std::string *arg1 = 0 ;
36163 std::string *arg2 = 0 ;
36164 int arg3 ;
36165 int res1 = ((0)) ;
36166 int res2 = ((0)) ;
36167 int val3 ;
36168 int ecode3 = 0 ;
36169 Xapian::RangeError *result = 0 ;
36170 if ((nobjs < 3) || (nobjs > 3)) goto fail;
36171 {
36172 std::string *ptr = (std::string *)0;
36173 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
36174 if (!(res1 >= 0)) {
36175 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36176 }
36177 if (!ptr) {
36178 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36179 }
36180 arg1 = ptr;
36181 }
36182 {
36183 std::string *ptr = (std::string *)0;
36184 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
36185 if (!(res2 >= 0)) {
36186 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_RangeError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
36187 }
36188 if (!ptr) {
36189 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_RangeError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
36190 }
36191 arg2 = ptr;
36192 }
36193 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
36194 if (!(ecode3 >= 0)) {
36195 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_RangeError" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
36196 }
36197 arg3 = static_cast< int >(val3);
36198 {
36199 SWIG_Python_Thread_Allow _swig_thread_allow;
36200 result = (Xapian::RangeError *)new Xapian::RangeError((std::string const &)*arg1,(std::string const &)*arg2,arg3);
36201 _swig_thread_allow.end();
36202 }
36203 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[44], ((0x1 << 1) | 0x1) | 0);
36204 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36205 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
36206 return resultobj;
36207fail:
36208 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36209 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
36210 return __null;
36211}
36212static __attribute__ ((__unused__)) PyObject *_wrap_new_RangeError__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
36213 PyObject *resultobj = 0;
36214 std::string *arg1 = 0 ;
36215 std::string *arg2 = 0 ;
36216 int res1 = ((0)) ;
36217 int res2 = ((0)) ;
36218 Xapian::RangeError *result = 0 ;
36219 if ((nobjs < 2) || (nobjs > 2)) goto fail;
36220 {
36221 std::string *ptr = (std::string *)0;
36222 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
36223 if (!(res1 >= 0)) {
36224 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36225 }
36226 if (!ptr) {
36227 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36228 }
36229 arg1 = ptr;
36230 }
36231 {
36232 std::string *ptr = (std::string *)0;
36233 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
36234 if (!(res2 >= 0)) {
36235 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_RangeError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
36236 }
36237 if (!ptr) {
36238 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_RangeError" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
36239 }
36240 arg2 = ptr;
36241 }
36242 {
36243 SWIG_Python_Thread_Allow _swig_thread_allow;
36244 result = (Xapian::RangeError *)new Xapian::RangeError((std::string const &)*arg1,(std::string const &)*arg2);
36245 _swig_thread_allow.end();
36246 }
36247 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[44], ((0x1 << 1) | 0x1) | 0);
36248 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36249 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
36250 return resultobj;
36251fail:
36252 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36253 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
36254 return __null;
36255}
36256static __attribute__ ((__unused__)) PyObject *_wrap_new_RangeError__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
36257 PyObject *resultobj = 0;
36258 std::string *arg1 = 0 ;
36259 int res1 = ((0)) ;
36260 Xapian::RangeError *result = 0 ;
36261 if ((nobjs < 1) || (nobjs > 1)) goto fail;
36262 {
36263 std::string *ptr = (std::string *)0;
36264 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
36265 if (!(res1 >= 0)) {
36266 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36267 }
36268 if (!ptr) {
36269 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36270 }
36271 arg1 = ptr;
36272 }
36273 {
36274 SWIG_Python_Thread_Allow _swig_thread_allow;
36275 result = (Xapian::RangeError *)new Xapian::RangeError((std::string const &)*arg1);
36276 _swig_thread_allow.end();
36277 }
36278 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[44], ((0x1 << 1) | 0x1) | 0);
36279 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36280 return resultobj;
36281fail:
36282 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36283 return __null;
36284}
36285static __attribute__ ((__unused__)) PyObject *_wrap_new_RangeError__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
36286 PyObject *resultobj = 0;
36287 std::string *arg1 = 0 ;
36288 int arg2 ;
36289 int res1 = ((0)) ;
36290 int val2 ;
36291 int ecode2 = 0 ;
36292 Xapian::RangeError *result = 0 ;
36293 if ((nobjs < 2) || (nobjs > 2)) goto fail;
36294 {
36295 std::string *ptr = (std::string *)0;
36296 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
36297 if (!(res1 >= 0)) {
36298 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36299 }
36300 if (!ptr) {
36301 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_RangeError" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
36302 }
36303 arg1 = ptr;
36304 }
36305 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
36306 if (!(ecode2 >= 0)) {
36307 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_RangeError" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
36308 }
36309 arg2 = static_cast< int >(val2);
36310 {
36311 SWIG_Python_Thread_Allow _swig_thread_allow;
36312 result = (Xapian::RangeError *)new Xapian::RangeError((std::string const &)*arg1,arg2);
36313 _swig_thread_allow.end();
36314 }
36315 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[44], ((0x1 << 1) | 0x1) | 0);
36316 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36317 return resultobj;
36318fail:
36319 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
36320 return __null;
36321}
36322static __attribute__ ((__unused__)) PyObject *_wrap_new_RangeError(PyObject *self, PyObject *args) {
36323 int argc;
36324 PyObject *argv[4];
36325 if (!(argc = SWIG_Python_UnpackTuple(args,"new_RangeError",0,3,argv))) goto fail;
36326 --argc;
36327 if (argc == 1) {
36328 return _wrap_new_RangeError__SWIG_3(self, argc, argv);
36329 }
36330 if (argc == 2) {
36331 int _v = 0;
36332 {
36333 {
36334 int res = SWIG_AsVal_int(argv[1], __null);
36335 _v = ((res >= 0) ? 1 : 0);
36336 }
36337 }
36338 if (!_v) goto check_2;
36339 return _wrap_new_RangeError__SWIG_4(self, argc, argv);
36340 }
36341check_2:
36342 if (argc == 2) {
36343 return _wrap_new_RangeError__SWIG_2(self, argc, argv);
36344 }
36345 if (argc == 3) {
36346 int _v = 0;
36347 {
36348 {
36349 int res = SWIG_AsVal_int(argv[2], __null);
36350 _v = ((res >= 0) ? 1 : 0);
36351 }
36352 }
36353 if (!_v) goto check_4;
36354 return _wrap_new_RangeError__SWIG_1(self, argc, argv);
36355 }
36356check_4:
36357 if (argc == 3) {
36358 return _wrap_new_RangeError__SWIG_0(self, argc, argv);
36359 }
36360fail:
36361 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_RangeError'.\n"
36362 " Possible C/C++ prototypes are:\n"
36363 " Xapian::RangeError(std::string const &,std::string const &,char const *)\n"
36364 " Xapian::RangeError(std::string const &,std::string const &,int)\n"
36365 " Xapian::RangeError(std::string const &,std::string const &)\n"
36366 " Xapian::RangeError(std::string const &)\n"
36367 " Xapian::RangeError(std::string const &,int)\n");
36368 return __null;
36369}
36370static __attribute__ ((__unused__)) PyObject *_wrap_delete_RangeError(PyObject *, PyObject *args) {
36371 PyObject *resultobj = 0;
36372 Xapian::RangeError *arg1 = (Xapian::RangeError *) 0 ;
36373 void *argp1 = 0 ;
36374 int res1 = 0 ;
36375 PyObject *swig_obj[1] ;
36376 if (!args) goto fail;
36377 swig_obj[0] = args;
36378 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[44], 0x1 | 0, 0);
36379 if (!(res1 >= 0)) {
36380 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_RangeError" "', argument " "1"" of type '" "Xapian::RangeError *""'"); goto fail; } while(0);
36381 }
36382 arg1 = reinterpret_cast< Xapian::RangeError * >(argp1);
36383 {
36384 SWIG_Python_Thread_Allow _swig_thread_allow;
36385 {
36386 try {
36387 delete arg1;
36388 } catch (...) {
36389 _swig_thread_allow.end();
36390 Xapian::SetPythonException();
36391 goto fail;
36392 }
36393 }
36394 _swig_thread_allow.end();
36395 }
36396 resultobj = SWIG_Py_Void();
36397 return resultobj;
36398fail:
36399 return __null;
36400}
36401static __attribute__ ((__unused__)) PyObject *RangeError_swigregister(PyObject *, PyObject *args) {
36402 PyObject *obj;
36403 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
36404 SWIG_TypeNewClientData(swig_types[44], SwigPyClientData_New(obj));
36405 return SWIG_Py_Void();
36406}
36407static __attribute__ ((__unused__)) PyObject *RangeError_swiginit(PyObject *, PyObject *args) {
36408 return SWIG_Python_InitShadowInstance(args);
36409}
36410static __attribute__ ((__unused__)) PyObject *_wrap_version_string(PyObject *, PyObject *args) {
36411 PyObject *resultobj = 0;
36412 char *result = 0 ;
36413 if (!SWIG_Python_UnpackTuple(args,"version_string",0,0,0)) goto fail;
36414 {
36415 SWIG_Python_Thread_Allow _swig_thread_allow;
36416 result = (char *)Xapian::version_string();
36417 _swig_thread_allow.end();
36418 }
36419 resultobj = SWIG_FromCharPtr((const char *)result);
36420 return resultobj;
36421fail:
36422 return __null;
36423}
36424static __attribute__ ((__unused__)) PyObject *_wrap_major_version(PyObject *, PyObject *args) {
36425 PyObject *resultobj = 0;
36426 int result;
36427 if (!SWIG_Python_UnpackTuple(args,"major_version",0,0,0)) goto fail;
36428 {
36429 SWIG_Python_Thread_Allow _swig_thread_allow;
36430 result = (int)Xapian::major_version();
36431 _swig_thread_allow.end();
36432 }
36433 resultobj = SWIG_From_int(static_cast< int >(result));
36434 return resultobj;
36435fail:
36436 return __null;
36437}
36438static __attribute__ ((__unused__)) PyObject *_wrap_minor_version(PyObject *, PyObject *args) {
36439 PyObject *resultobj = 0;
36440 int result;
36441 if (!SWIG_Python_UnpackTuple(args,"minor_version",0,0,0)) goto fail;
36442 {
36443 SWIG_Python_Thread_Allow _swig_thread_allow;
36444 result = (int)Xapian::minor_version();
36445 _swig_thread_allow.end();
36446 }
36447 resultobj = SWIG_From_int(static_cast< int >(result));
36448 return resultobj;
36449fail:
36450 return __null;
36451}
36452static __attribute__ ((__unused__)) PyObject *_wrap_revision(PyObject *, PyObject *args) {
36453 PyObject *resultobj = 0;
36454 int result;
36455 if (!SWIG_Python_UnpackTuple(args,"revision",0,0,0)) goto fail;
36456 {
36457 SWIG_Python_Thread_Allow _swig_thread_allow;
36458 result = (int)Xapian::revision();
36459 _swig_thread_allow.end();
36460 }
36461 resultobj = SWIG_From_int(static_cast< int >(result));
36462 return resultobj;
36463fail:
36464 return __null;
36465}
36466static __attribute__ ((__unused__)) PyObject *_wrap_new_PositionIterator__SWIG_0(PyObject *, int nobjs, PyObject **) {
36467 PyObject *resultobj = 0;
36468 Xapian::PositionIterator *result = 0 ;
36469 if ((nobjs < 0) || (nobjs > 0)) goto fail;
36470 {
36471 SWIG_Python_Thread_Allow _swig_thread_allow;
36472 {
36473 try {
36474 result = (Xapian::PositionIterator *)new Xapian::PositionIterator();
36475 } catch (...) {
36476 _swig_thread_allow.end();
36477 Xapian::SetPythonException();
36478 goto fail;
36479 }
36480 }
36481 _swig_thread_allow.end();
36482 }
36483 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[37], ((0x1 << 1) | 0x1) | 0);
36484 return resultobj;
36485fail:
36486 return __null;
36487}
36488static __attribute__ ((__unused__)) PyObject *_wrap_new_PositionIterator__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
36489 PyObject *resultobj = 0;
36490 Xapian::PositionIterator *arg1 = 0 ;
36491 void *argp1 = 0 ;
36492 int res1 = 0 ;
36493 Xapian::PositionIterator *result = 0 ;
36494 if ((nobjs < 1) || (nobjs > 1)) goto fail;
36495 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[37], 0 | 0, 0);
36496 if (!(res1 >= 0)) {
36497 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_PositionIterator" "', argument " "1"" of type '" "Xapian::PositionIterator const &""'"); goto fail; } while(0);
36498 }
36499 if (!argp1) {
36500 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_PositionIterator" "', argument " "1"" of type '" "Xapian::PositionIterator const &""'"); goto fail; } while(0);
36501 }
36502 arg1 = reinterpret_cast< Xapian::PositionIterator * >(argp1);
36503 {
36504 SWIG_Python_Thread_Allow _swig_thread_allow;
36505 {
36506 try {
36507 result = (Xapian::PositionIterator *)new Xapian::PositionIterator((Xapian::PositionIterator const &)*arg1);
36508 } catch (...) {
36509 _swig_thread_allow.end();
36510 Xapian::SetPythonException();
36511 goto fail;
36512 }
36513 }
36514 _swig_thread_allow.end();
36515 }
36516 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[37], ((0x1 << 1) | 0x1) | 0);
36517 return resultobj;
36518fail:
36519 return __null;
36520}
36521static __attribute__ ((__unused__)) PyObject *_wrap_new_PositionIterator(PyObject *self, PyObject *args) {
36522 int argc;
36523 PyObject *argv[2];
36524 if (!(argc = SWIG_Python_UnpackTuple(args,"new_PositionIterator",0,1,argv))) goto fail;
36525 --argc;
36526 if (argc == 0) {
36527 return _wrap_new_PositionIterator__SWIG_0(self, argc, argv);
36528 }
36529 if (argc == 1) {
36530 return _wrap_new_PositionIterator__SWIG_1(self, argc, argv);
36531 }
36532fail:
36533 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_PositionIterator'.\n"
36534 " Possible C/C++ prototypes are:\n"
36535 " Xapian::PositionIterator()\n"
36536 " Xapian::PositionIterator(Xapian::PositionIterator const &)\n");
36537 return __null;
36538}
36539static __attribute__ ((__unused__)) PyObject *_wrap_delete_PositionIterator(PyObject *, PyObject *args) {
36540 PyObject *resultobj = 0;
36541 Xapian::PositionIterator *arg1 = (Xapian::PositionIterator *) 0 ;
36542 void *argp1 = 0 ;
36543 int res1 = 0 ;
36544 PyObject *swig_obj[1] ;
36545 if (!args) goto fail;
36546 swig_obj[0] = args;
36547 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[37], 0x1 | 0, 0);
36548 if (!(res1 >= 0)) {
36549 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_PositionIterator" "', argument " "1"" of type '" "Xapian::PositionIterator *""'"); goto fail; } while(0);
36550 }
36551 arg1 = reinterpret_cast< Xapian::PositionIterator * >(argp1);
36552 {
36553 SWIG_Python_Thread_Allow _swig_thread_allow;
36554 {
36555 try {
36556 delete arg1;
36557 } catch (...) {
36558 _swig_thread_allow.end();
36559 Xapian::SetPythonException();
36560 goto fail;
36561 }
36562 }
36563 _swig_thread_allow.end();
36564 }
36565 resultobj = SWIG_Py_Void();
36566 return resultobj;
36567fail:
36568 return __null;
36569}
36570static __attribute__ ((__unused__)) PyObject *_wrap_PositionIterator_get_termpos(PyObject *, PyObject *args) {
36571 PyObject *resultobj = 0;
36572 Xapian::PositionIterator *arg1 = (Xapian::PositionIterator *) 0 ;
36573 void *argp1 = 0 ;
36574 int res1 = 0 ;
36575 PyObject *swig_obj[1] ;
36576 Xapian::termpos result;
36577 if (!args) goto fail;
36578 swig_obj[0] = args;
36579 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[37], 0 | 0, 0);
36580 if (!(res1 >= 0)) {
36581 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PositionIterator_get_termpos" "', argument " "1"" of type '" "Xapian::PositionIterator const *""'"); goto fail; } while(0);
36582 }
36583 arg1 = reinterpret_cast< Xapian::PositionIterator * >(argp1);
36584 {
36585 SWIG_Python_Thread_Allow _swig_thread_allow;
36586 {
36587 try {
36588 result = (Xapian::termpos)Xapian_PositionIterator_get_termpos((Xapian::PositionIterator const *)arg1);
36589 } catch (...) {
36590 _swig_thread_allow.end();
36591 Xapian::SetPythonException();
36592 goto fail;
36593 }
36594 }
36595 _swig_thread_allow.end();
36596 }
36597 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
36598 return resultobj;
36599fail:
36600 return __null;
36601}
36602static __attribute__ ((__unused__)) PyObject *_wrap_PositionIterator_next(PyObject *, PyObject *args) {
36603 PyObject *resultobj = 0;
36604 Xapian::PositionIterator *arg1 = (Xapian::PositionIterator *) 0 ;
36605 void *argp1 = 0 ;
36606 int res1 = 0 ;
36607 PyObject *swig_obj[1] ;
36608 if (!args) goto fail;
36609 swig_obj[0] = args;
36610 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[37], 0 | 0, 0);
36611 if (!(res1 >= 0)) {
36612 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PositionIterator_next" "', argument " "1"" of type '" "Xapian::PositionIterator *""'"); goto fail; } while(0);
36613 }
36614 arg1 = reinterpret_cast< Xapian::PositionIterator * >(argp1);
36615 {
36616 SWIG_Python_Thread_Allow _swig_thread_allow;
36617 {
36618 try {
36619 Xapian_PositionIterator_next(arg1);
36620 } catch (...) {
36621 _swig_thread_allow.end();
36622 Xapian::SetPythonException();
36623 goto fail;
36624 }
36625 }
36626 _swig_thread_allow.end();
36627 }
36628 resultobj = SWIG_Py_Void();
36629 return resultobj;
36630fail:
36631 return __null;
36632}
36633static __attribute__ ((__unused__)) PyObject *_wrap_PositionIterator_equals(PyObject *, PyObject *args) {
36634 PyObject *resultobj = 0;
36635 Xapian::PositionIterator *arg1 = (Xapian::PositionIterator *) 0 ;
36636 Xapian::PositionIterator *arg2 = 0 ;
36637 void *argp1 = 0 ;
36638 int res1 = 0 ;
36639 void *argp2 = 0 ;
36640 int res2 = 0 ;
36641 PyObject *swig_obj[2] ;
36642 bool result;
36643 if (!SWIG_Python_UnpackTuple(args,"PositionIterator_equals",2,2,swig_obj)) goto fail;
36644 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[37], 0 | 0, 0);
36645 if (!(res1 >= 0)) {
36646 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PositionIterator_equals" "', argument " "1"" of type '" "Xapian::PositionIterator const *""'"); goto fail; } while(0);
36647 }
36648 arg1 = reinterpret_cast< Xapian::PositionIterator * >(argp1);
36649 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[37], 0 | 0, 0);
36650 if (!(res2 >= 0)) {
36651 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "PositionIterator_equals" "', argument " "2"" of type '" "Xapian::PositionIterator const &""'"); goto fail; } while(0);
36652 }
36653 if (!argp2) {
36654 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "PositionIterator_equals" "', argument " "2"" of type '" "Xapian::PositionIterator const &""'"); goto fail; } while(0);
36655 }
36656 arg2 = reinterpret_cast< Xapian::PositionIterator * >(argp2);
36657 {
36658 SWIG_Python_Thread_Allow _swig_thread_allow;
36659 {
36660 try {
36661 result = (bool)Xapian_PositionIterator_equals((Xapian::PositionIterator const *)arg1,(Xapian::PositionIterator const &)*arg2);
36662 } catch (...) {
36663 _swig_thread_allow.end();
36664 Xapian::SetPythonException();
36665 goto fail;
36666 }
36667 }
36668 _swig_thread_allow.end();
36669 }
36670 resultobj = SWIG_From_bool(static_cast< bool >(result));
36671 return resultobj;
36672fail:
36673 return __null;
36674}
36675static __attribute__ ((__unused__)) PyObject *_wrap_PositionIterator_skip_to(PyObject *, PyObject *args) {
36676 PyObject *resultobj = 0;
36677 Xapian::PositionIterator *arg1 = (Xapian::PositionIterator *) 0 ;
36678 Xapian::termpos arg2 ;
36679 void *argp1 = 0 ;
36680 int res1 = 0 ;
36681 unsigned int val2 ;
36682 int ecode2 = 0 ;
36683 PyObject *swig_obj[2] ;
36684 if (!SWIG_Python_UnpackTuple(args,"PositionIterator_skip_to",2,2,swig_obj)) goto fail;
36685 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[37], 0 | 0, 0);
36686 if (!(res1 >= 0)) {
36687 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PositionIterator_skip_to" "', argument " "1"" of type '" "Xapian::PositionIterator *""'"); goto fail; } while(0);
36688 }
36689 arg1 = reinterpret_cast< Xapian::PositionIterator * >(argp1);
36690 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
36691 if (!(ecode2 >= 0)) {
36692 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "PositionIterator_skip_to" "', argument " "2"" of type '" "Xapian::termpos""'"); goto fail; } while(0);
36693 }
36694 arg2 = static_cast< Xapian::termpos >(val2);
36695 {
36696 SWIG_Python_Thread_Allow _swig_thread_allow;
36697 {
36698 try {
36699 (arg1)->skip_to(arg2);
36700 } catch (...) {
36701 _swig_thread_allow.end();
36702 Xapian::SetPythonException();
36703 goto fail;
36704 }
36705 }
36706 _swig_thread_allow.end();
36707 }
36708 resultobj = SWIG_Py_Void();
36709 return resultobj;
36710fail:
36711 return __null;
36712}
36713static __attribute__ ((__unused__)) PyObject *_wrap_PositionIterator___str__(PyObject *, PyObject *args) {
36714 PyObject *resultobj = 0;
36715 Xapian::PositionIterator *arg1 = (Xapian::PositionIterator *) 0 ;
36716 void *argp1 = 0 ;
36717 int res1 = 0 ;
36718 PyObject *swig_obj[1] ;
36719 std::string result;
36720 if (!args) goto fail;
36721 swig_obj[0] = args;
36722 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[37], 0 | 0, 0);
36723 if (!(res1 >= 0)) {
36724 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PositionIterator___str__" "', argument " "1"" of type '" "Xapian::PositionIterator const *""'"); goto fail; } while(0);
36725 }
36726 arg1 = reinterpret_cast< Xapian::PositionIterator * >(argp1);
36727 {
36728 SWIG_Python_Thread_Allow _swig_thread_allow;
36729 {
36730 try {
36731 result = ((Xapian::PositionIterator const *)arg1)->get_description();
36732 } catch (...) {
36733 _swig_thread_allow.end();
36734 Xapian::SetPythonException();
36735 goto fail;
36736 }
36737 }
36738 _swig_thread_allow.end();
36739 }
36740 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
36741 return resultobj;
36742fail:
36743 return __null;
36744}
36745static __attribute__ ((__unused__)) PyObject *_wrap_PositionIterator___eq__(PyObject *, PyObject *args) {
36746 PyObject *resultobj = 0;
36747 Xapian::PositionIterator *arg1 = (Xapian::PositionIterator *) 0 ;
36748 Xapian::PositionIterator *arg2 = 0 ;
36749 void *argp1 = 0 ;
36750 int res1 = 0 ;
36751 void *argp2 = 0 ;
36752 int res2 = 0 ;
36753 PyObject *swig_obj[2] ;
36754 bool result;
36755 if (!SWIG_Python_UnpackTuple(args,"PositionIterator___eq__",2,2,swig_obj)) goto fail;
36756 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[37], 0 | 0, 0);
36757 if (!(res1 >= 0)) {
36758 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PositionIterator___eq__" "', argument " "1"" of type '" "Xapian::PositionIterator *""'"); goto fail; } while(0);
36759 }
36760 arg1 = reinterpret_cast< Xapian::PositionIterator * >(argp1);
36761 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[37], 0 | 0, 0);
36762 if (!(res2 >= 0)) {
36763 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "PositionIterator___eq__" "', argument " "2"" of type '" "Xapian::PositionIterator const &""'"); goto fail; } while(0);
36764 }
36765 if (!argp2) {
36766 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "PositionIterator___eq__" "', argument " "2"" of type '" "Xapian::PositionIterator const &""'"); goto fail; } while(0);
36767 }
36768 arg2 = reinterpret_cast< Xapian::PositionIterator * >(argp2);
36769 {
36770 SWIG_Python_Thread_Allow _swig_thread_allow;
36771 result = (bool)Xapian_PositionIterator___eq__(arg1,(Xapian::PositionIterator const &)*arg2);
36772 _swig_thread_allow.end();
36773 }
36774 resultobj = SWIG_From_bool(static_cast< bool >(result));
36775 return resultobj;
36776fail:
36777 return __null;
36778}
36779static __attribute__ ((__unused__)) PyObject *_wrap_PositionIterator___ne__(PyObject *, PyObject *args) {
36780 PyObject *resultobj = 0;
36781 Xapian::PositionIterator *arg1 = (Xapian::PositionIterator *) 0 ;
36782 Xapian::PositionIterator *arg2 = 0 ;
36783 void *argp1 = 0 ;
36784 int res1 = 0 ;
36785 void *argp2 = 0 ;
36786 int res2 = 0 ;
36787 PyObject *swig_obj[2] ;
36788 bool result;
36789 if (!SWIG_Python_UnpackTuple(args,"PositionIterator___ne__",2,2,swig_obj)) goto fail;
36790 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[37], 0 | 0, 0);
36791 if (!(res1 >= 0)) {
36792 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PositionIterator___ne__" "', argument " "1"" of type '" "Xapian::PositionIterator *""'"); goto fail; } while(0);
36793 }
36794 arg1 = reinterpret_cast< Xapian::PositionIterator * >(argp1);
36795 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[37], 0 | 0, 0);
36796 if (!(res2 >= 0)) {
36797 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "PositionIterator___ne__" "', argument " "2"" of type '" "Xapian::PositionIterator const &""'"); goto fail; } while(0);
36798 }
36799 if (!argp2) {
36800 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "PositionIterator___ne__" "', argument " "2"" of type '" "Xapian::PositionIterator const &""'"); goto fail; } while(0);
36801 }
36802 arg2 = reinterpret_cast< Xapian::PositionIterator * >(argp2);
36803 {
36804 SWIG_Python_Thread_Allow _swig_thread_allow;
36805 result = (bool)Xapian_PositionIterator___ne__(arg1,(Xapian::PositionIterator const &)*arg2);
36806 _swig_thread_allow.end();
36807 }
36808 resultobj = SWIG_From_bool(static_cast< bool >(result));
36809 return resultobj;
36810fail:
36811 return __null;
36812}
36813static __attribute__ ((__unused__)) PyObject *PositionIterator_swigregister(PyObject *, PyObject *args) {
36814 PyObject *obj;
36815 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
36816 SWIG_TypeNewClientData(swig_types[37], SwigPyClientData_New(obj));
36817 return SWIG_Py_Void();
36818}
36819static __attribute__ ((__unused__)) PyObject *PositionIterator_swiginit(PyObject *, PyObject *args) {
36820 return SWIG_Python_InitShadowInstance(args);
36821}
36822static __attribute__ ((__unused__)) PyObject *_wrap_new_PostingIterator__SWIG_0(PyObject *, int nobjs, PyObject **) {
36823 PyObject *resultobj = 0;
36824 Xapian::PostingIterator *result = 0 ;
36825 if ((nobjs < 0) || (nobjs > 0)) goto fail;
36826 {
36827 SWIG_Python_Thread_Allow _swig_thread_allow;
36828 {
36829 try {
36830 result = (Xapian::PostingIterator *)new Xapian::PostingIterator();
36831 } catch (...) {
36832 _swig_thread_allow.end();
36833 Xapian::SetPythonException();
36834 goto fail;
36835 }
36836 }
36837 _swig_thread_allow.end();
36838 }
36839 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[38], ((0x1 << 1) | 0x1) | 0);
36840 return resultobj;
36841fail:
36842 return __null;
36843}
36844static __attribute__ ((__unused__)) PyObject *_wrap_delete_PostingIterator(PyObject *, PyObject *args) {
36845 PyObject *resultobj = 0;
36846 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
36847 void *argp1 = 0 ;
36848 int res1 = 0 ;
36849 PyObject *swig_obj[1] ;
36850 if (!args) goto fail;
36851 swig_obj[0] = args;
36852 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0x1 | 0, 0);
36853 if (!(res1 >= 0)) {
36854 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_PostingIterator" "', argument " "1"" of type '" "Xapian::PostingIterator *""'"); goto fail; } while(0);
36855 }
36856 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
36857 {
36858 SWIG_Python_Thread_Allow _swig_thread_allow;
36859 {
36860 try {
36861 delete arg1;
36862 } catch (...) {
36863 _swig_thread_allow.end();
36864 Xapian::SetPythonException();
36865 goto fail;
36866 }
36867 }
36868 _swig_thread_allow.end();
36869 }
36870 resultobj = SWIG_Py_Void();
36871 return resultobj;
36872fail:
36873 return __null;
36874}
36875static __attribute__ ((__unused__)) PyObject *_wrap_new_PostingIterator__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
36876 PyObject *resultobj = 0;
36877 Xapian::PostingIterator *arg1 = 0 ;
36878 void *argp1 = 0 ;
36879 int res1 = 0 ;
36880 Xapian::PostingIterator *result = 0 ;
36881 if ((nobjs < 1) || (nobjs > 1)) goto fail;
36882 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
36883 if (!(res1 >= 0)) {
36884 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_PostingIterator" "', argument " "1"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
36885 }
36886 if (!argp1) {
36887 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_PostingIterator" "', argument " "1"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
36888 }
36889 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
36890 {
36891 SWIG_Python_Thread_Allow _swig_thread_allow;
36892 {
36893 try {
36894 result = (Xapian::PostingIterator *)new Xapian::PostingIterator((Xapian::PostingIterator const &)*arg1);
36895 } catch (...) {
36896 _swig_thread_allow.end();
36897 Xapian::SetPythonException();
36898 goto fail;
36899 }
36900 }
36901 _swig_thread_allow.end();
36902 }
36903 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[38], ((0x1 << 1) | 0x1) | 0);
36904 return resultobj;
36905fail:
36906 return __null;
36907}
36908static __attribute__ ((__unused__)) PyObject *_wrap_new_PostingIterator(PyObject *self, PyObject *args) {
36909 int argc;
36910 PyObject *argv[2];
36911 if (!(argc = SWIG_Python_UnpackTuple(args,"new_PostingIterator",0,1,argv))) goto fail;
36912 --argc;
36913 if (argc == 0) {
36914 return _wrap_new_PostingIterator__SWIG_0(self, argc, argv);
36915 }
36916 if (argc == 1) {
36917 return _wrap_new_PostingIterator__SWIG_1(self, argc, argv);
36918 }
36919fail:
36920 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_PostingIterator'.\n"
36921 " Possible C/C++ prototypes are:\n"
36922 " Xapian::PostingIterator()\n"
36923 " Xapian::PostingIterator(Xapian::PostingIterator const &)\n");
36924 return __null;
36925}
36926static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator_skip_to(PyObject *, PyObject *args) {
36927 PyObject *resultobj = 0;
36928 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
36929 Xapian::docid arg2 ;
36930 void *argp1 = 0 ;
36931 int res1 = 0 ;
36932 unsigned int val2 ;
36933 int ecode2 = 0 ;
36934 PyObject *swig_obj[2] ;
36935 if (!SWIG_Python_UnpackTuple(args,"PostingIterator_skip_to",2,2,swig_obj)) goto fail;
36936 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
36937 if (!(res1 >= 0)) {
36938 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator_skip_to" "', argument " "1"" of type '" "Xapian::PostingIterator *""'"); goto fail; } while(0);
36939 }
36940 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
36941 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
36942 if (!(ecode2 >= 0)) {
36943 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "PostingIterator_skip_to" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
36944 }
36945 arg2 = static_cast< Xapian::docid >(val2);
36946 {
36947 SWIG_Python_Thread_Allow _swig_thread_allow;
36948 {
36949 try {
36950 (arg1)->skip_to(arg2);
36951 } catch (...) {
36952 _swig_thread_allow.end();
36953 Xapian::SetPythonException();
36954 goto fail;
36955 }
36956 }
36957 _swig_thread_allow.end();
36958 }
36959 resultobj = SWIG_Py_Void();
36960 return resultobj;
36961fail:
36962 return __null;
36963}
36964static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator_get_doclength(PyObject *, PyObject *args) {
36965 PyObject *resultobj = 0;
36966 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
36967 void *argp1 = 0 ;
36968 int res1 = 0 ;
36969 PyObject *swig_obj[1] ;
36970 Xapian::termcount result;
36971 if (!args) goto fail;
36972 swig_obj[0] = args;
36973 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
36974 if (!(res1 >= 0)) {
36975 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator_get_doclength" "', argument " "1"" of type '" "Xapian::PostingIterator const *""'"); goto fail; } while(0);
36976 }
36977 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
36978 {
36979 SWIG_Python_Thread_Allow _swig_thread_allow;
36980 {
36981 try {
36982 result = (Xapian::termcount)((Xapian::PostingIterator const *)arg1)->get_doclength();
36983 } catch (...) {
36984 _swig_thread_allow.end();
36985 Xapian::SetPythonException();
36986 goto fail;
36987 }
36988 }
36989 _swig_thread_allow.end();
36990 }
36991 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
36992 return resultobj;
36993fail:
36994 return __null;
36995}
36996static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator_get_wdf(PyObject *, PyObject *args) {
36997 PyObject *resultobj = 0;
36998 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
36999 void *argp1 = 0 ;
37000 int res1 = 0 ;
37001 PyObject *swig_obj[1] ;
37002 Xapian::termcount result;
37003 if (!args) goto fail;
37004 swig_obj[0] = args;
37005 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37006 if (!(res1 >= 0)) {
37007 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator_get_wdf" "', argument " "1"" of type '" "Xapian::PostingIterator const *""'"); goto fail; } while(0);
37008 }
37009 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37010 {
37011 SWIG_Python_Thread_Allow _swig_thread_allow;
37012 {
37013 try {
37014 result = (Xapian::termcount)((Xapian::PostingIterator const *)arg1)->get_wdf();
37015 } catch (...) {
37016 _swig_thread_allow.end();
37017 Xapian::SetPythonException();
37018 goto fail;
37019 }
37020 }
37021 _swig_thread_allow.end();
37022 }
37023 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
37024 return resultobj;
37025fail:
37026 return __null;
37027}
37028static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator_positionlist_begin(PyObject *, PyObject *args) {
37029 PyObject *resultobj = 0;
37030 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
37031 void *argp1 = 0 ;
37032 int res1 = 0 ;
37033 PyObject *swig_obj[1] ;
37034 Xapian::PositionIterator result;
37035 if (!args) goto fail;
37036 swig_obj[0] = args;
37037 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37038 if (!(res1 >= 0)) {
37039 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator_positionlist_begin" "', argument " "1"" of type '" "Xapian::PostingIterator const *""'"); goto fail; } while(0);
37040 }
37041 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37042 {
37043 SWIG_Python_Thread_Allow _swig_thread_allow;
37044 {
37045 try {
37046 result = ((Xapian::PostingIterator const *)arg1)->positionlist_begin();
37047 } catch (...) {
37048 _swig_thread_allow.end();
37049 Xapian::SetPythonException();
37050 goto fail;
37051 }
37052 }
37053 _swig_thread_allow.end();
37054 }
37055 resultobj = SWIG_Python_NewPointerObj((new Xapian::PositionIterator(static_cast< const Xapian::PositionIterator& >(result))), swig_types[37], 0x1 | 0);
37056 return resultobj;
37057fail:
37058 return __null;
37059}
37060static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator_positionlist_end(PyObject *, PyObject *args) {
37061 PyObject *resultobj = 0;
37062 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
37063 void *argp1 = 0 ;
37064 int res1 = 0 ;
37065 PyObject *swig_obj[1] ;
37066 Xapian::PositionIterator result;
37067 if (!args) goto fail;
37068 swig_obj[0] = args;
37069 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37070 if (!(res1 >= 0)) {
37071 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator_positionlist_end" "', argument " "1"" of type '" "Xapian::PostingIterator const *""'"); goto fail; } while(0);
37072 }
37073 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37074 {
37075 SWIG_Python_Thread_Allow _swig_thread_allow;
37076 {
37077 try {
37078 result = ((Xapian::PostingIterator const *)arg1)->positionlist_end();
37079 } catch (...) {
37080 _swig_thread_allow.end();
37081 Xapian::SetPythonException();
37082 goto fail;
37083 }
37084 }
37085 _swig_thread_allow.end();
37086 }
37087 resultobj = SWIG_Python_NewPointerObj((new Xapian::PositionIterator(static_cast< const Xapian::PositionIterator& >(result))), swig_types[37], 0x1 | 0);
37088 return resultobj;
37089fail:
37090 return __null;
37091}
37092static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator___str__(PyObject *, PyObject *args) {
37093 PyObject *resultobj = 0;
37094 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
37095 void *argp1 = 0 ;
37096 int res1 = 0 ;
37097 PyObject *swig_obj[1] ;
37098 std::string result;
37099 if (!args) goto fail;
37100 swig_obj[0] = args;
37101 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37102 if (!(res1 >= 0)) {
37103 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator___str__" "', argument " "1"" of type '" "Xapian::PostingIterator const *""'"); goto fail; } while(0);
37104 }
37105 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37106 {
37107 SWIG_Python_Thread_Allow _swig_thread_allow;
37108 {
37109 try {
37110 result = ((Xapian::PostingIterator const *)arg1)->get_description();
37111 } catch (...) {
37112 _swig_thread_allow.end();
37113 Xapian::SetPythonException();
37114 goto fail;
37115 }
37116 }
37117 _swig_thread_allow.end();
37118 }
37119 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
37120 return resultobj;
37121fail:
37122 return __null;
37123}
37124static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator___eq__(PyObject *, PyObject *args) {
37125 PyObject *resultobj = 0;
37126 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
37127 Xapian::PostingIterator *arg2 = 0 ;
37128 void *argp1 = 0 ;
37129 int res1 = 0 ;
37130 void *argp2 = 0 ;
37131 int res2 = 0 ;
37132 PyObject *swig_obj[2] ;
37133 bool result;
37134 if (!SWIG_Python_UnpackTuple(args,"PostingIterator___eq__",2,2,swig_obj)) goto fail;
37135 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37136 if (!(res1 >= 0)) {
37137 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator___eq__" "', argument " "1"" of type '" "Xapian::PostingIterator *""'"); goto fail; } while(0);
37138 }
37139 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37140 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[38], 0 | 0, 0);
37141 if (!(res2 >= 0)) {
37142 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "PostingIterator___eq__" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37143 }
37144 if (!argp2) {
37145 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "PostingIterator___eq__" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37146 }
37147 arg2 = reinterpret_cast< Xapian::PostingIterator * >(argp2);
37148 {
37149 SWIG_Python_Thread_Allow _swig_thread_allow;
37150 result = (bool)Xapian_PostingIterator___eq__(arg1,(Xapian::PostingIterator const &)*arg2);
37151 _swig_thread_allow.end();
37152 }
37153 resultobj = SWIG_From_bool(static_cast< bool >(result));
37154 return resultobj;
37155fail:
37156 return __null;
37157}
37158static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator___ne__(PyObject *, PyObject *args) {
37159 PyObject *resultobj = 0;
37160 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
37161 Xapian::PostingIterator *arg2 = 0 ;
37162 void *argp1 = 0 ;
37163 int res1 = 0 ;
37164 void *argp2 = 0 ;
37165 int res2 = 0 ;
37166 PyObject *swig_obj[2] ;
37167 bool result;
37168 if (!SWIG_Python_UnpackTuple(args,"PostingIterator___ne__",2,2,swig_obj)) goto fail;
37169 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37170 if (!(res1 >= 0)) {
37171 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator___ne__" "', argument " "1"" of type '" "Xapian::PostingIterator *""'"); goto fail; } while(0);
37172 }
37173 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37174 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[38], 0 | 0, 0);
37175 if (!(res2 >= 0)) {
37176 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "PostingIterator___ne__" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37177 }
37178 if (!argp2) {
37179 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "PostingIterator___ne__" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37180 }
37181 arg2 = reinterpret_cast< Xapian::PostingIterator * >(argp2);
37182 {
37183 SWIG_Python_Thread_Allow _swig_thread_allow;
37184 result = (bool)Xapian_PostingIterator___ne__(arg1,(Xapian::PostingIterator const &)*arg2);
37185 _swig_thread_allow.end();
37186 }
37187 resultobj = SWIG_From_bool(static_cast< bool >(result));
37188 return resultobj;
37189fail:
37190 return __null;
37191}
37192static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator_get_docid(PyObject *, PyObject *args) {
37193 PyObject *resultobj = 0;
37194 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
37195 void *argp1 = 0 ;
37196 int res1 = 0 ;
37197 PyObject *swig_obj[1] ;
37198 Xapian::docid result;
37199 if (!args) goto fail;
37200 swig_obj[0] = args;
37201 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37202 if (!(res1 >= 0)) {
37203 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator_get_docid" "', argument " "1"" of type '" "Xapian::PostingIterator const *""'"); goto fail; } while(0);
37204 }
37205 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37206 {
37207 SWIG_Python_Thread_Allow _swig_thread_allow;
37208 {
37209 try {
37210 result = (Xapian::docid)Xapian_PostingIterator_get_docid((Xapian::PostingIterator const *)arg1);
37211 } catch (...) {
37212 _swig_thread_allow.end();
37213 Xapian::SetPythonException();
37214 goto fail;
37215 }
37216 }
37217 _swig_thread_allow.end();
37218 }
37219 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
37220 return resultobj;
37221fail:
37222 return __null;
37223}
37224static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator_next(PyObject *, PyObject *args) {
37225 PyObject *resultobj = 0;
37226 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
37227 void *argp1 = 0 ;
37228 int res1 = 0 ;
37229 PyObject *swig_obj[1] ;
37230 if (!args) goto fail;
37231 swig_obj[0] = args;
37232 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37233 if (!(res1 >= 0)) {
37234 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator_next" "', argument " "1"" of type '" "Xapian::PostingIterator *""'"); goto fail; } while(0);
37235 }
37236 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37237 {
37238 SWIG_Python_Thread_Allow _swig_thread_allow;
37239 {
37240 try {
37241 Xapian_PostingIterator_next(arg1);
37242 } catch (...) {
37243 _swig_thread_allow.end();
37244 Xapian::SetPythonException();
37245 goto fail;
37246 }
37247 }
37248 _swig_thread_allow.end();
37249 }
37250 resultobj = SWIG_Py_Void();
37251 return resultobj;
37252fail:
37253 return __null;
37254}
37255static __attribute__ ((__unused__)) PyObject *_wrap_PostingIterator_equals(PyObject *, PyObject *args) {
37256 PyObject *resultobj = 0;
37257 Xapian::PostingIterator *arg1 = (Xapian::PostingIterator *) 0 ;
37258 Xapian::PostingIterator *arg2 = 0 ;
37259 void *argp1 = 0 ;
37260 int res1 = 0 ;
37261 void *argp2 = 0 ;
37262 int res2 = 0 ;
37263 PyObject *swig_obj[2] ;
37264 bool result;
37265 if (!SWIG_Python_UnpackTuple(args,"PostingIterator_equals",2,2,swig_obj)) goto fail;
37266 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37267 if (!(res1 >= 0)) {
37268 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingIterator_equals" "', argument " "1"" of type '" "Xapian::PostingIterator const *""'"); goto fail; } while(0);
37269 }
37270 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37271 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[38], 0 | 0, 0);
37272 if (!(res2 >= 0)) {
37273 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "PostingIterator_equals" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37274 }
37275 if (!argp2) {
37276 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "PostingIterator_equals" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37277 }
37278 arg2 = reinterpret_cast< Xapian::PostingIterator * >(argp2);
37279 {
37280 SWIG_Python_Thread_Allow _swig_thread_allow;
37281 {
37282 try {
37283 result = (bool)Xapian_PostingIterator_equals((Xapian::PostingIterator const *)arg1,(Xapian::PostingIterator const &)*arg2);
37284 } catch (...) {
37285 _swig_thread_allow.end();
37286 Xapian::SetPythonException();
37287 goto fail;
37288 }
37289 }
37290 _swig_thread_allow.end();
37291 }
37292 resultobj = SWIG_From_bool(static_cast< bool >(result));
37293 return resultobj;
37294fail:
37295 return __null;
37296}
37297static __attribute__ ((__unused__)) PyObject *PostingIterator_swigregister(PyObject *, PyObject *args) {
37298 PyObject *obj;
37299 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
37300 SWIG_TypeNewClientData(swig_types[38], SwigPyClientData_New(obj));
37301 return SWIG_Py_Void();
37302}
37303static __attribute__ ((__unused__)) PyObject *PostingIterator_swiginit(PyObject *, PyObject *args) {
37304 return SWIG_Python_InitShadowInstance(args);
37305}
37306static __attribute__ ((__unused__)) PyObject *_wrap___eq__(PyObject *, PyObject *args) {
37307 PyObject *resultobj = 0;
37308 Xapian::PostingIterator *arg1 = 0 ;
37309 Xapian::PostingIterator *arg2 = 0 ;
37310 void *argp1 = 0 ;
37311 int res1 = 0 ;
37312 void *argp2 = 0 ;
37313 int res2 = 0 ;
37314 PyObject *swig_obj[2] ;
37315 bool result;
37316 if (!SWIG_Python_UnpackTuple(args,"__eq__",2,2,swig_obj)) goto fail;
37317 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37318 if (!(res1 >= 0)) {
37319 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "__eq__" "', argument " "1"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37320 }
37321 if (!argp1) {
37322 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "__eq__" "', argument " "1"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37323 }
37324 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37325 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[38], 0 | 0, 0);
37326 if (!(res2 >= 0)) {
37327 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "__eq__" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37328 }
37329 if (!argp2) {
37330 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "__eq__" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37331 }
37332 arg2 = reinterpret_cast< Xapian::PostingIterator * >(argp2);
37333 {
37334 SWIG_Python_Thread_Allow _swig_thread_allow;
37335 {
37336 try {
37337 result = (bool)Xapian::operator ==((Xapian::PostingIterator const &)*arg1,(Xapian::PostingIterator const &)*arg2);
37338 } catch (...) {
37339 _swig_thread_allow.end();
37340 Xapian::SetPythonException();
37341 goto fail;
37342 }
37343 }
37344 _swig_thread_allow.end();
37345 }
37346 resultobj = SWIG_From_bool(static_cast< bool >(result));
37347 return resultobj;
37348fail:
37349 return __null;
37350}
37351static __attribute__ ((__unused__)) PyObject *_wrap___ne__(PyObject *, PyObject *args) {
37352 PyObject *resultobj = 0;
37353 Xapian::PostingIterator *arg1 = 0 ;
37354 Xapian::PostingIterator *arg2 = 0 ;
37355 void *argp1 = 0 ;
37356 int res1 = 0 ;
37357 void *argp2 = 0 ;
37358 int res2 = 0 ;
37359 PyObject *swig_obj[2] ;
37360 bool result;
37361 if (!SWIG_Python_UnpackTuple(args,"__ne__",2,2,swig_obj)) goto fail;
37362 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[38], 0 | 0, 0);
37363 if (!(res1 >= 0)) {
37364 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "__ne__" "', argument " "1"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37365 }
37366 if (!argp1) {
37367 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "__ne__" "', argument " "1"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37368 }
37369 arg1 = reinterpret_cast< Xapian::PostingIterator * >(argp1);
37370 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[38], 0 | 0, 0);
37371 if (!(res2 >= 0)) {
37372 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "__ne__" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37373 }
37374 if (!argp2) {
37375 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "__ne__" "', argument " "2"" of type '" "Xapian::PostingIterator const &""'"); goto fail; } while(0);
37376 }
37377 arg2 = reinterpret_cast< Xapian::PostingIterator * >(argp2);
37378 {
37379 SWIG_Python_Thread_Allow _swig_thread_allow;
37380 {
37381 try {
37382 result = (bool)Xapian::operator !=((Xapian::PostingIterator const &)*arg1,(Xapian::PostingIterator const &)*arg2);
37383 } catch (...) {
37384 _swig_thread_allow.end();
37385 Xapian::SetPythonException();
37386 goto fail;
37387 }
37388 }
37389 _swig_thread_allow.end();
37390 }
37391 resultobj = SWIG_From_bool(static_cast< bool >(result));
37392 return resultobj;
37393fail:
37394 return __null;
37395}
37396static __attribute__ ((__unused__)) PyObject *_wrap_new_TermIterator__SWIG_0(PyObject *, int nobjs, PyObject **) {
37397 PyObject *resultobj = 0;
37398 Xapian::TermIterator *result = 0 ;
37399 if ((nobjs < 0) || (nobjs > 0)) goto fail;
37400 {
37401 SWIG_Python_Thread_Allow _swig_thread_allow;
37402 {
37403 try {
37404 result = (Xapian::TermIterator *)new Xapian::TermIterator();
37405 } catch (...) {
37406 _swig_thread_allow.end();
37407 Xapian::SetPythonException();
37408 goto fail;
37409 }
37410 }
37411 _swig_thread_allow.end();
37412 }
37413 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[55], ((0x1 << 1) | 0x1) | 0);
37414 return resultobj;
37415fail:
37416 return __null;
37417}
37418static __attribute__ ((__unused__)) PyObject *_wrap_new_TermIterator__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
37419 PyObject *resultobj = 0;
37420 Xapian::TermIterator *arg1 = 0 ;
37421 void *argp1 = 0 ;
37422 int res1 = 0 ;
37423 Xapian::TermIterator *result = 0 ;
37424 if ((nobjs < 1) || (nobjs > 1)) goto fail;
37425 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37426 if (!(res1 >= 0)) {
37427 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_TermIterator" "', argument " "1"" of type '" "Xapian::TermIterator const &""'"); goto fail; } while(0);
37428 }
37429 if (!argp1) {
37430 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_TermIterator" "', argument " "1"" of type '" "Xapian::TermIterator const &""'"); goto fail; } while(0);
37431 }
37432 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37433 {
37434 SWIG_Python_Thread_Allow _swig_thread_allow;
37435 {
37436 try {
37437 result = (Xapian::TermIterator *)new Xapian::TermIterator((Xapian::TermIterator const &)*arg1);
37438 } catch (...) {
37439 _swig_thread_allow.end();
37440 Xapian::SetPythonException();
37441 goto fail;
37442 }
37443 }
37444 _swig_thread_allow.end();
37445 }
37446 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[55], ((0x1 << 1) | 0x1) | 0);
37447 return resultobj;
37448fail:
37449 return __null;
37450}
37451static __attribute__ ((__unused__)) PyObject *_wrap_new_TermIterator(PyObject *self, PyObject *args) {
37452 int argc;
37453 PyObject *argv[2];
37454 if (!(argc = SWIG_Python_UnpackTuple(args,"new_TermIterator",0,1,argv))) goto fail;
37455 --argc;
37456 if (argc == 0) {
37457 return _wrap_new_TermIterator__SWIG_0(self, argc, argv);
37458 }
37459 if (argc == 1) {
37460 return _wrap_new_TermIterator__SWIG_1(self, argc, argv);
37461 }
37462fail:
37463 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_TermIterator'.\n"
37464 " Possible C/C++ prototypes are:\n"
37465 " Xapian::TermIterator()\n"
37466 " Xapian::TermIterator(Xapian::TermIterator const &)\n");
37467 return __null;
37468}
37469static __attribute__ ((__unused__)) PyObject *_wrap_delete_TermIterator(PyObject *, PyObject *args) {
37470 PyObject *resultobj = 0;
37471 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37472 void *argp1 = 0 ;
37473 int res1 = 0 ;
37474 PyObject *swig_obj[1] ;
37475 if (!args) goto fail;
37476 swig_obj[0] = args;
37477 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0x1 | 0, 0);
37478 if (!(res1 >= 0)) {
37479 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_TermIterator" "', argument " "1"" of type '" "Xapian::TermIterator *""'"); goto fail; } while(0);
37480 }
37481 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37482 {
37483 SWIG_Python_Thread_Allow _swig_thread_allow;
37484 {
37485 try {
37486 delete arg1;
37487 } catch (...) {
37488 _swig_thread_allow.end();
37489 Xapian::SetPythonException();
37490 goto fail;
37491 }
37492 }
37493 _swig_thread_allow.end();
37494 }
37495 resultobj = SWIG_Py_Void();
37496 return resultobj;
37497fail:
37498 return __null;
37499}
37500static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator_get_term(PyObject *, PyObject *args) {
37501 PyObject *resultobj = 0;
37502 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37503 void *argp1 = 0 ;
37504 int res1 = 0 ;
37505 PyObject *swig_obj[1] ;
37506 std::string result;
37507 if (!args) goto fail;
37508 swig_obj[0] = args;
37509 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37510 if (!(res1 >= 0)) {
37511 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator_get_term" "', argument " "1"" of type '" "Xapian::TermIterator const *""'"); goto fail; } while(0);
37512 }
37513 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37514 {
37515 SWIG_Python_Thread_Allow _swig_thread_allow;
37516 {
37517 try {
37518 result = Xapian_TermIterator_get_term((Xapian::TermIterator const *)arg1);
37519 } catch (...) {
37520 _swig_thread_allow.end();
37521 Xapian::SetPythonException();
37522 goto fail;
37523 }
37524 }
37525 _swig_thread_allow.end();
37526 }
37527 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
37528 return resultobj;
37529fail:
37530 return __null;
37531}
37532static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator_next(PyObject *, PyObject *args) {
37533 PyObject *resultobj = 0;
37534 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37535 void *argp1 = 0 ;
37536 int res1 = 0 ;
37537 PyObject *swig_obj[1] ;
37538 if (!args) goto fail;
37539 swig_obj[0] = args;
37540 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37541 if (!(res1 >= 0)) {
37542 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator_next" "', argument " "1"" of type '" "Xapian::TermIterator *""'"); goto fail; } while(0);
37543 }
37544 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37545 {
37546 SWIG_Python_Thread_Allow _swig_thread_allow;
37547 {
37548 try {
37549 Xapian_TermIterator_next(arg1);
37550 } catch (...) {
37551 _swig_thread_allow.end();
37552 Xapian::SetPythonException();
37553 goto fail;
37554 }
37555 }
37556 _swig_thread_allow.end();
37557 }
37558 resultobj = SWIG_Py_Void();
37559 return resultobj;
37560fail:
37561 return __null;
37562}
37563static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator_equals(PyObject *, PyObject *args) {
37564 PyObject *resultobj = 0;
37565 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37566 Xapian::TermIterator *arg2 = 0 ;
37567 void *argp1 = 0 ;
37568 int res1 = 0 ;
37569 void *argp2 = 0 ;
37570 int res2 = 0 ;
37571 PyObject *swig_obj[2] ;
37572 bool result;
37573 if (!SWIG_Python_UnpackTuple(args,"TermIterator_equals",2,2,swig_obj)) goto fail;
37574 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37575 if (!(res1 >= 0)) {
37576 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator_equals" "', argument " "1"" of type '" "Xapian::TermIterator const *""'"); goto fail; } while(0);
37577 }
37578 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37579 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[55], 0 | 0, 0);
37580 if (!(res2 >= 0)) {
37581 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermIterator_equals" "', argument " "2"" of type '" "Xapian::TermIterator const &""'"); goto fail; } while(0);
37582 }
37583 if (!argp2) {
37584 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermIterator_equals" "', argument " "2"" of type '" "Xapian::TermIterator const &""'"); goto fail; } while(0);
37585 }
37586 arg2 = reinterpret_cast< Xapian::TermIterator * >(argp2);
37587 {
37588 SWIG_Python_Thread_Allow _swig_thread_allow;
37589 {
37590 try {
37591 result = (bool)Xapian_TermIterator_equals((Xapian::TermIterator const *)arg1,(Xapian::TermIterator const &)*arg2);
37592 } catch (...) {
37593 _swig_thread_allow.end();
37594 Xapian::SetPythonException();
37595 goto fail;
37596 }
37597 }
37598 _swig_thread_allow.end();
37599 }
37600 resultobj = SWIG_From_bool(static_cast< bool >(result));
37601 return resultobj;
37602fail:
37603 return __null;
37604}
37605static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator_skip_to(PyObject *, PyObject *args) {
37606 PyObject *resultobj = 0;
37607 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37608 std::string *arg2 = 0 ;
37609 void *argp1 = 0 ;
37610 int res1 = 0 ;
37611 int res2 = ((0)) ;
37612 PyObject *swig_obj[2] ;
37613 if (!SWIG_Python_UnpackTuple(args,"TermIterator_skip_to",2,2,swig_obj)) goto fail;
37614 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37615 if (!(res1 >= 0)) {
37616 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator_skip_to" "', argument " "1"" of type '" "Xapian::TermIterator *""'"); goto fail; } while(0);
37617 }
37618 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37619 {
37620 std::string *ptr = (std::string *)0;
37621 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
37622 if (!(res2 >= 0)) {
37623 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermIterator_skip_to" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
37624 }
37625 if (!ptr) {
37626 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermIterator_skip_to" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
37627 }
37628 arg2 = ptr;
37629 }
37630 {
37631 SWIG_Python_Thread_Allow _swig_thread_allow;
37632 {
37633 try {
37634 (arg1)->skip_to((std::string const &)*arg2);
37635 } catch (...) {
37636 _swig_thread_allow.end();
37637 Xapian::SetPythonException();
37638 goto fail;
37639 }
37640 }
37641 _swig_thread_allow.end();
37642 }
37643 resultobj = SWIG_Py_Void();
37644 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
37645 return resultobj;
37646fail:
37647 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
37648 return __null;
37649}
37650static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator_get_wdf(PyObject *, PyObject *args) {
37651 PyObject *resultobj = 0;
37652 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37653 void *argp1 = 0 ;
37654 int res1 = 0 ;
37655 PyObject *swig_obj[1] ;
37656 Xapian::termcount result;
37657 if (!args) goto fail;
37658 swig_obj[0] = args;
37659 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37660 if (!(res1 >= 0)) {
37661 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator_get_wdf" "', argument " "1"" of type '" "Xapian::TermIterator const *""'"); goto fail; } while(0);
37662 }
37663 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37664 {
37665 SWIG_Python_Thread_Allow _swig_thread_allow;
37666 {
37667 try {
37668 result = (Xapian::termcount)((Xapian::TermIterator const *)arg1)->get_wdf();
37669 } catch (...) {
37670 _swig_thread_allow.end();
37671 Xapian::SetPythonException();
37672 goto fail;
37673 }
37674 }
37675 _swig_thread_allow.end();
37676 }
37677 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
37678 return resultobj;
37679fail:
37680 return __null;
37681}
37682static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator_get_termfreq(PyObject *, PyObject *args) {
37683 PyObject *resultobj = 0;
37684 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37685 void *argp1 = 0 ;
37686 int res1 = 0 ;
37687 PyObject *swig_obj[1] ;
37688 Xapian::doccount result;
37689 if (!args) goto fail;
37690 swig_obj[0] = args;
37691 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37692 if (!(res1 >= 0)) {
37693 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator_get_termfreq" "', argument " "1"" of type '" "Xapian::TermIterator const *""'"); goto fail; } while(0);
37694 }
37695 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37696 {
37697 SWIG_Python_Thread_Allow _swig_thread_allow;
37698 {
37699 try {
37700 result = (Xapian::doccount)((Xapian::TermIterator const *)arg1)->get_termfreq();
37701 } catch (...) {
37702 _swig_thread_allow.end();
37703 Xapian::SetPythonException();
37704 goto fail;
37705 }
37706 }
37707 _swig_thread_allow.end();
37708 }
37709 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
37710 return resultobj;
37711fail:
37712 return __null;
37713}
37714static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator_positionlist_begin(PyObject *, PyObject *args) {
37715 PyObject *resultobj = 0;
37716 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37717 void *argp1 = 0 ;
37718 int res1 = 0 ;
37719 PyObject *swig_obj[1] ;
37720 Xapian::PositionIterator result;
37721 if (!args) goto fail;
37722 swig_obj[0] = args;
37723 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37724 if (!(res1 >= 0)) {
37725 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator_positionlist_begin" "', argument " "1"" of type '" "Xapian::TermIterator *""'"); goto fail; } while(0);
37726 }
37727 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37728 {
37729 SWIG_Python_Thread_Allow _swig_thread_allow;
37730 {
37731 try {
37732 result = (arg1)->positionlist_begin();
37733 } catch (...) {
37734 _swig_thread_allow.end();
37735 Xapian::SetPythonException();
37736 goto fail;
37737 }
37738 }
37739 _swig_thread_allow.end();
37740 }
37741 resultobj = SWIG_Python_NewPointerObj((new Xapian::PositionIterator(static_cast< const Xapian::PositionIterator& >(result))), swig_types[37], 0x1 | 0);
37742 return resultobj;
37743fail:
37744 return __null;
37745}
37746static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator_positionlist_end(PyObject *, PyObject *args) {
37747 PyObject *resultobj = 0;
37748 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37749 void *argp1 = 0 ;
37750 int res1 = 0 ;
37751 PyObject *swig_obj[1] ;
37752 Xapian::PositionIterator result;
37753 if (!args) goto fail;
37754 swig_obj[0] = args;
37755 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37756 if (!(res1 >= 0)) {
37757 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator_positionlist_end" "', argument " "1"" of type '" "Xapian::TermIterator *""'"); goto fail; } while(0);
37758 }
37759 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37760 {
37761 SWIG_Python_Thread_Allow _swig_thread_allow;
37762 {
37763 try {
37764 result = (arg1)->positionlist_end();
37765 } catch (...) {
37766 _swig_thread_allow.end();
37767 Xapian::SetPythonException();
37768 goto fail;
37769 }
37770 }
37771 _swig_thread_allow.end();
37772 }
37773 resultobj = SWIG_Python_NewPointerObj((new Xapian::PositionIterator(static_cast< const Xapian::PositionIterator& >(result))), swig_types[37], 0x1 | 0);
37774 return resultobj;
37775fail:
37776 return __null;
37777}
37778static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator___str__(PyObject *, PyObject *args) {
37779 PyObject *resultobj = 0;
37780 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37781 void *argp1 = 0 ;
37782 int res1 = 0 ;
37783 PyObject *swig_obj[1] ;
37784 std::string result;
37785 if (!args) goto fail;
37786 swig_obj[0] = args;
37787 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37788 if (!(res1 >= 0)) {
37789 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator___str__" "', argument " "1"" of type '" "Xapian::TermIterator const *""'"); goto fail; } while(0);
37790 }
37791 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37792 {
37793 SWIG_Python_Thread_Allow _swig_thread_allow;
37794 {
37795 try {
37796 result = ((Xapian::TermIterator const *)arg1)->get_description();
37797 } catch (...) {
37798 _swig_thread_allow.end();
37799 Xapian::SetPythonException();
37800 goto fail;
37801 }
37802 }
37803 _swig_thread_allow.end();
37804 }
37805 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
37806 return resultobj;
37807fail:
37808 return __null;
37809}
37810static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator___eq__(PyObject *, PyObject *args) {
37811 PyObject *resultobj = 0;
37812 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37813 Xapian::TermIterator *arg2 = 0 ;
37814 void *argp1 = 0 ;
37815 int res1 = 0 ;
37816 void *argp2 = 0 ;
37817 int res2 = 0 ;
37818 PyObject *swig_obj[2] ;
37819 bool result;
37820 if (!SWIG_Python_UnpackTuple(args,"TermIterator___eq__",2,2,swig_obj)) goto fail;
37821 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37822 if (!(res1 >= 0)) {
37823 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator___eq__" "', argument " "1"" of type '" "Xapian::TermIterator *""'"); goto fail; } while(0);
37824 }
37825 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37826 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[55], 0 | 0, 0);
37827 if (!(res2 >= 0)) {
37828 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermIterator___eq__" "', argument " "2"" of type '" "Xapian::TermIterator const &""'"); goto fail; } while(0);
37829 }
37830 if (!argp2) {
37831 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermIterator___eq__" "', argument " "2"" of type '" "Xapian::TermIterator const &""'"); goto fail; } while(0);
37832 }
37833 arg2 = reinterpret_cast< Xapian::TermIterator * >(argp2);
37834 {
37835 SWIG_Python_Thread_Allow _swig_thread_allow;
37836 result = (bool)Xapian_TermIterator___eq__(arg1,(Xapian::TermIterator const &)*arg2);
37837 _swig_thread_allow.end();
37838 }
37839 resultobj = SWIG_From_bool(static_cast< bool >(result));
37840 return resultobj;
37841fail:
37842 return __null;
37843}
37844static __attribute__ ((__unused__)) PyObject *_wrap_TermIterator___ne__(PyObject *, PyObject *args) {
37845 PyObject *resultobj = 0;
37846 Xapian::TermIterator *arg1 = (Xapian::TermIterator *) 0 ;
37847 Xapian::TermIterator *arg2 = 0 ;
37848 void *argp1 = 0 ;
37849 int res1 = 0 ;
37850 void *argp2 = 0 ;
37851 int res2 = 0 ;
37852 PyObject *swig_obj[2] ;
37853 bool result;
37854 if (!SWIG_Python_UnpackTuple(args,"TermIterator___ne__",2,2,swig_obj)) goto fail;
37855 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[55], 0 | 0, 0);
37856 if (!(res1 >= 0)) {
37857 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermIterator___ne__" "', argument " "1"" of type '" "Xapian::TermIterator *""'"); goto fail; } while(0);
37858 }
37859 arg1 = reinterpret_cast< Xapian::TermIterator * >(argp1);
37860 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[55], 0 | 0, 0);
37861 if (!(res2 >= 0)) {
37862 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermIterator___ne__" "', argument " "2"" of type '" "Xapian::TermIterator const &""'"); goto fail; } while(0);
37863 }
37864 if (!argp2) {
37865 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermIterator___ne__" "', argument " "2"" of type '" "Xapian::TermIterator const &""'"); goto fail; } while(0);
37866 }
37867 arg2 = reinterpret_cast< Xapian::TermIterator * >(argp2);
37868 {
37869 SWIG_Python_Thread_Allow _swig_thread_allow;
37870 result = (bool)Xapian_TermIterator___ne__(arg1,(Xapian::TermIterator const &)*arg2);
37871 _swig_thread_allow.end();
37872 }
37873 resultobj = SWIG_From_bool(static_cast< bool >(result));
37874 return resultobj;
37875fail:
37876 return __null;
37877}
37878static __attribute__ ((__unused__)) PyObject *TermIterator_swigregister(PyObject *, PyObject *args) {
37879 PyObject *obj;
37880 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
37881 SWIG_TypeNewClientData(swig_types[55], SwigPyClientData_New(obj));
37882 return SWIG_Py_Void();
37883}
37884static __attribute__ ((__unused__)) PyObject *TermIterator_swiginit(PyObject *, PyObject *args) {
37885 return SWIG_Python_InitShadowInstance(args);
37886}
37887static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueIterator__SWIG_0(PyObject *, int nobjs, PyObject **) {
37888 PyObject *resultobj = 0;
37889 Xapian::ValueIterator *result = 0 ;
37890 if ((nobjs < 0) || (nobjs > 0)) goto fail;
37891 {
37892 SWIG_Python_Thread_Allow _swig_thread_allow;
37893 {
37894 try {
37895 result = (Xapian::ValueIterator *)new Xapian::ValueIterator();
37896 } catch (...) {
37897 _swig_thread_allow.end();
37898 Xapian::SetPythonException();
37899 goto fail;
37900 }
37901 }
37902 _swig_thread_allow.end();
37903 }
37904 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[59], ((0x1 << 1) | 0x1) | 0);
37905 return resultobj;
37906fail:
37907 return __null;
37908}
37909static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueIterator__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
37910 PyObject *resultobj = 0;
37911 Xapian::ValueIterator *arg1 = 0 ;
37912 void *argp1 = 0 ;
37913 int res1 = 0 ;
37914 Xapian::ValueIterator *result = 0 ;
37915 if ((nobjs < 1) || (nobjs > 1)) goto fail;
37916 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
37917 if (!(res1 >= 0)) {
37918 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_ValueIterator" "', argument " "1"" of type '" "Xapian::ValueIterator const &""'"); goto fail; } while(0);
37919 }
37920 if (!argp1) {
37921 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_ValueIterator" "', argument " "1"" of type '" "Xapian::ValueIterator const &""'"); goto fail; } while(0);
37922 }
37923 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
37924 {
37925 SWIG_Python_Thread_Allow _swig_thread_allow;
37926 {
37927 try {
37928 result = (Xapian::ValueIterator *)new Xapian::ValueIterator((Xapian::ValueIterator const &)*arg1);
37929 } catch (...) {
37930 _swig_thread_allow.end();
37931 Xapian::SetPythonException();
37932 goto fail;
37933 }
37934 }
37935 _swig_thread_allow.end();
37936 }
37937 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[59], ((0x1 << 1) | 0x1) | 0);
37938 return resultobj;
37939fail:
37940 return __null;
37941}
37942static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueIterator(PyObject *self, PyObject *args) {
37943 int argc;
37944 PyObject *argv[2];
37945 if (!(argc = SWIG_Python_UnpackTuple(args,"new_ValueIterator",0,1,argv))) goto fail;
37946 --argc;
37947 if (argc == 0) {
37948 return _wrap_new_ValueIterator__SWIG_0(self, argc, argv);
37949 }
37950 if (argc == 1) {
37951 return _wrap_new_ValueIterator__SWIG_1(self, argc, argv);
37952 }
37953fail:
37954 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_ValueIterator'.\n"
37955 " Possible C/C++ prototypes are:\n"
37956 " Xapian::ValueIterator()\n"
37957 " Xapian::ValueIterator(Xapian::ValueIterator const &)\n");
37958 return __null;
37959}
37960static __attribute__ ((__unused__)) PyObject *_wrap_delete_ValueIterator(PyObject *, PyObject *args) {
37961 PyObject *resultobj = 0;
37962 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
37963 void *argp1 = 0 ;
37964 int res1 = 0 ;
37965 PyObject *swig_obj[1] ;
37966 if (!args) goto fail;
37967 swig_obj[0] = args;
37968 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0x1 | 0, 0);
37969 if (!(res1 >= 0)) {
37970 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ValueIterator" "', argument " "1"" of type '" "Xapian::ValueIterator *""'"); goto fail; } while(0);
37971 }
37972 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
37973 {
37974 SWIG_Python_Thread_Allow _swig_thread_allow;
37975 {
37976 try {
37977 delete arg1;
37978 } catch (...) {
37979 _swig_thread_allow.end();
37980 Xapian::SetPythonException();
37981 goto fail;
37982 }
37983 }
37984 _swig_thread_allow.end();
37985 }
37986 resultobj = SWIG_Py_Void();
37987 return resultobj;
37988fail:
37989 return __null;
37990}
37991static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator_get_value(PyObject *, PyObject *args) {
37992 PyObject *resultobj = 0;
37993 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
37994 void *argp1 = 0 ;
37995 int res1 = 0 ;
37996 PyObject *swig_obj[1] ;
37997 std::string result;
37998 if (!args) goto fail;
37999 swig_obj[0] = args;
38000 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38001 if (!(res1 >= 0)) {
38002 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator_get_value" "', argument " "1"" of type '" "Xapian::ValueIterator const *""'"); goto fail; } while(0);
38003 }
38004 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38005 {
38006 SWIG_Python_Thread_Allow _swig_thread_allow;
38007 {
38008 try {
38009 result = Xapian_ValueIterator_get_value((Xapian::ValueIterator const *)arg1);
38010 } catch (...) {
38011 _swig_thread_allow.end();
38012 Xapian::SetPythonException();
38013 goto fail;
38014 }
38015 }
38016 _swig_thread_allow.end();
38017 }
38018 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
38019 return resultobj;
38020fail:
38021 return __null;
38022}
38023static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator_next(PyObject *, PyObject *args) {
38024 PyObject *resultobj = 0;
38025 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
38026 void *argp1 = 0 ;
38027 int res1 = 0 ;
38028 PyObject *swig_obj[1] ;
38029 if (!args) goto fail;
38030 swig_obj[0] = args;
38031 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38032 if (!(res1 >= 0)) {
38033 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator_next" "', argument " "1"" of type '" "Xapian::ValueIterator *""'"); goto fail; } while(0);
38034 }
38035 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38036 {
38037 SWIG_Python_Thread_Allow _swig_thread_allow;
38038 {
38039 try {
38040 Xapian_ValueIterator_next(arg1);
38041 } catch (...) {
38042 _swig_thread_allow.end();
38043 Xapian::SetPythonException();
38044 goto fail;
38045 }
38046 }
38047 _swig_thread_allow.end();
38048 }
38049 resultobj = SWIG_Py_Void();
38050 return resultobj;
38051fail:
38052 return __null;
38053}
38054static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator_equals(PyObject *, PyObject *args) {
38055 PyObject *resultobj = 0;
38056 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
38057 Xapian::ValueIterator *arg2 = 0 ;
38058 void *argp1 = 0 ;
38059 int res1 = 0 ;
38060 void *argp2 = 0 ;
38061 int res2 = 0 ;
38062 PyObject *swig_obj[2] ;
38063 bool result;
38064 if (!SWIG_Python_UnpackTuple(args,"ValueIterator_equals",2,2,swig_obj)) goto fail;
38065 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38066 if (!(res1 >= 0)) {
38067 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator_equals" "', argument " "1"" of type '" "Xapian::ValueIterator const *""'"); goto fail; } while(0);
38068 }
38069 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38070 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[59], 0 | 0, 0);
38071 if (!(res2 >= 0)) {
38072 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ValueIterator_equals" "', argument " "2"" of type '" "Xapian::ValueIterator const &""'"); goto fail; } while(0);
38073 }
38074 if (!argp2) {
38075 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ValueIterator_equals" "', argument " "2"" of type '" "Xapian::ValueIterator const &""'"); goto fail; } while(0);
38076 }
38077 arg2 = reinterpret_cast< Xapian::ValueIterator * >(argp2);
38078 {
38079 SWIG_Python_Thread_Allow _swig_thread_allow;
38080 {
38081 try {
38082 result = (bool)Xapian_ValueIterator_equals((Xapian::ValueIterator const *)arg1,(Xapian::ValueIterator const &)*arg2);
38083 } catch (...) {
38084 _swig_thread_allow.end();
38085 Xapian::SetPythonException();
38086 goto fail;
38087 }
38088 }
38089 _swig_thread_allow.end();
38090 }
38091 resultobj = SWIG_From_bool(static_cast< bool >(result));
38092 return resultobj;
38093fail:
38094 return __null;
38095}
38096static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator_get_docid(PyObject *, PyObject *args) {
38097 PyObject *resultobj = 0;
38098 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
38099 void *argp1 = 0 ;
38100 int res1 = 0 ;
38101 PyObject *swig_obj[1] ;
38102 Xapian::docid result;
38103 if (!args) goto fail;
38104 swig_obj[0] = args;
38105 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38106 if (!(res1 >= 0)) {
38107 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator_get_docid" "', argument " "1"" of type '" "Xapian::ValueIterator const *""'"); goto fail; } while(0);
38108 }
38109 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38110 {
38111 SWIG_Python_Thread_Allow _swig_thread_allow;
38112 {
38113 try {
38114 result = (Xapian::docid)((Xapian::ValueIterator const *)arg1)->get_docid();
38115 } catch (...) {
38116 _swig_thread_allow.end();
38117 Xapian::SetPythonException();
38118 goto fail;
38119 }
38120 }
38121 _swig_thread_allow.end();
38122 }
38123 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
38124 return resultobj;
38125fail:
38126 return __null;
38127}
38128static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator_get_valueno(PyObject *, PyObject *args) {
38129 PyObject *resultobj = 0;
38130 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
38131 void *argp1 = 0 ;
38132 int res1 = 0 ;
38133 PyObject *swig_obj[1] ;
38134 Xapian::valueno result;
38135 if (!args) goto fail;
38136 swig_obj[0] = args;
38137 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38138 if (!(res1 >= 0)) {
38139 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator_get_valueno" "', argument " "1"" of type '" "Xapian::ValueIterator const *""'"); goto fail; } while(0);
38140 }
38141 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38142 {
38143 SWIG_Python_Thread_Allow _swig_thread_allow;
38144 {
38145 try {
38146 result = (Xapian::valueno)((Xapian::ValueIterator const *)arg1)->get_valueno();
38147 } catch (...) {
38148 _swig_thread_allow.end();
38149 Xapian::SetPythonException();
38150 goto fail;
38151 }
38152 }
38153 _swig_thread_allow.end();
38154 }
38155 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
38156 return resultobj;
38157fail:
38158 return __null;
38159}
38160static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator_skip_to(PyObject *, PyObject *args) {
38161 PyObject *resultobj = 0;
38162 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
38163 Xapian::docid arg2 ;
38164 void *argp1 = 0 ;
38165 int res1 = 0 ;
38166 unsigned int val2 ;
38167 int ecode2 = 0 ;
38168 PyObject *swig_obj[2] ;
38169 if (!SWIG_Python_UnpackTuple(args,"ValueIterator_skip_to",2,2,swig_obj)) goto fail;
38170 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38171 if (!(res1 >= 0)) {
38172 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator_skip_to" "', argument " "1"" of type '" "Xapian::ValueIterator *""'"); goto fail; } while(0);
38173 }
38174 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38175 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
38176 if (!(ecode2 >= 0)) {
38177 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "ValueIterator_skip_to" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
38178 }
38179 arg2 = static_cast< Xapian::docid >(val2);
38180 {
38181 SWIG_Python_Thread_Allow _swig_thread_allow;
38182 {
38183 try {
38184 (arg1)->skip_to(arg2);
38185 } catch (...) {
38186 _swig_thread_allow.end();
38187 Xapian::SetPythonException();
38188 goto fail;
38189 }
38190 }
38191 _swig_thread_allow.end();
38192 }
38193 resultobj = SWIG_Py_Void();
38194 return resultobj;
38195fail:
38196 return __null;
38197}
38198static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator_check(PyObject *, PyObject *args) {
38199 PyObject *resultobj = 0;
38200 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
38201 Xapian::docid arg2 ;
38202 void *argp1 = 0 ;
38203 int res1 = 0 ;
38204 unsigned int val2 ;
38205 int ecode2 = 0 ;
38206 PyObject *swig_obj[2] ;
38207 bool result;
38208 if (!SWIG_Python_UnpackTuple(args,"ValueIterator_check",2,2,swig_obj)) goto fail;
38209 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38210 if (!(res1 >= 0)) {
38211 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator_check" "', argument " "1"" of type '" "Xapian::ValueIterator *""'"); goto fail; } while(0);
38212 }
38213 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38214 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
38215 if (!(ecode2 >= 0)) {
38216 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "ValueIterator_check" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
38217 }
38218 arg2 = static_cast< Xapian::docid >(val2);
38219 {
38220 SWIG_Python_Thread_Allow _swig_thread_allow;
38221 {
38222 try {
38223 result = (bool)(arg1)->check(arg2);
38224 } catch (...) {
38225 _swig_thread_allow.end();
38226 Xapian::SetPythonException();
38227 goto fail;
38228 }
38229 }
38230 _swig_thread_allow.end();
38231 }
38232 resultobj = SWIG_From_bool(static_cast< bool >(result));
38233 return resultobj;
38234fail:
38235 return __null;
38236}
38237static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator___str__(PyObject *, PyObject *args) {
38238 PyObject *resultobj = 0;
38239 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
38240 void *argp1 = 0 ;
38241 int res1 = 0 ;
38242 PyObject *swig_obj[1] ;
38243 std::string result;
38244 if (!args) goto fail;
38245 swig_obj[0] = args;
38246 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38247 if (!(res1 >= 0)) {
38248 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator___str__" "', argument " "1"" of type '" "Xapian::ValueIterator const *""'"); goto fail; } while(0);
38249 }
38250 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38251 {
38252 SWIG_Python_Thread_Allow _swig_thread_allow;
38253 {
38254 try {
38255 result = ((Xapian::ValueIterator const *)arg1)->get_description();
38256 } catch (...) {
38257 _swig_thread_allow.end();
38258 Xapian::SetPythonException();
38259 goto fail;
38260 }
38261 }
38262 _swig_thread_allow.end();
38263 }
38264 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
38265 return resultobj;
38266fail:
38267 return __null;
38268}
38269static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator___eq__(PyObject *, PyObject *args) {
38270 PyObject *resultobj = 0;
38271 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
38272 Xapian::ValueIterator *arg2 = 0 ;
38273 void *argp1 = 0 ;
38274 int res1 = 0 ;
38275 void *argp2 = 0 ;
38276 int res2 = 0 ;
38277 PyObject *swig_obj[2] ;
38278 bool result;
38279 if (!SWIG_Python_UnpackTuple(args,"ValueIterator___eq__",2,2,swig_obj)) goto fail;
38280 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38281 if (!(res1 >= 0)) {
38282 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator___eq__" "', argument " "1"" of type '" "Xapian::ValueIterator *""'"); goto fail; } while(0);
38283 }
38284 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38285 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[59], 0 | 0, 0);
38286 if (!(res2 >= 0)) {
38287 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ValueIterator___eq__" "', argument " "2"" of type '" "Xapian::ValueIterator const &""'"); goto fail; } while(0);
38288 }
38289 if (!argp2) {
38290 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ValueIterator___eq__" "', argument " "2"" of type '" "Xapian::ValueIterator const &""'"); goto fail; } while(0);
38291 }
38292 arg2 = reinterpret_cast< Xapian::ValueIterator * >(argp2);
38293 {
38294 SWIG_Python_Thread_Allow _swig_thread_allow;
38295 result = (bool)Xapian_ValueIterator___eq__(arg1,(Xapian::ValueIterator const &)*arg2);
38296 _swig_thread_allow.end();
38297 }
38298 resultobj = SWIG_From_bool(static_cast< bool >(result));
38299 return resultobj;
38300fail:
38301 return __null;
38302}
38303static __attribute__ ((__unused__)) PyObject *_wrap_ValueIterator___ne__(PyObject *, PyObject *args) {
38304 PyObject *resultobj = 0;
38305 Xapian::ValueIterator *arg1 = (Xapian::ValueIterator *) 0 ;
38306 Xapian::ValueIterator *arg2 = 0 ;
38307 void *argp1 = 0 ;
38308 int res1 = 0 ;
38309 void *argp2 = 0 ;
38310 int res2 = 0 ;
38311 PyObject *swig_obj[2] ;
38312 bool result;
38313 if (!SWIG_Python_UnpackTuple(args,"ValueIterator___ne__",2,2,swig_obj)) goto fail;
38314 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[59], 0 | 0, 0);
38315 if (!(res1 >= 0)) {
38316 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueIterator___ne__" "', argument " "1"" of type '" "Xapian::ValueIterator *""'"); goto fail; } while(0);
38317 }
38318 arg1 = reinterpret_cast< Xapian::ValueIterator * >(argp1);
38319 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[59], 0 | 0, 0);
38320 if (!(res2 >= 0)) {
38321 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ValueIterator___ne__" "', argument " "2"" of type '" "Xapian::ValueIterator const &""'"); goto fail; } while(0);
38322 }
38323 if (!argp2) {
38324 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ValueIterator___ne__" "', argument " "2"" of type '" "Xapian::ValueIterator const &""'"); goto fail; } while(0);
38325 }
38326 arg2 = reinterpret_cast< Xapian::ValueIterator * >(argp2);
38327 {
38328 SWIG_Python_Thread_Allow _swig_thread_allow;
38329 result = (bool)Xapian_ValueIterator___ne__(arg1,(Xapian::ValueIterator const &)*arg2);
38330 _swig_thread_allow.end();
38331 }
38332 resultobj = SWIG_From_bool(static_cast< bool >(result));
38333 return resultobj;
38334fail:
38335 return __null;
38336}
38337static __attribute__ ((__unused__)) PyObject *ValueIterator_swigregister(PyObject *, PyObject *args) {
38338 PyObject *obj;
38339 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
38340 SWIG_TypeNewClientData(swig_types[59], SwigPyClientData_New(obj));
38341 return SWIG_Py_Void();
38342}
38343static __attribute__ ((__unused__)) PyObject *ValueIterator_swiginit(PyObject *, PyObject *args) {
38344 return SWIG_Python_InitShadowInstance(args);
38345}
38346static __attribute__ ((__unused__)) PyObject *_wrap_new_Document__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
38347 PyObject *resultobj = 0;
38348 Xapian::Document *arg1 = 0 ;
38349 void *argp1 = 0 ;
38350 int res1 = 0 ;
38351 Xapian::Document *result = 0 ;
38352 if ((nobjs < 1) || (nobjs > 1)) goto fail;
38353 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38354 if (!(res1 >= 0)) {
38355 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Document" "', argument " "1"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
38356 }
38357 if (!argp1) {
38358 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Document" "', argument " "1"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
38359 }
38360 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38361 {
38362 SWIG_Python_Thread_Allow _swig_thread_allow;
38363 {
38364 try {
38365 result = (Xapian::Document *)new Xapian::Document((Xapian::Document const &)*arg1);
38366 } catch (...) {
38367 _swig_thread_allow.end();
38368 Xapian::SetPythonException();
38369 goto fail;
38370 }
38371 }
38372 _swig_thread_allow.end();
38373 }
38374 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[15], ((0x1 << 1) | 0x1) | 0);
38375 return resultobj;
38376fail:
38377 return __null;
38378}
38379static __attribute__ ((__unused__)) PyObject *_wrap_new_Document__SWIG_1(PyObject *, int nobjs, PyObject **) {
38380 PyObject *resultobj = 0;
38381 Xapian::Document *result = 0 ;
38382 if ((nobjs < 0) || (nobjs > 0)) goto fail;
38383 {
38384 SWIG_Python_Thread_Allow _swig_thread_allow;
38385 {
38386 try {
38387 result = (Xapian::Document *)new Xapian::Document();
38388 } catch (...) {
38389 _swig_thread_allow.end();
38390 Xapian::SetPythonException();
38391 goto fail;
38392 }
38393 }
38394 _swig_thread_allow.end();
38395 }
38396 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[15], ((0x1 << 1) | 0x1) | 0);
38397 return resultobj;
38398fail:
38399 return __null;
38400}
38401static __attribute__ ((__unused__)) PyObject *_wrap_new_Document(PyObject *self, PyObject *args) {
38402 int argc;
38403 PyObject *argv[2];
38404 if (!(argc = SWIG_Python_UnpackTuple(args,"new_Document",0,1,argv))) goto fail;
38405 --argc;
38406 if (argc == 0) {
38407 return _wrap_new_Document__SWIG_1(self, argc, argv);
38408 }
38409 if (argc == 1) {
38410 return _wrap_new_Document__SWIG_0(self, argc, argv);
38411 }
38412fail:
38413 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_Document'.\n"
38414 " Possible C/C++ prototypes are:\n"
38415 " Xapian::Document(Xapian::Document const &)\n"
38416 " Xapian::Document()\n");
38417 return __null;
38418}
38419static __attribute__ ((__unused__)) PyObject *_wrap_delete_Document(PyObject *, PyObject *args) {
38420 PyObject *resultobj = 0;
38421 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38422 void *argp1 = 0 ;
38423 int res1 = 0 ;
38424 PyObject *swig_obj[1] ;
38425 if (!args) goto fail;
38426 swig_obj[0] = args;
38427 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0x1 | 0, 0);
38428 if (!(res1 >= 0)) {
38429 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Document" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38430 }
38431 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38432 {
38433 SWIG_Python_Thread_Allow _swig_thread_allow;
38434 {
38435 try {
38436 delete arg1;
38437 } catch (...) {
38438 _swig_thread_allow.end();
38439 Xapian::SetPythonException();
38440 goto fail;
38441 }
38442 }
38443 _swig_thread_allow.end();
38444 }
38445 resultobj = SWIG_Py_Void();
38446 return resultobj;
38447fail:
38448 return __null;
38449}
38450static __attribute__ ((__unused__)) PyObject *_wrap_Document_get_value(PyObject *, PyObject *args) {
38451 PyObject *resultobj = 0;
38452 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38453 Xapian::valueno arg2 ;
38454 void *argp1 = 0 ;
38455 int res1 = 0 ;
38456 unsigned int val2 ;
38457 int ecode2 = 0 ;
38458 PyObject *swig_obj[2] ;
38459 std::string result;
38460 if (!SWIG_Python_UnpackTuple(args,"Document_get_value",2,2,swig_obj)) goto fail;
38461 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38462 if (!(res1 >= 0)) {
38463 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_get_value" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
38464 }
38465 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38466 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
38467 if (!(ecode2 >= 0)) {
38468 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Document_get_value" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
38469 }
38470 arg2 = static_cast< Xapian::valueno >(val2);
38471 {
38472 SWIG_Python_Thread_Allow _swig_thread_allow;
38473 {
38474 try {
38475 result = ((Xapian::Document const *)arg1)->get_value(arg2);
38476 } catch (...) {
38477 _swig_thread_allow.end();
38478 Xapian::SetPythonException();
38479 goto fail;
38480 }
38481 }
38482 _swig_thread_allow.end();
38483 }
38484 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
38485 return resultobj;
38486fail:
38487 return __null;
38488}
38489static __attribute__ ((__unused__)) PyObject *_wrap_Document_add_value(PyObject *, PyObject *args) {
38490 PyObject *resultobj = 0;
38491 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38492 Xapian::valueno arg2 ;
38493 std::string *arg3 = 0 ;
38494 void *argp1 = 0 ;
38495 int res1 = 0 ;
38496 unsigned int val2 ;
38497 int ecode2 = 0 ;
38498 int res3 = ((0)) ;
38499 PyObject *swig_obj[3] ;
38500 if (!SWIG_Python_UnpackTuple(args,"Document_add_value",3,3,swig_obj)) goto fail;
38501 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38502 if (!(res1 >= 0)) {
38503 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_add_value" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38504 }
38505 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38506 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
38507 if (!(ecode2 >= 0)) {
38508 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Document_add_value" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
38509 }
38510 arg2 = static_cast< Xapian::valueno >(val2);
38511 {
38512 std::string *ptr = (std::string *)0;
38513 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
38514 if (!(res3 >= 0)) {
38515 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "Document_add_value" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
38516 }
38517 if (!ptr) {
38518 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_add_value" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
38519 }
38520 arg3 = ptr;
38521 }
38522 {
38523 SWIG_Python_Thread_Allow _swig_thread_allow;
38524 {
38525 try {
38526 (arg1)->add_value(arg2,(std::string const &)*arg3);
38527 } catch (...) {
38528 _swig_thread_allow.end();
38529 Xapian::SetPythonException();
38530 goto fail;
38531 }
38532 }
38533 _swig_thread_allow.end();
38534 }
38535 resultobj = SWIG_Py_Void();
38536 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
38537 return resultobj;
38538fail:
38539 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
38540 return __null;
38541}
38542static __attribute__ ((__unused__)) PyObject *_wrap_Document_remove_value(PyObject *, PyObject *args) {
38543 PyObject *resultobj = 0;
38544 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38545 Xapian::valueno arg2 ;
38546 void *argp1 = 0 ;
38547 int res1 = 0 ;
38548 unsigned int val2 ;
38549 int ecode2 = 0 ;
38550 PyObject *swig_obj[2] ;
38551 if (!SWIG_Python_UnpackTuple(args,"Document_remove_value",2,2,swig_obj)) goto fail;
38552 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38553 if (!(res1 >= 0)) {
38554 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_remove_value" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38555 }
38556 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38557 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
38558 if (!(ecode2 >= 0)) {
38559 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Document_remove_value" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
38560 }
38561 arg2 = static_cast< Xapian::valueno >(val2);
38562 {
38563 SWIG_Python_Thread_Allow _swig_thread_allow;
38564 {
38565 try {
38566 (arg1)->remove_value(arg2);
38567 } catch (...) {
38568 _swig_thread_allow.end();
38569 Xapian::SetPythonException();
38570 goto fail;
38571 }
38572 }
38573 _swig_thread_allow.end();
38574 }
38575 resultobj = SWIG_Py_Void();
38576 return resultobj;
38577fail:
38578 return __null;
38579}
38580static __attribute__ ((__unused__)) PyObject *_wrap_Document_clear_values(PyObject *, PyObject *args) {
38581 PyObject *resultobj = 0;
38582 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38583 void *argp1 = 0 ;
38584 int res1 = 0 ;
38585 PyObject *swig_obj[1] ;
38586 if (!args) goto fail;
38587 swig_obj[0] = args;
38588 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38589 if (!(res1 >= 0)) {
38590 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_clear_values" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38591 }
38592 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38593 {
38594 SWIG_Python_Thread_Allow _swig_thread_allow;
38595 {
38596 try {
38597 (arg1)->clear_values();
38598 } catch (...) {
38599 _swig_thread_allow.end();
38600 Xapian::SetPythonException();
38601 goto fail;
38602 }
38603 }
38604 _swig_thread_allow.end();
38605 }
38606 resultobj = SWIG_Py_Void();
38607 return resultobj;
38608fail:
38609 return __null;
38610}
38611static __attribute__ ((__unused__)) PyObject *_wrap_Document_get_data(PyObject *, PyObject *args) {
38612 PyObject *resultobj = 0;
38613 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38614 void *argp1 = 0 ;
38615 int res1 = 0 ;
38616 PyObject *swig_obj[1] ;
38617 std::string result;
38618 if (!args) goto fail;
38619 swig_obj[0] = args;
38620 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38621 if (!(res1 >= 0)) {
38622 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_get_data" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
38623 }
38624 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38625 {
38626 SWIG_Python_Thread_Allow _swig_thread_allow;
38627 {
38628 try {
38629 result = ((Xapian::Document const *)arg1)->get_data();
38630 } catch (...) {
38631 _swig_thread_allow.end();
38632 Xapian::SetPythonException();
38633 goto fail;
38634 }
38635 }
38636 _swig_thread_allow.end();
38637 }
38638 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
38639 return resultobj;
38640fail:
38641 return __null;
38642}
38643static __attribute__ ((__unused__)) PyObject *_wrap_Document_set_data(PyObject *, PyObject *args) {
38644 PyObject *resultobj = 0;
38645 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38646 std::string *arg2 = 0 ;
38647 void *argp1 = 0 ;
38648 int res1 = 0 ;
38649 int res2 = ((0)) ;
38650 PyObject *swig_obj[2] ;
38651 if (!SWIG_Python_UnpackTuple(args,"Document_set_data",2,2,swig_obj)) goto fail;
38652 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38653 if (!(res1 >= 0)) {
38654 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_set_data" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38655 }
38656 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38657 {
38658 std::string *ptr = (std::string *)0;
38659 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
38660 if (!(res2 >= 0)) {
38661 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Document_set_data" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38662 }
38663 if (!ptr) {
38664 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_set_data" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38665 }
38666 arg2 = ptr;
38667 }
38668 {
38669 SWIG_Python_Thread_Allow _swig_thread_allow;
38670 {
38671 try {
38672 (arg1)->set_data((std::string const &)*arg2);
38673 } catch (...) {
38674 _swig_thread_allow.end();
38675 Xapian::SetPythonException();
38676 goto fail;
38677 }
38678 }
38679 _swig_thread_allow.end();
38680 }
38681 resultobj = SWIG_Py_Void();
38682 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38683 return resultobj;
38684fail:
38685 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38686 return __null;
38687}
38688static __attribute__ ((__unused__)) PyObject *_wrap_Document_add_posting__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
38689 PyObject *resultobj = 0;
38690 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38691 std::string *arg2 = 0 ;
38692 Xapian::termpos arg3 ;
38693 Xapian::termcount arg4 ;
38694 void *argp1 = 0 ;
38695 int res1 = 0 ;
38696 int res2 = ((0)) ;
38697 unsigned int val3 ;
38698 int ecode3 = 0 ;
38699 unsigned int val4 ;
38700 int ecode4 = 0 ;
38701 if ((nobjs < 4) || (nobjs > 4)) goto fail;
38702 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38703 if (!(res1 >= 0)) {
38704 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_add_posting" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38705 }
38706 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38707 {
38708 std::string *ptr = (std::string *)0;
38709 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
38710 if (!(res2 >= 0)) {
38711 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Document_add_posting" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38712 }
38713 if (!ptr) {
38714 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_add_posting" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38715 }
38716 arg2 = ptr;
38717 }
38718 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
38719 if (!(ecode3 >= 0)) {
38720 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Document_add_posting" "', argument " "3"" of type '" "Xapian::termpos""'"); goto fail; } while(0);
38721 }
38722 arg3 = static_cast< Xapian::termpos >(val3);
38723 ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4);
38724 if (!(ecode4 >= 0)) {
38725 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "Document_add_posting" "', argument " "4"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
38726 }
38727 arg4 = static_cast< Xapian::termcount >(val4);
38728 {
38729 SWIG_Python_Thread_Allow _swig_thread_allow;
38730 {
38731 try {
38732 (arg1)->add_posting((std::string const &)*arg2,arg3,arg4);
38733 } catch (...) {
38734 _swig_thread_allow.end();
38735 Xapian::SetPythonException();
38736 goto fail;
38737 }
38738 }
38739 _swig_thread_allow.end();
38740 }
38741 resultobj = SWIG_Py_Void();
38742 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38743 return resultobj;
38744fail:
38745 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38746 return __null;
38747}
38748static __attribute__ ((__unused__)) PyObject *_wrap_Document_add_posting__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
38749 PyObject *resultobj = 0;
38750 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38751 std::string *arg2 = 0 ;
38752 Xapian::termpos arg3 ;
38753 void *argp1 = 0 ;
38754 int res1 = 0 ;
38755 int res2 = ((0)) ;
38756 unsigned int val3 ;
38757 int ecode3 = 0 ;
38758 if ((nobjs < 3) || (nobjs > 3)) goto fail;
38759 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38760 if (!(res1 >= 0)) {
38761 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_add_posting" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38762 }
38763 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38764 {
38765 std::string *ptr = (std::string *)0;
38766 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
38767 if (!(res2 >= 0)) {
38768 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Document_add_posting" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38769 }
38770 if (!ptr) {
38771 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_add_posting" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38772 }
38773 arg2 = ptr;
38774 }
38775 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
38776 if (!(ecode3 >= 0)) {
38777 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Document_add_posting" "', argument " "3"" of type '" "Xapian::termpos""'"); goto fail; } while(0);
38778 }
38779 arg3 = static_cast< Xapian::termpos >(val3);
38780 {
38781 SWIG_Python_Thread_Allow _swig_thread_allow;
38782 {
38783 try {
38784 (arg1)->add_posting((std::string const &)*arg2,arg3);
38785 } catch (...) {
38786 _swig_thread_allow.end();
38787 Xapian::SetPythonException();
38788 goto fail;
38789 }
38790 }
38791 _swig_thread_allow.end();
38792 }
38793 resultobj = SWIG_Py_Void();
38794 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38795 return resultobj;
38796fail:
38797 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38798 return __null;
38799}
38800static __attribute__ ((__unused__)) PyObject *_wrap_Document_add_posting(PyObject *self, PyObject *args) {
38801 int argc;
38802 PyObject *argv[5];
38803 if (!(argc = SWIG_Python_UnpackTuple(args,"Document_add_posting",0,4,argv))) goto fail;
38804 --argc;
38805 if (argc == 3) {
38806 return _wrap_Document_add_posting__SWIG_1(self, argc, argv);
38807 }
38808 if (argc == 4) {
38809 return _wrap_Document_add_posting__SWIG_0(self, argc, argv);
38810 }
38811fail:
38812 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Document_add_posting'.\n"
38813 " Possible C/C++ prototypes are:\n"
38814 " add_posting(Xapian::Document *,std::string const &,Xapian::termpos,Xapian::termcount)\n"
38815 " add_posting(Xapian::Document *,std::string const &,Xapian::termpos)\n");
38816 return __null;
38817}
38818static __attribute__ ((__unused__)) PyObject *_wrap_Document_add_term__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
38819 PyObject *resultobj = 0;
38820 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38821 std::string *arg2 = 0 ;
38822 Xapian::termcount arg3 ;
38823 void *argp1 = 0 ;
38824 int res1 = 0 ;
38825 int res2 = ((0)) ;
38826 unsigned int val3 ;
38827 int ecode3 = 0 ;
38828 if ((nobjs < 3) || (nobjs > 3)) goto fail;
38829 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38830 if (!(res1 >= 0)) {
38831 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_add_term" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38832 }
38833 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38834 {
38835 std::string *ptr = (std::string *)0;
38836 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
38837 if (!(res2 >= 0)) {
38838 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Document_add_term" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38839 }
38840 if (!ptr) {
38841 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_add_term" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38842 }
38843 arg2 = ptr;
38844 }
38845 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
38846 if (!(ecode3 >= 0)) {
38847 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Document_add_term" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
38848 }
38849 arg3 = static_cast< Xapian::termcount >(val3);
38850 {
38851 SWIG_Python_Thread_Allow _swig_thread_allow;
38852 {
38853 try {
38854 (arg1)->add_term((std::string const &)*arg2,arg3);
38855 } catch (...) {
38856 _swig_thread_allow.end();
38857 Xapian::SetPythonException();
38858 goto fail;
38859 }
38860 }
38861 _swig_thread_allow.end();
38862 }
38863 resultobj = SWIG_Py_Void();
38864 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38865 return resultobj;
38866fail:
38867 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38868 return __null;
38869}
38870static __attribute__ ((__unused__)) PyObject *_wrap_Document_add_term__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
38871 PyObject *resultobj = 0;
38872 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38873 std::string *arg2 = 0 ;
38874 void *argp1 = 0 ;
38875 int res1 = 0 ;
38876 int res2 = ((0)) ;
38877 if ((nobjs < 2) || (nobjs > 2)) goto fail;
38878 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38879 if (!(res1 >= 0)) {
38880 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_add_term" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38881 }
38882 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38883 {
38884 std::string *ptr = (std::string *)0;
38885 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
38886 if (!(res2 >= 0)) {
38887 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Document_add_term" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38888 }
38889 if (!ptr) {
38890 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_add_term" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38891 }
38892 arg2 = ptr;
38893 }
38894 {
38895 SWIG_Python_Thread_Allow _swig_thread_allow;
38896 {
38897 try {
38898 (arg1)->add_term((std::string const &)*arg2);
38899 } catch (...) {
38900 _swig_thread_allow.end();
38901 Xapian::SetPythonException();
38902 goto fail;
38903 }
38904 }
38905 _swig_thread_allow.end();
38906 }
38907 resultobj = SWIG_Py_Void();
38908 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38909 return resultobj;
38910fail:
38911 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38912 return __null;
38913}
38914static __attribute__ ((__unused__)) PyObject *_wrap_Document_add_term(PyObject *self, PyObject *args) {
38915 int argc;
38916 PyObject *argv[4];
38917 if (!(argc = SWIG_Python_UnpackTuple(args,"Document_add_term",0,3,argv))) goto fail;
38918 --argc;
38919 if (argc == 2) {
38920 return _wrap_Document_add_term__SWIG_1(self, argc, argv);
38921 }
38922 if (argc == 3) {
38923 return _wrap_Document_add_term__SWIG_0(self, argc, argv);
38924 }
38925fail:
38926 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Document_add_term'.\n"
38927 " Possible C/C++ prototypes are:\n"
38928 " add_term(Xapian::Document *,std::string const &,Xapian::termcount)\n"
38929 " add_term(Xapian::Document *,std::string const &)\n");
38930 return __null;
38931}
38932static __attribute__ ((__unused__)) PyObject *_wrap_Document_add_boolean_term(PyObject *, PyObject *args) {
38933 PyObject *resultobj = 0;
38934 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38935 std::string *arg2 = 0 ;
38936 void *argp1 = 0 ;
38937 int res1 = 0 ;
38938 int res2 = ((0)) ;
38939 PyObject *swig_obj[2] ;
38940 if (!SWIG_Python_UnpackTuple(args,"Document_add_boolean_term",2,2,swig_obj)) goto fail;
38941 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38942 if (!(res1 >= 0)) {
38943 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_add_boolean_term" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38944 }
38945 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38946 {
38947 std::string *ptr = (std::string *)0;
38948 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
38949 if (!(res2 >= 0)) {
38950 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Document_add_boolean_term" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38951 }
38952 if (!ptr) {
38953 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_add_boolean_term" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
38954 }
38955 arg2 = ptr;
38956 }
38957 {
38958 SWIG_Python_Thread_Allow _swig_thread_allow;
38959 {
38960 try {
38961 (arg1)->add_boolean_term((std::string const &)*arg2);
38962 } catch (...) {
38963 _swig_thread_allow.end();
38964 Xapian::SetPythonException();
38965 goto fail;
38966 }
38967 }
38968 _swig_thread_allow.end();
38969 }
38970 resultobj = SWIG_Py_Void();
38971 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38972 return resultobj;
38973fail:
38974 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
38975 return __null;
38976}
38977static __attribute__ ((__unused__)) PyObject *_wrap_Document_remove_posting__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
38978 PyObject *resultobj = 0;
38979 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
38980 std::string *arg2 = 0 ;
38981 Xapian::termpos arg3 ;
38982 Xapian::termcount arg4 ;
38983 void *argp1 = 0 ;
38984 int res1 = 0 ;
38985 int res2 = ((0)) ;
38986 unsigned int val3 ;
38987 int ecode3 = 0 ;
38988 unsigned int val4 ;
38989 int ecode4 = 0 ;
38990 if ((nobjs < 4) || (nobjs > 4)) goto fail;
38991 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
38992 if (!(res1 >= 0)) {
38993 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_remove_posting" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
38994 }
38995 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
38996 {
38997 std::string *ptr = (std::string *)0;
38998 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
38999 if (!(res2 >= 0)) {
39000 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Document_remove_posting" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
39001 }
39002 if (!ptr) {
39003 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_remove_posting" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
39004 }
39005 arg2 = ptr;
39006 }
39007 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
39008 if (!(ecode3 >= 0)) {
39009 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Document_remove_posting" "', argument " "3"" of type '" "Xapian::termpos""'"); goto fail; } while(0);
39010 }
39011 arg3 = static_cast< Xapian::termpos >(val3);
39012 ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4);
39013 if (!(ecode4 >= 0)) {
39014 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "Document_remove_posting" "', argument " "4"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
39015 }
39016 arg4 = static_cast< Xapian::termcount >(val4);
39017 {
39018 SWIG_Python_Thread_Allow _swig_thread_allow;
39019 {
39020 try {
39021 (arg1)->remove_posting((std::string const &)*arg2,arg3,arg4);
39022 } catch (...) {
39023 _swig_thread_allow.end();
39024 Xapian::SetPythonException();
39025 goto fail;
39026 }
39027 }
39028 _swig_thread_allow.end();
39029 }
39030 resultobj = SWIG_Py_Void();
39031 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
39032 return resultobj;
39033fail:
39034 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
39035 return __null;
39036}
39037static __attribute__ ((__unused__)) PyObject *_wrap_Document_remove_posting__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
39038 PyObject *resultobj = 0;
39039 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39040 std::string *arg2 = 0 ;
39041 Xapian::termpos arg3 ;
39042 void *argp1 = 0 ;
39043 int res1 = 0 ;
39044 int res2 = ((0)) ;
39045 unsigned int val3 ;
39046 int ecode3 = 0 ;
39047 if ((nobjs < 3) || (nobjs > 3)) goto fail;
39048 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39049 if (!(res1 >= 0)) {
39050 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_remove_posting" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
39051 }
39052 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39053 {
39054 std::string *ptr = (std::string *)0;
39055 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
39056 if (!(res2 >= 0)) {
39057 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Document_remove_posting" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
39058 }
39059 if (!ptr) {
39060 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_remove_posting" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
39061 }
39062 arg2 = ptr;
39063 }
39064 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
39065 if (!(ecode3 >= 0)) {
39066 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Document_remove_posting" "', argument " "3"" of type '" "Xapian::termpos""'"); goto fail; } while(0);
39067 }
39068 arg3 = static_cast< Xapian::termpos >(val3);
39069 {
39070 SWIG_Python_Thread_Allow _swig_thread_allow;
39071 {
39072 try {
39073 (arg1)->remove_posting((std::string const &)*arg2,arg3);
39074 } catch (...) {
39075 _swig_thread_allow.end();
39076 Xapian::SetPythonException();
39077 goto fail;
39078 }
39079 }
39080 _swig_thread_allow.end();
39081 }
39082 resultobj = SWIG_Py_Void();
39083 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
39084 return resultobj;
39085fail:
39086 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
39087 return __null;
39088}
39089static __attribute__ ((__unused__)) PyObject *_wrap_Document_remove_posting(PyObject *self, PyObject *args) {
39090 int argc;
39091 PyObject *argv[5];
39092 if (!(argc = SWIG_Python_UnpackTuple(args,"Document_remove_posting",0,4,argv))) goto fail;
39093 --argc;
39094 if (argc == 3) {
39095 return _wrap_Document_remove_posting__SWIG_1(self, argc, argv);
39096 }
39097 if (argc == 4) {
39098 return _wrap_Document_remove_posting__SWIG_0(self, argc, argv);
39099 }
39100fail:
39101 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Document_remove_posting'.\n"
39102 " Possible C/C++ prototypes are:\n"
39103 " remove_posting(Xapian::Document *,std::string const &,Xapian::termpos,Xapian::termcount)\n"
39104 " remove_posting(Xapian::Document *,std::string const &,Xapian::termpos)\n");
39105 return __null;
39106}
39107static __attribute__ ((__unused__)) PyObject *_wrap_Document_remove_term(PyObject *, PyObject *args) {
39108 PyObject *resultobj = 0;
39109 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39110 std::string *arg2 = 0 ;
39111 void *argp1 = 0 ;
39112 int res1 = 0 ;
39113 int res2 = ((0)) ;
39114 PyObject *swig_obj[2] ;
39115 if (!SWIG_Python_UnpackTuple(args,"Document_remove_term",2,2,swig_obj)) goto fail;
39116 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39117 if (!(res1 >= 0)) {
39118 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_remove_term" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
39119 }
39120 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39121 {
39122 std::string *ptr = (std::string *)0;
39123 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
39124 if (!(res2 >= 0)) {
39125 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Document_remove_term" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
39126 }
39127 if (!ptr) {
39128 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_remove_term" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
39129 }
39130 arg2 = ptr;
39131 }
39132 {
39133 SWIG_Python_Thread_Allow _swig_thread_allow;
39134 {
39135 try {
39136 (arg1)->remove_term((std::string const &)*arg2);
39137 } catch (...) {
39138 _swig_thread_allow.end();
39139 Xapian::SetPythonException();
39140 goto fail;
39141 }
39142 }
39143 _swig_thread_allow.end();
39144 }
39145 resultobj = SWIG_Py_Void();
39146 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
39147 return resultobj;
39148fail:
39149 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
39150 return __null;
39151}
39152static __attribute__ ((__unused__)) PyObject *_wrap_Document_clear_terms(PyObject *, PyObject *args) {
39153 PyObject *resultobj = 0;
39154 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39155 void *argp1 = 0 ;
39156 int res1 = 0 ;
39157 PyObject *swig_obj[1] ;
39158 if (!args) goto fail;
39159 swig_obj[0] = args;
39160 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39161 if (!(res1 >= 0)) {
39162 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_clear_terms" "', argument " "1"" of type '" "Xapian::Document *""'"); goto fail; } while(0);
39163 }
39164 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39165 {
39166 SWIG_Python_Thread_Allow _swig_thread_allow;
39167 {
39168 try {
39169 (arg1)->clear_terms();
39170 } catch (...) {
39171 _swig_thread_allow.end();
39172 Xapian::SetPythonException();
39173 goto fail;
39174 }
39175 }
39176 _swig_thread_allow.end();
39177 }
39178 resultobj = SWIG_Py_Void();
39179 return resultobj;
39180fail:
39181 return __null;
39182}
39183static __attribute__ ((__unused__)) PyObject *_wrap_Document_termlist_count(PyObject *, PyObject *args) {
39184 PyObject *resultobj = 0;
39185 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39186 void *argp1 = 0 ;
39187 int res1 = 0 ;
39188 PyObject *swig_obj[1] ;
39189 Xapian::termcount result;
39190 if (!args) goto fail;
39191 swig_obj[0] = args;
39192 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39193 if (!(res1 >= 0)) {
39194 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_termlist_count" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
39195 }
39196 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39197 {
39198 SWIG_Python_Thread_Allow _swig_thread_allow;
39199 {
39200 try {
39201 result = (Xapian::termcount)((Xapian::Document const *)arg1)->termlist_count();
39202 } catch (...) {
39203 _swig_thread_allow.end();
39204 Xapian::SetPythonException();
39205 goto fail;
39206 }
39207 }
39208 _swig_thread_allow.end();
39209 }
39210 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
39211 return resultobj;
39212fail:
39213 return __null;
39214}
39215static __attribute__ ((__unused__)) PyObject *_wrap_Document_termlist_begin(PyObject *, PyObject *args) {
39216 PyObject *resultobj = 0;
39217 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39218 void *argp1 = 0 ;
39219 int res1 = 0 ;
39220 PyObject *swig_obj[1] ;
39221 Xapian::TermIterator result;
39222 if (!args) goto fail;
39223 swig_obj[0] = args;
39224 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39225 if (!(res1 >= 0)) {
39226 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_termlist_begin" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
39227 }
39228 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39229 {
39230 SWIG_Python_Thread_Allow _swig_thread_allow;
39231 {
39232 try {
39233 result = ((Xapian::Document const *)arg1)->termlist_begin();
39234 } catch (...) {
39235 _swig_thread_allow.end();
39236 Xapian::SetPythonException();
39237 goto fail;
39238 }
39239 }
39240 _swig_thread_allow.end();
39241 }
39242 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
39243 return resultobj;
39244fail:
39245 return __null;
39246}
39247static __attribute__ ((__unused__)) PyObject *_wrap_Document_termlist_end(PyObject *, PyObject *args) {
39248 PyObject *resultobj = 0;
39249 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39250 void *argp1 = 0 ;
39251 int res1 = 0 ;
39252 PyObject *swig_obj[1] ;
39253 Xapian::TermIterator result;
39254 if (!args) goto fail;
39255 swig_obj[0] = args;
39256 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39257 if (!(res1 >= 0)) {
39258 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_termlist_end" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
39259 }
39260 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39261 {
39262 SWIG_Python_Thread_Allow _swig_thread_allow;
39263 {
39264 try {
39265 result = ((Xapian::Document const *)arg1)->termlist_end();
39266 } catch (...) {
39267 _swig_thread_allow.end();
39268 Xapian::SetPythonException();
39269 goto fail;
39270 }
39271 }
39272 _swig_thread_allow.end();
39273 }
39274 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
39275 return resultobj;
39276fail:
39277 return __null;
39278}
39279static __attribute__ ((__unused__)) PyObject *_wrap_Document_values_count(PyObject *, PyObject *args) {
39280 PyObject *resultobj = 0;
39281 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39282 void *argp1 = 0 ;
39283 int res1 = 0 ;
39284 PyObject *swig_obj[1] ;
39285 Xapian::termcount result;
39286 if (!args) goto fail;
39287 swig_obj[0] = args;
39288 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39289 if (!(res1 >= 0)) {
39290 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_values_count" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
39291 }
39292 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39293 {
39294 SWIG_Python_Thread_Allow _swig_thread_allow;
39295 {
39296 try {
39297 result = (Xapian::termcount)((Xapian::Document const *)arg1)->values_count();
39298 } catch (...) {
39299 _swig_thread_allow.end();
39300 Xapian::SetPythonException();
39301 goto fail;
39302 }
39303 }
39304 _swig_thread_allow.end();
39305 }
39306 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
39307 return resultobj;
39308fail:
39309 return __null;
39310}
39311static __attribute__ ((__unused__)) PyObject *_wrap_Document_values_begin(PyObject *, PyObject *args) {
39312 PyObject *resultobj = 0;
39313 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39314 void *argp1 = 0 ;
39315 int res1 = 0 ;
39316 PyObject *swig_obj[1] ;
39317 Xapian::ValueIterator result;
39318 if (!args) goto fail;
39319 swig_obj[0] = args;
39320 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39321 if (!(res1 >= 0)) {
39322 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_values_begin" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
39323 }
39324 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39325 {
39326 SWIG_Python_Thread_Allow _swig_thread_allow;
39327 {
39328 try {
39329 result = ((Xapian::Document const *)arg1)->values_begin();
39330 } catch (...) {
39331 _swig_thread_allow.end();
39332 Xapian::SetPythonException();
39333 goto fail;
39334 }
39335 }
39336 _swig_thread_allow.end();
39337 }
39338 resultobj = SWIG_Python_NewPointerObj((new Xapian::ValueIterator(static_cast< const Xapian::ValueIterator& >(result))), swig_types[59], 0x1 | 0);
39339 return resultobj;
39340fail:
39341 return __null;
39342}
39343static __attribute__ ((__unused__)) PyObject *_wrap_Document_values_end(PyObject *, PyObject *args) {
39344 PyObject *resultobj = 0;
39345 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39346 void *argp1 = 0 ;
39347 int res1 = 0 ;
39348 PyObject *swig_obj[1] ;
39349 Xapian::ValueIterator result;
39350 if (!args) goto fail;
39351 swig_obj[0] = args;
39352 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39353 if (!(res1 >= 0)) {
39354 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_values_end" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
39355 }
39356 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39357 {
39358 SWIG_Python_Thread_Allow _swig_thread_allow;
39359 {
39360 try {
39361 result = ((Xapian::Document const *)arg1)->values_end();
39362 } catch (...) {
39363 _swig_thread_allow.end();
39364 Xapian::SetPythonException();
39365 goto fail;
39366 }
39367 }
39368 _swig_thread_allow.end();
39369 }
39370 resultobj = SWIG_Python_NewPointerObj((new Xapian::ValueIterator(static_cast< const Xapian::ValueIterator& >(result))), swig_types[59], 0x1 | 0);
39371 return resultobj;
39372fail:
39373 return __null;
39374}
39375static __attribute__ ((__unused__)) PyObject *_wrap_Document_get_docid(PyObject *, PyObject *args) {
39376 PyObject *resultobj = 0;
39377 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39378 void *argp1 = 0 ;
39379 int res1 = 0 ;
39380 PyObject *swig_obj[1] ;
39381 Xapian::docid result;
39382 if (!args) goto fail;
39383 swig_obj[0] = args;
39384 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39385 if (!(res1 >= 0)) {
39386 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_get_docid" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
39387 }
39388 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39389 {
39390 SWIG_Python_Thread_Allow _swig_thread_allow;
39391 {
39392 try {
39393 result = (Xapian::docid)((Xapian::Document const *)arg1)->get_docid();
39394 } catch (...) {
39395 _swig_thread_allow.end();
39396 Xapian::SetPythonException();
39397 goto fail;
39398 }
39399 }
39400 _swig_thread_allow.end();
39401 }
39402 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
39403 return resultobj;
39404fail:
39405 return __null;
39406}
39407static __attribute__ ((__unused__)) PyObject *_wrap_Document_serialise(PyObject *, PyObject *args) {
39408 PyObject *resultobj = 0;
39409 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39410 void *argp1 = 0 ;
39411 int res1 = 0 ;
39412 PyObject *swig_obj[1] ;
39413 std::string result;
39414 if (!args) goto fail;
39415 swig_obj[0] = args;
39416 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39417 if (!(res1 >= 0)) {
39418 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_serialise" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
39419 }
39420 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39421 {
39422 SWIG_Python_Thread_Allow _swig_thread_allow;
39423 {
39424 try {
39425 result = ((Xapian::Document const *)arg1)->serialise();
39426 } catch (...) {
39427 _swig_thread_allow.end();
39428 Xapian::SetPythonException();
39429 goto fail;
39430 }
39431 }
39432 _swig_thread_allow.end();
39433 }
39434 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
39435 return resultobj;
39436fail:
39437 return __null;
39438}
39439static __attribute__ ((__unused__)) PyObject *_wrap_Document_unserialise(PyObject *, PyObject *args) {
39440 PyObject *resultobj = 0;
39441 std::string *arg1 = 0 ;
39442 int res1 = ((0)) ;
39443 PyObject *swig_obj[1] ;
39444 Xapian::Document result;
39445 if (!args) goto fail;
39446 swig_obj[0] = args;
39447 {
39448 std::string *ptr = (std::string *)0;
39449 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
39450 if (!(res1 >= 0)) {
39451 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document_unserialise" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
39452 }
39453 if (!ptr) {
39454 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Document_unserialise" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
39455 }
39456 arg1 = ptr;
39457 }
39458 {
39459 SWIG_Python_Thread_Allow _swig_thread_allow;
39460 {
39461 try {
39462 result = Xapian::Document::unserialise((std::string const &)*arg1);
39463 } catch (...) {
39464 _swig_thread_allow.end();
39465 Xapian::SetPythonException();
39466 goto fail;
39467 }
39468 }
39469 _swig_thread_allow.end();
39470 }
39471 resultobj = SWIG_Python_NewPointerObj((new Xapian::Document(static_cast< const Xapian::Document& >(result))), swig_types[15], 0x1 | 0);
39472 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
39473 return resultobj;
39474fail:
39475 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
39476 return __null;
39477}
39478static __attribute__ ((__unused__)) PyObject *_wrap_Document___str__(PyObject *, PyObject *args) {
39479 PyObject *resultobj = 0;
39480 Xapian::Document *arg1 = (Xapian::Document *) 0 ;
39481 void *argp1 = 0 ;
39482 int res1 = 0 ;
39483 PyObject *swig_obj[1] ;
39484 std::string result;
39485 if (!args) goto fail;
39486 swig_obj[0] = args;
39487 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[15], 0 | 0, 0);
39488 if (!(res1 >= 0)) {
39489 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Document___str__" "', argument " "1"" of type '" "Xapian::Document const *""'"); goto fail; } while(0);
39490 }
39491 arg1 = reinterpret_cast< Xapian::Document * >(argp1);
39492 {
39493 SWIG_Python_Thread_Allow _swig_thread_allow;
39494 {
39495 try {
39496 result = ((Xapian::Document const *)arg1)->get_description();
39497 } catch (...) {
39498 _swig_thread_allow.end();
39499 Xapian::SetPythonException();
39500 goto fail;
39501 }
39502 }
39503 _swig_thread_allow.end();
39504 }
39505 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
39506 return resultobj;
39507fail:
39508 return __null;
39509}
39510static __attribute__ ((__unused__)) PyObject *Document_swigregister(PyObject *, PyObject *args) {
39511 PyObject *obj;
39512 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
39513 SWIG_TypeNewClientData(swig_types[15], SwigPyClientData_New(obj));
39514 return SWIG_Py_Void();
39515}
39516static __attribute__ ((__unused__)) PyObject *Document_swiginit(PyObject *, PyObject *args) {
39517 return SWIG_Python_InitShadowInstance(args);
39518}
39519static __attribute__ ((__unused__)) PyObject *_wrap_new_PostingSource(PyObject *, PyObject *args) {
39520 PyObject *resultobj = 0;
39521 PyObject *arg1 = (PyObject *) 0 ;
39522 PyObject *swig_obj[1] ;
39523 Xapian::PostingSource *result = 0 ;
39524 if (!args) goto fail;
39525 swig_obj[0] = args;
39526 arg1 = swig_obj[0];
39527 {
39528 SWIG_Python_Thread_Allow _swig_thread_allow;
39529 {
39530 try {
39531 if ( arg1 != (&_Py_NoneStruct) ) {
39532 result = (Xapian::PostingSource *)new SwigDirector_PostingSource(arg1);
39533 } else {
39534 SWIG_Python_SetErrorMsg(PyExc_RuntimeError,"accessing abstract class or protected constructor");
39535 goto fail;
39536 }
39537 } catch (...) {
39538 _swig_thread_allow.end();
39539 Xapian::SetPythonException();
39540 goto fail;
39541 }
39542 }
39543 _swig_thread_allow.end();
39544 }
39545 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[39], ((0x1 << 1) | 0x1) | 0);
39546 return resultobj;
39547fail:
39548 return __null;
39549}
39550static __attribute__ ((__unused__)) PyObject *_wrap_delete_PostingSource(PyObject *, PyObject *args) {
39551 PyObject *resultobj = 0;
39552 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39553 void *argp1 = 0 ;
39554 int res1 = 0 ;
39555 PyObject *swig_obj[1] ;
39556 if (!args) goto fail;
39557 swig_obj[0] = args;
39558 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0x1 | 0, 0);
39559 if (!(res1 >= 0)) {
39560 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_PostingSource" "', argument " "1"" of type '" "Xapian::PostingSource *""'"); goto fail; } while(0);
39561 }
39562 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39563 {
39564 SWIG_Python_Thread_Allow _swig_thread_allow;
39565 {
39566 try {
39567 delete arg1;
39568 } catch (...) {
39569 _swig_thread_allow.end();
39570 Xapian::SetPythonException();
39571 goto fail;
39572 }
39573 }
39574 _swig_thread_allow.end();
39575 }
39576 resultobj = SWIG_Py_Void();
39577 return resultobj;
39578fail:
39579 return __null;
39580}
39581static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_get_termfreq_min(PyObject *, PyObject *args) {
39582 PyObject *resultobj = 0;
39583 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39584 void *argp1 = 0 ;
39585 int res1 = 0 ;
39586 PyObject *swig_obj[1] ;
39587 Swig::Director *director = 0;
39588 bool upcall = false;
39589 Xapian::doccount result;
39590 if (!args) goto fail;
39591 swig_obj[0] = args;
39592 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39593 if (!(res1 >= 0)) {
39594 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_get_termfreq_min" "', argument " "1"" of type '" "Xapian::PostingSource const *""'"); goto fail; } while(0);
39595 }
39596 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39597 director = dynamic_cast<Swig::Director*>(arg1);
39598 upcall = (director && (director->swig_get_self()==swig_obj[0]));
39599 try {
39600 {
39601 try {
39602 if (upcall) {
39603 Swig::DirectorPureVirtualException::raise("Xapian::PostingSource::get_termfreq_min");
39604 } else {
39605 result = (Xapian::doccount)((Xapian::PostingSource const *)arg1)->get_termfreq_min();
39606 }
39607 } catch (...) {
39608 Xapian::SetPythonException();
39609 goto fail;
39610 }
39611 }
39612 } catch (Swig::DirectorException&) {
39613 goto fail;
39614 }
39615 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
39616 return resultobj;
39617fail:
39618 return __null;
39619}
39620static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_get_termfreq_est(PyObject *, PyObject *args) {
39621 PyObject *resultobj = 0;
39622 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39623 void *argp1 = 0 ;
39624 int res1 = 0 ;
39625 PyObject *swig_obj[1] ;
39626 Swig::Director *director = 0;
39627 bool upcall = false;
39628 Xapian::doccount result;
39629 if (!args) goto fail;
39630 swig_obj[0] = args;
39631 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39632 if (!(res1 >= 0)) {
39633 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_get_termfreq_est" "', argument " "1"" of type '" "Xapian::PostingSource const *""'"); goto fail; } while(0);
39634 }
39635 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39636 director = dynamic_cast<Swig::Director*>(arg1);
39637 upcall = (director && (director->swig_get_self()==swig_obj[0]));
39638 try {
39639 {
39640 try {
39641 if (upcall) {
39642 Swig::DirectorPureVirtualException::raise("Xapian::PostingSource::get_termfreq_est");
39643 } else {
39644 result = (Xapian::doccount)((Xapian::PostingSource const *)arg1)->get_termfreq_est();
39645 }
39646 } catch (...) {
39647 Xapian::SetPythonException();
39648 goto fail;
39649 }
39650 }
39651 } catch (Swig::DirectorException&) {
39652 goto fail;
39653 }
39654 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
39655 return resultobj;
39656fail:
39657 return __null;
39658}
39659static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_get_termfreq_max(PyObject *, PyObject *args) {
39660 PyObject *resultobj = 0;
39661 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39662 void *argp1 = 0 ;
39663 int res1 = 0 ;
39664 PyObject *swig_obj[1] ;
39665 Swig::Director *director = 0;
39666 bool upcall = false;
39667 Xapian::doccount result;
39668 if (!args) goto fail;
39669 swig_obj[0] = args;
39670 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39671 if (!(res1 >= 0)) {
39672 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_get_termfreq_max" "', argument " "1"" of type '" "Xapian::PostingSource const *""'"); goto fail; } while(0);
39673 }
39674 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39675 director = dynamic_cast<Swig::Director*>(arg1);
39676 upcall = (director && (director->swig_get_self()==swig_obj[0]));
39677 try {
39678 {
39679 try {
39680 if (upcall) {
39681 Swig::DirectorPureVirtualException::raise("Xapian::PostingSource::get_termfreq_max");
39682 } else {
39683 result = (Xapian::doccount)((Xapian::PostingSource const *)arg1)->get_termfreq_max();
39684 }
39685 } catch (...) {
39686 Xapian::SetPythonException();
39687 goto fail;
39688 }
39689 }
39690 } catch (Swig::DirectorException&) {
39691 goto fail;
39692 }
39693 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
39694 return resultobj;
39695fail:
39696 return __null;
39697}
39698static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_get_maxweight(PyObject *, PyObject *args) {
39699 PyObject *resultobj = 0;
39700 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39701 void *argp1 = 0 ;
39702 int res1 = 0 ;
39703 PyObject *swig_obj[1] ;
39704 Xapian::weight result;
39705 if (!args) goto fail;
39706 swig_obj[0] = args;
39707 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39708 if (!(res1 >= 0)) {
39709 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_get_maxweight" "', argument " "1"" of type '" "Xapian::PostingSource const *""'"); goto fail; } while(0);
39710 }
39711 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39712 {
39713 SWIG_Python_Thread_Allow _swig_thread_allow;
39714 {
39715 try {
39716 result = (Xapian::weight)((Xapian::PostingSource const *)arg1)->get_maxweight();
39717 } catch (...) {
39718 Xapian::SetPythonException();
39719 goto fail;
39720 }
39721 }
39722 _swig_thread_allow.end();
39723 }
39724 resultobj = PyFloat_FromDouble(static_cast< double >(result));
39725 return resultobj;
39726fail:
39727 return __null;
39728}
39729static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_get_weight(PyObject *, PyObject *args) {
39730 PyObject *resultobj = 0;
39731 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39732 void *argp1 = 0 ;
39733 int res1 = 0 ;
39734 PyObject *swig_obj[1] ;
39735 Swig::Director *director = 0;
39736 bool upcall = false;
39737 Xapian::weight result;
39738 if (!args) goto fail;
39739 swig_obj[0] = args;
39740 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39741 if (!(res1 >= 0)) {
39742 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_get_weight" "', argument " "1"" of type '" "Xapian::PostingSource const *""'"); goto fail; } while(0);
39743 }
39744 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39745 director = dynamic_cast<Swig::Director*>(arg1);
39746 upcall = (director && (director->swig_get_self()==swig_obj[0]));
39747 try {
39748 {
39749 try {
39750 if (upcall) {
39751 result = (Xapian::weight)((Xapian::PostingSource const *)arg1)->Xapian::PostingSource::get_weight();
39752 } else {
39753 result = (Xapian::weight)((Xapian::PostingSource const *)arg1)->get_weight();
39754 }
39755 } catch (...) {
39756 Xapian::SetPythonException();
39757 goto fail;
39758 }
39759 }
39760 } catch (Swig::DirectorException&) {
39761 goto fail;
39762 }
39763 resultobj = PyFloat_FromDouble(static_cast< double >(result));
39764 return resultobj;
39765fail:
39766 return __null;
39767}
39768static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_get_docid(PyObject *, PyObject *args) {
39769 PyObject *resultobj = 0;
39770 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39771 void *argp1 = 0 ;
39772 int res1 = 0 ;
39773 PyObject *swig_obj[1] ;
39774 Swig::Director *director = 0;
39775 bool upcall = false;
39776 Xapian::docid result;
39777 if (!args) goto fail;
39778 swig_obj[0] = args;
39779 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39780 if (!(res1 >= 0)) {
39781 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_get_docid" "', argument " "1"" of type '" "Xapian::PostingSource const *""'"); goto fail; } while(0);
39782 }
39783 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39784 director = dynamic_cast<Swig::Director*>(arg1);
39785 upcall = (director && (director->swig_get_self()==swig_obj[0]));
39786 try {
39787 {
39788 try {
39789 if (upcall) {
39790 Swig::DirectorPureVirtualException::raise("Xapian::PostingSource::get_docid");
39791 } else {
39792 result = (Xapian::docid)((Xapian::PostingSource const *)arg1)->get_docid();
39793 }
39794 } catch (...) {
39795 Xapian::SetPythonException();
39796 goto fail;
39797 }
39798 }
39799 } catch (Swig::DirectorException&) {
39800 goto fail;
39801 }
39802 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
39803 return resultobj;
39804fail:
39805 return __null;
39806}
39807static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_next(PyObject *, PyObject *args) {
39808 PyObject *resultobj = 0;
39809 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39810 Xapian::weight arg2 ;
39811 void *argp1 = 0 ;
39812 int res1 = 0 ;
39813 double val2 ;
39814 int ecode2 = 0 ;
39815 PyObject *swig_obj[2] ;
39816 Swig::Director *director = 0;
39817 bool upcall = false;
39818 if (!SWIG_Python_UnpackTuple(args,"PostingSource_next",2,2,swig_obj)) goto fail;
39819 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39820 if (!(res1 >= 0)) {
39821 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_next" "', argument " "1"" of type '" "Xapian::PostingSource *""'"); goto fail; } while(0);
39822 }
39823 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39824 ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
39825 if (!(ecode2 >= 0)) {
39826 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "PostingSource_next" "', argument " "2"" of type '" "Xapian::weight""'"); goto fail; } while(0);
39827 }
39828 arg2 = static_cast< Xapian::weight >(val2);
39829 director = dynamic_cast<Swig::Director*>(arg1);
39830 upcall = (director && (director->swig_get_self()==swig_obj[0]));
39831 try {
39832 {
39833 try {
39834 if (upcall) {
39835 Swig::DirectorPureVirtualException::raise("Xapian::PostingSource::next");
39836 } else {
39837 (arg1)->next(arg2);
39838 }
39839 } catch (...) {
39840 Xapian::SetPythonException();
39841 goto fail;
39842 }
39843 }
39844 } catch (Swig::DirectorException&) {
39845 goto fail;
39846 }
39847 resultobj = SWIG_Py_Void();
39848 return resultobj;
39849fail:
39850 return __null;
39851}
39852static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_skip_to(PyObject *, PyObject *args) {
39853 PyObject *resultobj = 0;
39854 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39855 Xapian::docid arg2 ;
39856 Xapian::weight arg3 ;
39857 void *argp1 = 0 ;
39858 int res1 = 0 ;
39859 unsigned int val2 ;
39860 int ecode2 = 0 ;
39861 double val3 ;
39862 int ecode3 = 0 ;
39863 PyObject *swig_obj[3] ;
39864 Swig::Director *director = 0;
39865 bool upcall = false;
39866 if (!SWIG_Python_UnpackTuple(args,"PostingSource_skip_to",3,3,swig_obj)) goto fail;
39867 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39868 if (!(res1 >= 0)) {
39869 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_skip_to" "', argument " "1"" of type '" "Xapian::PostingSource *""'"); goto fail; } while(0);
39870 }
39871 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39872 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
39873 if (!(ecode2 >= 0)) {
39874 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "PostingSource_skip_to" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
39875 }
39876 arg2 = static_cast< Xapian::docid >(val2);
39877 ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
39878 if (!(ecode3 >= 0)) {
39879 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "PostingSource_skip_to" "', argument " "3"" of type '" "Xapian::weight""'"); goto fail; } while(0);
39880 }
39881 arg3 = static_cast< Xapian::weight >(val3);
39882 director = dynamic_cast<Swig::Director*>(arg1);
39883 upcall = (director && (director->swig_get_self()==swig_obj[0]));
39884 try {
39885 {
39886 try {
39887 if (upcall) {
39888 (arg1)->Xapian::PostingSource::skip_to(arg2,arg3);
39889 } else {
39890 (arg1)->skip_to(arg2,arg3);
39891 }
39892 } catch (...) {
39893 Xapian::SetPythonException();
39894 goto fail;
39895 }
39896 }
39897 } catch (Swig::DirectorException&) {
39898 goto fail;
39899 }
39900 resultobj = SWIG_Py_Void();
39901 return resultobj;
39902fail:
39903 return __null;
39904}
39905static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_check(PyObject *, PyObject *args) {
39906 PyObject *resultobj = 0;
39907 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39908 Xapian::docid arg2 ;
39909 Xapian::weight arg3 ;
39910 void *argp1 = 0 ;
39911 int res1 = 0 ;
39912 unsigned int val2 ;
39913 int ecode2 = 0 ;
39914 double val3 ;
39915 int ecode3 = 0 ;
39916 PyObject *swig_obj[3] ;
39917 Swig::Director *director = 0;
39918 bool upcall = false;
39919 bool result;
39920 if (!SWIG_Python_UnpackTuple(args,"PostingSource_check",3,3,swig_obj)) goto fail;
39921 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39922 if (!(res1 >= 0)) {
39923 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_check" "', argument " "1"" of type '" "Xapian::PostingSource *""'"); goto fail; } while(0);
39924 }
39925 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39926 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
39927 if (!(ecode2 >= 0)) {
39928 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "PostingSource_check" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
39929 }
39930 arg2 = static_cast< Xapian::docid >(val2);
39931 ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
39932 if (!(ecode3 >= 0)) {
39933 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "PostingSource_check" "', argument " "3"" of type '" "Xapian::weight""'"); goto fail; } while(0);
39934 }
39935 arg3 = static_cast< Xapian::weight >(val3);
39936 director = dynamic_cast<Swig::Director*>(arg1);
39937 upcall = (director && (director->swig_get_self()==swig_obj[0]));
39938 try {
39939 {
39940 try {
39941 if (upcall) {
39942 result = (bool)(arg1)->Xapian::PostingSource::check(arg2,arg3);
39943 } else {
39944 result = (bool)(arg1)->check(arg2,arg3);
39945 }
39946 } catch (...) {
39947 Xapian::SetPythonException();
39948 goto fail;
39949 }
39950 }
39951 } catch (Swig::DirectorException&) {
39952 goto fail;
39953 }
39954 resultobj = SWIG_From_bool(static_cast< bool >(result));
39955 return resultobj;
39956fail:
39957 return __null;
39958}
39959static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_at_end(PyObject *, PyObject *args) {
39960 PyObject *resultobj = 0;
39961 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
39962 void *argp1 = 0 ;
39963 int res1 = 0 ;
39964 PyObject *swig_obj[1] ;
39965 Swig::Director *director = 0;
39966 bool upcall = false;
39967 bool result;
39968 if (!args) goto fail;
39969 swig_obj[0] = args;
39970 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
39971 if (!(res1 >= 0)) {
39972 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_at_end" "', argument " "1"" of type '" "Xapian::PostingSource const *""'"); goto fail; } while(0);
39973 }
39974 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
39975 director = dynamic_cast<Swig::Director*>(arg1);
39976 upcall = (director && (director->swig_get_self()==swig_obj[0]));
39977 try {
39978 {
39979 try {
39980 if (upcall) {
39981 Swig::DirectorPureVirtualException::raise("Xapian::PostingSource::at_end");
39982 } else {
39983 result = (bool)((Xapian::PostingSource const *)arg1)->at_end();
39984 }
39985 } catch (...) {
39986 Xapian::SetPythonException();
39987 goto fail;
39988 }
39989 }
39990 } catch (Swig::DirectorException&) {
39991 goto fail;
39992 }
39993 resultobj = SWIG_From_bool(static_cast< bool >(result));
39994 return resultobj;
39995fail:
39996 return __null;
39997}
39998static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_name(PyObject *, PyObject *args) {
39999 PyObject *resultobj = 0;
40000 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
40001 void *argp1 = 0 ;
40002 int res1 = 0 ;
40003 PyObject *swig_obj[1] ;
40004 Swig::Director *director = 0;
40005 bool upcall = false;
40006 std::string result;
40007 if (!args) goto fail;
40008 swig_obj[0] = args;
40009 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
40010 if (!(res1 >= 0)) {
40011 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_name" "', argument " "1"" of type '" "Xapian::PostingSource const *""'"); goto fail; } while(0);
40012 }
40013 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
40014 director = dynamic_cast<Swig::Director*>(arg1);
40015 upcall = (director && (director->swig_get_self()==swig_obj[0]));
40016 try {
40017 {
40018 try {
40019 if (upcall) {
40020 result = ((Xapian::PostingSource const *)arg1)->Xapian::PostingSource::name();
40021 } else {
40022 result = ((Xapian::PostingSource const *)arg1)->name();
40023 }
40024 } catch (...) {
40025 Xapian::SetPythonException();
40026 goto fail;
40027 }
40028 }
40029 } catch (Swig::DirectorException&) {
40030 goto fail;
40031 }
40032 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
40033 return resultobj;
40034fail:
40035 return __null;
40036}
40037static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource_init(PyObject *, PyObject *args) {
40038 PyObject *resultobj = 0;
40039 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
40040 Xapian::Database *arg2 = 0 ;
40041 void *argp1 = 0 ;
40042 int res1 = 0 ;
40043 void *argp2 = 0 ;
40044 int res2 = 0 ;
40045 PyObject *swig_obj[2] ;
40046 Swig::Director *director = 0;
40047 bool upcall = false;
40048 if (!SWIG_Python_UnpackTuple(args,"PostingSource_init",2,2,swig_obj)) goto fail;
40049 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
40050 if (!(res1 >= 0)) {
40051 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource_init" "', argument " "1"" of type '" "Xapian::PostingSource *""'"); goto fail; } while(0);
40052 }
40053 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
40054 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[4], 0 | 0, 0);
40055 if (!(res2 >= 0)) {
40056 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "PostingSource_init" "', argument " "2"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
40057 }
40058 if (!argp2) {
40059 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "PostingSource_init" "', argument " "2"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
40060 }
40061 arg2 = reinterpret_cast< Xapian::Database * >(argp2);
40062 director = dynamic_cast<Swig::Director*>(arg1);
40063 upcall = (director && (director->swig_get_self()==swig_obj[0]));
40064 try {
40065 {
40066 try {
40067 if (upcall) {
40068 Swig::DirectorPureVirtualException::raise("Xapian::PostingSource::init");
40069 } else {
40070 (arg1)->init((Xapian::Database const &)*arg2);
40071 }
40072 } catch (...) {
40073 Xapian::SetPythonException();
40074 goto fail;
40075 }
40076 }
40077 } catch (Swig::DirectorException&) {
40078 goto fail;
40079 }
40080 resultobj = SWIG_Py_Void();
40081 return resultobj;
40082fail:
40083 return __null;
40084}
40085static __attribute__ ((__unused__)) PyObject *_wrap_PostingSource___str__(PyObject *, PyObject *args) {
40086 PyObject *resultobj = 0;
40087 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
40088 void *argp1 = 0 ;
40089 int res1 = 0 ;
40090 PyObject *swig_obj[1] ;
40091 Swig::Director *director = 0;
40092 bool upcall = false;
40093 std::string result;
40094 if (!args) goto fail;
40095 swig_obj[0] = args;
40096 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
40097 if (!(res1 >= 0)) {
40098 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "PostingSource___str__" "', argument " "1"" of type '" "Xapian::PostingSource const *""'"); goto fail; } while(0);
40099 }
40100 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
40101 director = dynamic_cast<Swig::Director*>(arg1);
40102 upcall = (director && (director->swig_get_self()==swig_obj[0]));
40103 try {
40104 {
40105 try {
40106 if (upcall) {
40107 result = ((Xapian::PostingSource const *)arg1)->Xapian::PostingSource::get_description();
40108 } else {
40109 result = ((Xapian::PostingSource const *)arg1)->get_description();
40110 }
40111 } catch (...) {
40112 Xapian::SetPythonException();
40113 goto fail;
40114 }
40115 }
40116 } catch (Swig::DirectorException&) {
40117 goto fail;
40118 }
40119 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
40120 return resultobj;
40121fail:
40122 return __null;
40123}
40124static __attribute__ ((__unused__)) PyObject *_wrap_disown_PostingSource(PyObject *, PyObject *args) {
40125 PyObject *resultobj = 0;
40126 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
40127 void *argp1 = 0 ;
40128 int res1 = 0 ;
40129 PyObject *swig_obj[1] ;
40130 if (!args) goto fail;
40131 swig_obj[0] = args;
40132 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
40133 if (!(res1 >= 0)) {
40134 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "disown_PostingSource" "', argument " "1"" of type '" "Xapian::PostingSource *""'"); goto fail; } while(0);
40135 }
40136 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
40137 {
40138 SWIG_Python_Thread_Allow _swig_thread_allow;
40139 {
40140 Swig::Director *director = dynamic_cast<Swig::Director *>(arg1);
40141 if (director) director->swig_disown();
40142 }
40143 _swig_thread_allow.end();
40144 }
40145 resultobj = SWIG_Py_Void();
40146 return resultobj;
40147fail:
40148 return __null;
40149}
40150static __attribute__ ((__unused__)) PyObject *PostingSource_swigregister(PyObject *, PyObject *args) {
40151 PyObject *obj;
40152 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
40153 SWIG_TypeNewClientData(swig_types[39], SwigPyClientData_New(obj));
40154 return SWIG_Py_Void();
40155}
40156static __attribute__ ((__unused__)) PyObject *PostingSource_swiginit(PyObject *, PyObject *args) {
40157 return SWIG_Python_InitShadowInstance(args);
40158}
40159static __attribute__ ((__unused__)) PyObject *_wrap_new_ValuePostingSource(PyObject *, PyObject *args) {
40160 PyObject *resultobj = 0;
40161 Xapian::valueno arg1 ;
40162 unsigned int val1 ;
40163 int ecode1 = 0 ;
40164 PyObject *swig_obj[1] ;
40165 Xapian::ValuePostingSource *result = 0 ;
40166 if (!args) goto fail;
40167 swig_obj[0] = args;
40168 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
40169 if (!(ecode1 >= 0)) {
40170 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_ValuePostingSource" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
40171 }
40172 arg1 = static_cast< Xapian::valueno >(val1);
40173 {
40174 SWIG_Python_Thread_Allow _swig_thread_allow;
40175 {
40176 try {
40177 result = (Xapian::ValuePostingSource *)new Xapian::ValuePostingSource(arg1);
40178 } catch (...) {
40179 _swig_thread_allow.end();
40180 Xapian::SetPythonException();
40181 goto fail;
40182 }
40183 }
40184 _swig_thread_allow.end();
40185 }
40186 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[61], ((0x1 << 1) | 0x1) | 0);
40187 return resultobj;
40188fail:
40189 return __null;
40190}
40191static __attribute__ ((__unused__)) PyObject *_wrap_delete_ValuePostingSource(PyObject *, PyObject *args) {
40192 PyObject *resultobj = 0;
40193 Xapian::ValuePostingSource *arg1 = (Xapian::ValuePostingSource *) 0 ;
40194 void *argp1 = 0 ;
40195 int res1 = 0 ;
40196 PyObject *swig_obj[1] ;
40197 if (!args) goto fail;
40198 swig_obj[0] = args;
40199 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[61], 0x1 | 0, 0);
40200 if (!(res1 >= 0)) {
40201 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ValuePostingSource" "', argument " "1"" of type '" "Xapian::ValuePostingSource *""'"); goto fail; } while(0);
40202 }
40203 arg1 = reinterpret_cast< Xapian::ValuePostingSource * >(argp1);
40204 {
40205 SWIG_Python_Thread_Allow _swig_thread_allow;
40206 {
40207 try {
40208 delete arg1;
40209 } catch (...) {
40210 _swig_thread_allow.end();
40211 Xapian::SetPythonException();
40212 goto fail;
40213 }
40214 }
40215 _swig_thread_allow.end();
40216 }
40217 resultobj = SWIG_Py_Void();
40218 return resultobj;
40219fail:
40220 return __null;
40221}
40222static __attribute__ ((__unused__)) PyObject *ValuePostingSource_swigregister(PyObject *, PyObject *args) {
40223 PyObject *obj;
40224 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
40225 SWIG_TypeNewClientData(swig_types[61], SwigPyClientData_New(obj));
40226 return SWIG_Py_Void();
40227}
40228static __attribute__ ((__unused__)) PyObject *ValuePostingSource_swiginit(PyObject *, PyObject *args) {
40229 return SWIG_Python_InitShadowInstance(args);
40230}
40231static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueWeightPostingSource(PyObject *, PyObject *args) {
40232 PyObject *resultobj = 0;
40233 Xapian::valueno arg1 ;
40234 unsigned int val1 ;
40235 int ecode1 = 0 ;
40236 PyObject *swig_obj[1] ;
40237 Xapian::ValueWeightPostingSource *result = 0 ;
40238 if (!args) goto fail;
40239 swig_obj[0] = args;
40240 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
40241 if (!(ecode1 >= 0)) {
40242 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_ValueWeightPostingSource" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
40243 }
40244 arg1 = static_cast< Xapian::valueno >(val1);
40245 {
40246 SWIG_Python_Thread_Allow _swig_thread_allow;
40247 {
40248 try {
40249 result = (Xapian::ValueWeightPostingSource *)new Xapian::ValueWeightPostingSource(arg1);
40250 } catch (...) {
40251 _swig_thread_allow.end();
40252 Xapian::SetPythonException();
40253 goto fail;
40254 }
40255 }
40256 _swig_thread_allow.end();
40257 }
40258 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[64], ((0x1 << 1) | 0x1) | 0);
40259 return resultobj;
40260fail:
40261 return __null;
40262}
40263static __attribute__ ((__unused__)) PyObject *_wrap_delete_ValueWeightPostingSource(PyObject *, PyObject *args) {
40264 PyObject *resultobj = 0;
40265 Xapian::ValueWeightPostingSource *arg1 = (Xapian::ValueWeightPostingSource *) 0 ;
40266 void *argp1 = 0 ;
40267 int res1 = 0 ;
40268 PyObject *swig_obj[1] ;
40269 if (!args) goto fail;
40270 swig_obj[0] = args;
40271 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[64], 0x1 | 0, 0);
40272 if (!(res1 >= 0)) {
40273 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ValueWeightPostingSource" "', argument " "1"" of type '" "Xapian::ValueWeightPostingSource *""'"); goto fail; } while(0);
40274 }
40275 arg1 = reinterpret_cast< Xapian::ValueWeightPostingSource * >(argp1);
40276 {
40277 SWIG_Python_Thread_Allow _swig_thread_allow;
40278 {
40279 try {
40280 delete arg1;
40281 } catch (...) {
40282 _swig_thread_allow.end();
40283 Xapian::SetPythonException();
40284 goto fail;
40285 }
40286 }
40287 _swig_thread_allow.end();
40288 }
40289 resultobj = SWIG_Py_Void();
40290 return resultobj;
40291fail:
40292 return __null;
40293}
40294static __attribute__ ((__unused__)) PyObject *ValueWeightPostingSource_swigregister(PyObject *, PyObject *args) {
40295 PyObject *obj;
40296 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
40297 SWIG_TypeNewClientData(swig_types[64], SwigPyClientData_New(obj));
40298 return SWIG_Py_Void();
40299}
40300static __attribute__ ((__unused__)) PyObject *ValueWeightPostingSource_swiginit(PyObject *, PyObject *args) {
40301 return SWIG_Python_InitShadowInstance(args);
40302}
40303static __attribute__ ((__unused__)) PyObject *_wrap_new_DecreasingValueWeightPostingSource__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
40304 PyObject *resultobj = 0;
40305 Xapian::valueno arg1 ;
40306 Xapian::docid arg2 ;
40307 Xapian::docid arg3 ;
40308 unsigned int val1 ;
40309 int ecode1 = 0 ;
40310 unsigned int val2 ;
40311 int ecode2 = 0 ;
40312 unsigned int val3 ;
40313 int ecode3 = 0 ;
40314 Xapian::DecreasingValueWeightPostingSource *result = 0 ;
40315 if ((nobjs < 3) || (nobjs > 3)) goto fail;
40316 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
40317 if (!(ecode1 >= 0)) {
40318 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DecreasingValueWeightPostingSource" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
40319 }
40320 arg1 = static_cast< Xapian::valueno >(val1);
40321 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
40322 if (!(ecode2 >= 0)) {
40323 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DecreasingValueWeightPostingSource" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
40324 }
40325 arg2 = static_cast< Xapian::docid >(val2);
40326 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
40327 if (!(ecode3 >= 0)) {
40328 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DecreasingValueWeightPostingSource" "', argument " "3"" of type '" "Xapian::docid""'"); goto fail; } while(0);
40329 }
40330 arg3 = static_cast< Xapian::docid >(val3);
40331 {
40332 SWIG_Python_Thread_Allow _swig_thread_allow;
40333 {
40334 try {
40335 result = (Xapian::DecreasingValueWeightPostingSource *)new Xapian::DecreasingValueWeightPostingSource(arg1,arg2,arg3);
40336 } catch (...) {
40337 _swig_thread_allow.end();
40338 Xapian::SetPythonException();
40339 goto fail;
40340 }
40341 }
40342 _swig_thread_allow.end();
40343 }
40344 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[13], ((0x1 << 1) | 0x1) | 0);
40345 return resultobj;
40346fail:
40347 return __null;
40348}
40349static __attribute__ ((__unused__)) PyObject *_wrap_new_DecreasingValueWeightPostingSource__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
40350 PyObject *resultobj = 0;
40351 Xapian::valueno arg1 ;
40352 Xapian::docid arg2 ;
40353 unsigned int val1 ;
40354 int ecode1 = 0 ;
40355 unsigned int val2 ;
40356 int ecode2 = 0 ;
40357 Xapian::DecreasingValueWeightPostingSource *result = 0 ;
40358 if ((nobjs < 2) || (nobjs > 2)) goto fail;
40359 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
40360 if (!(ecode1 >= 0)) {
40361 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DecreasingValueWeightPostingSource" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
40362 }
40363 arg1 = static_cast< Xapian::valueno >(val1);
40364 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
40365 if (!(ecode2 >= 0)) {
40366 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DecreasingValueWeightPostingSource" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
40367 }
40368 arg2 = static_cast< Xapian::docid >(val2);
40369 {
40370 SWIG_Python_Thread_Allow _swig_thread_allow;
40371 {
40372 try {
40373 result = (Xapian::DecreasingValueWeightPostingSource *)new Xapian::DecreasingValueWeightPostingSource(arg1,arg2);
40374 } catch (...) {
40375 _swig_thread_allow.end();
40376 Xapian::SetPythonException();
40377 goto fail;
40378 }
40379 }
40380 _swig_thread_allow.end();
40381 }
40382 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[13], ((0x1 << 1) | 0x1) | 0);
40383 return resultobj;
40384fail:
40385 return __null;
40386}
40387static __attribute__ ((__unused__)) PyObject *_wrap_new_DecreasingValueWeightPostingSource__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
40388 PyObject *resultobj = 0;
40389 Xapian::valueno arg1 ;
40390 unsigned int val1 ;
40391 int ecode1 = 0 ;
40392 Xapian::DecreasingValueWeightPostingSource *result = 0 ;
40393 if ((nobjs < 1) || (nobjs > 1)) goto fail;
40394 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
40395 if (!(ecode1 >= 0)) {
40396 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DecreasingValueWeightPostingSource" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
40397 }
40398 arg1 = static_cast< Xapian::valueno >(val1);
40399 {
40400 SWIG_Python_Thread_Allow _swig_thread_allow;
40401 {
40402 try {
40403 result = (Xapian::DecreasingValueWeightPostingSource *)new Xapian::DecreasingValueWeightPostingSource(arg1);
40404 } catch (...) {
40405 _swig_thread_allow.end();
40406 Xapian::SetPythonException();
40407 goto fail;
40408 }
40409 }
40410 _swig_thread_allow.end();
40411 }
40412 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[13], ((0x1 << 1) | 0x1) | 0);
40413 return resultobj;
40414fail:
40415 return __null;
40416}
40417static __attribute__ ((__unused__)) PyObject *_wrap_new_DecreasingValueWeightPostingSource(PyObject *self, PyObject *args) {
40418 int argc;
40419 PyObject *argv[4];
40420 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DecreasingValueWeightPostingSource",0,3,argv))) goto fail;
40421 --argc;
40422 if (argc == 1) {
40423 return _wrap_new_DecreasingValueWeightPostingSource__SWIG_2(self, argc, argv);
40424 }
40425 if (argc == 2) {
40426 return _wrap_new_DecreasingValueWeightPostingSource__SWIG_1(self, argc, argv);
40427 }
40428 if (argc == 3) {
40429 return _wrap_new_DecreasingValueWeightPostingSource__SWIG_0(self, argc, argv);
40430 }
40431fail:
40432 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DecreasingValueWeightPostingSource'.\n"
40433 " Possible C/C++ prototypes are:\n"
40434 " Xapian::DecreasingValueWeightPostingSource(Xapian::valueno,Xapian::docid,Xapian::docid)\n"
40435 " Xapian::DecreasingValueWeightPostingSource(Xapian::valueno,Xapian::docid)\n"
40436 " Xapian::DecreasingValueWeightPostingSource(Xapian::valueno)\n");
40437 return __null;
40438}
40439static __attribute__ ((__unused__)) PyObject *_wrap_delete_DecreasingValueWeightPostingSource(PyObject *, PyObject *args) {
40440 PyObject *resultobj = 0;
40441 Xapian::DecreasingValueWeightPostingSource *arg1 = (Xapian::DecreasingValueWeightPostingSource *) 0 ;
40442 void *argp1 = 0 ;
40443 int res1 = 0 ;
40444 PyObject *swig_obj[1] ;
40445 if (!args) goto fail;
40446 swig_obj[0] = args;
40447 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[13], 0x1 | 0, 0);
40448 if (!(res1 >= 0)) {
40449 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DecreasingValueWeightPostingSource" "', argument " "1"" of type '" "Xapian::DecreasingValueWeightPostingSource *""'"); goto fail; } while(0);
40450 }
40451 arg1 = reinterpret_cast< Xapian::DecreasingValueWeightPostingSource * >(argp1);
40452 {
40453 SWIG_Python_Thread_Allow _swig_thread_allow;
40454 {
40455 try {
40456 delete arg1;
40457 } catch (...) {
40458 _swig_thread_allow.end();
40459 Xapian::SetPythonException();
40460 goto fail;
40461 }
40462 }
40463 _swig_thread_allow.end();
40464 }
40465 resultobj = SWIG_Py_Void();
40466 return resultobj;
40467fail:
40468 return __null;
40469}
40470static __attribute__ ((__unused__)) PyObject *DecreasingValueWeightPostingSource_swigregister(PyObject *, PyObject *args) {
40471 PyObject *obj;
40472 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
40473 SWIG_TypeNewClientData(swig_types[13], SwigPyClientData_New(obj));
40474 return SWIG_Py_Void();
40475}
40476static __attribute__ ((__unused__)) PyObject *DecreasingValueWeightPostingSource_swiginit(PyObject *, PyObject *args) {
40477 return SWIG_Python_InitShadowInstance(args);
40478}
40479static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueMapPostingSource(PyObject *, PyObject *args) {
40480 PyObject *resultobj = 0;
40481 Xapian::valueno arg1 ;
40482 unsigned int val1 ;
40483 int ecode1 = 0 ;
40484 PyObject *swig_obj[1] ;
40485 Xapian::ValueMapPostingSource *result = 0 ;
40486 if (!args) goto fail;
40487 swig_obj[0] = args;
40488 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
40489 if (!(ecode1 >= 0)) {
40490 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_ValueMapPostingSource" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
40491 }
40492 arg1 = static_cast< Xapian::valueno >(val1);
40493 {
40494 SWIG_Python_Thread_Allow _swig_thread_allow;
40495 {
40496 try {
40497 result = (Xapian::ValueMapPostingSource *)new Xapian::ValueMapPostingSource(arg1);
40498 } catch (...) {
40499 _swig_thread_allow.end();
40500 Xapian::SetPythonException();
40501 goto fail;
40502 }
40503 }
40504 _swig_thread_allow.end();
40505 }
40506 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[60], ((0x1 << 1) | 0x1) | 0);
40507 return resultobj;
40508fail:
40509 return __null;
40510}
40511static __attribute__ ((__unused__)) PyObject *_wrap_ValueMapPostingSource_add_mapping(PyObject *, PyObject *args) {
40512 PyObject *resultobj = 0;
40513 Xapian::ValueMapPostingSource *arg1 = (Xapian::ValueMapPostingSource *) 0 ;
40514 std::string *arg2 = 0 ;
40515 double arg3 ;
40516 void *argp1 = 0 ;
40517 int res1 = 0 ;
40518 int res2 = ((0)) ;
40519 double val3 ;
40520 int ecode3 = 0 ;
40521 PyObject *swig_obj[3] ;
40522 if (!SWIG_Python_UnpackTuple(args,"ValueMapPostingSource_add_mapping",3,3,swig_obj)) goto fail;
40523 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[60], 0 | 0, 0);
40524 if (!(res1 >= 0)) {
40525 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueMapPostingSource_add_mapping" "', argument " "1"" of type '" "Xapian::ValueMapPostingSource *""'"); goto fail; } while(0);
40526 }
40527 arg1 = reinterpret_cast< Xapian::ValueMapPostingSource * >(argp1);
40528 {
40529 std::string *ptr = (std::string *)0;
40530 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
40531 if (!(res2 >= 0)) {
40532 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ValueMapPostingSource_add_mapping" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
40533 }
40534 if (!ptr) {
40535 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ValueMapPostingSource_add_mapping" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
40536 }
40537 arg2 = ptr;
40538 }
40539 ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
40540 if (!(ecode3 >= 0)) {
40541 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "ValueMapPostingSource_add_mapping" "', argument " "3"" of type '" "double""'"); goto fail; } while(0);
40542 }
40543 arg3 = static_cast< double >(val3);
40544 {
40545 SWIG_Python_Thread_Allow _swig_thread_allow;
40546 {
40547 try {
40548 (arg1)->add_mapping((std::string const &)*arg2,arg3);
40549 } catch (...) {
40550 _swig_thread_allow.end();
40551 Xapian::SetPythonException();
40552 goto fail;
40553 }
40554 }
40555 _swig_thread_allow.end();
40556 }
40557 resultobj = SWIG_Py_Void();
40558 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
40559 return resultobj;
40560fail:
40561 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
40562 return __null;
40563}
40564static __attribute__ ((__unused__)) PyObject *_wrap_ValueMapPostingSource_clear_mappings(PyObject *, PyObject *args) {
40565 PyObject *resultobj = 0;
40566 Xapian::ValueMapPostingSource *arg1 = (Xapian::ValueMapPostingSource *) 0 ;
40567 void *argp1 = 0 ;
40568 int res1 = 0 ;
40569 PyObject *swig_obj[1] ;
40570 if (!args) goto fail;
40571 swig_obj[0] = args;
40572 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[60], 0 | 0, 0);
40573 if (!(res1 >= 0)) {
40574 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueMapPostingSource_clear_mappings" "', argument " "1"" of type '" "Xapian::ValueMapPostingSource *""'"); goto fail; } while(0);
40575 }
40576 arg1 = reinterpret_cast< Xapian::ValueMapPostingSource * >(argp1);
40577 {
40578 SWIG_Python_Thread_Allow _swig_thread_allow;
40579 {
40580 try {
40581 (arg1)->clear_mappings();
40582 } catch (...) {
40583 _swig_thread_allow.end();
40584 Xapian::SetPythonException();
40585 goto fail;
40586 }
40587 }
40588 _swig_thread_allow.end();
40589 }
40590 resultobj = SWIG_Py_Void();
40591 return resultobj;
40592fail:
40593 return __null;
40594}
40595static __attribute__ ((__unused__)) PyObject *_wrap_ValueMapPostingSource_set_default_weight(PyObject *, PyObject *args) {
40596 PyObject *resultobj = 0;
40597 Xapian::ValueMapPostingSource *arg1 = (Xapian::ValueMapPostingSource *) 0 ;
40598 double arg2 ;
40599 void *argp1 = 0 ;
40600 int res1 = 0 ;
40601 double val2 ;
40602 int ecode2 = 0 ;
40603 PyObject *swig_obj[2] ;
40604 if (!SWIG_Python_UnpackTuple(args,"ValueMapPostingSource_set_default_weight",2,2,swig_obj)) goto fail;
40605 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[60], 0 | 0, 0);
40606 if (!(res1 >= 0)) {
40607 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueMapPostingSource_set_default_weight" "', argument " "1"" of type '" "Xapian::ValueMapPostingSource *""'"); goto fail; } while(0);
40608 }
40609 arg1 = reinterpret_cast< Xapian::ValueMapPostingSource * >(argp1);
40610 ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
40611 if (!(ecode2 >= 0)) {
40612 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "ValueMapPostingSource_set_default_weight" "', argument " "2"" of type '" "double""'"); goto fail; } while(0);
40613 }
40614 arg2 = static_cast< double >(val2);
40615 {
40616 SWIG_Python_Thread_Allow _swig_thread_allow;
40617 {
40618 try {
40619 (arg1)->set_default_weight(arg2);
40620 } catch (...) {
40621 _swig_thread_allow.end();
40622 Xapian::SetPythonException();
40623 goto fail;
40624 }
40625 }
40626 _swig_thread_allow.end();
40627 }
40628 resultobj = SWIG_Py_Void();
40629 return resultobj;
40630fail:
40631 return __null;
40632}
40633static __attribute__ ((__unused__)) PyObject *_wrap_delete_ValueMapPostingSource(PyObject *, PyObject *args) {
40634 PyObject *resultobj = 0;
40635 Xapian::ValueMapPostingSource *arg1 = (Xapian::ValueMapPostingSource *) 0 ;
40636 void *argp1 = 0 ;
40637 int res1 = 0 ;
40638 PyObject *swig_obj[1] ;
40639 if (!args) goto fail;
40640 swig_obj[0] = args;
40641 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[60], 0x1 | 0, 0);
40642 if (!(res1 >= 0)) {
40643 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ValueMapPostingSource" "', argument " "1"" of type '" "Xapian::ValueMapPostingSource *""'"); goto fail; } while(0);
40644 }
40645 arg1 = reinterpret_cast< Xapian::ValueMapPostingSource * >(argp1);
40646 {
40647 SWIG_Python_Thread_Allow _swig_thread_allow;
40648 {
40649 try {
40650 delete arg1;
40651 } catch (...) {
40652 _swig_thread_allow.end();
40653 Xapian::SetPythonException();
40654 goto fail;
40655 }
40656 }
40657 _swig_thread_allow.end();
40658 }
40659 resultobj = SWIG_Py_Void();
40660 return resultobj;
40661fail:
40662 return __null;
40663}
40664static __attribute__ ((__unused__)) PyObject *ValueMapPostingSource_swigregister(PyObject *, PyObject *args) {
40665 PyObject *obj;
40666 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
40667 SWIG_TypeNewClientData(swig_types[60], SwigPyClientData_New(obj));
40668 return SWIG_Py_Void();
40669}
40670static __attribute__ ((__unused__)) PyObject *ValueMapPostingSource_swiginit(PyObject *, PyObject *args) {
40671 return SWIG_Python_InitShadowInstance(args);
40672}
40673static __attribute__ ((__unused__)) PyObject *_wrap_new_FixedWeightPostingSource(PyObject *, PyObject *args) {
40674 PyObject *resultobj = 0;
40675 Xapian::weight arg1 ;
40676 double val1 ;
40677 int ecode1 = 0 ;
40678 PyObject *swig_obj[1] ;
40679 Xapian::FixedWeightPostingSource *result = 0 ;
40680 if (!args) goto fail;
40681 swig_obj[0] = args;
40682 ecode1 = SWIG_AsVal_double(swig_obj[0], &val1);
40683 if (!(ecode1 >= 0)) {
40684 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_FixedWeightPostingSource" "', argument " "1"" of type '" "Xapian::weight""'"); goto fail; } while(0);
40685 }
40686 arg1 = static_cast< Xapian::weight >(val1);
40687 {
40688 SWIG_Python_Thread_Allow _swig_thread_allow;
40689 {
40690 try {
40691 result = (Xapian::FixedWeightPostingSource *)new Xapian::FixedWeightPostingSource(arg1);
40692 } catch (...) {
40693 _swig_thread_allow.end();
40694 Xapian::SetPythonException();
40695 goto fail;
40696 }
40697 }
40698 _swig_thread_allow.end();
40699 }
40700 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[22], ((0x1 << 1) | 0x1) | 0);
40701 return resultobj;
40702fail:
40703 return __null;
40704}
40705static __attribute__ ((__unused__)) PyObject *_wrap_delete_FixedWeightPostingSource(PyObject *, PyObject *args) {
40706 PyObject *resultobj = 0;
40707 Xapian::FixedWeightPostingSource *arg1 = (Xapian::FixedWeightPostingSource *) 0 ;
40708 void *argp1 = 0 ;
40709 int res1 = 0 ;
40710 PyObject *swig_obj[1] ;
40711 if (!args) goto fail;
40712 swig_obj[0] = args;
40713 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[22], 0x1 | 0, 0);
40714 if (!(res1 >= 0)) {
40715 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_FixedWeightPostingSource" "', argument " "1"" of type '" "Xapian::FixedWeightPostingSource *""'"); goto fail; } while(0);
40716 }
40717 arg1 = reinterpret_cast< Xapian::FixedWeightPostingSource * >(argp1);
40718 {
40719 SWIG_Python_Thread_Allow _swig_thread_allow;
40720 {
40721 try {
40722 delete arg1;
40723 } catch (...) {
40724 _swig_thread_allow.end();
40725 Xapian::SetPythonException();
40726 goto fail;
40727 }
40728 }
40729 _swig_thread_allow.end();
40730 }
40731 resultobj = SWIG_Py_Void();
40732 return resultobj;
40733fail:
40734 return __null;
40735}
40736static __attribute__ ((__unused__)) PyObject *FixedWeightPostingSource_swigregister(PyObject *, PyObject *args) {
40737 PyObject *obj;
40738 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
40739 SWIG_TypeNewClientData(swig_types[22], SwigPyClientData_New(obj));
40740 return SWIG_Py_Void();
40741}
40742static __attribute__ ((__unused__)) PyObject *FixedWeightPostingSource_swiginit(PyObject *, PyObject *args) {
40743 return SWIG_Python_InitShadowInstance(args);
40744}
40745static __attribute__ ((__unused__)) PyObject *_wrap_new_MSet__SWIG_0(PyObject *, int nobjs, PyObject **) {
40746 PyObject *resultobj = 0;
40747 Xapian::MSet *result = 0 ;
40748 if ((nobjs < 0) || (nobjs > 0)) goto fail;
40749 {
40750 SWIG_Python_Thread_Allow _swig_thread_allow;
40751 {
40752 try {
40753 result = (Xapian::MSet *)new Xapian::MSet();
40754 } catch (...) {
40755 _swig_thread_allow.end();
40756 Xapian::SetPythonException();
40757 goto fail;
40758 }
40759 }
40760 _swig_thread_allow.end();
40761 }
40762 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[28], ((0x1 << 1) | 0x1) | 0);
40763 return resultobj;
40764fail:
40765 return __null;
40766}
40767static __attribute__ ((__unused__)) PyObject *_wrap_new_MSet__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
40768 PyObject *resultobj = 0;
40769 Xapian::MSet *arg1 = 0 ;
40770 void *argp1 = 0 ;
40771 int res1 = 0 ;
40772 Xapian::MSet *result = 0 ;
40773 if ((nobjs < 1) || (nobjs > 1)) goto fail;
40774 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
40775 if (!(res1 >= 0)) {
40776 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_MSet" "', argument " "1"" of type '" "Xapian::MSet const &""'"); goto fail; } while(0);
40777 }
40778 if (!argp1) {
40779 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_MSet" "', argument " "1"" of type '" "Xapian::MSet const &""'"); goto fail; } while(0);
40780 }
40781 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
40782 {
40783 SWIG_Python_Thread_Allow _swig_thread_allow;
40784 {
40785 try {
40786 result = (Xapian::MSet *)new Xapian::MSet((Xapian::MSet const &)*arg1);
40787 } catch (...) {
40788 _swig_thread_allow.end();
40789 Xapian::SetPythonException();
40790 goto fail;
40791 }
40792 }
40793 _swig_thread_allow.end();
40794 }
40795 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[28], ((0x1 << 1) | 0x1) | 0);
40796 return resultobj;
40797fail:
40798 return __null;
40799}
40800static __attribute__ ((__unused__)) PyObject *_wrap_new_MSet(PyObject *self, PyObject *args) {
40801 int argc;
40802 PyObject *argv[2];
40803 if (!(argc = SWIG_Python_UnpackTuple(args,"new_MSet",0,1,argv))) goto fail;
40804 --argc;
40805 if (argc == 0) {
40806 return _wrap_new_MSet__SWIG_0(self, argc, argv);
40807 }
40808 if (argc == 1) {
40809 return _wrap_new_MSet__SWIG_1(self, argc, argv);
40810 }
40811fail:
40812 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_MSet'.\n"
40813 " Possible C/C++ prototypes are:\n"
40814 " Xapian::MSet()\n"
40815 " Xapian::MSet(Xapian::MSet const &)\n");
40816 return __null;
40817}
40818static __attribute__ ((__unused__)) PyObject *_wrap_delete_MSet(PyObject *, PyObject *args) {
40819 PyObject *resultobj = 0;
40820 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
40821 void *argp1 = 0 ;
40822 int res1 = 0 ;
40823 PyObject *swig_obj[1] ;
40824 if (!args) goto fail;
40825 swig_obj[0] = args;
40826 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0x1 | 0, 0);
40827 if (!(res1 >= 0)) {
40828 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_MSet" "', argument " "1"" of type '" "Xapian::MSet *""'"); goto fail; } while(0);
40829 }
40830 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
40831 {
40832 SWIG_Python_Thread_Allow _swig_thread_allow;
40833 {
40834 try {
40835 delete arg1;
40836 } catch (...) {
40837 _swig_thread_allow.end();
40838 Xapian::SetPythonException();
40839 goto fail;
40840 }
40841 }
40842 _swig_thread_allow.end();
40843 }
40844 resultobj = SWIG_Py_Void();
40845 return resultobj;
40846fail:
40847 return __null;
40848}
40849static __attribute__ ((__unused__)) PyObject *_wrap_MSet_fetch__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
40850 PyObject *resultobj = 0;
40851 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
40852 Xapian::MSetIterator *arg2 = 0 ;
40853 Xapian::MSetIterator *arg3 = 0 ;
40854 void *argp1 = 0 ;
40855 int res1 = 0 ;
40856 void *argp2 = 0 ;
40857 int res2 = 0 ;
40858 void *argp3 = 0 ;
40859 int res3 = 0 ;
40860 if ((nobjs < 3) || (nobjs > 3)) goto fail;
40861 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
40862 if (!(res1 >= 0)) {
40863 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_fetch" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
40864 }
40865 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
40866 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0, 0);
40867 if (!(res2 >= 0)) {
40868 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MSet_fetch" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
40869 }
40870 if (!argp2) {
40871 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MSet_fetch" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
40872 }
40873 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
40874 res3 = SWIG_Python_ConvertPtrAndOwn(swig_obj[2], &argp3, swig_types[29], 0, 0);
40875 if (!(res3 >= 0)) {
40876 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "MSet_fetch" "', argument " "3"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
40877 }
40878 if (!argp3) {
40879 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MSet_fetch" "', argument " "3"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
40880 }
40881 arg3 = reinterpret_cast< Xapian::MSetIterator * >(argp3);
40882 {
40883 SWIG_Python_Thread_Allow _swig_thread_allow;
40884 {
40885 try {
40886 ((Xapian::MSet const *)arg1)->fetch(*arg2,*arg3);
40887 } catch (...) {
40888 _swig_thread_allow.end();
40889 Xapian::SetPythonException();
40890 goto fail;
40891 }
40892 }
40893 _swig_thread_allow.end();
40894 }
40895 resultobj = SWIG_Py_Void();
40896 return resultobj;
40897fail:
40898 return __null;
40899}
40900static __attribute__ ((__unused__)) PyObject *_wrap_MSet_fetch__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
40901 PyObject *resultobj = 0;
40902 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
40903 Xapian::MSetIterator *arg2 = 0 ;
40904 void *argp1 = 0 ;
40905 int res1 = 0 ;
40906 void *argp2 = 0 ;
40907 int res2 = 0 ;
40908 if ((nobjs < 2) || (nobjs > 2)) goto fail;
40909 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
40910 if (!(res1 >= 0)) {
40911 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_fetch" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
40912 }
40913 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
40914 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0, 0);
40915 if (!(res2 >= 0)) {
40916 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MSet_fetch" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
40917 }
40918 if (!argp2) {
40919 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MSet_fetch" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
40920 }
40921 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
40922 {
40923 SWIG_Python_Thread_Allow _swig_thread_allow;
40924 {
40925 try {
40926 ((Xapian::MSet const *)arg1)->fetch(*arg2);
40927 } catch (...) {
40928 _swig_thread_allow.end();
40929 Xapian::SetPythonException();
40930 goto fail;
40931 }
40932 }
40933 _swig_thread_allow.end();
40934 }
40935 resultobj = SWIG_Py_Void();
40936 return resultobj;
40937fail:
40938 return __null;
40939}
40940static __attribute__ ((__unused__)) PyObject *_wrap_MSet_fetch__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
40941 PyObject *resultobj = 0;
40942 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
40943 void *argp1 = 0 ;
40944 int res1 = 0 ;
40945 if ((nobjs < 1) || (nobjs > 1)) goto fail;
40946 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
40947 if (!(res1 >= 0)) {
40948 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_fetch" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
40949 }
40950 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
40951 {
40952 SWIG_Python_Thread_Allow _swig_thread_allow;
40953 {
40954 try {
40955 ((Xapian::MSet const *)arg1)->fetch();
40956 } catch (...) {
40957 _swig_thread_allow.end();
40958 Xapian::SetPythonException();
40959 goto fail;
40960 }
40961 }
40962 _swig_thread_allow.end();
40963 }
40964 resultobj = SWIG_Py_Void();
40965 return resultobj;
40966fail:
40967 return __null;
40968}
40969static __attribute__ ((__unused__)) PyObject *_wrap_MSet_fetch(PyObject *self, PyObject *args) {
40970 int argc;
40971 PyObject *argv[4];
40972 if (!(argc = SWIG_Python_UnpackTuple(args,"MSet_fetch",0,3,argv))) goto fail;
40973 --argc;
40974 if (argc == 1) {
40975 return _wrap_MSet_fetch__SWIG_2(self, argc, argv);
40976 }
40977 if (argc == 2) {
40978 return _wrap_MSet_fetch__SWIG_1(self, argc, argv);
40979 }
40980 if (argc == 3) {
40981 return _wrap_MSet_fetch__SWIG_0(self, argc, argv);
40982 }
40983fail:
40984 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'MSet_fetch'.\n"
40985 " Possible C/C++ prototypes are:\n"
40986 " fetch(Xapian::MSet const *,Xapian::MSetIterator &,Xapian::MSetIterator &)\n"
40987 " fetch(Xapian::MSet const *,Xapian::MSetIterator &)\n"
40988 " fetch(Xapian::MSet const *)\n");
40989 return __null;
40990}
40991static __attribute__ ((__unused__)) PyObject *_wrap_MSet_convert_to_percent__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
40992 PyObject *resultobj = 0;
40993 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
40994 Xapian::weight arg2 ;
40995 void *argp1 = 0 ;
40996 int res1 = 0 ;
40997 double val2 ;
40998 int ecode2 = 0 ;
40999 Xapian::percent result;
41000 if ((nobjs < 2) || (nobjs > 2)) goto fail;
41001 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41002 if (!(res1 >= 0)) {
41003 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_convert_to_percent" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41004 }
41005 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41006 ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
41007 if (!(ecode2 >= 0)) {
41008 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "MSet_convert_to_percent" "', argument " "2"" of type '" "Xapian::weight""'"); goto fail; } while(0);
41009 }
41010 arg2 = static_cast< Xapian::weight >(val2);
41011 {
41012 SWIG_Python_Thread_Allow _swig_thread_allow;
41013 {
41014 try {
41015 result = (Xapian::percent)((Xapian::MSet const *)arg1)->convert_to_percent(arg2);
41016 } catch (...) {
41017 _swig_thread_allow.end();
41018 Xapian::SetPythonException();
41019 goto fail;
41020 }
41021 }
41022 _swig_thread_allow.end();
41023 }
41024 resultobj = SWIG_From_int(static_cast< int >(result));
41025 return resultobj;
41026fail:
41027 return __null;
41028}
41029static __attribute__ ((__unused__)) PyObject *_wrap_MSet_convert_to_percent__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
41030 PyObject *resultobj = 0;
41031 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41032 Xapian::MSetIterator *arg2 = 0 ;
41033 void *argp1 = 0 ;
41034 int res1 = 0 ;
41035 void *argp2 = 0 ;
41036 int res2 = 0 ;
41037 Xapian::percent result;
41038 if ((nobjs < 2) || (nobjs > 2)) goto fail;
41039 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41040 if (!(res1 >= 0)) {
41041 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_convert_to_percent" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41042 }
41043 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41044 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0 | 0, 0);
41045 if (!(res2 >= 0)) {
41046 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MSet_convert_to_percent" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
41047 }
41048 if (!argp2) {
41049 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MSet_convert_to_percent" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
41050 }
41051 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
41052 {
41053 SWIG_Python_Thread_Allow _swig_thread_allow;
41054 {
41055 try {
41056 result = (Xapian::percent)((Xapian::MSet const *)arg1)->convert_to_percent((Xapian::MSetIterator const &)*arg2);
41057 } catch (...) {
41058 _swig_thread_allow.end();
41059 Xapian::SetPythonException();
41060 goto fail;
41061 }
41062 }
41063 _swig_thread_allow.end();
41064 }
41065 resultobj = SWIG_From_int(static_cast< int >(result));
41066 return resultobj;
41067fail:
41068 return __null;
41069}
41070static __attribute__ ((__unused__)) PyObject *_wrap_MSet_convert_to_percent(PyObject *self, PyObject *args) {
41071 int argc;
41072 PyObject *argv[3];
41073 if (!(argc = SWIG_Python_UnpackTuple(args,"MSet_convert_to_percent",0,2,argv))) goto fail;
41074 --argc;
41075 if (argc == 2) {
41076 int _v = 0;
41077 {
41078 int res = SWIG_Python_ConvertPtrAndOwn(argv[1], 0, swig_types[29], 0, 0);
41079 _v = ((res >= 0) ? 1 : 0);
41080 }
41081 if (!_v) goto check_1;
41082 return _wrap_MSet_convert_to_percent__SWIG_1(self, argc, argv);
41083 }
41084check_1:
41085 if (argc == 2) {
41086 return _wrap_MSet_convert_to_percent__SWIG_0(self, argc, argv);
41087 }
41088fail:
41089 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'MSet_convert_to_percent'.\n"
41090 " Possible C/C++ prototypes are:\n"
41091 " convert_to_percent(Xapian::MSet const *,Xapian::weight)\n"
41092 " convert_to_percent(Xapian::MSet const *,Xapian::MSetIterator const &)\n");
41093 return __null;
41094}
41095static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_termfreq(PyObject *, PyObject *args) {
41096 PyObject *resultobj = 0;
41097 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41098 std::string arg2 ;
41099 void *argp1 = 0 ;
41100 int res1 = 0 ;
41101 PyObject *swig_obj[2] ;
41102 Xapian::doccount result;
41103 if (!SWIG_Python_UnpackTuple(args,"MSet_get_termfreq",2,2,swig_obj)) goto fail;
41104 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41105 if (!(res1 >= 0)) {
41106 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_termfreq" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41107 }
41108 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41109 {
41110 std::string *ptr = (std::string *)0;
41111 int res = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
41112 if (!(res >= 0) || !ptr) {
41113 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType((((ptr ? res : -5) != (-1)) ? (ptr ? res : -5) : -5)), "in method '" "MSet_get_termfreq" "', argument " "2"" of type '" "std::string""'"); goto fail; } while(0);
41114 }
41115 arg2 = *ptr;
41116 if (((res >= 0) && (res & ((1 << 8) << 1)))) delete ptr;
41117 }
41118 {
41119 SWIG_Python_Thread_Allow _swig_thread_allow;
41120 {
41121 try {
41122 result = (Xapian::doccount)((Xapian::MSet const *)arg1)->get_termfreq(arg2);
41123 } catch (...) {
41124 _swig_thread_allow.end();
41125 Xapian::SetPythonException();
41126 goto fail;
41127 }
41128 }
41129 _swig_thread_allow.end();
41130 }
41131 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41132 return resultobj;
41133fail:
41134 return __null;
41135}
41136static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_termweight(PyObject *, PyObject *args) {
41137 PyObject *resultobj = 0;
41138 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41139 std::string arg2 ;
41140 void *argp1 = 0 ;
41141 int res1 = 0 ;
41142 PyObject *swig_obj[2] ;
41143 Xapian::weight result;
41144 if (!SWIG_Python_UnpackTuple(args,"MSet_get_termweight",2,2,swig_obj)) goto fail;
41145 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41146 if (!(res1 >= 0)) {
41147 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_termweight" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41148 }
41149 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41150 {
41151 std::string *ptr = (std::string *)0;
41152 int res = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
41153 if (!(res >= 0) || !ptr) {
41154 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType((((ptr ? res : -5) != (-1)) ? (ptr ? res : -5) : -5)), "in method '" "MSet_get_termweight" "', argument " "2"" of type '" "std::string""'"); goto fail; } while(0);
41155 }
41156 arg2 = *ptr;
41157 if (((res >= 0) && (res & ((1 << 8) << 1)))) delete ptr;
41158 }
41159 {
41160 SWIG_Python_Thread_Allow _swig_thread_allow;
41161 {
41162 try {
41163 result = (Xapian::weight)((Xapian::MSet const *)arg1)->get_termweight(arg2);
41164 } catch (...) {
41165 _swig_thread_allow.end();
41166 Xapian::SetPythonException();
41167 goto fail;
41168 }
41169 }
41170 _swig_thread_allow.end();
41171 }
41172 resultobj = PyFloat_FromDouble(static_cast< double >(result));
41173 return resultobj;
41174fail:
41175 return __null;
41176}
41177static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_firstitem(PyObject *, PyObject *args) {
41178 PyObject *resultobj = 0;
41179 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41180 void *argp1 = 0 ;
41181 int res1 = 0 ;
41182 PyObject *swig_obj[1] ;
41183 Xapian::doccount result;
41184 if (!args) goto fail;
41185 swig_obj[0] = args;
41186 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41187 if (!(res1 >= 0)) {
41188 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_firstitem" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41189 }
41190 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41191 {
41192 SWIG_Python_Thread_Allow _swig_thread_allow;
41193 {
41194 try {
41195 result = (Xapian::doccount)((Xapian::MSet const *)arg1)->get_firstitem();
41196 } catch (...) {
41197 _swig_thread_allow.end();
41198 Xapian::SetPythonException();
41199 goto fail;
41200 }
41201 }
41202 _swig_thread_allow.end();
41203 }
41204 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41205 return resultobj;
41206fail:
41207 return __null;
41208}
41209static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_matches_lower_bound(PyObject *, PyObject *args) {
41210 PyObject *resultobj = 0;
41211 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41212 void *argp1 = 0 ;
41213 int res1 = 0 ;
41214 PyObject *swig_obj[1] ;
41215 Xapian::doccount result;
41216 if (!args) goto fail;
41217 swig_obj[0] = args;
41218 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41219 if (!(res1 >= 0)) {
41220 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_matches_lower_bound" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41221 }
41222 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41223 {
41224 SWIG_Python_Thread_Allow _swig_thread_allow;
41225 {
41226 try {
41227 result = (Xapian::doccount)((Xapian::MSet const *)arg1)->get_matches_lower_bound();
41228 } catch (...) {
41229 _swig_thread_allow.end();
41230 Xapian::SetPythonException();
41231 goto fail;
41232 }
41233 }
41234 _swig_thread_allow.end();
41235 }
41236 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41237 return resultobj;
41238fail:
41239 return __null;
41240}
41241static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_matches_estimated(PyObject *, PyObject *args) {
41242 PyObject *resultobj = 0;
41243 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41244 void *argp1 = 0 ;
41245 int res1 = 0 ;
41246 PyObject *swig_obj[1] ;
41247 Xapian::doccount result;
41248 if (!args) goto fail;
41249 swig_obj[0] = args;
41250 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41251 if (!(res1 >= 0)) {
41252 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_matches_estimated" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41253 }
41254 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41255 {
41256 SWIG_Python_Thread_Allow _swig_thread_allow;
41257 {
41258 try {
41259 result = (Xapian::doccount)((Xapian::MSet const *)arg1)->get_matches_estimated();
41260 } catch (...) {
41261 _swig_thread_allow.end();
41262 Xapian::SetPythonException();
41263 goto fail;
41264 }
41265 }
41266 _swig_thread_allow.end();
41267 }
41268 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41269 return resultobj;
41270fail:
41271 return __null;
41272}
41273static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_matches_upper_bound(PyObject *, PyObject *args) {
41274 PyObject *resultobj = 0;
41275 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41276 void *argp1 = 0 ;
41277 int res1 = 0 ;
41278 PyObject *swig_obj[1] ;
41279 Xapian::doccount result;
41280 if (!args) goto fail;
41281 swig_obj[0] = args;
41282 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41283 if (!(res1 >= 0)) {
41284 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_matches_upper_bound" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41285 }
41286 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41287 {
41288 SWIG_Python_Thread_Allow _swig_thread_allow;
41289 {
41290 try {
41291 result = (Xapian::doccount)((Xapian::MSet const *)arg1)->get_matches_upper_bound();
41292 } catch (...) {
41293 _swig_thread_allow.end();
41294 Xapian::SetPythonException();
41295 goto fail;
41296 }
41297 }
41298 _swig_thread_allow.end();
41299 }
41300 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41301 return resultobj;
41302fail:
41303 return __null;
41304}
41305static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_uncollapsed_matches_lower_bound(PyObject *, PyObject *args) {
41306 PyObject *resultobj = 0;
41307 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41308 void *argp1 = 0 ;
41309 int res1 = 0 ;
41310 PyObject *swig_obj[1] ;
41311 Xapian::doccount result;
41312 if (!args) goto fail;
41313 swig_obj[0] = args;
41314 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41315 if (!(res1 >= 0)) {
41316 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_uncollapsed_matches_lower_bound" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41317 }
41318 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41319 {
41320 SWIG_Python_Thread_Allow _swig_thread_allow;
41321 {
41322 try {
41323 result = (Xapian::doccount)((Xapian::MSet const *)arg1)->get_uncollapsed_matches_lower_bound();
41324 } catch (...) {
41325 _swig_thread_allow.end();
41326 Xapian::SetPythonException();
41327 goto fail;
41328 }
41329 }
41330 _swig_thread_allow.end();
41331 }
41332 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41333 return resultobj;
41334fail:
41335 return __null;
41336}
41337static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_uncollapsed_matches_estimated(PyObject *, PyObject *args) {
41338 PyObject *resultobj = 0;
41339 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41340 void *argp1 = 0 ;
41341 int res1 = 0 ;
41342 PyObject *swig_obj[1] ;
41343 Xapian::doccount result;
41344 if (!args) goto fail;
41345 swig_obj[0] = args;
41346 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41347 if (!(res1 >= 0)) {
41348 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_uncollapsed_matches_estimated" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41349 }
41350 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41351 {
41352 SWIG_Python_Thread_Allow _swig_thread_allow;
41353 {
41354 try {
41355 result = (Xapian::doccount)((Xapian::MSet const *)arg1)->get_uncollapsed_matches_estimated();
41356 } catch (...) {
41357 _swig_thread_allow.end();
41358 Xapian::SetPythonException();
41359 goto fail;
41360 }
41361 }
41362 _swig_thread_allow.end();
41363 }
41364 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41365 return resultobj;
41366fail:
41367 return __null;
41368}
41369static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_uncollapsed_matches_upper_bound(PyObject *, PyObject *args) {
41370 PyObject *resultobj = 0;
41371 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41372 void *argp1 = 0 ;
41373 int res1 = 0 ;
41374 PyObject *swig_obj[1] ;
41375 Xapian::doccount result;
41376 if (!args) goto fail;
41377 swig_obj[0] = args;
41378 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41379 if (!(res1 >= 0)) {
41380 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_uncollapsed_matches_upper_bound" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41381 }
41382 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41383 {
41384 SWIG_Python_Thread_Allow _swig_thread_allow;
41385 {
41386 try {
41387 result = (Xapian::doccount)((Xapian::MSet const *)arg1)->get_uncollapsed_matches_upper_bound();
41388 } catch (...) {
41389 _swig_thread_allow.end();
41390 Xapian::SetPythonException();
41391 goto fail;
41392 }
41393 }
41394 _swig_thread_allow.end();
41395 }
41396 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41397 return resultobj;
41398fail:
41399 return __null;
41400}
41401static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_max_possible(PyObject *, PyObject *args) {
41402 PyObject *resultobj = 0;
41403 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41404 void *argp1 = 0 ;
41405 int res1 = 0 ;
41406 PyObject *swig_obj[1] ;
41407 Xapian::weight result;
41408 if (!args) goto fail;
41409 swig_obj[0] = args;
41410 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41411 if (!(res1 >= 0)) {
41412 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_max_possible" "', argument " "1"" of type '" "Xapian::MSet *""'"); goto fail; } while(0);
41413 }
41414 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41415 {
41416 SWIG_Python_Thread_Allow _swig_thread_allow;
41417 {
41418 try {
41419 result = (Xapian::weight)(arg1)->get_max_possible();
41420 } catch (...) {
41421 _swig_thread_allow.end();
41422 Xapian::SetPythonException();
41423 goto fail;
41424 }
41425 }
41426 _swig_thread_allow.end();
41427 }
41428 resultobj = PyFloat_FromDouble(static_cast< double >(result));
41429 return resultobj;
41430fail:
41431 return __null;
41432}
41433static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_max_attained(PyObject *, PyObject *args) {
41434 PyObject *resultobj = 0;
41435 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41436 void *argp1 = 0 ;
41437 int res1 = 0 ;
41438 PyObject *swig_obj[1] ;
41439 Xapian::weight result;
41440 if (!args) goto fail;
41441 swig_obj[0] = args;
41442 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41443 if (!(res1 >= 0)) {
41444 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_max_attained" "', argument " "1"" of type '" "Xapian::MSet *""'"); goto fail; } while(0);
41445 }
41446 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41447 {
41448 SWIG_Python_Thread_Allow _swig_thread_allow;
41449 {
41450 try {
41451 result = (Xapian::weight)(arg1)->get_max_attained();
41452 } catch (...) {
41453 _swig_thread_allow.end();
41454 Xapian::SetPythonException();
41455 goto fail;
41456 }
41457 }
41458 _swig_thread_allow.end();
41459 }
41460 resultobj = PyFloat_FromDouble(static_cast< double >(result));
41461 return resultobj;
41462fail:
41463 return __null;
41464}
41465static __attribute__ ((__unused__)) PyObject *_wrap_MSet_size(PyObject *, PyObject *args) {
41466 PyObject *resultobj = 0;
41467 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41468 void *argp1 = 0 ;
41469 int res1 = 0 ;
41470 PyObject *swig_obj[1] ;
41471 Xapian::doccount result;
41472 if (!args) goto fail;
41473 swig_obj[0] = args;
41474 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41475 if (!(res1 >= 0)) {
41476 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_size" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41477 }
41478 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41479 {
41480 SWIG_Python_Thread_Allow _swig_thread_allow;
41481 {
41482 try {
41483 result = (Xapian::doccount)((Xapian::MSet const *)arg1)->size();
41484 } catch (...) {
41485 _swig_thread_allow.end();
41486 Xapian::SetPythonException();
41487 goto fail;
41488 }
41489 }
41490 _swig_thread_allow.end();
41491 }
41492 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41493 return resultobj;
41494fail:
41495 return __null;
41496}
41497static __attribute__ ((__unused__)) PyObject *_wrap_MSet_empty(PyObject *, PyObject *args) {
41498 PyObject *resultobj = 0;
41499 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41500 void *argp1 = 0 ;
41501 int res1 = 0 ;
41502 PyObject *swig_obj[1] ;
41503 bool result;
41504 if (!args) goto fail;
41505 swig_obj[0] = args;
41506 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41507 if (!(res1 >= 0)) {
41508 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_empty" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41509 }
41510 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41511 {
41512 SWIG_Python_Thread_Allow _swig_thread_allow;
41513 {
41514 try {
41515 result = (bool)((Xapian::MSet const *)arg1)->empty();
41516 } catch (...) {
41517 _swig_thread_allow.end();
41518 Xapian::SetPythonException();
41519 goto fail;
41520 }
41521 }
41522 _swig_thread_allow.end();
41523 }
41524 resultobj = SWIG_From_bool(static_cast< bool >(result));
41525 return resultobj;
41526fail:
41527 return __null;
41528}
41529static __attribute__ ((__unused__)) PyObject *_wrap_MSet_begin(PyObject *, PyObject *args) {
41530 PyObject *resultobj = 0;
41531 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41532 void *argp1 = 0 ;
41533 int res1 = 0 ;
41534 PyObject *swig_obj[1] ;
41535 Xapian::MSetIterator result;
41536 if (!args) goto fail;
41537 swig_obj[0] = args;
41538 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41539 if (!(res1 >= 0)) {
41540 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_begin" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41541 }
41542 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41543 {
41544 SWIG_Python_Thread_Allow _swig_thread_allow;
41545 {
41546 try {
41547 result = ((Xapian::MSet const *)arg1)->begin();
41548 } catch (...) {
41549 _swig_thread_allow.end();
41550 Xapian::SetPythonException();
41551 goto fail;
41552 }
41553 }
41554 _swig_thread_allow.end();
41555 }
41556 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSetIterator(static_cast< const Xapian::MSetIterator& >(result))), swig_types[29], 0x1 | 0);
41557 return resultobj;
41558fail:
41559 return __null;
41560}
41561static __attribute__ ((__unused__)) PyObject *_wrap_MSet_end(PyObject *, PyObject *args) {
41562 PyObject *resultobj = 0;
41563 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41564 void *argp1 = 0 ;
41565 int res1 = 0 ;
41566 PyObject *swig_obj[1] ;
41567 Xapian::MSetIterator result;
41568 if (!args) goto fail;
41569 swig_obj[0] = args;
41570 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41571 if (!(res1 >= 0)) {
41572 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_end" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41573 }
41574 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41575 {
41576 SWIG_Python_Thread_Allow _swig_thread_allow;
41577 {
41578 try {
41579 result = ((Xapian::MSet const *)arg1)->end();
41580 } catch (...) {
41581 _swig_thread_allow.end();
41582 Xapian::SetPythonException();
41583 goto fail;
41584 }
41585 }
41586 _swig_thread_allow.end();
41587 }
41588 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSetIterator(static_cast< const Xapian::MSetIterator& >(result))), swig_types[29], 0x1 | 0);
41589 return resultobj;
41590fail:
41591 return __null;
41592}
41593static __attribute__ ((__unused__)) PyObject *_wrap_MSet_back(PyObject *, PyObject *args) {
41594 PyObject *resultobj = 0;
41595 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41596 void *argp1 = 0 ;
41597 int res1 = 0 ;
41598 PyObject *swig_obj[1] ;
41599 Xapian::MSetIterator result;
41600 if (!args) goto fail;
41601 swig_obj[0] = args;
41602 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41603 if (!(res1 >= 0)) {
41604 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_back" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41605 }
41606 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41607 {
41608 SWIG_Python_Thread_Allow _swig_thread_allow;
41609 {
41610 try {
41611 result = ((Xapian::MSet const *)arg1)->back();
41612 } catch (...) {
41613 _swig_thread_allow.end();
41614 Xapian::SetPythonException();
41615 goto fail;
41616 }
41617 }
41618 _swig_thread_allow.end();
41619 }
41620 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSetIterator(static_cast< const Xapian::MSetIterator& >(result))), swig_types[29], 0x1 | 0);
41621 return resultobj;
41622fail:
41623 return __null;
41624}
41625static __attribute__ ((__unused__)) PyObject *_wrap_MSet__get_hit_internal(PyObject *, PyObject *args) {
41626 PyObject *resultobj = 0;
41627 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41628 Xapian::doccount arg2 ;
41629 void *argp1 = 0 ;
41630 int res1 = 0 ;
41631 unsigned int val2 ;
41632 int ecode2 = 0 ;
41633 PyObject *swig_obj[2] ;
41634 Xapian::MSetIterator result;
41635 if (!SWIG_Python_UnpackTuple(args,"MSet__get_hit_internal",2,2,swig_obj)) goto fail;
41636 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41637 if (!(res1 >= 0)) {
41638 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet__get_hit_internal" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41639 }
41640 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41641 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
41642 if (!(ecode2 >= 0)) {
41643 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "MSet__get_hit_internal" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
41644 }
41645 arg2 = static_cast< Xapian::doccount >(val2);
41646 {
41647 SWIG_Python_Thread_Allow _swig_thread_allow;
41648 {
41649 try {
41650 result = Xapian_MSet_get_hit((Xapian::MSet const *)arg1,arg2);
41651 } catch (...) {
41652 _swig_thread_allow.end();
41653 Xapian::SetPythonException();
41654 goto fail;
41655 }
41656 }
41657 _swig_thread_allow.end();
41658 }
41659 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSetIterator(static_cast< const Xapian::MSetIterator& >(result))), swig_types[29], 0x1 | 0);
41660 return resultobj;
41661fail:
41662 return __null;
41663}
41664static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_document_percentage(PyObject *, PyObject *args) {
41665 PyObject *resultobj = 0;
41666 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41667 Xapian::doccount arg2 ;
41668 void *argp1 = 0 ;
41669 int res1 = 0 ;
41670 unsigned int val2 ;
41671 int ecode2 = 0 ;
41672 PyObject *swig_obj[2] ;
41673 int result;
41674 if (!SWIG_Python_UnpackTuple(args,"MSet_get_document_percentage",2,2,swig_obj)) goto fail;
41675 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41676 if (!(res1 >= 0)) {
41677 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_document_percentage" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41678 }
41679 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41680 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
41681 if (!(ecode2 >= 0)) {
41682 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "MSet_get_document_percentage" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
41683 }
41684 arg2 = static_cast< Xapian::doccount >(val2);
41685 {
41686 SWIG_Python_Thread_Allow _swig_thread_allow;
41687 {
41688 try {
41689 result = (int)Xapian_MSet_get_document_percentage((Xapian::MSet const *)arg1,arg2);
41690 } catch (...) {
41691 _swig_thread_allow.end();
41692 Xapian::SetPythonException();
41693 goto fail;
41694 }
41695 }
41696 _swig_thread_allow.end();
41697 }
41698 resultobj = SWIG_From_int(static_cast< int >(result));
41699 return resultobj;
41700fail:
41701 return __null;
41702}
41703static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_document(PyObject *, PyObject *args) {
41704 PyObject *resultobj = 0;
41705 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41706 Xapian::doccount arg2 ;
41707 void *argp1 = 0 ;
41708 int res1 = 0 ;
41709 unsigned int val2 ;
41710 int ecode2 = 0 ;
41711 PyObject *swig_obj[2] ;
41712 Xapian::Document result;
41713 if (!SWIG_Python_UnpackTuple(args,"MSet_get_document",2,2,swig_obj)) goto fail;
41714 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41715 if (!(res1 >= 0)) {
41716 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_document" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41717 }
41718 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41719 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
41720 if (!(ecode2 >= 0)) {
41721 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "MSet_get_document" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
41722 }
41723 arg2 = static_cast< Xapian::doccount >(val2);
41724 {
41725 SWIG_Python_Thread_Allow _swig_thread_allow;
41726 {
41727 try {
41728 result = Xapian_MSet_get_document((Xapian::MSet const *)arg1,arg2);
41729 } catch (...) {
41730 _swig_thread_allow.end();
41731 Xapian::SetPythonException();
41732 goto fail;
41733 }
41734 }
41735 _swig_thread_allow.end();
41736 }
41737 resultobj = SWIG_Python_NewPointerObj((new Xapian::Document(static_cast< const Xapian::Document& >(result))), swig_types[15], 0x1 | 0);
41738 return resultobj;
41739fail:
41740 return __null;
41741}
41742static __attribute__ ((__unused__)) PyObject *_wrap_MSet_get_docid(PyObject *, PyObject *args) {
41743 PyObject *resultobj = 0;
41744 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41745 Xapian::doccount arg2 ;
41746 void *argp1 = 0 ;
41747 int res1 = 0 ;
41748 unsigned int val2 ;
41749 int ecode2 = 0 ;
41750 PyObject *swig_obj[2] ;
41751 Xapian::docid result;
41752 if (!SWIG_Python_UnpackTuple(args,"MSet_get_docid",2,2,swig_obj)) goto fail;
41753 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41754 if (!(res1 >= 0)) {
41755 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_get_docid" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41756 }
41757 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41758 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
41759 if (!(ecode2 >= 0)) {
41760 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "MSet_get_docid" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
41761 }
41762 arg2 = static_cast< Xapian::doccount >(val2);
41763 {
41764 SWIG_Python_Thread_Allow _swig_thread_allow;
41765 {
41766 try {
41767 result = (Xapian::docid)Xapian_MSet_get_docid((Xapian::MSet const *)arg1,arg2);
41768 } catch (...) {
41769 _swig_thread_allow.end();
41770 Xapian::SetPythonException();
41771 goto fail;
41772 }
41773 }
41774 _swig_thread_allow.end();
41775 }
41776 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
41777 return resultobj;
41778fail:
41779 return __null;
41780}
41781static __attribute__ ((__unused__)) PyObject *_wrap_MSet___str__(PyObject *, PyObject *args) {
41782 PyObject *resultobj = 0;
41783 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41784 void *argp1 = 0 ;
41785 int res1 = 0 ;
41786 PyObject *swig_obj[1] ;
41787 std::string result;
41788 if (!args) goto fail;
41789 swig_obj[0] = args;
41790 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41791 if (!(res1 >= 0)) {
41792 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet___str__" "', argument " "1"" of type '" "Xapian::MSet const *""'"); goto fail; } while(0);
41793 }
41794 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41795 {
41796 SWIG_Python_Thread_Allow _swig_thread_allow;
41797 {
41798 try {
41799 result = ((Xapian::MSet const *)arg1)->get_description();
41800 } catch (...) {
41801 _swig_thread_allow.end();
41802 Xapian::SetPythonException();
41803 goto fail;
41804 }
41805 }
41806 _swig_thread_allow.end();
41807 }
41808 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
41809 return resultobj;
41810fail:
41811 return __null;
41812}
41813static __attribute__ ((__unused__)) PyObject *_wrap_MSet_items_get(PyObject *, PyObject *args) {
41814 PyObject *resultobj = 0;
41815 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41816 void *argp1 = 0 ;
41817 int res1 = 0 ;
41818 PyObject *swig_obj[1] ;
41819 PyObject *result = 0 ;
41820 if (!args) goto fail;
41821 swig_obj[0] = args;
41822 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41823 if (!(res1 >= 0)) {
41824 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet_items_get" "', argument " "1"" of type '" "Xapian::MSet *""'"); goto fail; } while(0);
41825 }
41826 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41827 result = (PyObject *)Xapian_MSet_items_get(arg1);
41828 resultobj = result;
41829 return resultobj;
41830fail:
41831 return __null;
41832}
41833static __attribute__ ((__unused__)) PyObject *_wrap_MSet___cmp__(PyObject *, PyObject *args) {
41834 PyObject *resultobj = 0;
41835 Xapian::MSet *arg1 = (Xapian::MSet *) 0 ;
41836 Xapian::MSet *arg2 = 0 ;
41837 void *argp1 = 0 ;
41838 int res1 = 0 ;
41839 void *argp2 = 0 ;
41840 int res2 = 0 ;
41841 PyObject *swig_obj[2] ;
41842 int result;
41843 if (!SWIG_Python_UnpackTuple(args,"MSet___cmp__",2,2,swig_obj)) goto fail;
41844 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[28], 0 | 0, 0);
41845 if (!(res1 >= 0)) {
41846 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSet___cmp__" "', argument " "1"" of type '" "Xapian::MSet *""'"); goto fail; } while(0);
41847 }
41848 arg1 = reinterpret_cast< Xapian::MSet * >(argp1);
41849 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[28], 0 | 0, 0);
41850 if (!(res2 >= 0)) {
41851 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MSet___cmp__" "', argument " "2"" of type '" "Xapian::MSet const &""'"); goto fail; } while(0);
41852 }
41853 if (!argp2) {
41854 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MSet___cmp__" "', argument " "2"" of type '" "Xapian::MSet const &""'"); goto fail; } while(0);
41855 }
41856 arg2 = reinterpret_cast< Xapian::MSet * >(argp2);
41857 {
41858 SWIG_Python_Thread_Allow _swig_thread_allow;
41859 result = (int)Xapian_MSet___cmp__(arg1,(Xapian::MSet const &)*arg2);
41860 _swig_thread_allow.end();
41861 }
41862 resultobj = SWIG_From_int(static_cast< int >(result));
41863 return resultobj;
41864fail:
41865 return __null;
41866}
41867static __attribute__ ((__unused__)) PyObject *MSet_swigregister(PyObject *, PyObject *args) {
41868 PyObject *obj;
41869 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
41870 SWIG_TypeNewClientData(swig_types[28], SwigPyClientData_New(obj));
41871 return SWIG_Py_Void();
41872}
41873static __attribute__ ((__unused__)) PyObject *MSet_swiginit(PyObject *, PyObject *args) {
41874 return SWIG_Python_InitShadowInstance(args);
41875}
41876static __attribute__ ((__unused__)) PyObject *_wrap_new_MSetIterator__SWIG_0(PyObject *, int nobjs, PyObject **) {
41877 PyObject *resultobj = 0;
41878 Xapian::MSetIterator *result = 0 ;
41879 if ((nobjs < 0) || (nobjs > 0)) goto fail;
41880 {
41881 SWIG_Python_Thread_Allow _swig_thread_allow;
41882 {
41883 try {
41884 result = (Xapian::MSetIterator *)new Xapian::MSetIterator();
41885 } catch (...) {
41886 _swig_thread_allow.end();
41887 Xapian::SetPythonException();
41888 goto fail;
41889 }
41890 }
41891 _swig_thread_allow.end();
41892 }
41893 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[29], ((0x1 << 1) | 0x1) | 0);
41894 return resultobj;
41895fail:
41896 return __null;
41897}
41898static __attribute__ ((__unused__)) PyObject *_wrap_new_MSetIterator__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
41899 PyObject *resultobj = 0;
41900 Xapian::MSetIterator *arg1 = 0 ;
41901 void *argp1 = 0 ;
41902 int res1 = 0 ;
41903 Xapian::MSetIterator *result = 0 ;
41904 if ((nobjs < 1) || (nobjs > 1)) goto fail;
41905 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
41906 if (!(res1 >= 0)) {
41907 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_MSetIterator" "', argument " "1"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
41908 }
41909 if (!argp1) {
41910 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_MSetIterator" "', argument " "1"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
41911 }
41912 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
41913 {
41914 SWIG_Python_Thread_Allow _swig_thread_allow;
41915 {
41916 try {
41917 result = (Xapian::MSetIterator *)new Xapian::MSetIterator((Xapian::MSetIterator const &)*arg1);
41918 } catch (...) {
41919 _swig_thread_allow.end();
41920 Xapian::SetPythonException();
41921 goto fail;
41922 }
41923 }
41924 _swig_thread_allow.end();
41925 }
41926 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[29], ((0x1 << 1) | 0x1) | 0);
41927 return resultobj;
41928fail:
41929 return __null;
41930}
41931static __attribute__ ((__unused__)) PyObject *_wrap_new_MSetIterator(PyObject *self, PyObject *args) {
41932 int argc;
41933 PyObject *argv[2];
41934 if (!(argc = SWIG_Python_UnpackTuple(args,"new_MSetIterator",0,1,argv))) goto fail;
41935 --argc;
41936 if (argc == 0) {
41937 return _wrap_new_MSetIterator__SWIG_0(self, argc, argv);
41938 }
41939 if (argc == 1) {
41940 return _wrap_new_MSetIterator__SWIG_1(self, argc, argv);
41941 }
41942fail:
41943 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_MSetIterator'.\n"
41944 " Possible C/C++ prototypes are:\n"
41945 " Xapian::MSetIterator()\n"
41946 " Xapian::MSetIterator(Xapian::MSetIterator const &)\n");
41947 return __null;
41948}
41949static __attribute__ ((__unused__)) PyObject *_wrap_delete_MSetIterator(PyObject *, PyObject *args) {
41950 PyObject *resultobj = 0;
41951 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
41952 void *argp1 = 0 ;
41953 int res1 = 0 ;
41954 PyObject *swig_obj[1] ;
41955 if (!args) goto fail;
41956 swig_obj[0] = args;
41957 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0x1 | 0, 0);
41958 if (!(res1 >= 0)) {
41959 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_MSetIterator" "', argument " "1"" of type '" "Xapian::MSetIterator *""'"); goto fail; } while(0);
41960 }
41961 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
41962 {
41963 SWIG_Python_Thread_Allow _swig_thread_allow;
41964 {
41965 try {
41966 delete arg1;
41967 } catch (...) {
41968 _swig_thread_allow.end();
41969 Xapian::SetPythonException();
41970 goto fail;
41971 }
41972 }
41973 _swig_thread_allow.end();
41974 }
41975 resultobj = SWIG_Py_Void();
41976 return resultobj;
41977fail:
41978 return __null;
41979}
41980static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_get_docid(PyObject *, PyObject *args) {
41981 PyObject *resultobj = 0;
41982 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
41983 void *argp1 = 0 ;
41984 int res1 = 0 ;
41985 PyObject *swig_obj[1] ;
41986 Xapian::docid result;
41987 if (!args) goto fail;
41988 swig_obj[0] = args;
41989 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
41990 if (!(res1 >= 0)) {
41991 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_get_docid" "', argument " "1"" of type '" "Xapian::MSetIterator const *""'"); goto fail; } while(0);
41992 }
41993 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
41994 {
41995 SWIG_Python_Thread_Allow _swig_thread_allow;
41996 {
41997 try {
41998 result = (Xapian::docid)Xapian_MSetIterator_get_docid((Xapian::MSetIterator const *)arg1);
41999 } catch (...) {
42000 _swig_thread_allow.end();
42001 Xapian::SetPythonException();
42002 goto fail;
42003 }
42004 }
42005 _swig_thread_allow.end();
42006 }
42007 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
42008 return resultobj;
42009fail:
42010 return __null;
42011}
42012static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_next(PyObject *, PyObject *args) {
42013 PyObject *resultobj = 0;
42014 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42015 void *argp1 = 0 ;
42016 int res1 = 0 ;
42017 PyObject *swig_obj[1] ;
42018 if (!args) goto fail;
42019 swig_obj[0] = args;
42020 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42021 if (!(res1 >= 0)) {
42022 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_next" "', argument " "1"" of type '" "Xapian::MSetIterator *""'"); goto fail; } while(0);
42023 }
42024 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42025 {
42026 SWIG_Python_Thread_Allow _swig_thread_allow;
42027 {
42028 try {
42029 Xapian_MSetIterator_next(arg1);
42030 } catch (...) {
42031 _swig_thread_allow.end();
42032 Xapian::SetPythonException();
42033 goto fail;
42034 }
42035 }
42036 _swig_thread_allow.end();
42037 }
42038 resultobj = SWIG_Py_Void();
42039 return resultobj;
42040fail:
42041 return __null;
42042}
42043static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_prev(PyObject *, PyObject *args) {
42044 PyObject *resultobj = 0;
42045 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42046 void *argp1 = 0 ;
42047 int res1 = 0 ;
42048 PyObject *swig_obj[1] ;
42049 if (!args) goto fail;
42050 swig_obj[0] = args;
42051 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42052 if (!(res1 >= 0)) {
42053 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_prev" "', argument " "1"" of type '" "Xapian::MSetIterator *""'"); goto fail; } while(0);
42054 }
42055 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42056 {
42057 SWIG_Python_Thread_Allow _swig_thread_allow;
42058 {
42059 try {
42060 Xapian_MSetIterator_prev(arg1);
42061 } catch (...) {
42062 _swig_thread_allow.end();
42063 Xapian::SetPythonException();
42064 goto fail;
42065 }
42066 }
42067 _swig_thread_allow.end();
42068 }
42069 resultobj = SWIG_Py_Void();
42070 return resultobj;
42071fail:
42072 return __null;
42073}
42074static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_equals(PyObject *, PyObject *args) {
42075 PyObject *resultobj = 0;
42076 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42077 Xapian::MSetIterator *arg2 = 0 ;
42078 void *argp1 = 0 ;
42079 int res1 = 0 ;
42080 void *argp2 = 0 ;
42081 int res2 = 0 ;
42082 PyObject *swig_obj[2] ;
42083 bool result;
42084 if (!SWIG_Python_UnpackTuple(args,"MSetIterator_equals",2,2,swig_obj)) goto fail;
42085 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42086 if (!(res1 >= 0)) {
42087 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_equals" "', argument " "1"" of type '" "Xapian::MSetIterator const *""'"); goto fail; } while(0);
42088 }
42089 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42090 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0 | 0, 0);
42091 if (!(res2 >= 0)) {
42092 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MSetIterator_equals" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
42093 }
42094 if (!argp2) {
42095 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MSetIterator_equals" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
42096 }
42097 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
42098 {
42099 SWIG_Python_Thread_Allow _swig_thread_allow;
42100 {
42101 try {
42102 result = (bool)Xapian_MSetIterator_equals((Xapian::MSetIterator const *)arg1,(Xapian::MSetIterator const &)*arg2);
42103 } catch (...) {
42104 _swig_thread_allow.end();
42105 Xapian::SetPythonException();
42106 goto fail;
42107 }
42108 }
42109 _swig_thread_allow.end();
42110 }
42111 resultobj = SWIG_From_bool(static_cast< bool >(result));
42112 return resultobj;
42113fail:
42114 return __null;
42115}
42116static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_get_document(PyObject *, PyObject *args) {
42117 PyObject *resultobj = 0;
42118 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42119 void *argp1 = 0 ;
42120 int res1 = 0 ;
42121 PyObject *swig_obj[1] ;
42122 Xapian::Document result;
42123 if (!args) goto fail;
42124 swig_obj[0] = args;
42125 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42126 if (!(res1 >= 0)) {
42127 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_get_document" "', argument " "1"" of type '" "Xapian::MSetIterator const *""'"); goto fail; } while(0);
42128 }
42129 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42130 {
42131 SWIG_Python_Thread_Allow _swig_thread_allow;
42132 {
42133 try {
42134 result = ((Xapian::MSetIterator const *)arg1)->get_document();
42135 } catch (...) {
42136 _swig_thread_allow.end();
42137 Xapian::SetPythonException();
42138 goto fail;
42139 }
42140 }
42141 _swig_thread_allow.end();
42142 }
42143 resultobj = SWIG_Python_NewPointerObj((new Xapian::Document(static_cast< const Xapian::Document& >(result))), swig_types[15], 0x1 | 0);
42144 return resultobj;
42145fail:
42146 return __null;
42147}
42148static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_get_rank(PyObject *, PyObject *args) {
42149 PyObject *resultobj = 0;
42150 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42151 void *argp1 = 0 ;
42152 int res1 = 0 ;
42153 PyObject *swig_obj[1] ;
42154 Xapian::doccount result;
42155 if (!args) goto fail;
42156 swig_obj[0] = args;
42157 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42158 if (!(res1 >= 0)) {
42159 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_get_rank" "', argument " "1"" of type '" "Xapian::MSetIterator const *""'"); goto fail; } while(0);
42160 }
42161 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42162 {
42163 SWIG_Python_Thread_Allow _swig_thread_allow;
42164 {
42165 try {
42166 result = (Xapian::doccount)((Xapian::MSetIterator const *)arg1)->get_rank();
42167 } catch (...) {
42168 _swig_thread_allow.end();
42169 Xapian::SetPythonException();
42170 goto fail;
42171 }
42172 }
42173 _swig_thread_allow.end();
42174 }
42175 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
42176 return resultobj;
42177fail:
42178 return __null;
42179}
42180static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_get_weight(PyObject *, PyObject *args) {
42181 PyObject *resultobj = 0;
42182 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42183 void *argp1 = 0 ;
42184 int res1 = 0 ;
42185 PyObject *swig_obj[1] ;
42186 Xapian::weight result;
42187 if (!args) goto fail;
42188 swig_obj[0] = args;
42189 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42190 if (!(res1 >= 0)) {
42191 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_get_weight" "', argument " "1"" of type '" "Xapian::MSetIterator const *""'"); goto fail; } while(0);
42192 }
42193 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42194 {
42195 SWIG_Python_Thread_Allow _swig_thread_allow;
42196 {
42197 try {
42198 result = (Xapian::weight)((Xapian::MSetIterator const *)arg1)->get_weight();
42199 } catch (...) {
42200 _swig_thread_allow.end();
42201 Xapian::SetPythonException();
42202 goto fail;
42203 }
42204 }
42205 _swig_thread_allow.end();
42206 }
42207 resultobj = PyFloat_FromDouble(static_cast< double >(result));
42208 return resultobj;
42209fail:
42210 return __null;
42211}
42212static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_get_collapse_key(PyObject *, PyObject *args) {
42213 PyObject *resultobj = 0;
42214 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42215 void *argp1 = 0 ;
42216 int res1 = 0 ;
42217 PyObject *swig_obj[1] ;
42218 std::string result;
42219 if (!args) goto fail;
42220 swig_obj[0] = args;
42221 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42222 if (!(res1 >= 0)) {
42223 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_get_collapse_key" "', argument " "1"" of type '" "Xapian::MSetIterator const *""'"); goto fail; } while(0);
42224 }
42225 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42226 {
42227 SWIG_Python_Thread_Allow _swig_thread_allow;
42228 {
42229 try {
42230 result = ((Xapian::MSetIterator const *)arg1)->get_collapse_key();
42231 } catch (...) {
42232 _swig_thread_allow.end();
42233 Xapian::SetPythonException();
42234 goto fail;
42235 }
42236 }
42237 _swig_thread_allow.end();
42238 }
42239 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
42240 return resultobj;
42241fail:
42242 return __null;
42243}
42244static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_get_collapse_count(PyObject *, PyObject *args) {
42245 PyObject *resultobj = 0;
42246 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42247 void *argp1 = 0 ;
42248 int res1 = 0 ;
42249 PyObject *swig_obj[1] ;
42250 Xapian::doccount result;
42251 if (!args) goto fail;
42252 swig_obj[0] = args;
42253 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42254 if (!(res1 >= 0)) {
42255 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_get_collapse_count" "', argument " "1"" of type '" "Xapian::MSetIterator const *""'"); goto fail; } while(0);
42256 }
42257 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42258 {
42259 SWIG_Python_Thread_Allow _swig_thread_allow;
42260 {
42261 try {
42262 result = (Xapian::doccount)((Xapian::MSetIterator const *)arg1)->get_collapse_count();
42263 } catch (...) {
42264 _swig_thread_allow.end();
42265 Xapian::SetPythonException();
42266 goto fail;
42267 }
42268 }
42269 _swig_thread_allow.end();
42270 }
42271 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
42272 return resultobj;
42273fail:
42274 return __null;
42275}
42276static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator_get_percent(PyObject *, PyObject *args) {
42277 PyObject *resultobj = 0;
42278 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42279 void *argp1 = 0 ;
42280 int res1 = 0 ;
42281 PyObject *swig_obj[1] ;
42282 Xapian::percent result;
42283 if (!args) goto fail;
42284 swig_obj[0] = args;
42285 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42286 if (!(res1 >= 0)) {
42287 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator_get_percent" "', argument " "1"" of type '" "Xapian::MSetIterator const *""'"); goto fail; } while(0);
42288 }
42289 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42290 {
42291 SWIG_Python_Thread_Allow _swig_thread_allow;
42292 {
42293 try {
42294 result = (Xapian::percent)((Xapian::MSetIterator const *)arg1)->get_percent();
42295 } catch (...) {
42296 _swig_thread_allow.end();
42297 Xapian::SetPythonException();
42298 goto fail;
42299 }
42300 }
42301 _swig_thread_allow.end();
42302 }
42303 resultobj = SWIG_From_int(static_cast< int >(result));
42304 return resultobj;
42305fail:
42306 return __null;
42307}
42308static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator___str__(PyObject *, PyObject *args) {
42309 PyObject *resultobj = 0;
42310 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42311 void *argp1 = 0 ;
42312 int res1 = 0 ;
42313 PyObject *swig_obj[1] ;
42314 std::string result;
42315 if (!args) goto fail;
42316 swig_obj[0] = args;
42317 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42318 if (!(res1 >= 0)) {
42319 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator___str__" "', argument " "1"" of type '" "Xapian::MSetIterator const *""'"); goto fail; } while(0);
42320 }
42321 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42322 {
42323 SWIG_Python_Thread_Allow _swig_thread_allow;
42324 {
42325 try {
42326 result = ((Xapian::MSetIterator const *)arg1)->get_description();
42327 } catch (...) {
42328 _swig_thread_allow.end();
42329 Xapian::SetPythonException();
42330 goto fail;
42331 }
42332 }
42333 _swig_thread_allow.end();
42334 }
42335 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
42336 return resultobj;
42337fail:
42338 return __null;
42339}
42340static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator___eq__(PyObject *, PyObject *args) {
42341 PyObject *resultobj = 0;
42342 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42343 Xapian::MSetIterator *arg2 = 0 ;
42344 void *argp1 = 0 ;
42345 int res1 = 0 ;
42346 void *argp2 = 0 ;
42347 int res2 = 0 ;
42348 PyObject *swig_obj[2] ;
42349 bool result;
42350 if (!SWIG_Python_UnpackTuple(args,"MSetIterator___eq__",2,2,swig_obj)) goto fail;
42351 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42352 if (!(res1 >= 0)) {
42353 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator___eq__" "', argument " "1"" of type '" "Xapian::MSetIterator *""'"); goto fail; } while(0);
42354 }
42355 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42356 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0 | 0, 0);
42357 if (!(res2 >= 0)) {
42358 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MSetIterator___eq__" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
42359 }
42360 if (!argp2) {
42361 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MSetIterator___eq__" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
42362 }
42363 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
42364 {
42365 SWIG_Python_Thread_Allow _swig_thread_allow;
42366 result = (bool)Xapian_MSetIterator___eq__(arg1,(Xapian::MSetIterator const &)*arg2);
42367 _swig_thread_allow.end();
42368 }
42369 resultobj = SWIG_From_bool(static_cast< bool >(result));
42370 return resultobj;
42371fail:
42372 return __null;
42373}
42374static __attribute__ ((__unused__)) PyObject *_wrap_MSetIterator___ne__(PyObject *, PyObject *args) {
42375 PyObject *resultobj = 0;
42376 Xapian::MSetIterator *arg1 = (Xapian::MSetIterator *) 0 ;
42377 Xapian::MSetIterator *arg2 = 0 ;
42378 void *argp1 = 0 ;
42379 int res1 = 0 ;
42380 void *argp2 = 0 ;
42381 int res2 = 0 ;
42382 PyObject *swig_obj[2] ;
42383 bool result;
42384 if (!SWIG_Python_UnpackTuple(args,"MSetIterator___ne__",2,2,swig_obj)) goto fail;
42385 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[29], 0 | 0, 0);
42386 if (!(res1 >= 0)) {
42387 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MSetIterator___ne__" "', argument " "1"" of type '" "Xapian::MSetIterator *""'"); goto fail; } while(0);
42388 }
42389 arg1 = reinterpret_cast< Xapian::MSetIterator * >(argp1);
42390 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0 | 0, 0);
42391 if (!(res2 >= 0)) {
42392 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MSetIterator___ne__" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
42393 }
42394 if (!argp2) {
42395 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MSetIterator___ne__" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
42396 }
42397 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
42398 {
42399 SWIG_Python_Thread_Allow _swig_thread_allow;
42400 result = (bool)Xapian_MSetIterator___ne__(arg1,(Xapian::MSetIterator const &)*arg2);
42401 _swig_thread_allow.end();
42402 }
42403 resultobj = SWIG_From_bool(static_cast< bool >(result));
42404 return resultobj;
42405fail:
42406 return __null;
42407}
42408static __attribute__ ((__unused__)) PyObject *MSetIterator_swigregister(PyObject *, PyObject *args) {
42409 PyObject *obj;
42410 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
42411 SWIG_TypeNewClientData(swig_types[29], SwigPyClientData_New(obj));
42412 return SWIG_Py_Void();
42413}
42414static __attribute__ ((__unused__)) PyObject *MSetIterator_swiginit(PyObject *, PyObject *args) {
42415 return SWIG_Python_InitShadowInstance(args);
42416}
42417static __attribute__ ((__unused__)) PyObject *_wrap_new_ESet__SWIG_0(PyObject *, int nobjs, PyObject **) {
42418 PyObject *resultobj = 0;
42419 Xapian::ESet *result = 0 ;
42420 if ((nobjs < 0) || (nobjs > 0)) goto fail;
42421 {
42422 SWIG_Python_Thread_Allow _swig_thread_allow;
42423 {
42424 try {
42425 result = (Xapian::ESet *)new Xapian::ESet();
42426 } catch (...) {
42427 _swig_thread_allow.end();
42428 Xapian::SetPythonException();
42429 goto fail;
42430 }
42431 }
42432 _swig_thread_allow.end();
42433 }
42434 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[16], ((0x1 << 1) | 0x1) | 0);
42435 return resultobj;
42436fail:
42437 return __null;
42438}
42439static __attribute__ ((__unused__)) PyObject *_wrap_new_ESet__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
42440 PyObject *resultobj = 0;
42441 Xapian::ESet *arg1 = 0 ;
42442 void *argp1 = 0 ;
42443 int res1 = 0 ;
42444 Xapian::ESet *result = 0 ;
42445 if ((nobjs < 1) || (nobjs > 1)) goto fail;
42446 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0 | 0, 0);
42447 if (!(res1 >= 0)) {
42448 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_ESet" "', argument " "1"" of type '" "Xapian::ESet const &""'"); goto fail; } while(0);
42449 }
42450 if (!argp1) {
42451 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_ESet" "', argument " "1"" of type '" "Xapian::ESet const &""'"); goto fail; } while(0);
42452 }
42453 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42454 {
42455 SWIG_Python_Thread_Allow _swig_thread_allow;
42456 {
42457 try {
42458 result = (Xapian::ESet *)new Xapian::ESet((Xapian::ESet const &)*arg1);
42459 } catch (...) {
42460 _swig_thread_allow.end();
42461 Xapian::SetPythonException();
42462 goto fail;
42463 }
42464 }
42465 _swig_thread_allow.end();
42466 }
42467 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[16], ((0x1 << 1) | 0x1) | 0);
42468 return resultobj;
42469fail:
42470 return __null;
42471}
42472static __attribute__ ((__unused__)) PyObject *_wrap_new_ESet(PyObject *self, PyObject *args) {
42473 int argc;
42474 PyObject *argv[2];
42475 if (!(argc = SWIG_Python_UnpackTuple(args,"new_ESet",0,1,argv))) goto fail;
42476 --argc;
42477 if (argc == 0) {
42478 return _wrap_new_ESet__SWIG_0(self, argc, argv);
42479 }
42480 if (argc == 1) {
42481 return _wrap_new_ESet__SWIG_1(self, argc, argv);
42482 }
42483fail:
42484 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_ESet'.\n"
42485 " Possible C/C++ prototypes are:\n"
42486 " Xapian::ESet()\n"
42487 " Xapian::ESet(Xapian::ESet const &)\n");
42488 return __null;
42489}
42490static __attribute__ ((__unused__)) PyObject *_wrap_delete_ESet(PyObject *, PyObject *args) {
42491 PyObject *resultobj = 0;
42492 Xapian::ESet *arg1 = (Xapian::ESet *) 0 ;
42493 void *argp1 = 0 ;
42494 int res1 = 0 ;
42495 PyObject *swig_obj[1] ;
42496 if (!args) goto fail;
42497 swig_obj[0] = args;
42498 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0x1 | 0, 0);
42499 if (!(res1 >= 0)) {
42500 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ESet" "', argument " "1"" of type '" "Xapian::ESet *""'"); goto fail; } while(0);
42501 }
42502 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42503 {
42504 SWIG_Python_Thread_Allow _swig_thread_allow;
42505 {
42506 try {
42507 delete arg1;
42508 } catch (...) {
42509 _swig_thread_allow.end();
42510 Xapian::SetPythonException();
42511 goto fail;
42512 }
42513 }
42514 _swig_thread_allow.end();
42515 }
42516 resultobj = SWIG_Py_Void();
42517 return resultobj;
42518fail:
42519 return __null;
42520}
42521static __attribute__ ((__unused__)) PyObject *_wrap_ESet_get_ebound(PyObject *, PyObject *args) {
42522 PyObject *resultobj = 0;
42523 Xapian::ESet *arg1 = (Xapian::ESet *) 0 ;
42524 void *argp1 = 0 ;
42525 int res1 = 0 ;
42526 PyObject *swig_obj[1] ;
42527 Xapian::termcount result;
42528 if (!args) goto fail;
42529 swig_obj[0] = args;
42530 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0 | 0, 0);
42531 if (!(res1 >= 0)) {
42532 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESet_get_ebound" "', argument " "1"" of type '" "Xapian::ESet const *""'"); goto fail; } while(0);
42533 }
42534 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42535 {
42536 SWIG_Python_Thread_Allow _swig_thread_allow;
42537 {
42538 try {
42539 result = (Xapian::termcount)((Xapian::ESet const *)arg1)->get_ebound();
42540 } catch (...) {
42541 _swig_thread_allow.end();
42542 Xapian::SetPythonException();
42543 goto fail;
42544 }
42545 }
42546 _swig_thread_allow.end();
42547 }
42548 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
42549 return resultobj;
42550fail:
42551 return __null;
42552}
42553static __attribute__ ((__unused__)) PyObject *_wrap_ESet_size(PyObject *, PyObject *args) {
42554 PyObject *resultobj = 0;
42555 Xapian::ESet *arg1 = (Xapian::ESet *) 0 ;
42556 void *argp1 = 0 ;
42557 int res1 = 0 ;
42558 PyObject *swig_obj[1] ;
42559 Xapian::termcount result;
42560 if (!args) goto fail;
42561 swig_obj[0] = args;
42562 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0 | 0, 0);
42563 if (!(res1 >= 0)) {
42564 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESet_size" "', argument " "1"" of type '" "Xapian::ESet const *""'"); goto fail; } while(0);
42565 }
42566 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42567 {
42568 SWIG_Python_Thread_Allow _swig_thread_allow;
42569 {
42570 try {
42571 result = (Xapian::termcount)((Xapian::ESet const *)arg1)->size();
42572 } catch (...) {
42573 _swig_thread_allow.end();
42574 Xapian::SetPythonException();
42575 goto fail;
42576 }
42577 }
42578 _swig_thread_allow.end();
42579 }
42580 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
42581 return resultobj;
42582fail:
42583 return __null;
42584}
42585static __attribute__ ((__unused__)) PyObject *_wrap_ESet_empty(PyObject *, PyObject *args) {
42586 PyObject *resultobj = 0;
42587 Xapian::ESet *arg1 = (Xapian::ESet *) 0 ;
42588 void *argp1 = 0 ;
42589 int res1 = 0 ;
42590 PyObject *swig_obj[1] ;
42591 bool result;
42592 if (!args) goto fail;
42593 swig_obj[0] = args;
42594 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0 | 0, 0);
42595 if (!(res1 >= 0)) {
42596 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESet_empty" "', argument " "1"" of type '" "Xapian::ESet const *""'"); goto fail; } while(0);
42597 }
42598 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42599 {
42600 SWIG_Python_Thread_Allow _swig_thread_allow;
42601 {
42602 try {
42603 result = (bool)((Xapian::ESet const *)arg1)->empty();
42604 } catch (...) {
42605 _swig_thread_allow.end();
42606 Xapian::SetPythonException();
42607 goto fail;
42608 }
42609 }
42610 _swig_thread_allow.end();
42611 }
42612 resultobj = SWIG_From_bool(static_cast< bool >(result));
42613 return resultobj;
42614fail:
42615 return __null;
42616}
42617static __attribute__ ((__unused__)) PyObject *_wrap_ESet_begin(PyObject *, PyObject *args) {
42618 PyObject *resultobj = 0;
42619 Xapian::ESet *arg1 = (Xapian::ESet *) 0 ;
42620 void *argp1 = 0 ;
42621 int res1 = 0 ;
42622 PyObject *swig_obj[1] ;
42623 Xapian::ESetIterator result;
42624 if (!args) goto fail;
42625 swig_obj[0] = args;
42626 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0 | 0, 0);
42627 if (!(res1 >= 0)) {
42628 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESet_begin" "', argument " "1"" of type '" "Xapian::ESet const *""'"); goto fail; } while(0);
42629 }
42630 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42631 {
42632 SWIG_Python_Thread_Allow _swig_thread_allow;
42633 {
42634 try {
42635 result = ((Xapian::ESet const *)arg1)->begin();
42636 } catch (...) {
42637 _swig_thread_allow.end();
42638 Xapian::SetPythonException();
42639 goto fail;
42640 }
42641 }
42642 _swig_thread_allow.end();
42643 }
42644 resultobj = SWIG_Python_NewPointerObj((new Xapian::ESetIterator(static_cast< const Xapian::ESetIterator& >(result))), swig_types[17], 0x1 | 0);
42645 return resultobj;
42646fail:
42647 return __null;
42648}
42649static __attribute__ ((__unused__)) PyObject *_wrap_ESet_end(PyObject *, PyObject *args) {
42650 PyObject *resultobj = 0;
42651 Xapian::ESet *arg1 = (Xapian::ESet *) 0 ;
42652 void *argp1 = 0 ;
42653 int res1 = 0 ;
42654 PyObject *swig_obj[1] ;
42655 Xapian::ESetIterator result;
42656 if (!args) goto fail;
42657 swig_obj[0] = args;
42658 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0 | 0, 0);
42659 if (!(res1 >= 0)) {
42660 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESet_end" "', argument " "1"" of type '" "Xapian::ESet const *""'"); goto fail; } while(0);
42661 }
42662 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42663 {
42664 SWIG_Python_Thread_Allow _swig_thread_allow;
42665 {
42666 try {
42667 result = ((Xapian::ESet const *)arg1)->end();
42668 } catch (...) {
42669 _swig_thread_allow.end();
42670 Xapian::SetPythonException();
42671 goto fail;
42672 }
42673 }
42674 _swig_thread_allow.end();
42675 }
42676 resultobj = SWIG_Python_NewPointerObj((new Xapian::ESetIterator(static_cast< const Xapian::ESetIterator& >(result))), swig_types[17], 0x1 | 0);
42677 return resultobj;
42678fail:
42679 return __null;
42680}
42681static __attribute__ ((__unused__)) PyObject *_wrap_ESet_back(PyObject *, PyObject *args) {
42682 PyObject *resultobj = 0;
42683 Xapian::ESet *arg1 = (Xapian::ESet *) 0 ;
42684 void *argp1 = 0 ;
42685 int res1 = 0 ;
42686 PyObject *swig_obj[1] ;
42687 Xapian::ESetIterator result;
42688 if (!args) goto fail;
42689 swig_obj[0] = args;
42690 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0 | 0, 0);
42691 if (!(res1 >= 0)) {
42692 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESet_back" "', argument " "1"" of type '" "Xapian::ESet const *""'"); goto fail; } while(0);
42693 }
42694 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42695 {
42696 SWIG_Python_Thread_Allow _swig_thread_allow;
42697 {
42698 try {
42699 result = ((Xapian::ESet const *)arg1)->back();
42700 } catch (...) {
42701 _swig_thread_allow.end();
42702 Xapian::SetPythonException();
42703 goto fail;
42704 }
42705 }
42706 _swig_thread_allow.end();
42707 }
42708 resultobj = SWIG_Python_NewPointerObj((new Xapian::ESetIterator(static_cast< const Xapian::ESetIterator& >(result))), swig_types[17], 0x1 | 0);
42709 return resultobj;
42710fail:
42711 return __null;
42712}
42713static __attribute__ ((__unused__)) PyObject *_wrap_ESet___str__(PyObject *, PyObject *args) {
42714 PyObject *resultobj = 0;
42715 Xapian::ESet *arg1 = (Xapian::ESet *) 0 ;
42716 void *argp1 = 0 ;
42717 int res1 = 0 ;
42718 PyObject *swig_obj[1] ;
42719 std::string result;
42720 if (!args) goto fail;
42721 swig_obj[0] = args;
42722 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0 | 0, 0);
42723 if (!(res1 >= 0)) {
42724 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESet___str__" "', argument " "1"" of type '" "Xapian::ESet const *""'"); goto fail; } while(0);
42725 }
42726 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42727 {
42728 SWIG_Python_Thread_Allow _swig_thread_allow;
42729 {
42730 try {
42731 result = ((Xapian::ESet const *)arg1)->get_description();
42732 } catch (...) {
42733 _swig_thread_allow.end();
42734 Xapian::SetPythonException();
42735 goto fail;
42736 }
42737 }
42738 _swig_thread_allow.end();
42739 }
42740 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
42741 return resultobj;
42742fail:
42743 return __null;
42744}
42745static __attribute__ ((__unused__)) PyObject *_wrap_ESet_items_get(PyObject *, PyObject *args) {
42746 PyObject *resultobj = 0;
42747 Xapian::ESet *arg1 = (Xapian::ESet *) 0 ;
42748 void *argp1 = 0 ;
42749 int res1 = 0 ;
42750 PyObject *swig_obj[1] ;
42751 PyObject *result = 0 ;
42752 if (!args) goto fail;
42753 swig_obj[0] = args;
42754 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[16], 0 | 0, 0);
42755 if (!(res1 >= 0)) {
42756 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESet_items_get" "', argument " "1"" of type '" "Xapian::ESet *""'"); goto fail; } while(0);
42757 }
42758 arg1 = reinterpret_cast< Xapian::ESet * >(argp1);
42759 result = (PyObject *)Xapian_ESet_items_get(arg1);
42760 resultobj = result;
42761 return resultobj;
42762fail:
42763 return __null;
42764}
42765static __attribute__ ((__unused__)) PyObject *ESet_swigregister(PyObject *, PyObject *args) {
42766 PyObject *obj;
42767 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
42768 SWIG_TypeNewClientData(swig_types[16], SwigPyClientData_New(obj));
42769 return SWIG_Py_Void();
42770}
42771static __attribute__ ((__unused__)) PyObject *ESet_swiginit(PyObject *, PyObject *args) {
42772 return SWIG_Python_InitShadowInstance(args);
42773}
42774static __attribute__ ((__unused__)) PyObject *_wrap_new_ESetIterator__SWIG_0(PyObject *, int nobjs, PyObject **) {
42775 PyObject *resultobj = 0;
42776 Xapian::ESetIterator *result = 0 ;
42777 if ((nobjs < 0) || (nobjs > 0)) goto fail;
42778 {
42779 SWIG_Python_Thread_Allow _swig_thread_allow;
42780 {
42781 try {
42782 result = (Xapian::ESetIterator *)new Xapian::ESetIterator();
42783 } catch (...) {
42784 _swig_thread_allow.end();
42785 Xapian::SetPythonException();
42786 goto fail;
42787 }
42788 }
42789 _swig_thread_allow.end();
42790 }
42791 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[17], ((0x1 << 1) | 0x1) | 0);
42792 return resultobj;
42793fail:
42794 return __null;
42795}
42796static __attribute__ ((__unused__)) PyObject *_wrap_new_ESetIterator__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
42797 PyObject *resultobj = 0;
42798 Xapian::ESetIterator *arg1 = 0 ;
42799 void *argp1 = 0 ;
42800 int res1 = 0 ;
42801 Xapian::ESetIterator *result = 0 ;
42802 if ((nobjs < 1) || (nobjs > 1)) goto fail;
42803 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0 | 0, 0);
42804 if (!(res1 >= 0)) {
42805 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_ESetIterator" "', argument " "1"" of type '" "Xapian::ESetIterator const &""'"); goto fail; } while(0);
42806 }
42807 if (!argp1) {
42808 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_ESetIterator" "', argument " "1"" of type '" "Xapian::ESetIterator const &""'"); goto fail; } while(0);
42809 }
42810 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
42811 {
42812 SWIG_Python_Thread_Allow _swig_thread_allow;
42813 {
42814 try {
42815 result = (Xapian::ESetIterator *)new Xapian::ESetIterator((Xapian::ESetIterator const &)*arg1);
42816 } catch (...) {
42817 _swig_thread_allow.end();
42818 Xapian::SetPythonException();
42819 goto fail;
42820 }
42821 }
42822 _swig_thread_allow.end();
42823 }
42824 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[17], ((0x1 << 1) | 0x1) | 0);
42825 return resultobj;
42826fail:
42827 return __null;
42828}
42829static __attribute__ ((__unused__)) PyObject *_wrap_new_ESetIterator(PyObject *self, PyObject *args) {
42830 int argc;
42831 PyObject *argv[2];
42832 if (!(argc = SWIG_Python_UnpackTuple(args,"new_ESetIterator",0,1,argv))) goto fail;
42833 --argc;
42834 if (argc == 0) {
42835 return _wrap_new_ESetIterator__SWIG_0(self, argc, argv);
42836 }
42837 if (argc == 1) {
42838 return _wrap_new_ESetIterator__SWIG_1(self, argc, argv);
42839 }
42840fail:
42841 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_ESetIterator'.\n"
42842 " Possible C/C++ prototypes are:\n"
42843 " Xapian::ESetIterator()\n"
42844 " Xapian::ESetIterator(Xapian::ESetIterator const &)\n");
42845 return __null;
42846}
42847static __attribute__ ((__unused__)) PyObject *_wrap_delete_ESetIterator(PyObject *, PyObject *args) {
42848 PyObject *resultobj = 0;
42849 Xapian::ESetIterator *arg1 = (Xapian::ESetIterator *) 0 ;
42850 void *argp1 = 0 ;
42851 int res1 = 0 ;
42852 PyObject *swig_obj[1] ;
42853 if (!args) goto fail;
42854 swig_obj[0] = args;
42855 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0x1 | 0, 0);
42856 if (!(res1 >= 0)) {
42857 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ESetIterator" "', argument " "1"" of type '" "Xapian::ESetIterator *""'"); goto fail; } while(0);
42858 }
42859 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
42860 {
42861 SWIG_Python_Thread_Allow _swig_thread_allow;
42862 {
42863 try {
42864 delete arg1;
42865 } catch (...) {
42866 _swig_thread_allow.end();
42867 Xapian::SetPythonException();
42868 goto fail;
42869 }
42870 }
42871 _swig_thread_allow.end();
42872 }
42873 resultobj = SWIG_Py_Void();
42874 return resultobj;
42875fail:
42876 return __null;
42877}
42878static __attribute__ ((__unused__)) PyObject *_wrap_ESetIterator_get_term(PyObject *, PyObject *args) {
42879 PyObject *resultobj = 0;
42880 Xapian::ESetIterator *arg1 = (Xapian::ESetIterator *) 0 ;
42881 void *argp1 = 0 ;
42882 int res1 = 0 ;
42883 PyObject *swig_obj[1] ;
42884 std::string result;
42885 if (!args) goto fail;
42886 swig_obj[0] = args;
42887 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0 | 0, 0);
42888 if (!(res1 >= 0)) {
42889 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESetIterator_get_term" "', argument " "1"" of type '" "Xapian::ESetIterator const *""'"); goto fail; } while(0);
42890 }
42891 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
42892 {
42893 SWIG_Python_Thread_Allow _swig_thread_allow;
42894 {
42895 try {
42896 result = Xapian_ESetIterator_get_term((Xapian::ESetIterator const *)arg1);
42897 } catch (...) {
42898 _swig_thread_allow.end();
42899 Xapian::SetPythonException();
42900 goto fail;
42901 }
42902 }
42903 _swig_thread_allow.end();
42904 }
42905 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
42906 return resultobj;
42907fail:
42908 return __null;
42909}
42910static __attribute__ ((__unused__)) PyObject *_wrap_ESetIterator_next(PyObject *, PyObject *args) {
42911 PyObject *resultobj = 0;
42912 Xapian::ESetIterator *arg1 = (Xapian::ESetIterator *) 0 ;
42913 void *argp1 = 0 ;
42914 int res1 = 0 ;
42915 PyObject *swig_obj[1] ;
42916 if (!args) goto fail;
42917 swig_obj[0] = args;
42918 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0 | 0, 0);
42919 if (!(res1 >= 0)) {
42920 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESetIterator_next" "', argument " "1"" of type '" "Xapian::ESetIterator *""'"); goto fail; } while(0);
42921 }
42922 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
42923 {
42924 SWIG_Python_Thread_Allow _swig_thread_allow;
42925 {
42926 try {
42927 Xapian_ESetIterator_next(arg1);
42928 } catch (...) {
42929 _swig_thread_allow.end();
42930 Xapian::SetPythonException();
42931 goto fail;
42932 }
42933 }
42934 _swig_thread_allow.end();
42935 }
42936 resultobj = SWIG_Py_Void();
42937 return resultobj;
42938fail:
42939 return __null;
42940}
42941static __attribute__ ((__unused__)) PyObject *_wrap_ESetIterator_prev(PyObject *, PyObject *args) {
42942 PyObject *resultobj = 0;
42943 Xapian::ESetIterator *arg1 = (Xapian::ESetIterator *) 0 ;
42944 void *argp1 = 0 ;
42945 int res1 = 0 ;
42946 PyObject *swig_obj[1] ;
42947 if (!args) goto fail;
42948 swig_obj[0] = args;
42949 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0 | 0, 0);
42950 if (!(res1 >= 0)) {
42951 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESetIterator_prev" "', argument " "1"" of type '" "Xapian::ESetIterator *""'"); goto fail; } while(0);
42952 }
42953 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
42954 {
42955 SWIG_Python_Thread_Allow _swig_thread_allow;
42956 {
42957 try {
42958 Xapian_ESetIterator_prev(arg1);
42959 } catch (...) {
42960 _swig_thread_allow.end();
42961 Xapian::SetPythonException();
42962 goto fail;
42963 }
42964 }
42965 _swig_thread_allow.end();
42966 }
42967 resultobj = SWIG_Py_Void();
42968 return resultobj;
42969fail:
42970 return __null;
42971}
42972static __attribute__ ((__unused__)) PyObject *_wrap_ESetIterator_equals(PyObject *, PyObject *args) {
42973 PyObject *resultobj = 0;
42974 Xapian::ESetIterator *arg1 = (Xapian::ESetIterator *) 0 ;
42975 Xapian::ESetIterator *arg2 = 0 ;
42976 void *argp1 = 0 ;
42977 int res1 = 0 ;
42978 void *argp2 = 0 ;
42979 int res2 = 0 ;
42980 PyObject *swig_obj[2] ;
42981 bool result;
42982 if (!SWIG_Python_UnpackTuple(args,"ESetIterator_equals",2,2,swig_obj)) goto fail;
42983 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0 | 0, 0);
42984 if (!(res1 >= 0)) {
42985 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESetIterator_equals" "', argument " "1"" of type '" "Xapian::ESetIterator const *""'"); goto fail; } while(0);
42986 }
42987 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
42988 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[17], 0 | 0, 0);
42989 if (!(res2 >= 0)) {
42990 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ESetIterator_equals" "', argument " "2"" of type '" "Xapian::ESetIterator const &""'"); goto fail; } while(0);
42991 }
42992 if (!argp2) {
42993 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ESetIterator_equals" "', argument " "2"" of type '" "Xapian::ESetIterator const &""'"); goto fail; } while(0);
42994 }
42995 arg2 = reinterpret_cast< Xapian::ESetIterator * >(argp2);
42996 {
42997 SWIG_Python_Thread_Allow _swig_thread_allow;
42998 {
42999 try {
43000 result = (bool)Xapian_ESetIterator_equals((Xapian::ESetIterator const *)arg1,(Xapian::ESetIterator const &)*arg2);
43001 } catch (...) {
43002 _swig_thread_allow.end();
43003 Xapian::SetPythonException();
43004 goto fail;
43005 }
43006 }
43007 _swig_thread_allow.end();
43008 }
43009 resultobj = SWIG_From_bool(static_cast< bool >(result));
43010 return resultobj;
43011fail:
43012 return __null;
43013}
43014static __attribute__ ((__unused__)) PyObject *_wrap_ESetIterator_get_weight(PyObject *, PyObject *args) {
43015 PyObject *resultobj = 0;
43016 Xapian::ESetIterator *arg1 = (Xapian::ESetIterator *) 0 ;
43017 void *argp1 = 0 ;
43018 int res1 = 0 ;
43019 PyObject *swig_obj[1] ;
43020 Xapian::weight result;
43021 if (!args) goto fail;
43022 swig_obj[0] = args;
43023 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0 | 0, 0);
43024 if (!(res1 >= 0)) {
43025 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESetIterator_get_weight" "', argument " "1"" of type '" "Xapian::ESetIterator const *""'"); goto fail; } while(0);
43026 }
43027 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
43028 {
43029 SWIG_Python_Thread_Allow _swig_thread_allow;
43030 {
43031 try {
43032 result = (Xapian::weight)((Xapian::ESetIterator const *)arg1)->get_weight();
43033 } catch (...) {
43034 _swig_thread_allow.end();
43035 Xapian::SetPythonException();
43036 goto fail;
43037 }
43038 }
43039 _swig_thread_allow.end();
43040 }
43041 resultobj = PyFloat_FromDouble(static_cast< double >(result));
43042 return resultobj;
43043fail:
43044 return __null;
43045}
43046static __attribute__ ((__unused__)) PyObject *_wrap_ESetIterator___str__(PyObject *, PyObject *args) {
43047 PyObject *resultobj = 0;
43048 Xapian::ESetIterator *arg1 = (Xapian::ESetIterator *) 0 ;
43049 void *argp1 = 0 ;
43050 int res1 = 0 ;
43051 PyObject *swig_obj[1] ;
43052 std::string result;
43053 if (!args) goto fail;
43054 swig_obj[0] = args;
43055 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0 | 0, 0);
43056 if (!(res1 >= 0)) {
43057 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESetIterator___str__" "', argument " "1"" of type '" "Xapian::ESetIterator const *""'"); goto fail; } while(0);
43058 }
43059 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
43060 {
43061 SWIG_Python_Thread_Allow _swig_thread_allow;
43062 {
43063 try {
43064 result = ((Xapian::ESetIterator const *)arg1)->get_description();
43065 } catch (...) {
43066 _swig_thread_allow.end();
43067 Xapian::SetPythonException();
43068 goto fail;
43069 }
43070 }
43071 _swig_thread_allow.end();
43072 }
43073 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
43074 return resultobj;
43075fail:
43076 return __null;
43077}
43078static __attribute__ ((__unused__)) PyObject *_wrap_ESetIterator___eq__(PyObject *, PyObject *args) {
43079 PyObject *resultobj = 0;
43080 Xapian::ESetIterator *arg1 = (Xapian::ESetIterator *) 0 ;
43081 Xapian::ESetIterator *arg2 = 0 ;
43082 void *argp1 = 0 ;
43083 int res1 = 0 ;
43084 void *argp2 = 0 ;
43085 int res2 = 0 ;
43086 PyObject *swig_obj[2] ;
43087 bool result;
43088 if (!SWIG_Python_UnpackTuple(args,"ESetIterator___eq__",2,2,swig_obj)) goto fail;
43089 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0 | 0, 0);
43090 if (!(res1 >= 0)) {
43091 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESetIterator___eq__" "', argument " "1"" of type '" "Xapian::ESetIterator *""'"); goto fail; } while(0);
43092 }
43093 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
43094 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[17], 0 | 0, 0);
43095 if (!(res2 >= 0)) {
43096 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ESetIterator___eq__" "', argument " "2"" of type '" "Xapian::ESetIterator const &""'"); goto fail; } while(0);
43097 }
43098 if (!argp2) {
43099 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ESetIterator___eq__" "', argument " "2"" of type '" "Xapian::ESetIterator const &""'"); goto fail; } while(0);
43100 }
43101 arg2 = reinterpret_cast< Xapian::ESetIterator * >(argp2);
43102 {
43103 SWIG_Python_Thread_Allow _swig_thread_allow;
43104 result = (bool)Xapian_ESetIterator___eq__(arg1,(Xapian::ESetIterator const &)*arg2);
43105 _swig_thread_allow.end();
43106 }
43107 resultobj = SWIG_From_bool(static_cast< bool >(result));
43108 return resultobj;
43109fail:
43110 return __null;
43111}
43112static __attribute__ ((__unused__)) PyObject *_wrap_ESetIterator___ne__(PyObject *, PyObject *args) {
43113 PyObject *resultobj = 0;
43114 Xapian::ESetIterator *arg1 = (Xapian::ESetIterator *) 0 ;
43115 Xapian::ESetIterator *arg2 = 0 ;
43116 void *argp1 = 0 ;
43117 int res1 = 0 ;
43118 void *argp2 = 0 ;
43119 int res2 = 0 ;
43120 PyObject *swig_obj[2] ;
43121 bool result;
43122 if (!SWIG_Python_UnpackTuple(args,"ESetIterator___ne__",2,2,swig_obj)) goto fail;
43123 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[17], 0 | 0, 0);
43124 if (!(res1 >= 0)) {
43125 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ESetIterator___ne__" "', argument " "1"" of type '" "Xapian::ESetIterator *""'"); goto fail; } while(0);
43126 }
43127 arg1 = reinterpret_cast< Xapian::ESetIterator * >(argp1);
43128 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[17], 0 | 0, 0);
43129 if (!(res2 >= 0)) {
43130 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ESetIterator___ne__" "', argument " "2"" of type '" "Xapian::ESetIterator const &""'"); goto fail; } while(0);
43131 }
43132 if (!argp2) {
43133 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ESetIterator___ne__" "', argument " "2"" of type '" "Xapian::ESetIterator const &""'"); goto fail; } while(0);
43134 }
43135 arg2 = reinterpret_cast< Xapian::ESetIterator * >(argp2);
43136 {
43137 SWIG_Python_Thread_Allow _swig_thread_allow;
43138 result = (bool)Xapian_ESetIterator___ne__(arg1,(Xapian::ESetIterator const &)*arg2);
43139 _swig_thread_allow.end();
43140 }
43141 resultobj = SWIG_From_bool(static_cast< bool >(result));
43142 return resultobj;
43143fail:
43144 return __null;
43145}
43146static __attribute__ ((__unused__)) PyObject *ESetIterator_swigregister(PyObject *, PyObject *args) {
43147 PyObject *obj;
43148 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
43149 SWIG_TypeNewClientData(swig_types[17], SwigPyClientData_New(obj));
43150 return SWIG_Py_Void();
43151}
43152static __attribute__ ((__unused__)) PyObject *ESetIterator_swiginit(PyObject *, PyObject *args) {
43153 return SWIG_Python_InitShadowInstance(args);
43154}
43155static __attribute__ ((__unused__)) PyObject *_wrap_new_RSet__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
43156 PyObject *resultobj = 0;
43157 Xapian::RSet *arg1 = 0 ;
43158 void *argp1 = 0 ;
43159 int res1 = 0 ;
43160 Xapian::RSet *result = 0 ;
43161 if ((nobjs < 1) || (nobjs > 1)) goto fail;
43162 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43163 if (!(res1 >= 0)) {
43164 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_RSet" "', argument " "1"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
43165 }
43166 if (!argp1) {
43167 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_RSet" "', argument " "1"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
43168 }
43169 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43170 {
43171 SWIG_Python_Thread_Allow _swig_thread_allow;
43172 {
43173 try {
43174 result = (Xapian::RSet *)new Xapian::RSet((Xapian::RSet const &)*arg1);
43175 } catch (...) {
43176 _swig_thread_allow.end();
43177 Xapian::SetPythonException();
43178 goto fail;
43179 }
43180 }
43181 _swig_thread_allow.end();
43182 }
43183 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[43], ((0x1 << 1) | 0x1) | 0);
43184 return resultobj;
43185fail:
43186 return __null;
43187}
43188static __attribute__ ((__unused__)) PyObject *_wrap_new_RSet__SWIG_1(PyObject *, int nobjs, PyObject **) {
43189 PyObject *resultobj = 0;
43190 Xapian::RSet *result = 0 ;
43191 if ((nobjs < 0) || (nobjs > 0)) goto fail;
43192 {
43193 SWIG_Python_Thread_Allow _swig_thread_allow;
43194 {
43195 try {
43196 result = (Xapian::RSet *)new Xapian::RSet();
43197 } catch (...) {
43198 _swig_thread_allow.end();
43199 Xapian::SetPythonException();
43200 goto fail;
43201 }
43202 }
43203 _swig_thread_allow.end();
43204 }
43205 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[43], ((0x1 << 1) | 0x1) | 0);
43206 return resultobj;
43207fail:
43208 return __null;
43209}
43210static __attribute__ ((__unused__)) PyObject *_wrap_new_RSet(PyObject *self, PyObject *args) {
43211 int argc;
43212 PyObject *argv[2];
43213 if (!(argc = SWIG_Python_UnpackTuple(args,"new_RSet",0,1,argv))) goto fail;
43214 --argc;
43215 if (argc == 0) {
43216 return _wrap_new_RSet__SWIG_1(self, argc, argv);
43217 }
43218 if (argc == 1) {
43219 return _wrap_new_RSet__SWIG_0(self, argc, argv);
43220 }
43221fail:
43222 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_RSet'.\n"
43223 " Possible C/C++ prototypes are:\n"
43224 " Xapian::RSet(Xapian::RSet const &)\n"
43225 " Xapian::RSet()\n");
43226 return __null;
43227}
43228static __attribute__ ((__unused__)) PyObject *_wrap_delete_RSet(PyObject *, PyObject *args) {
43229 PyObject *resultobj = 0;
43230 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43231 void *argp1 = 0 ;
43232 int res1 = 0 ;
43233 PyObject *swig_obj[1] ;
43234 if (!args) goto fail;
43235 swig_obj[0] = args;
43236 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0x1 | 0, 0);
43237 if (!(res1 >= 0)) {
43238 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_RSet" "', argument " "1"" of type '" "Xapian::RSet *""'"); goto fail; } while(0);
43239 }
43240 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43241 {
43242 SWIG_Python_Thread_Allow _swig_thread_allow;
43243 {
43244 try {
43245 delete arg1;
43246 } catch (...) {
43247 _swig_thread_allow.end();
43248 Xapian::SetPythonException();
43249 goto fail;
43250 }
43251 }
43252 _swig_thread_allow.end();
43253 }
43254 resultobj = SWIG_Py_Void();
43255 return resultobj;
43256fail:
43257 return __null;
43258}
43259static __attribute__ ((__unused__)) PyObject *_wrap_RSet_size(PyObject *, PyObject *args) {
43260 PyObject *resultobj = 0;
43261 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43262 void *argp1 = 0 ;
43263 int res1 = 0 ;
43264 PyObject *swig_obj[1] ;
43265 Xapian::doccount result;
43266 if (!args) goto fail;
43267 swig_obj[0] = args;
43268 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43269 if (!(res1 >= 0)) {
43270 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "RSet_size" "', argument " "1"" of type '" "Xapian::RSet const *""'"); goto fail; } while(0);
43271 }
43272 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43273 {
43274 SWIG_Python_Thread_Allow _swig_thread_allow;
43275 {
43276 try {
43277 result = (Xapian::doccount)((Xapian::RSet const *)arg1)->size();
43278 } catch (...) {
43279 _swig_thread_allow.end();
43280 Xapian::SetPythonException();
43281 goto fail;
43282 }
43283 }
43284 _swig_thread_allow.end();
43285 }
43286 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
43287 return resultobj;
43288fail:
43289 return __null;
43290}
43291static __attribute__ ((__unused__)) PyObject *_wrap_RSet_empty(PyObject *, PyObject *args) {
43292 PyObject *resultobj = 0;
43293 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43294 void *argp1 = 0 ;
43295 int res1 = 0 ;
43296 PyObject *swig_obj[1] ;
43297 bool result;
43298 if (!args) goto fail;
43299 swig_obj[0] = args;
43300 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43301 if (!(res1 >= 0)) {
43302 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "RSet_empty" "', argument " "1"" of type '" "Xapian::RSet const *""'"); goto fail; } while(0);
43303 }
43304 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43305 {
43306 SWIG_Python_Thread_Allow _swig_thread_allow;
43307 {
43308 try {
43309 result = (bool)((Xapian::RSet const *)arg1)->empty();
43310 } catch (...) {
43311 _swig_thread_allow.end();
43312 Xapian::SetPythonException();
43313 goto fail;
43314 }
43315 }
43316 _swig_thread_allow.end();
43317 }
43318 resultobj = SWIG_From_bool(static_cast< bool >(result));
43319 return resultobj;
43320fail:
43321 return __null;
43322}
43323static __attribute__ ((__unused__)) PyObject *_wrap_RSet_add_document__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
43324 PyObject *resultobj = 0;
43325 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43326 Xapian::docid arg2 ;
43327 void *argp1 = 0 ;
43328 int res1 = 0 ;
43329 unsigned int val2 ;
43330 int ecode2 = 0 ;
43331 if ((nobjs < 2) || (nobjs > 2)) goto fail;
43332 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43333 if (!(res1 >= 0)) {
43334 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "RSet_add_document" "', argument " "1"" of type '" "Xapian::RSet *""'"); goto fail; } while(0);
43335 }
43336 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43337 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
43338 if (!(ecode2 >= 0)) {
43339 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "RSet_add_document" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
43340 }
43341 arg2 = static_cast< Xapian::docid >(val2);
43342 {
43343 SWIG_Python_Thread_Allow _swig_thread_allow;
43344 {
43345 try {
43346 (arg1)->add_document(arg2);
43347 } catch (...) {
43348 _swig_thread_allow.end();
43349 Xapian::SetPythonException();
43350 goto fail;
43351 }
43352 }
43353 _swig_thread_allow.end();
43354 }
43355 resultobj = SWIG_Py_Void();
43356 return resultobj;
43357fail:
43358 return __null;
43359}
43360static __attribute__ ((__unused__)) PyObject *_wrap_RSet_add_document__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
43361 PyObject *resultobj = 0;
43362 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43363 Xapian::MSetIterator *arg2 = 0 ;
43364 void *argp1 = 0 ;
43365 int res1 = 0 ;
43366 void *argp2 = 0 ;
43367 int res2 = 0 ;
43368 if ((nobjs < 2) || (nobjs > 2)) goto fail;
43369 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43370 if (!(res1 >= 0)) {
43371 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "RSet_add_document" "', argument " "1"" of type '" "Xapian::RSet *""'"); goto fail; } while(0);
43372 }
43373 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43374 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0, 0);
43375 if (!(res2 >= 0)) {
43376 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "RSet_add_document" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
43377 }
43378 if (!argp2) {
43379 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "RSet_add_document" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
43380 }
43381 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
43382 {
43383 SWIG_Python_Thread_Allow _swig_thread_allow;
43384 {
43385 try {
43386 (arg1)->add_document(*arg2);
43387 } catch (...) {
43388 _swig_thread_allow.end();
43389 Xapian::SetPythonException();
43390 goto fail;
43391 }
43392 }
43393 _swig_thread_allow.end();
43394 }
43395 resultobj = SWIG_Py_Void();
43396 return resultobj;
43397fail:
43398 return __null;
43399}
43400static __attribute__ ((__unused__)) PyObject *_wrap_RSet_add_document(PyObject *self, PyObject *args) {
43401 int argc;
43402 PyObject *argv[3];
43403 if (!(argc = SWIG_Python_UnpackTuple(args,"RSet_add_document",0,2,argv))) goto fail;
43404 --argc;
43405 if (argc == 2) {
43406 int _v = 0;
43407 {
43408 void *vptr = 0;
43409 int res = SWIG_Python_ConvertPtrAndOwn(argv[1], &vptr, swig_types[29], 0, 0);
43410 _v = ((res >= 0) ? 1 : 0);
43411 }
43412 if (!_v) goto check_1;
43413 return _wrap_RSet_add_document__SWIG_1(self, argc, argv);
43414 }
43415check_1:
43416 if (argc == 2) {
43417 return _wrap_RSet_add_document__SWIG_0(self, argc, argv);
43418 }
43419fail:
43420 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'RSet_add_document'.\n"
43421 " Possible C/C++ prototypes are:\n"
43422 " add_document(Xapian::RSet *,Xapian::docid)\n"
43423 " add_document(Xapian::RSet *,Xapian::MSetIterator &)\n");
43424 return __null;
43425}
43426static __attribute__ ((__unused__)) PyObject *_wrap_RSet_remove_document__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
43427 PyObject *resultobj = 0;
43428 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43429 Xapian::docid arg2 ;
43430 void *argp1 = 0 ;
43431 int res1 = 0 ;
43432 unsigned int val2 ;
43433 int ecode2 = 0 ;
43434 if ((nobjs < 2) || (nobjs > 2)) goto fail;
43435 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43436 if (!(res1 >= 0)) {
43437 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "RSet_remove_document" "', argument " "1"" of type '" "Xapian::RSet *""'"); goto fail; } while(0);
43438 }
43439 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43440 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
43441 if (!(ecode2 >= 0)) {
43442 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "RSet_remove_document" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
43443 }
43444 arg2 = static_cast< Xapian::docid >(val2);
43445 {
43446 SWIG_Python_Thread_Allow _swig_thread_allow;
43447 {
43448 try {
43449 (arg1)->remove_document(arg2);
43450 } catch (...) {
43451 _swig_thread_allow.end();
43452 Xapian::SetPythonException();
43453 goto fail;
43454 }
43455 }
43456 _swig_thread_allow.end();
43457 }
43458 resultobj = SWIG_Py_Void();
43459 return resultobj;
43460fail:
43461 return __null;
43462}
43463static __attribute__ ((__unused__)) PyObject *_wrap_RSet_remove_document__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
43464 PyObject *resultobj = 0;
43465 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43466 Xapian::MSetIterator *arg2 = 0 ;
43467 void *argp1 = 0 ;
43468 int res1 = 0 ;
43469 void *argp2 = 0 ;
43470 int res2 = 0 ;
43471 if ((nobjs < 2) || (nobjs > 2)) goto fail;
43472 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43473 if (!(res1 >= 0)) {
43474 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "RSet_remove_document" "', argument " "1"" of type '" "Xapian::RSet *""'"); goto fail; } while(0);
43475 }
43476 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43477 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0, 0);
43478 if (!(res2 >= 0)) {
43479 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "RSet_remove_document" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
43480 }
43481 if (!argp2) {
43482 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "RSet_remove_document" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
43483 }
43484 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
43485 {
43486 SWIG_Python_Thread_Allow _swig_thread_allow;
43487 {
43488 try {
43489 (arg1)->remove_document(*arg2);
43490 } catch (...) {
43491 _swig_thread_allow.end();
43492 Xapian::SetPythonException();
43493 goto fail;
43494 }
43495 }
43496 _swig_thread_allow.end();
43497 }
43498 resultobj = SWIG_Py_Void();
43499 return resultobj;
43500fail:
43501 return __null;
43502}
43503static __attribute__ ((__unused__)) PyObject *_wrap_RSet_remove_document(PyObject *self, PyObject *args) {
43504 int argc;
43505 PyObject *argv[3];
43506 if (!(argc = SWIG_Python_UnpackTuple(args,"RSet_remove_document",0,2,argv))) goto fail;
43507 --argc;
43508 if (argc == 2) {
43509 int _v = 0;
43510 {
43511 void *vptr = 0;
43512 int res = SWIG_Python_ConvertPtrAndOwn(argv[1], &vptr, swig_types[29], 0, 0);
43513 _v = ((res >= 0) ? 1 : 0);
43514 }
43515 if (!_v) goto check_1;
43516 return _wrap_RSet_remove_document__SWIG_1(self, argc, argv);
43517 }
43518check_1:
43519 if (argc == 2) {
43520 return _wrap_RSet_remove_document__SWIG_0(self, argc, argv);
43521 }
43522fail:
43523 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'RSet_remove_document'.\n"
43524 " Possible C/C++ prototypes are:\n"
43525 " remove_document(Xapian::RSet *,Xapian::docid)\n"
43526 " remove_document(Xapian::RSet *,Xapian::MSetIterator &)\n");
43527 return __null;
43528}
43529static __attribute__ ((__unused__)) PyObject *_wrap_RSet_contains__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
43530 PyObject *resultobj = 0;
43531 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43532 Xapian::docid arg2 ;
43533 void *argp1 = 0 ;
43534 int res1 = 0 ;
43535 unsigned int val2 ;
43536 int ecode2 = 0 ;
43537 bool result;
43538 if ((nobjs < 2) || (nobjs > 2)) goto fail;
43539 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43540 if (!(res1 >= 0)) {
43541 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "RSet_contains" "', argument " "1"" of type '" "Xapian::RSet *""'"); goto fail; } while(0);
43542 }
43543 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43544 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
43545 if (!(ecode2 >= 0)) {
43546 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "RSet_contains" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
43547 }
43548 arg2 = static_cast< Xapian::docid >(val2);
43549 {
43550 SWIG_Python_Thread_Allow _swig_thread_allow;
43551 {
43552 try {
43553 result = (bool)(arg1)->contains(arg2);
43554 } catch (...) {
43555 _swig_thread_allow.end();
43556 Xapian::SetPythonException();
43557 goto fail;
43558 }
43559 }
43560 _swig_thread_allow.end();
43561 }
43562 resultobj = SWIG_From_bool(static_cast< bool >(result));
43563 return resultobj;
43564fail:
43565 return __null;
43566}
43567static __attribute__ ((__unused__)) PyObject *_wrap_RSet_contains__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
43568 PyObject *resultobj = 0;
43569 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43570 Xapian::MSetIterator *arg2 = 0 ;
43571 void *argp1 = 0 ;
43572 int res1 = 0 ;
43573 void *argp2 = 0 ;
43574 int res2 = 0 ;
43575 bool result;
43576 if ((nobjs < 2) || (nobjs > 2)) goto fail;
43577 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43578 if (!(res1 >= 0)) {
43579 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "RSet_contains" "', argument " "1"" of type '" "Xapian::RSet *""'"); goto fail; } while(0);
43580 }
43581 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43582 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0, 0);
43583 if (!(res2 >= 0)) {
43584 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "RSet_contains" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
43585 }
43586 if (!argp2) {
43587 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "RSet_contains" "', argument " "2"" of type '" "Xapian::MSetIterator &""'"); goto fail; } while(0);
43588 }
43589 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
43590 {
43591 SWIG_Python_Thread_Allow _swig_thread_allow;
43592 {
43593 try {
43594 result = (bool)(arg1)->contains(*arg2);
43595 } catch (...) {
43596 _swig_thread_allow.end();
43597 Xapian::SetPythonException();
43598 goto fail;
43599 }
43600 }
43601 _swig_thread_allow.end();
43602 }
43603 resultobj = SWIG_From_bool(static_cast< bool >(result));
43604 return resultobj;
43605fail:
43606 return __null;
43607}
43608static __attribute__ ((__unused__)) PyObject *_wrap_RSet_contains(PyObject *self, PyObject *args) {
43609 int argc;
43610 PyObject *argv[3];
43611 if (!(argc = SWIG_Python_UnpackTuple(args,"RSet_contains",0,2,argv))) goto fail;
43612 --argc;
43613 if (argc == 2) {
43614 int _v = 0;
43615 {
43616 void *vptr = 0;
43617 int res = SWIG_Python_ConvertPtrAndOwn(argv[1], &vptr, swig_types[29], 0, 0);
43618 _v = ((res >= 0) ? 1 : 0);
43619 }
43620 if (!_v) goto check_1;
43621 return _wrap_RSet_contains__SWIG_1(self, argc, argv);
43622 }
43623check_1:
43624 if (argc == 2) {
43625 return _wrap_RSet_contains__SWIG_0(self, argc, argv);
43626 }
43627fail:
43628 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'RSet_contains'.\n"
43629 " Possible C/C++ prototypes are:\n"
43630 " contains(Xapian::RSet *,Xapian::docid)\n"
43631 " contains(Xapian::RSet *,Xapian::MSetIterator &)\n");
43632 return __null;
43633}
43634static __attribute__ ((__unused__)) PyObject *_wrap_RSet___str__(PyObject *, PyObject *args) {
43635 PyObject *resultobj = 0;
43636 Xapian::RSet *arg1 = (Xapian::RSet *) 0 ;
43637 void *argp1 = 0 ;
43638 int res1 = 0 ;
43639 PyObject *swig_obj[1] ;
43640 std::string result;
43641 if (!args) goto fail;
43642 swig_obj[0] = args;
43643 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[43], 0 | 0, 0);
43644 if (!(res1 >= 0)) {
43645 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "RSet___str__" "', argument " "1"" of type '" "Xapian::RSet const *""'"); goto fail; } while(0);
43646 }
43647 arg1 = reinterpret_cast< Xapian::RSet * >(argp1);
43648 {
43649 SWIG_Python_Thread_Allow _swig_thread_allow;
43650 {
43651 try {
43652 result = ((Xapian::RSet const *)arg1)->get_description();
43653 } catch (...) {
43654 _swig_thread_allow.end();
43655 Xapian::SetPythonException();
43656 goto fail;
43657 }
43658 }
43659 _swig_thread_allow.end();
43660 }
43661 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
43662 return resultobj;
43663fail:
43664 return __null;
43665}
43666static __attribute__ ((__unused__)) PyObject *RSet_swigregister(PyObject *, PyObject *args) {
43667 PyObject *obj;
43668 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
43669 SWIG_TypeNewClientData(swig_types[43], SwigPyClientData_New(obj));
43670 return SWIG_Py_Void();
43671}
43672static __attribute__ ((__unused__)) PyObject *RSet_swiginit(PyObject *, PyObject *args) {
43673 return SWIG_Python_InitShadowInstance(args);
43674}
43675static __attribute__ ((__unused__)) PyObject *_wrap_MatchDecider___call__(PyObject *, PyObject *args) {
43676 PyObject *resultobj = 0;
43677 Xapian::MatchDecider *arg1 = (Xapian::MatchDecider *) 0 ;
43678 Xapian::Document *arg2 = 0 ;
43679 void *argp1 = 0 ;
43680 int res1 = 0 ;
43681 void *argp2 = 0 ;
43682 int res2 = 0 ;
43683 PyObject *swig_obj[2] ;
43684 Swig::Director *director = 0;
43685 bool upcall = false;
43686 bool result;
43687 if (!SWIG_Python_UnpackTuple(args,"MatchDecider___call__",2,2,swig_obj)) goto fail;
43688 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[30], 0 | 0, 0);
43689 if (!(res1 >= 0)) {
43690 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MatchDecider___call__" "', argument " "1"" of type '" "Xapian::MatchDecider const *""'"); goto fail; } while(0);
43691 }
43692 arg1 = reinterpret_cast< Xapian::MatchDecider * >(argp1);
43693 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[15], 0 | 0, 0);
43694 if (!(res2 >= 0)) {
43695 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MatchDecider___call__" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
43696 }
43697 if (!argp2) {
43698 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MatchDecider___call__" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
43699 }
43700 arg2 = reinterpret_cast< Xapian::Document * >(argp2);
43701 director = dynamic_cast<Swig::Director*>(arg1);
43702 upcall = (director && (director->swig_get_self()==swig_obj[0]));
43703 try {
43704 {
43705 try {
43706 if (upcall) {
43707 Swig::DirectorPureVirtualException::raise("Xapian::MatchDecider::operator ()");
43708 } else {
43709 result = (bool)((Xapian::MatchDecider const *)arg1)->operator ()((Xapian::Document const &)*arg2);
43710 }
43711 } catch (...) {
43712 Xapian::SetPythonException();
43713 goto fail;
43714 }
43715 }
43716 } catch (Swig::DirectorException&) {
43717 goto fail;
43718 }
43719 resultobj = SWIG_From_bool(static_cast< bool >(result));
43720 return resultobj;
43721fail:
43722 return __null;
43723}
43724static __attribute__ ((__unused__)) PyObject *_wrap_delete_MatchDecider(PyObject *, PyObject *args) {
43725 PyObject *resultobj = 0;
43726 Xapian::MatchDecider *arg1 = (Xapian::MatchDecider *) 0 ;
43727 void *argp1 = 0 ;
43728 int res1 = 0 ;
43729 PyObject *swig_obj[1] ;
43730 if (!args) goto fail;
43731 swig_obj[0] = args;
43732 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[30], 0x1 | 0, 0);
43733 if (!(res1 >= 0)) {
43734 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_MatchDecider" "', argument " "1"" of type '" "Xapian::MatchDecider *""'"); goto fail; } while(0);
43735 }
43736 arg1 = reinterpret_cast< Xapian::MatchDecider * >(argp1);
43737 {
43738 SWIG_Python_Thread_Allow _swig_thread_allow;
43739 {
43740 try {
43741 delete arg1;
43742 } catch (...) {
43743 _swig_thread_allow.end();
43744 Xapian::SetPythonException();
43745 goto fail;
43746 }
43747 }
43748 _swig_thread_allow.end();
43749 }
43750 resultobj = SWIG_Py_Void();
43751 return resultobj;
43752fail:
43753 return __null;
43754}
43755static __attribute__ ((__unused__)) PyObject *_wrap_new_MatchDecider(PyObject *, PyObject *args) {
43756 PyObject *resultobj = 0;
43757 PyObject *arg1 = (PyObject *) 0 ;
43758 PyObject *swig_obj[1] ;
43759 Xapian::MatchDecider *result = 0 ;
43760 if (!args) goto fail;
43761 swig_obj[0] = args;
43762 arg1 = swig_obj[0];
43763 {
43764 SWIG_Python_Thread_Allow _swig_thread_allow;
43765 {
43766 try {
43767 if ( arg1 != (&_Py_NoneStruct) ) {
43768 result = (Xapian::MatchDecider *)new SwigDirector_MatchDecider(arg1);
43769 } else {
43770 SWIG_Python_SetErrorMsg(PyExc_RuntimeError,"accessing abstract class or protected constructor");
43771 goto fail;
43772 }
43773 } catch (...) {
43774 _swig_thread_allow.end();
43775 Xapian::SetPythonException();
43776 goto fail;
43777 }
43778 }
43779 _swig_thread_allow.end();
43780 }
43781 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[30], ((0x1 << 1) | 0x1) | 0);
43782 return resultobj;
43783fail:
43784 return __null;
43785}
43786static __attribute__ ((__unused__)) PyObject *_wrap_disown_MatchDecider(PyObject *, PyObject *args) {
43787 PyObject *resultobj = 0;
43788 Xapian::MatchDecider *arg1 = (Xapian::MatchDecider *) 0 ;
43789 void *argp1 = 0 ;
43790 int res1 = 0 ;
43791 PyObject *swig_obj[1] ;
43792 if (!args) goto fail;
43793 swig_obj[0] = args;
43794 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[30], 0 | 0, 0);
43795 if (!(res1 >= 0)) {
43796 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "disown_MatchDecider" "', argument " "1"" of type '" "Xapian::MatchDecider *""'"); goto fail; } while(0);
43797 }
43798 arg1 = reinterpret_cast< Xapian::MatchDecider * >(argp1);
43799 {
43800 SWIG_Python_Thread_Allow _swig_thread_allow;
43801 {
43802 Swig::Director *director = dynamic_cast<Swig::Director *>(arg1);
43803 if (director) director->swig_disown();
43804 }
43805 _swig_thread_allow.end();
43806 }
43807 resultobj = SWIG_Py_Void();
43808 return resultobj;
43809fail:
43810 return __null;
43811}
43812static __attribute__ ((__unused__)) PyObject *MatchDecider_swigregister(PyObject *, PyObject *args) {
43813 PyObject *obj;
43814 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
43815 SWIG_TypeNewClientData(swig_types[30], SwigPyClientData_New(obj));
43816 return SWIG_Py_Void();
43817}
43818static __attribute__ ((__unused__)) PyObject *MatchDecider_swiginit(PyObject *, PyObject *args) {
43819 return SWIG_Python_InitShadowInstance(args);
43820}
43821static __attribute__ ((__unused__)) PyObject *_wrap_ExpandDecider___call__(PyObject *, PyObject *args) {
43822 PyObject *resultobj = 0;
43823 Xapian::ExpandDecider *arg1 = (Xapian::ExpandDecider *) 0 ;
43824 std::string *arg2 = 0 ;
43825 void *argp1 = 0 ;
43826 int res1 = 0 ;
43827 int res2 = ((0)) ;
43828 PyObject *swig_obj[2] ;
43829 Swig::Director *director = 0;
43830 bool upcall = false;
43831 bool result;
43832 if (!SWIG_Python_UnpackTuple(args,"ExpandDecider___call__",2,2,swig_obj)) goto fail;
43833 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[20], 0 | 0, 0);
43834 if (!(res1 >= 0)) {
43835 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ExpandDecider___call__" "', argument " "1"" of type '" "Xapian::ExpandDecider const *""'"); goto fail; } while(0);
43836 }
43837 arg1 = reinterpret_cast< Xapian::ExpandDecider * >(argp1);
43838 {
43839 std::string *ptr = (std::string *)0;
43840 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
43841 if (!(res2 >= 0)) {
43842 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ExpandDecider___call__" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
43843 }
43844 if (!ptr) {
43845 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ExpandDecider___call__" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
43846 }
43847 arg2 = ptr;
43848 }
43849 director = dynamic_cast<Swig::Director*>(arg1);
43850 upcall = (director && (director->swig_get_self()==swig_obj[0]));
43851 try {
43852 {
43853 try {
43854 if (upcall) {
43855 Swig::DirectorPureVirtualException::raise("Xapian::ExpandDecider::operator ()");
43856 } else {
43857 result = (bool)((Xapian::ExpandDecider const *)arg1)->operator ()((std::string const &)*arg2);
43858 }
43859 } catch (...) {
43860 Xapian::SetPythonException();
43861 goto fail;
43862 }
43863 }
43864 } catch (Swig::DirectorException&) {
43865 goto fail;
43866 }
43867 resultobj = SWIG_From_bool(static_cast< bool >(result));
43868 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
43869 return resultobj;
43870fail:
43871 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
43872 return __null;
43873}
43874static __attribute__ ((__unused__)) PyObject *_wrap_delete_ExpandDecider(PyObject *, PyObject *args) {
43875 PyObject *resultobj = 0;
43876 Xapian::ExpandDecider *arg1 = (Xapian::ExpandDecider *) 0 ;
43877 void *argp1 = 0 ;
43878 int res1 = 0 ;
43879 PyObject *swig_obj[1] ;
43880 if (!args) goto fail;
43881 swig_obj[0] = args;
43882 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[20], 0x1 | 0, 0);
43883 if (!(res1 >= 0)) {
43884 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ExpandDecider" "', argument " "1"" of type '" "Xapian::ExpandDecider *""'"); goto fail; } while(0);
43885 }
43886 arg1 = reinterpret_cast< Xapian::ExpandDecider * >(argp1);
43887 {
43888 SWIG_Python_Thread_Allow _swig_thread_allow;
43889 {
43890 try {
43891 delete arg1;
43892 } catch (...) {
43893 _swig_thread_allow.end();
43894 Xapian::SetPythonException();
43895 goto fail;
43896 }
43897 }
43898 _swig_thread_allow.end();
43899 }
43900 resultobj = SWIG_Py_Void();
43901 return resultobj;
43902fail:
43903 return __null;
43904}
43905static __attribute__ ((__unused__)) PyObject *_wrap_new_ExpandDecider(PyObject *, PyObject *args) {
43906 PyObject *resultobj = 0;
43907 PyObject *arg1 = (PyObject *) 0 ;
43908 PyObject *swig_obj[1] ;
43909 Xapian::ExpandDecider *result = 0 ;
43910 if (!args) goto fail;
43911 swig_obj[0] = args;
43912 arg1 = swig_obj[0];
43913 {
43914 SWIG_Python_Thread_Allow _swig_thread_allow;
43915 {
43916 try {
43917 if ( arg1 != (&_Py_NoneStruct) ) {
43918 result = (Xapian::ExpandDecider *)new SwigDirector_ExpandDecider(arg1);
43919 } else {
43920 SWIG_Python_SetErrorMsg(PyExc_RuntimeError,"accessing abstract class or protected constructor");
43921 goto fail;
43922 }
43923 } catch (...) {
43924 _swig_thread_allow.end();
43925 Xapian::SetPythonException();
43926 goto fail;
43927 }
43928 }
43929 _swig_thread_allow.end();
43930 }
43931 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[20], ((0x1 << 1) | 0x1) | 0);
43932 return resultobj;
43933fail:
43934 return __null;
43935}
43936static __attribute__ ((__unused__)) PyObject *_wrap_disown_ExpandDecider(PyObject *, PyObject *args) {
43937 PyObject *resultobj = 0;
43938 Xapian::ExpandDecider *arg1 = (Xapian::ExpandDecider *) 0 ;
43939 void *argp1 = 0 ;
43940 int res1 = 0 ;
43941 PyObject *swig_obj[1] ;
43942 if (!args) goto fail;
43943 swig_obj[0] = args;
43944 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[20], 0 | 0, 0);
43945 if (!(res1 >= 0)) {
43946 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "disown_ExpandDecider" "', argument " "1"" of type '" "Xapian::ExpandDecider *""'"); goto fail; } while(0);
43947 }
43948 arg1 = reinterpret_cast< Xapian::ExpandDecider * >(argp1);
43949 {
43950 SWIG_Python_Thread_Allow _swig_thread_allow;
43951 {
43952 Swig::Director *director = dynamic_cast<Swig::Director *>(arg1);
43953 if (director) director->swig_disown();
43954 }
43955 _swig_thread_allow.end();
43956 }
43957 resultobj = SWIG_Py_Void();
43958 return resultobj;
43959fail:
43960 return __null;
43961}
43962static __attribute__ ((__unused__)) PyObject *ExpandDecider_swigregister(PyObject *, PyObject *args) {
43963 PyObject *obj;
43964 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
43965 SWIG_TypeNewClientData(swig_types[20], SwigPyClientData_New(obj));
43966 return SWIG_Py_Void();
43967}
43968static __attribute__ ((__unused__)) PyObject *ExpandDecider_swiginit(PyObject *, PyObject *args) {
43969 return SWIG_Python_InitShadowInstance(args);
43970}
43971static __attribute__ ((__unused__)) PyObject *_wrap_new_Enquire(PyObject *, PyObject *args) {
43972 PyObject *resultobj = 0;
43973 Xapian::Database *arg1 = 0 ;
43974 void *argp1 = 0 ;
43975 int res1 = 0 ;
43976 PyObject *swig_obj[1] ;
43977 Xapian::Enquire *result = 0 ;
43978 if (!args) goto fail;
43979 swig_obj[0] = args;
43980 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
43981 if (!(res1 >= 0)) {
43982 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Enquire" "', argument " "1"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
43983 }
43984 if (!argp1) {
43985 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Enquire" "', argument " "1"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
43986 }
43987 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
43988 {
43989 SWIG_Python_Thread_Allow _swig_thread_allow;
43990 {
43991 try {
43992 result = (Xapian::Enquire *)new Xapian::Enquire((Xapian::Database const &)*arg1);
43993 } catch (...) {
43994 _swig_thread_allow.end();
43995 Xapian::SetPythonException();
43996 goto fail;
43997 }
43998 }
43999 _swig_thread_allow.end();
44000 }
44001 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[18], ((0x1 << 1) | 0x1) | 0);
44002 return resultobj;
44003fail:
44004 return __null;
44005}
44006static __attribute__ ((__unused__)) PyObject *_wrap_delete_Enquire(PyObject *, PyObject *args) {
44007 PyObject *resultobj = 0;
44008 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44009 void *argp1 = 0 ;
44010 int res1 = 0 ;
44011 PyObject *swig_obj[1] ;
44012 if (!args) goto fail;
44013 swig_obj[0] = args;
44014 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0x1 | 0, 0);
44015 if (!(res1 >= 0)) {
44016 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Enquire" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44017 }
44018 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44019 {
44020 SWIG_Python_Thread_Allow _swig_thread_allow;
44021 {
44022 try {
44023 delete arg1;
44024 } catch (...) {
44025 _swig_thread_allow.end();
44026 Xapian::SetPythonException();
44027 goto fail;
44028 }
44029 }
44030 _swig_thread_allow.end();
44031 }
44032 resultobj = SWIG_Py_Void();
44033 return resultobj;
44034fail:
44035 return __null;
44036}
44037static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_query__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
44038 PyObject *resultobj = 0;
44039 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44040 Xapian::Query *arg2 = 0 ;
44041 Xapian::termcount arg3 ;
44042 void *argp1 = 0 ;
44043 int res1 = 0 ;
44044 void *argp2 = 0 ;
44045 int res2 = 0 ;
44046 unsigned int val3 ;
44047 int ecode3 = 0 ;
44048 if ((nobjs < 3) || (nobjs > 3)) goto fail;
44049 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44050 if (!(res1 >= 0)) {
44051 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_query" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44052 }
44053 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44054 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[40], 0 | 0, 0);
44055 if (!(res2 >= 0)) {
44056 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_set_query" "', argument " "2"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
44057 }
44058 if (!argp2) {
44059 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_set_query" "', argument " "2"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
44060 }
44061 arg2 = reinterpret_cast< Xapian::Query * >(argp2);
44062 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
44063 if (!(ecode3 >= 0)) {
44064 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_set_query" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
44065 }
44066 arg3 = static_cast< Xapian::termcount >(val3);
44067 {
44068 SWIG_Python_Thread_Allow _swig_thread_allow;
44069 {
44070 try {
44071 (arg1)->set_query((Xapian::Query const &)*arg2,arg3);
44072 } catch (...) {
44073 _swig_thread_allow.end();
44074 Xapian::SetPythonException();
44075 goto fail;
44076 }
44077 }
44078 _swig_thread_allow.end();
44079 }
44080 resultobj = SWIG_Py_Void();
44081 return resultobj;
44082fail:
44083 return __null;
44084}
44085static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_query__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
44086 PyObject *resultobj = 0;
44087 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44088 Xapian::Query *arg2 = 0 ;
44089 void *argp1 = 0 ;
44090 int res1 = 0 ;
44091 void *argp2 = 0 ;
44092 int res2 = 0 ;
44093 if ((nobjs < 2) || (nobjs > 2)) goto fail;
44094 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44095 if (!(res1 >= 0)) {
44096 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_query" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44097 }
44098 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44099 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[40], 0 | 0, 0);
44100 if (!(res2 >= 0)) {
44101 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_set_query" "', argument " "2"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
44102 }
44103 if (!argp2) {
44104 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_set_query" "', argument " "2"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
44105 }
44106 arg2 = reinterpret_cast< Xapian::Query * >(argp2);
44107 {
44108 SWIG_Python_Thread_Allow _swig_thread_allow;
44109 {
44110 try {
44111 (arg1)->set_query((Xapian::Query const &)*arg2);
44112 } catch (...) {
44113 _swig_thread_allow.end();
44114 Xapian::SetPythonException();
44115 goto fail;
44116 }
44117 }
44118 _swig_thread_allow.end();
44119 }
44120 resultobj = SWIG_Py_Void();
44121 return resultobj;
44122fail:
44123 return __null;
44124}
44125static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_query(PyObject *self, PyObject *args) {
44126 int argc;
44127 PyObject *argv[4];
44128 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_set_query",0,3,argv))) goto fail;
44129 --argc;
44130 if (argc == 2) {
44131 return _wrap_Enquire_set_query__SWIG_1(self, argc, argv);
44132 }
44133 if (argc == 3) {
44134 return _wrap_Enquire_set_query__SWIG_0(self, argc, argv);
44135 }
44136fail:
44137 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_set_query'.\n"
44138 " Possible C/C++ prototypes are:\n"
44139 " set_query(Xapian::Enquire *,Xapian::Query const &,Xapian::termcount)\n"
44140 " set_query(Xapian::Enquire *,Xapian::Query const &)\n");
44141 return __null;
44142}
44143static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_query(PyObject *, PyObject *args) {
44144 PyObject *resultobj = 0;
44145 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44146 void *argp1 = 0 ;
44147 int res1 = 0 ;
44148 PyObject *swig_obj[1] ;
44149 Xapian::Query *result = 0 ;
44150 if (!args) goto fail;
44151 swig_obj[0] = args;
44152 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44153 if (!(res1 >= 0)) {
44154 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_query" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44155 }
44156 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44157 {
44158 SWIG_Python_Thread_Allow _swig_thread_allow;
44159 {
44160 try {
44161 result = (Xapian::Query *) &(arg1)->get_query();
44162 } catch (...) {
44163 _swig_thread_allow.end();
44164 Xapian::SetPythonException();
44165 goto fail;
44166 }
44167 }
44168 _swig_thread_allow.end();
44169 }
44170 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], 0 | 0);
44171 return resultobj;
44172fail:
44173 return __null;
44174}
44175static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_add_matchspy(PyObject *, PyObject *args) {
44176 PyObject *resultobj = 0;
44177 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44178 Xapian::MatchSpy *arg2 = (Xapian::MatchSpy *) 0 ;
44179 void *argp1 = 0 ;
44180 int res1 = 0 ;
44181 void *argp2 = 0 ;
44182 int res2 = 0 ;
44183 PyObject *swig_obj[2] ;
44184 if (!SWIG_Python_UnpackTuple(args,"Enquire_add_matchspy",2,2,swig_obj)) goto fail;
44185 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44186 if (!(res1 >= 0)) {
44187 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_add_matchspy" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44188 }
44189 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44190 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[31], 0 | 0, 0);
44191 if (!(res2 >= 0)) {
44192 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_add_matchspy" "', argument " "2"" of type '" "Xapian::MatchSpy *""'"); goto fail; } while(0);
44193 }
44194 arg2 = reinterpret_cast< Xapian::MatchSpy * >(argp2);
44195 {
44196 SWIG_Python_Thread_Allow _swig_thread_allow;
44197 {
44198 try {
44199 (arg1)->add_matchspy(arg2);
44200 } catch (...) {
44201 _swig_thread_allow.end();
44202 Xapian::SetPythonException();
44203 goto fail;
44204 }
44205 }
44206 _swig_thread_allow.end();
44207 }
44208 resultobj = SWIG_Py_Void();
44209 return resultobj;
44210fail:
44211 return __null;
44212}
44213static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_clear_matchspies(PyObject *, PyObject *args) {
44214 PyObject *resultobj = 0;
44215 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44216 void *argp1 = 0 ;
44217 int res1 = 0 ;
44218 PyObject *swig_obj[1] ;
44219 if (!args) goto fail;
44220 swig_obj[0] = args;
44221 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44222 if (!(res1 >= 0)) {
44223 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_clear_matchspies" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44224 }
44225 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44226 {
44227 SWIG_Python_Thread_Allow _swig_thread_allow;
44228 {
44229 try {
44230 (arg1)->clear_matchspies();
44231 } catch (...) {
44232 _swig_thread_allow.end();
44233 Xapian::SetPythonException();
44234 goto fail;
44235 }
44236 }
44237 _swig_thread_allow.end();
44238 }
44239 resultobj = SWIG_Py_Void();
44240 return resultobj;
44241fail:
44242 return __null;
44243}
44244static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_weighting_scheme(PyObject *, PyObject *args) {
44245 PyObject *resultobj = 0;
44246 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44247 Xapian::Weight *arg2 = 0 ;
44248 void *argp1 = 0 ;
44249 int res1 = 0 ;
44250 void *argp2 = 0 ;
44251 int res2 = 0 ;
44252 PyObject *swig_obj[2] ;
44253 if (!SWIG_Python_UnpackTuple(args,"Enquire_set_weighting_scheme",2,2,swig_obj)) goto fail;
44254 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44255 if (!(res1 >= 0)) {
44256 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_weighting_scheme" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44257 }
44258 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44259 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[65], 0 | 0, 0);
44260 if (!(res2 >= 0)) {
44261 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_set_weighting_scheme" "', argument " "2"" of type '" "Xapian::Weight const &""'"); goto fail; } while(0);
44262 }
44263 if (!argp2) {
44264 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_set_weighting_scheme" "', argument " "2"" of type '" "Xapian::Weight const &""'"); goto fail; } while(0);
44265 }
44266 arg2 = reinterpret_cast< Xapian::Weight * >(argp2);
44267 {
44268 SWIG_Python_Thread_Allow _swig_thread_allow;
44269 {
44270 try {
44271 (arg1)->set_weighting_scheme((Xapian::Weight const &)*arg2);
44272 } catch (...) {
44273 _swig_thread_allow.end();
44274 Xapian::SetPythonException();
44275 goto fail;
44276 }
44277 }
44278 _swig_thread_allow.end();
44279 }
44280 resultobj = SWIG_Py_Void();
44281 return resultobj;
44282fail:
44283 return __null;
44284}
44285static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_collapse_key__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
44286 PyObject *resultobj = 0;
44287 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44288 Xapian::valueno arg2 ;
44289 Xapian::doccount arg3 ;
44290 void *argp1 = 0 ;
44291 int res1 = 0 ;
44292 unsigned int val2 ;
44293 int ecode2 = 0 ;
44294 unsigned int val3 ;
44295 int ecode3 = 0 ;
44296 if ((nobjs < 3) || (nobjs > 3)) goto fail;
44297 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44298 if (!(res1 >= 0)) {
44299 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_collapse_key" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44300 }
44301 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44302 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
44303 if (!(ecode2 >= 0)) {
44304 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_collapse_key" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
44305 }
44306 arg2 = static_cast< Xapian::valueno >(val2);
44307 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
44308 if (!(ecode3 >= 0)) {
44309 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_set_collapse_key" "', argument " "3"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
44310 }
44311 arg3 = static_cast< Xapian::doccount >(val3);
44312 {
44313 SWIG_Python_Thread_Allow _swig_thread_allow;
44314 {
44315 try {
44316 (arg1)->set_collapse_key(arg2,arg3);
44317 } catch (...) {
44318 _swig_thread_allow.end();
44319 Xapian::SetPythonException();
44320 goto fail;
44321 }
44322 }
44323 _swig_thread_allow.end();
44324 }
44325 resultobj = SWIG_Py_Void();
44326 return resultobj;
44327fail:
44328 return __null;
44329}
44330static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_collapse_key__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
44331 PyObject *resultobj = 0;
44332 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44333 Xapian::valueno arg2 ;
44334 void *argp1 = 0 ;
44335 int res1 = 0 ;
44336 unsigned int val2 ;
44337 int ecode2 = 0 ;
44338 if ((nobjs < 2) || (nobjs > 2)) goto fail;
44339 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44340 if (!(res1 >= 0)) {
44341 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_collapse_key" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44342 }
44343 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44344 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
44345 if (!(ecode2 >= 0)) {
44346 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_collapse_key" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
44347 }
44348 arg2 = static_cast< Xapian::valueno >(val2);
44349 {
44350 SWIG_Python_Thread_Allow _swig_thread_allow;
44351 {
44352 try {
44353 (arg1)->set_collapse_key(arg2);
44354 } catch (...) {
44355 _swig_thread_allow.end();
44356 Xapian::SetPythonException();
44357 goto fail;
44358 }
44359 }
44360 _swig_thread_allow.end();
44361 }
44362 resultobj = SWIG_Py_Void();
44363 return resultobj;
44364fail:
44365 return __null;
44366}
44367static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_collapse_key(PyObject *self, PyObject *args) {
44368 int argc;
44369 PyObject *argv[4];
44370 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_set_collapse_key",0,3,argv))) goto fail;
44371 --argc;
44372 if (argc == 2) {
44373 return _wrap_Enquire_set_collapse_key__SWIG_1(self, argc, argv);
44374 }
44375 if (argc == 3) {
44376 return _wrap_Enquire_set_collapse_key__SWIG_0(self, argc, argv);
44377 }
44378fail:
44379 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_set_collapse_key'.\n"
44380 " Possible C/C++ prototypes are:\n"
44381 " set_collapse_key(Xapian::Enquire *,Xapian::valueno,Xapian::doccount)\n"
44382 " set_collapse_key(Xapian::Enquire *,Xapian::valueno)\n");
44383 return __null;
44384}
44385static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_docid_order(PyObject *, PyObject *args) {
44386 PyObject *resultobj = 0;
44387 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44388 Xapian::Enquire::docid_order arg2 ;
44389 void *argp1 = 0 ;
44390 int res1 = 0 ;
44391 int val2 ;
44392 int ecode2 = 0 ;
44393 PyObject *swig_obj[2] ;
44394 if (!SWIG_Python_UnpackTuple(args,"Enquire_set_docid_order",2,2,swig_obj)) goto fail;
44395 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44396 if (!(res1 >= 0)) {
44397 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_docid_order" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44398 }
44399 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44400 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
44401 if (!(ecode2 >= 0)) {
44402 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_docid_order" "', argument " "2"" of type '" "Xapian::Enquire::docid_order""'"); goto fail; } while(0);
44403 }
44404 arg2 = static_cast< Xapian::Enquire::docid_order >(val2);
44405 {
44406 SWIG_Python_Thread_Allow _swig_thread_allow;
44407 {
44408 try {
44409 (arg1)->set_docid_order(arg2);
44410 } catch (...) {
44411 _swig_thread_allow.end();
44412 Xapian::SetPythonException();
44413 goto fail;
44414 }
44415 }
44416 _swig_thread_allow.end();
44417 }
44418 resultobj = SWIG_Py_Void();
44419 return resultobj;
44420fail:
44421 return __null;
44422}
44423static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_cutoff__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
44424 PyObject *resultobj = 0;
44425 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44426 int arg2 ;
44427 Xapian::weight arg3 ;
44428 void *argp1 = 0 ;
44429 int res1 = 0 ;
44430 int val2 ;
44431 int ecode2 = 0 ;
44432 double val3 ;
44433 int ecode3 = 0 ;
44434 if ((nobjs < 3) || (nobjs > 3)) goto fail;
44435 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44436 if (!(res1 >= 0)) {
44437 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_cutoff" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44438 }
44439 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44440 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
44441 if (!(ecode2 >= 0)) {
44442 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_cutoff" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
44443 }
44444 arg2 = static_cast< int >(val2);
44445 ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
44446 if (!(ecode3 >= 0)) {
44447 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_set_cutoff" "', argument " "3"" of type '" "Xapian::weight""'"); goto fail; } while(0);
44448 }
44449 arg3 = static_cast< Xapian::weight >(val3);
44450 {
44451 SWIG_Python_Thread_Allow _swig_thread_allow;
44452 {
44453 try {
44454 (arg1)->set_cutoff(arg2,arg3);
44455 } catch (...) {
44456 _swig_thread_allow.end();
44457 Xapian::SetPythonException();
44458 goto fail;
44459 }
44460 }
44461 _swig_thread_allow.end();
44462 }
44463 resultobj = SWIG_Py_Void();
44464 return resultobj;
44465fail:
44466 return __null;
44467}
44468static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_cutoff__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
44469 PyObject *resultobj = 0;
44470 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44471 int arg2 ;
44472 void *argp1 = 0 ;
44473 int res1 = 0 ;
44474 int val2 ;
44475 int ecode2 = 0 ;
44476 if ((nobjs < 2) || (nobjs > 2)) goto fail;
44477 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44478 if (!(res1 >= 0)) {
44479 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_cutoff" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44480 }
44481 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44482 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
44483 if (!(ecode2 >= 0)) {
44484 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_cutoff" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
44485 }
44486 arg2 = static_cast< int >(val2);
44487 {
44488 SWIG_Python_Thread_Allow _swig_thread_allow;
44489 {
44490 try {
44491 (arg1)->set_cutoff(arg2);
44492 } catch (...) {
44493 _swig_thread_allow.end();
44494 Xapian::SetPythonException();
44495 goto fail;
44496 }
44497 }
44498 _swig_thread_allow.end();
44499 }
44500 resultobj = SWIG_Py_Void();
44501 return resultobj;
44502fail:
44503 return __null;
44504}
44505static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_cutoff(PyObject *self, PyObject *args) {
44506 int argc;
44507 PyObject *argv[4];
44508 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_set_cutoff",0,3,argv))) goto fail;
44509 --argc;
44510 if (argc == 2) {
44511 return _wrap_Enquire_set_cutoff__SWIG_1(self, argc, argv);
44512 }
44513 if (argc == 3) {
44514 return _wrap_Enquire_set_cutoff__SWIG_0(self, argc, argv);
44515 }
44516fail:
44517 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_set_cutoff'.\n"
44518 " Possible C/C++ prototypes are:\n"
44519 " set_cutoff(Xapian::Enquire *,int,Xapian::weight)\n"
44520 " set_cutoff(Xapian::Enquire *,int)\n");
44521 return __null;
44522}
44523static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_relevance(PyObject *, PyObject *args) {
44524 PyObject *resultobj = 0;
44525 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44526 void *argp1 = 0 ;
44527 int res1 = 0 ;
44528 PyObject *swig_obj[1] ;
44529 if (!args) goto fail;
44530 swig_obj[0] = args;
44531 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44532 if (!(res1 >= 0)) {
44533 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_relevance" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44534 }
44535 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44536 {
44537 SWIG_Python_Thread_Allow _swig_thread_allow;
44538 {
44539 try {
44540 (arg1)->set_sort_by_relevance();
44541 } catch (...) {
44542 _swig_thread_allow.end();
44543 Xapian::SetPythonException();
44544 goto fail;
44545 }
44546 }
44547 _swig_thread_allow.end();
44548 }
44549 resultobj = SWIG_Py_Void();
44550 return resultobj;
44551fail:
44552 return __null;
44553}
44554static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_value__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
44555 PyObject *resultobj = 0;
44556 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44557 Xapian::valueno arg2 ;
44558 bool arg3 ;
44559 void *argp1 = 0 ;
44560 int res1 = 0 ;
44561 unsigned int val2 ;
44562 int ecode2 = 0 ;
44563 bool val3 ;
44564 int ecode3 = 0 ;
44565 if ((nobjs < 3) || (nobjs > 3)) goto fail;
44566 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44567 if (!(res1 >= 0)) {
44568 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_value" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44569 }
44570 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44571 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
44572 if (!(ecode2 >= 0)) {
44573 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_sort_by_value" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
44574 }
44575 arg2 = static_cast< Xapian::valueno >(val2);
44576 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
44577 if (!(ecode3 >= 0)) {
44578 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_set_sort_by_value" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
44579 }
44580 arg3 = static_cast< bool >(val3);
44581 {
44582 SWIG_Python_Thread_Allow _swig_thread_allow;
44583 {
44584 try {
44585 (arg1)->set_sort_by_value(arg2,arg3);
44586 } catch (...) {
44587 _swig_thread_allow.end();
44588 Xapian::SetPythonException();
44589 goto fail;
44590 }
44591 }
44592 _swig_thread_allow.end();
44593 }
44594 resultobj = SWIG_Py_Void();
44595 return resultobj;
44596fail:
44597 return __null;
44598}
44599static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_value__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
44600 PyObject *resultobj = 0;
44601 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44602 Xapian::valueno arg2 ;
44603 void *argp1 = 0 ;
44604 int res1 = 0 ;
44605 unsigned int val2 ;
44606 int ecode2 = 0 ;
44607 if ((nobjs < 2) || (nobjs > 2)) goto fail;
44608 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44609 if (!(res1 >= 0)) {
44610 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_value" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44611 }
44612 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44613 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
44614 if (!(ecode2 >= 0)) {
44615 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_sort_by_value" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
44616 }
44617 arg2 = static_cast< Xapian::valueno >(val2);
44618 {
44619 SWIG_Python_Thread_Allow _swig_thread_allow;
44620 {
44621 try {
44622 (arg1)->set_sort_by_value(arg2);
44623 } catch (...) {
44624 _swig_thread_allow.end();
44625 Xapian::SetPythonException();
44626 goto fail;
44627 }
44628 }
44629 _swig_thread_allow.end();
44630 }
44631 resultobj = SWIG_Py_Void();
44632 return resultobj;
44633fail:
44634 return __null;
44635}
44636static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_value(PyObject *self, PyObject *args) {
44637 int argc;
44638 PyObject *argv[4];
44639 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_set_sort_by_value",0,3,argv))) goto fail;
44640 --argc;
44641 if (argc == 2) {
44642 return _wrap_Enquire_set_sort_by_value__SWIG_1(self, argc, argv);
44643 }
44644 if (argc == 3) {
44645 return _wrap_Enquire_set_sort_by_value__SWIG_0(self, argc, argv);
44646 }
44647fail:
44648 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_set_sort_by_value'.\n"
44649 " Possible C/C++ prototypes are:\n"
44650 " set_sort_by_value(Xapian::Enquire *,Xapian::valueno,bool)\n"
44651 " set_sort_by_value(Xapian::Enquire *,Xapian::valueno)\n");
44652 return __null;
44653}
44654static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_value_then_relevance__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
44655 PyObject *resultobj = 0;
44656 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44657 Xapian::valueno arg2 ;
44658 bool arg3 ;
44659 void *argp1 = 0 ;
44660 int res1 = 0 ;
44661 unsigned int val2 ;
44662 int ecode2 = 0 ;
44663 bool val3 ;
44664 int ecode3 = 0 ;
44665 if ((nobjs < 3) || (nobjs > 3)) goto fail;
44666 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44667 if (!(res1 >= 0)) {
44668 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_value_then_relevance" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44669 }
44670 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44671 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
44672 if (!(ecode2 >= 0)) {
44673 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_sort_by_value_then_relevance" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
44674 }
44675 arg2 = static_cast< Xapian::valueno >(val2);
44676 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
44677 if (!(ecode3 >= 0)) {
44678 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_set_sort_by_value_then_relevance" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
44679 }
44680 arg3 = static_cast< bool >(val3);
44681 {
44682 SWIG_Python_Thread_Allow _swig_thread_allow;
44683 {
44684 try {
44685 (arg1)->set_sort_by_value_then_relevance(arg2,arg3);
44686 } catch (...) {
44687 _swig_thread_allow.end();
44688 Xapian::SetPythonException();
44689 goto fail;
44690 }
44691 }
44692 _swig_thread_allow.end();
44693 }
44694 resultobj = SWIG_Py_Void();
44695 return resultobj;
44696fail:
44697 return __null;
44698}
44699static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_value_then_relevance__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
44700 PyObject *resultobj = 0;
44701 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44702 Xapian::valueno arg2 ;
44703 void *argp1 = 0 ;
44704 int res1 = 0 ;
44705 unsigned int val2 ;
44706 int ecode2 = 0 ;
44707 if ((nobjs < 2) || (nobjs > 2)) goto fail;
44708 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44709 if (!(res1 >= 0)) {
44710 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_value_then_relevance" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44711 }
44712 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44713 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
44714 if (!(ecode2 >= 0)) {
44715 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_sort_by_value_then_relevance" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
44716 }
44717 arg2 = static_cast< Xapian::valueno >(val2);
44718 {
44719 SWIG_Python_Thread_Allow _swig_thread_allow;
44720 {
44721 try {
44722 (arg1)->set_sort_by_value_then_relevance(arg2);
44723 } catch (...) {
44724 _swig_thread_allow.end();
44725 Xapian::SetPythonException();
44726 goto fail;
44727 }
44728 }
44729 _swig_thread_allow.end();
44730 }
44731 resultobj = SWIG_Py_Void();
44732 return resultobj;
44733fail:
44734 return __null;
44735}
44736static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_value_then_relevance(PyObject *self, PyObject *args) {
44737 int argc;
44738 PyObject *argv[4];
44739 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_set_sort_by_value_then_relevance",0,3,argv))) goto fail;
44740 --argc;
44741 if (argc == 2) {
44742 return _wrap_Enquire_set_sort_by_value_then_relevance__SWIG_1(self, argc, argv);
44743 }
44744 if (argc == 3) {
44745 return _wrap_Enquire_set_sort_by_value_then_relevance__SWIG_0(self, argc, argv);
44746 }
44747fail:
44748 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_set_sort_by_value_then_relevance'.\n"
44749 " Possible C/C++ prototypes are:\n"
44750 " set_sort_by_value_then_relevance(Xapian::Enquire *,Xapian::valueno,bool)\n"
44751 " set_sort_by_value_then_relevance(Xapian::Enquire *,Xapian::valueno)\n");
44752 return __null;
44753}
44754static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_relevance_then_value__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
44755 PyObject *resultobj = 0;
44756 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44757 Xapian::valueno arg2 ;
44758 bool arg3 ;
44759 void *argp1 = 0 ;
44760 int res1 = 0 ;
44761 unsigned int val2 ;
44762 int ecode2 = 0 ;
44763 bool val3 ;
44764 int ecode3 = 0 ;
44765 if ((nobjs < 3) || (nobjs > 3)) goto fail;
44766 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44767 if (!(res1 >= 0)) {
44768 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_value" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44769 }
44770 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44771 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
44772 if (!(ecode2 >= 0)) {
44773 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_value" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
44774 }
44775 arg2 = static_cast< Xapian::valueno >(val2);
44776 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
44777 if (!(ecode3 >= 0)) {
44778 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_value" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
44779 }
44780 arg3 = static_cast< bool >(val3);
44781 {
44782 SWIG_Python_Thread_Allow _swig_thread_allow;
44783 {
44784 try {
44785 (arg1)->set_sort_by_relevance_then_value(arg2,arg3);
44786 } catch (...) {
44787 _swig_thread_allow.end();
44788 Xapian::SetPythonException();
44789 goto fail;
44790 }
44791 }
44792 _swig_thread_allow.end();
44793 }
44794 resultobj = SWIG_Py_Void();
44795 return resultobj;
44796fail:
44797 return __null;
44798}
44799static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_relevance_then_value__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
44800 PyObject *resultobj = 0;
44801 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44802 Xapian::valueno arg2 ;
44803 void *argp1 = 0 ;
44804 int res1 = 0 ;
44805 unsigned int val2 ;
44806 int ecode2 = 0 ;
44807 if ((nobjs < 2) || (nobjs > 2)) goto fail;
44808 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44809 if (!(res1 >= 0)) {
44810 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_value" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44811 }
44812 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44813 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
44814 if (!(ecode2 >= 0)) {
44815 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_value" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
44816 }
44817 arg2 = static_cast< Xapian::valueno >(val2);
44818 {
44819 SWIG_Python_Thread_Allow _swig_thread_allow;
44820 {
44821 try {
44822 (arg1)->set_sort_by_relevance_then_value(arg2);
44823 } catch (...) {
44824 _swig_thread_allow.end();
44825 Xapian::SetPythonException();
44826 goto fail;
44827 }
44828 }
44829 _swig_thread_allow.end();
44830 }
44831 resultobj = SWIG_Py_Void();
44832 return resultobj;
44833fail:
44834 return __null;
44835}
44836static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_relevance_then_value(PyObject *self, PyObject *args) {
44837 int argc;
44838 PyObject *argv[4];
44839 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_set_sort_by_relevance_then_value",0,3,argv))) goto fail;
44840 --argc;
44841 if (argc == 2) {
44842 return _wrap_Enquire_set_sort_by_relevance_then_value__SWIG_1(self, argc, argv);
44843 }
44844 if (argc == 3) {
44845 return _wrap_Enquire_set_sort_by_relevance_then_value__SWIG_0(self, argc, argv);
44846 }
44847fail:
44848 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_set_sort_by_relevance_then_value'.\n"
44849 " Possible C/C++ prototypes are:\n"
44850 " set_sort_by_relevance_then_value(Xapian::Enquire *,Xapian::valueno,bool)\n"
44851 " set_sort_by_relevance_then_value(Xapian::Enquire *,Xapian::valueno)\n");
44852 return __null;
44853}
44854static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_key__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
44855 PyObject *resultobj = 0;
44856 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44857 Xapian::KeyMaker *arg2 = (Xapian::KeyMaker *) 0 ;
44858 bool arg3 ;
44859 void *argp1 = 0 ;
44860 int res1 = 0 ;
44861 void *argp2 = 0 ;
44862 int res2 = 0 ;
44863 bool val3 ;
44864 int ecode3 = 0 ;
44865 if ((nobjs < 3) || (nobjs > 3)) goto fail;
44866 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44867 if (!(res1 >= 0)) {
44868 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_key" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44869 }
44870 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44871 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[26], 0 | 0, 0);
44872 if (!(res2 >= 0)) {
44873 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_set_sort_by_key" "', argument " "2"" of type '" "Xapian::KeyMaker *""'"); goto fail; } while(0);
44874 }
44875 arg2 = reinterpret_cast< Xapian::KeyMaker * >(argp2);
44876 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
44877 if (!(ecode3 >= 0)) {
44878 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_set_sort_by_key" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
44879 }
44880 arg3 = static_cast< bool >(val3);
44881 {
44882 SWIG_Python_Thread_Allow _swig_thread_allow;
44883 {
44884 try {
44885 (arg1)->set_sort_by_key(arg2,arg3);
44886 } catch (...) {
44887 _swig_thread_allow.end();
44888 Xapian::SetPythonException();
44889 goto fail;
44890 }
44891 }
44892 _swig_thread_allow.end();
44893 }
44894 resultobj = SWIG_Py_Void();
44895 return resultobj;
44896fail:
44897 return __null;
44898}
44899static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_key__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
44900 PyObject *resultobj = 0;
44901 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44902 Xapian::Sorter *arg2 = (Xapian::Sorter *) 0 ;
44903 void *argp1 = 0 ;
44904 int res1 = 0 ;
44905 void *argp2 = 0 ;
44906 int res2 = 0 ;
44907 if ((nobjs < 2) || (nobjs > 2)) goto fail;
44908 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44909 if (!(res1 >= 0)) {
44910 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_key" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44911 }
44912 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44913 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[49], 0 | 0, 0);
44914 if (!(res2 >= 0)) {
44915 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_set_sort_by_key" "', argument " "2"" of type '" "Xapian::Sorter *""'"); goto fail; } while(0);
44916 }
44917 arg2 = reinterpret_cast< Xapian::Sorter * >(argp2);
44918 {
44919 SWIG_Python_Thread_Allow _swig_thread_allow;
44920 {
44921 try {
44922 (arg1)->set_sort_by_key(arg2);
44923 } catch (...) {
44924 _swig_thread_allow.end();
44925 Xapian::SetPythonException();
44926 goto fail;
44927 }
44928 }
44929 _swig_thread_allow.end();
44930 }
44931 resultobj = SWIG_Py_Void();
44932 return resultobj;
44933fail:
44934 return __null;
44935}
44936static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_key(PyObject *self, PyObject *args) {
44937 int argc;
44938 PyObject *argv[4];
44939 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_set_sort_by_key",0,3,argv))) goto fail;
44940 --argc;
44941 if (argc == 2) {
44942 return _wrap_Enquire_set_sort_by_key__SWIG_1(self, argc, argv);
44943 }
44944 if (argc == 3) {
44945 return _wrap_Enquire_set_sort_by_key__SWIG_0(self, argc, argv);
44946 }
44947fail:
44948 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_set_sort_by_key'.\n"
44949 " Possible C/C++ prototypes are:\n"
44950 " set_sort_by_key(Xapian::Enquire *,Xapian::KeyMaker *,bool)\n"
44951 " set_sort_by_key(Xapian::Enquire *,Xapian::Sorter *)\n");
44952 return __null;
44953}
44954static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_key_then_relevance__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
44955 PyObject *resultobj = 0;
44956 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
44957 Xapian::KeyMaker *arg2 = (Xapian::KeyMaker *) 0 ;
44958 bool arg3 ;
44959 void *argp1 = 0 ;
44960 int res1 = 0 ;
44961 void *argp2 = 0 ;
44962 int res2 = 0 ;
44963 bool val3 ;
44964 int ecode3 = 0 ;
44965 if ((nobjs < 3) || (nobjs > 3)) goto fail;
44966 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
44967 if (!(res1 >= 0)) {
44968 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_key_then_relevance" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
44969 }
44970 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
44971 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[26], 0 | 0, 0);
44972 if (!(res2 >= 0)) {
44973 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_set_sort_by_key_then_relevance" "', argument " "2"" of type '" "Xapian::KeyMaker *""'"); goto fail; } while(0);
44974 }
44975 arg2 = reinterpret_cast< Xapian::KeyMaker * >(argp2);
44976 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
44977 if (!(ecode3 >= 0)) {
44978 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_set_sort_by_key_then_relevance" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
44979 }
44980 arg3 = static_cast< bool >(val3);
44981 {
44982 SWIG_Python_Thread_Allow _swig_thread_allow;
44983 {
44984 try {
44985 (arg1)->set_sort_by_key_then_relevance(arg2,arg3);
44986 } catch (...) {
44987 _swig_thread_allow.end();
44988 Xapian::SetPythonException();
44989 goto fail;
44990 }
44991 }
44992 _swig_thread_allow.end();
44993 }
44994 resultobj = SWIG_Py_Void();
44995 return resultobj;
44996fail:
44997 return __null;
44998}
44999static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_key_then_relevance__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
45000 PyObject *resultobj = 0;
45001 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45002 Xapian::Sorter *arg2 = (Xapian::Sorter *) 0 ;
45003 void *argp1 = 0 ;
45004 int res1 = 0 ;
45005 void *argp2 = 0 ;
45006 int res2 = 0 ;
45007 if ((nobjs < 2) || (nobjs > 2)) goto fail;
45008 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45009 if (!(res1 >= 0)) {
45010 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_key_then_relevance" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
45011 }
45012 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45013 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[49], 0 | 0, 0);
45014 if (!(res2 >= 0)) {
45015 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_set_sort_by_key_then_relevance" "', argument " "2"" of type '" "Xapian::Sorter *""'"); goto fail; } while(0);
45016 }
45017 arg2 = reinterpret_cast< Xapian::Sorter * >(argp2);
45018 {
45019 SWIG_Python_Thread_Allow _swig_thread_allow;
45020 {
45021 try {
45022 (arg1)->set_sort_by_key_then_relevance(arg2);
45023 } catch (...) {
45024 _swig_thread_allow.end();
45025 Xapian::SetPythonException();
45026 goto fail;
45027 }
45028 }
45029 _swig_thread_allow.end();
45030 }
45031 resultobj = SWIG_Py_Void();
45032 return resultobj;
45033fail:
45034 return __null;
45035}
45036static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_key_then_relevance(PyObject *self, PyObject *args) {
45037 int argc;
45038 PyObject *argv[4];
45039 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_set_sort_by_key_then_relevance",0,3,argv))) goto fail;
45040 --argc;
45041 if (argc == 2) {
45042 return _wrap_Enquire_set_sort_by_key_then_relevance__SWIG_1(self, argc, argv);
45043 }
45044 if (argc == 3) {
45045 return _wrap_Enquire_set_sort_by_key_then_relevance__SWIG_0(self, argc, argv);
45046 }
45047fail:
45048 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_set_sort_by_key_then_relevance'.\n"
45049 " Possible C/C++ prototypes are:\n"
45050 " set_sort_by_key_then_relevance(Xapian::Enquire *,Xapian::KeyMaker *,bool)\n"
45051 " set_sort_by_key_then_relevance(Xapian::Enquire *,Xapian::Sorter *)\n");
45052 return __null;
45053}
45054static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_relevance_then_key__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
45055 PyObject *resultobj = 0;
45056 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45057 Xapian::KeyMaker *arg2 = (Xapian::KeyMaker *) 0 ;
45058 bool arg3 ;
45059 void *argp1 = 0 ;
45060 int res1 = 0 ;
45061 void *argp2 = 0 ;
45062 int res2 = 0 ;
45063 bool val3 ;
45064 int ecode3 = 0 ;
45065 if ((nobjs < 3) || (nobjs > 3)) goto fail;
45066 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45067 if (!(res1 >= 0)) {
45068 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_key" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
45069 }
45070 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45071 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[26], 0 | 0, 0);
45072 if (!(res2 >= 0)) {
45073 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_key" "', argument " "2"" of type '" "Xapian::KeyMaker *""'"); goto fail; } while(0);
45074 }
45075 arg2 = reinterpret_cast< Xapian::KeyMaker * >(argp2);
45076 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
45077 if (!(ecode3 >= 0)) {
45078 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_key" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
45079 }
45080 arg3 = static_cast< bool >(val3);
45081 {
45082 SWIG_Python_Thread_Allow _swig_thread_allow;
45083 {
45084 try {
45085 (arg1)->set_sort_by_relevance_then_key(arg2,arg3);
45086 } catch (...) {
45087 _swig_thread_allow.end();
45088 Xapian::SetPythonException();
45089 goto fail;
45090 }
45091 }
45092 _swig_thread_allow.end();
45093 }
45094 resultobj = SWIG_Py_Void();
45095 return resultobj;
45096fail:
45097 return __null;
45098}
45099static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_relevance_then_key__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
45100 PyObject *resultobj = 0;
45101 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45102 Xapian::Sorter *arg2 = (Xapian::Sorter *) 0 ;
45103 void *argp1 = 0 ;
45104 int res1 = 0 ;
45105 void *argp2 = 0 ;
45106 int res2 = 0 ;
45107 if ((nobjs < 2) || (nobjs > 2)) goto fail;
45108 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45109 if (!(res1 >= 0)) {
45110 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_key" "', argument " "1"" of type '" "Xapian::Enquire *""'"); goto fail; } while(0);
45111 }
45112 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45113 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[49], 0 | 0, 0);
45114 if (!(res2 >= 0)) {
45115 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_set_sort_by_relevance_then_key" "', argument " "2"" of type '" "Xapian::Sorter *""'"); goto fail; } while(0);
45116 }
45117 arg2 = reinterpret_cast< Xapian::Sorter * >(argp2);
45118 {
45119 SWIG_Python_Thread_Allow _swig_thread_allow;
45120 {
45121 try {
45122 (arg1)->set_sort_by_relevance_then_key(arg2);
45123 } catch (...) {
45124 _swig_thread_allow.end();
45125 Xapian::SetPythonException();
45126 goto fail;
45127 }
45128 }
45129 _swig_thread_allow.end();
45130 }
45131 resultobj = SWIG_Py_Void();
45132 return resultobj;
45133fail:
45134 return __null;
45135}
45136static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_set_sort_by_relevance_then_key(PyObject *self, PyObject *args) {
45137 int argc;
45138 PyObject *argv[4];
45139 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_set_sort_by_relevance_then_key",0,3,argv))) goto fail;
45140 --argc;
45141 if (argc == 2) {
45142 return _wrap_Enquire_set_sort_by_relevance_then_key__SWIG_1(self, argc, argv);
45143 }
45144 if (argc == 3) {
45145 return _wrap_Enquire_set_sort_by_relevance_then_key__SWIG_0(self, argc, argv);
45146 }
45147fail:
45148 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_set_sort_by_relevance_then_key'.\n"
45149 " Possible C/C++ prototypes are:\n"
45150 " set_sort_by_relevance_then_key(Xapian::Enquire *,Xapian::KeyMaker *,bool)\n"
45151 " set_sort_by_relevance_then_key(Xapian::Enquire *,Xapian::Sorter *)\n");
45152 return __null;
45153}
45154static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_mset__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
45155 PyObject *resultobj = 0;
45156 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45157 Xapian::doccount arg2 ;
45158 Xapian::doccount arg3 ;
45159 Xapian::doccount arg4 ;
45160 Xapian::RSet *arg5 = (Xapian::RSet *) 0 ;
45161 Xapian::MatchDecider *arg6 = (Xapian::MatchDecider *) 0 ;
45162 Xapian::MatchDecider *arg7 = (Xapian::MatchDecider *) 0 ;
45163 void *argp1 = 0 ;
45164 int res1 = 0 ;
45165 unsigned int val2 ;
45166 int ecode2 = 0 ;
45167 unsigned int val3 ;
45168 int ecode3 = 0 ;
45169 unsigned int val4 ;
45170 int ecode4 = 0 ;
45171 void *argp5 = 0 ;
45172 int res5 = 0 ;
45173 void *argp6 = 0 ;
45174 int res6 = 0 ;
45175 void *argp7 = 0 ;
45176 int res7 = 0 ;
45177 Xapian::MSet result;
45178 if ((nobjs < 7) || (nobjs > 7)) goto fail;
45179 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45180 if (!(res1 >= 0)) {
45181 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_mset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45182 }
45183 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45184 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45185 if (!(ecode2 >= 0)) {
45186 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_mset" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45187 }
45188 arg2 = static_cast< Xapian::doccount >(val2);
45189 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
45190 if (!(ecode3 >= 0)) {
45191 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_get_mset" "', argument " "3"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45192 }
45193 arg3 = static_cast< Xapian::doccount >(val3);
45194 ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4);
45195 if (!(ecode4 >= 0)) {
45196 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "Enquire_get_mset" "', argument " "4"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45197 }
45198 arg4 = static_cast< Xapian::doccount >(val4);
45199 res5 = SWIG_Python_ConvertPtrAndOwn(swig_obj[4], &argp5, swig_types[43], 0 | 0, 0);
45200 if (!(res5 >= 0)) {
45201 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res5 != (-1)) ? res5 : -5)), "in method '" "Enquire_get_mset" "', argument " "5"" of type '" "Xapian::RSet const *""'"); goto fail; } while(0);
45202 }
45203 arg5 = reinterpret_cast< Xapian::RSet * >(argp5);
45204 res6 = SWIG_Python_ConvertPtrAndOwn(swig_obj[5], &argp6, swig_types[30], 0 | 0, 0);
45205 if (!(res6 >= 0)) {
45206 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res6 != (-1)) ? res6 : -5)), "in method '" "Enquire_get_mset" "', argument " "6"" of type '" "Xapian::MatchDecider const *""'"); goto fail; } while(0);
45207 }
45208 arg6 = reinterpret_cast< Xapian::MatchDecider * >(argp6);
45209 res7 = SWIG_Python_ConvertPtrAndOwn(swig_obj[6], &argp7, swig_types[30], 0 | 0, 0);
45210 if (!(res7 >= 0)) {
45211 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res7 != (-1)) ? res7 : -5)), "in method '" "Enquire_get_mset" "', argument " "7"" of type '" "Xapian::MatchDecider const *""'"); goto fail; } while(0);
45212 }
45213 arg7 = reinterpret_cast< Xapian::MatchDecider * >(argp7);
45214 {
45215 SWIG_Python_Thread_Allow _swig_thread_allow;
45216 {
45217 try {
45218 result = ((Xapian::Enquire const *)arg1)->get_mset(arg2,arg3,arg4,(Xapian::RSet const *)arg5,(Xapian::MatchDecider const *)arg6,(Xapian::MatchDecider const *)arg7);
45219 } catch (...) {
45220 _swig_thread_allow.end();
45221 Xapian::SetPythonException();
45222 goto fail;
45223 }
45224 }
45225 _swig_thread_allow.end();
45226 }
45227 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSet(static_cast< const Xapian::MSet& >(result))), swig_types[28], 0x1 | 0);
45228 return resultobj;
45229fail:
45230 return __null;
45231}
45232static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_mset__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
45233 PyObject *resultobj = 0;
45234 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45235 Xapian::doccount arg2 ;
45236 Xapian::doccount arg3 ;
45237 Xapian::doccount arg4 ;
45238 Xapian::RSet *arg5 = (Xapian::RSet *) 0 ;
45239 Xapian::MatchDecider *arg6 = (Xapian::MatchDecider *) 0 ;
45240 void *argp1 = 0 ;
45241 int res1 = 0 ;
45242 unsigned int val2 ;
45243 int ecode2 = 0 ;
45244 unsigned int val3 ;
45245 int ecode3 = 0 ;
45246 unsigned int val4 ;
45247 int ecode4 = 0 ;
45248 void *argp5 = 0 ;
45249 int res5 = 0 ;
45250 void *argp6 = 0 ;
45251 int res6 = 0 ;
45252 Xapian::MSet result;
45253 if ((nobjs < 6) || (nobjs > 6)) goto fail;
45254 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45255 if (!(res1 >= 0)) {
45256 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_mset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45257 }
45258 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45259 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45260 if (!(ecode2 >= 0)) {
45261 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_mset" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45262 }
45263 arg2 = static_cast< Xapian::doccount >(val2);
45264 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
45265 if (!(ecode3 >= 0)) {
45266 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_get_mset" "', argument " "3"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45267 }
45268 arg3 = static_cast< Xapian::doccount >(val3);
45269 ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4);
45270 if (!(ecode4 >= 0)) {
45271 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "Enquire_get_mset" "', argument " "4"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45272 }
45273 arg4 = static_cast< Xapian::doccount >(val4);
45274 res5 = SWIG_Python_ConvertPtrAndOwn(swig_obj[4], &argp5, swig_types[43], 0 | 0, 0);
45275 if (!(res5 >= 0)) {
45276 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res5 != (-1)) ? res5 : -5)), "in method '" "Enquire_get_mset" "', argument " "5"" of type '" "Xapian::RSet const *""'"); goto fail; } while(0);
45277 }
45278 arg5 = reinterpret_cast< Xapian::RSet * >(argp5);
45279 res6 = SWIG_Python_ConvertPtrAndOwn(swig_obj[5], &argp6, swig_types[30], 0 | 0, 0);
45280 if (!(res6 >= 0)) {
45281 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res6 != (-1)) ? res6 : -5)), "in method '" "Enquire_get_mset" "', argument " "6"" of type '" "Xapian::MatchDecider const *""'"); goto fail; } while(0);
45282 }
45283 arg6 = reinterpret_cast< Xapian::MatchDecider * >(argp6);
45284 {
45285 SWIG_Python_Thread_Allow _swig_thread_allow;
45286 {
45287 try {
45288 result = ((Xapian::Enquire const *)arg1)->get_mset(arg2,arg3,arg4,(Xapian::RSet const *)arg5,(Xapian::MatchDecider const *)arg6);
45289 } catch (...) {
45290 _swig_thread_allow.end();
45291 Xapian::SetPythonException();
45292 goto fail;
45293 }
45294 }
45295 _swig_thread_allow.end();
45296 }
45297 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSet(static_cast< const Xapian::MSet& >(result))), swig_types[28], 0x1 | 0);
45298 return resultobj;
45299fail:
45300 return __null;
45301}
45302static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_mset__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
45303 PyObject *resultobj = 0;
45304 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45305 Xapian::doccount arg2 ;
45306 Xapian::doccount arg3 ;
45307 Xapian::doccount arg4 ;
45308 Xapian::RSet *arg5 = (Xapian::RSet *) 0 ;
45309 void *argp1 = 0 ;
45310 int res1 = 0 ;
45311 unsigned int val2 ;
45312 int ecode2 = 0 ;
45313 unsigned int val3 ;
45314 int ecode3 = 0 ;
45315 unsigned int val4 ;
45316 int ecode4 = 0 ;
45317 void *argp5 = 0 ;
45318 int res5 = 0 ;
45319 Xapian::MSet result;
45320 if ((nobjs < 5) || (nobjs > 5)) goto fail;
45321 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45322 if (!(res1 >= 0)) {
45323 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_mset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45324 }
45325 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45326 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45327 if (!(ecode2 >= 0)) {
45328 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_mset" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45329 }
45330 arg2 = static_cast< Xapian::doccount >(val2);
45331 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
45332 if (!(ecode3 >= 0)) {
45333 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_get_mset" "', argument " "3"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45334 }
45335 arg3 = static_cast< Xapian::doccount >(val3);
45336 ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4);
45337 if (!(ecode4 >= 0)) {
45338 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "Enquire_get_mset" "', argument " "4"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45339 }
45340 arg4 = static_cast< Xapian::doccount >(val4);
45341 res5 = SWIG_Python_ConvertPtrAndOwn(swig_obj[4], &argp5, swig_types[43], 0 | 0, 0);
45342 if (!(res5 >= 0)) {
45343 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res5 != (-1)) ? res5 : -5)), "in method '" "Enquire_get_mset" "', argument " "5"" of type '" "Xapian::RSet const *""'"); goto fail; } while(0);
45344 }
45345 arg5 = reinterpret_cast< Xapian::RSet * >(argp5);
45346 {
45347 SWIG_Python_Thread_Allow _swig_thread_allow;
45348 {
45349 try {
45350 result = ((Xapian::Enquire const *)arg1)->get_mset(arg2,arg3,arg4,(Xapian::RSet const *)arg5);
45351 } catch (...) {
45352 _swig_thread_allow.end();
45353 Xapian::SetPythonException();
45354 goto fail;
45355 }
45356 }
45357 _swig_thread_allow.end();
45358 }
45359 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSet(static_cast< const Xapian::MSet& >(result))), swig_types[28], 0x1 | 0);
45360 return resultobj;
45361fail:
45362 return __null;
45363}
45364static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_mset__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
45365 PyObject *resultobj = 0;
45366 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45367 Xapian::doccount arg2 ;
45368 Xapian::doccount arg3 ;
45369 Xapian::doccount arg4 ;
45370 void *argp1 = 0 ;
45371 int res1 = 0 ;
45372 unsigned int val2 ;
45373 int ecode2 = 0 ;
45374 unsigned int val3 ;
45375 int ecode3 = 0 ;
45376 unsigned int val4 ;
45377 int ecode4 = 0 ;
45378 Xapian::MSet result;
45379 if ((nobjs < 4) || (nobjs > 4)) goto fail;
45380 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45381 if (!(res1 >= 0)) {
45382 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_mset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45383 }
45384 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45385 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45386 if (!(ecode2 >= 0)) {
45387 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_mset" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45388 }
45389 arg2 = static_cast< Xapian::doccount >(val2);
45390 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
45391 if (!(ecode3 >= 0)) {
45392 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_get_mset" "', argument " "3"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45393 }
45394 arg3 = static_cast< Xapian::doccount >(val3);
45395 ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4);
45396 if (!(ecode4 >= 0)) {
45397 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "Enquire_get_mset" "', argument " "4"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45398 }
45399 arg4 = static_cast< Xapian::doccount >(val4);
45400 {
45401 SWIG_Python_Thread_Allow _swig_thread_allow;
45402 {
45403 try {
45404 result = ((Xapian::Enquire const *)arg1)->get_mset(arg2,arg3,arg4);
45405 } catch (...) {
45406 _swig_thread_allow.end();
45407 Xapian::SetPythonException();
45408 goto fail;
45409 }
45410 }
45411 _swig_thread_allow.end();
45412 }
45413 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSet(static_cast< const Xapian::MSet& >(result))), swig_types[28], 0x1 | 0);
45414 return resultobj;
45415fail:
45416 return __null;
45417}
45418static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_mset__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
45419 PyObject *resultobj = 0;
45420 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45421 Xapian::doccount arg2 ;
45422 Xapian::doccount arg3 ;
45423 void *argp1 = 0 ;
45424 int res1 = 0 ;
45425 unsigned int val2 ;
45426 int ecode2 = 0 ;
45427 unsigned int val3 ;
45428 int ecode3 = 0 ;
45429 Xapian::MSet result;
45430 if ((nobjs < 3) || (nobjs > 3)) goto fail;
45431 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45432 if (!(res1 >= 0)) {
45433 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_mset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45434 }
45435 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45436 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45437 if (!(ecode2 >= 0)) {
45438 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_mset" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45439 }
45440 arg2 = static_cast< Xapian::doccount >(val2);
45441 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
45442 if (!(ecode3 >= 0)) {
45443 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_get_mset" "', argument " "3"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45444 }
45445 arg3 = static_cast< Xapian::doccount >(val3);
45446 {
45447 SWIG_Python_Thread_Allow _swig_thread_allow;
45448 {
45449 try {
45450 result = ((Xapian::Enquire const *)arg1)->get_mset(arg2,arg3);
45451 } catch (...) {
45452 _swig_thread_allow.end();
45453 Xapian::SetPythonException();
45454 goto fail;
45455 }
45456 }
45457 _swig_thread_allow.end();
45458 }
45459 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSet(static_cast< const Xapian::MSet& >(result))), swig_types[28], 0x1 | 0);
45460 return resultobj;
45461fail:
45462 return __null;
45463}
45464static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_mset__SWIG_5(PyObject *, int nobjs, PyObject **swig_obj) {
45465 PyObject *resultobj = 0;
45466 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45467 Xapian::doccount arg2 ;
45468 Xapian::doccount arg3 ;
45469 Xapian::RSet *arg4 = (Xapian::RSet *) 0 ;
45470 Xapian::MatchDecider *arg5 = (Xapian::MatchDecider *) 0 ;
45471 void *argp1 = 0 ;
45472 int res1 = 0 ;
45473 unsigned int val2 ;
45474 int ecode2 = 0 ;
45475 unsigned int val3 ;
45476 int ecode3 = 0 ;
45477 void *argp4 = 0 ;
45478 int res4 = 0 ;
45479 void *argp5 = 0 ;
45480 int res5 = 0 ;
45481 Xapian::MSet result;
45482 if ((nobjs < 5) || (nobjs > 5)) goto fail;
45483 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45484 if (!(res1 >= 0)) {
45485 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_mset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45486 }
45487 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45488 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45489 if (!(ecode2 >= 0)) {
45490 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_mset" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45491 }
45492 arg2 = static_cast< Xapian::doccount >(val2);
45493 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
45494 if (!(ecode3 >= 0)) {
45495 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_get_mset" "', argument " "3"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45496 }
45497 arg3 = static_cast< Xapian::doccount >(val3);
45498 res4 = SWIG_Python_ConvertPtrAndOwn(swig_obj[3], &argp4, swig_types[43], 0 | 0, 0);
45499 if (!(res4 >= 0)) {
45500 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res4 != (-1)) ? res4 : -5)), "in method '" "Enquire_get_mset" "', argument " "4"" of type '" "Xapian::RSet const *""'"); goto fail; } while(0);
45501 }
45502 arg4 = reinterpret_cast< Xapian::RSet * >(argp4);
45503 res5 = SWIG_Python_ConvertPtrAndOwn(swig_obj[4], &argp5, swig_types[30], 0 | 0, 0);
45504 if (!(res5 >= 0)) {
45505 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res5 != (-1)) ? res5 : -5)), "in method '" "Enquire_get_mset" "', argument " "5"" of type '" "Xapian::MatchDecider const *""'"); goto fail; } while(0);
45506 }
45507 arg5 = reinterpret_cast< Xapian::MatchDecider * >(argp5);
45508 {
45509 SWIG_Python_Thread_Allow _swig_thread_allow;
45510 {
45511 try {
45512 result = ((Xapian::Enquire const *)arg1)->get_mset(arg2,arg3,(Xapian::RSet const *)arg4,(Xapian::MatchDecider const *)arg5);
45513 } catch (...) {
45514 _swig_thread_allow.end();
45515 Xapian::SetPythonException();
45516 goto fail;
45517 }
45518 }
45519 _swig_thread_allow.end();
45520 }
45521 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSet(static_cast< const Xapian::MSet& >(result))), swig_types[28], 0x1 | 0);
45522 return resultobj;
45523fail:
45524 return __null;
45525}
45526static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_mset__SWIG_6(PyObject *, int nobjs, PyObject **swig_obj) {
45527 PyObject *resultobj = 0;
45528 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45529 Xapian::doccount arg2 ;
45530 Xapian::doccount arg3 ;
45531 Xapian::RSet *arg4 = (Xapian::RSet *) 0 ;
45532 void *argp1 = 0 ;
45533 int res1 = 0 ;
45534 unsigned int val2 ;
45535 int ecode2 = 0 ;
45536 unsigned int val3 ;
45537 int ecode3 = 0 ;
45538 void *argp4 = 0 ;
45539 int res4 = 0 ;
45540 Xapian::MSet result;
45541 if ((nobjs < 4) || (nobjs > 4)) goto fail;
45542 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45543 if (!(res1 >= 0)) {
45544 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_mset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45545 }
45546 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45547 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45548 if (!(ecode2 >= 0)) {
45549 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_mset" "', argument " "2"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45550 }
45551 arg2 = static_cast< Xapian::doccount >(val2);
45552 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
45553 if (!(ecode3 >= 0)) {
45554 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Enquire_get_mset" "', argument " "3"" of type '" "Xapian::doccount""'"); goto fail; } while(0);
45555 }
45556 arg3 = static_cast< Xapian::doccount >(val3);
45557 res4 = SWIG_Python_ConvertPtrAndOwn(swig_obj[3], &argp4, swig_types[43], 0 | 0, 0);
45558 if (!(res4 >= 0)) {
45559 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res4 != (-1)) ? res4 : -5)), "in method '" "Enquire_get_mset" "', argument " "4"" of type '" "Xapian::RSet const *""'"); goto fail; } while(0);
45560 }
45561 arg4 = reinterpret_cast< Xapian::RSet * >(argp4);
45562 {
45563 SWIG_Python_Thread_Allow _swig_thread_allow;
45564 {
45565 try {
45566 result = ((Xapian::Enquire const *)arg1)->get_mset(arg2,arg3,(Xapian::RSet const *)arg4);
45567 } catch (...) {
45568 _swig_thread_allow.end();
45569 Xapian::SetPythonException();
45570 goto fail;
45571 }
45572 }
45573 _swig_thread_allow.end();
45574 }
45575 resultobj = SWIG_Python_NewPointerObj((new Xapian::MSet(static_cast< const Xapian::MSet& >(result))), swig_types[28], 0x1 | 0);
45576 return resultobj;
45577fail:
45578 return __null;
45579}
45580static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_mset(PyObject *self, PyObject *args) {
45581 int argc;
45582 PyObject *argv[8];
45583 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_get_mset",0,7,argv))) goto fail;
45584 --argc;
45585 if (argc == 3) {
45586 return _wrap_Enquire_get_mset__SWIG_4(self, argc, argv);
45587 }
45588 if (argc == 4) {
45589 int _v = 0;
45590 {
45591 void *vptr = 0;
45592 int res = SWIG_Python_ConvertPtrAndOwn(argv[3], &vptr, swig_types[43], 0, 0);
45593 _v = ((res >= 0) ? 1 : 0);
45594 }
45595 if (!_v) goto check_2;
45596 return _wrap_Enquire_get_mset__SWIG_6(self, argc, argv);
45597 }
45598check_2:
45599 if (argc == 4) {
45600 return _wrap_Enquire_get_mset__SWIG_3(self, argc, argv);
45601 }
45602 if (argc == 5) {
45603 int _v = 0;
45604 {
45605 void *vptr = 0;
45606 int res = SWIG_Python_ConvertPtrAndOwn(argv[3], &vptr, swig_types[43], 0, 0);
45607 _v = ((res >= 0) ? 1 : 0);
45608 }
45609 if (!_v) goto check_4;
45610 {
45611 void *vptr = 0;
45612 int res = SWIG_Python_ConvertPtrAndOwn(argv[4], &vptr, swig_types[30], 0, 0);
45613 _v = ((res >= 0) ? 1 : 0);
45614 }
45615 if (!_v) goto check_4;
45616 return _wrap_Enquire_get_mset__SWIG_5(self, argc, argv);
45617 }
45618check_4:
45619 if (argc == 5) {
45620 return _wrap_Enquire_get_mset__SWIG_2(self, argc, argv);
45621 }
45622 if (argc == 6) {
45623 return _wrap_Enquire_get_mset__SWIG_1(self, argc, argv);
45624 }
45625 if (argc == 7) {
45626 return _wrap_Enquire_get_mset__SWIG_0(self, argc, argv);
45627 }
45628fail:
45629 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_get_mset'.\n"
45630 " Possible C/C++ prototypes are:\n"
45631 " get_mset(Xapian::Enquire const *,Xapian::doccount,Xapian::doccount,Xapian::doccount,Xapian::RSet const *,Xapian::MatchDecider const *,Xapian::MatchDecider const *)\n"
45632 " get_mset(Xapian::Enquire const *,Xapian::doccount,Xapian::doccount,Xapian::doccount,Xapian::RSet const *,Xapian::MatchDecider const *)\n"
45633 " get_mset(Xapian::Enquire const *,Xapian::doccount,Xapian::doccount,Xapian::doccount,Xapian::RSet const *)\n"
45634 " get_mset(Xapian::Enquire const *,Xapian::doccount,Xapian::doccount,Xapian::doccount)\n"
45635 " get_mset(Xapian::Enquire const *,Xapian::doccount,Xapian::doccount)\n"
45636 " get_mset(Xapian::Enquire const *,Xapian::doccount,Xapian::doccount,Xapian::RSet const *,Xapian::MatchDecider const *)\n"
45637 " get_mset(Xapian::Enquire const *,Xapian::doccount,Xapian::doccount,Xapian::RSet const *)\n");
45638 return __null;
45639}
45640static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_eset__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
45641 PyObject *resultobj = 0;
45642 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45643 Xapian::termcount arg2 ;
45644 Xapian::RSet *arg3 = 0 ;
45645 int arg4 ;
45646 double arg5 ;
45647 Xapian::ExpandDecider *arg6 = (Xapian::ExpandDecider *) 0 ;
45648 void *argp1 = 0 ;
45649 int res1 = 0 ;
45650 unsigned int val2 ;
45651 int ecode2 = 0 ;
45652 void *argp3 = 0 ;
45653 int res3 = 0 ;
45654 int val4 ;
45655 int ecode4 = 0 ;
45656 double val5 ;
45657 int ecode5 = 0 ;
45658 void *argp6 = 0 ;
45659 int res6 = 0 ;
45660 Xapian::ESet result;
45661 if ((nobjs < 6) || (nobjs > 6)) goto fail;
45662 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45663 if (!(res1 >= 0)) {
45664 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_eset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45665 }
45666 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45667 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45668 if (!(ecode2 >= 0)) {
45669 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_eset" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
45670 }
45671 arg2 = static_cast< Xapian::termcount >(val2);
45672 res3 = SWIG_Python_ConvertPtrAndOwn(swig_obj[2], &argp3, swig_types[43], 0 | 0, 0);
45673 if (!(res3 >= 0)) {
45674 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45675 }
45676 if (!argp3) {
45677 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45678 }
45679 arg3 = reinterpret_cast< Xapian::RSet * >(argp3);
45680 ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
45681 if (!(ecode4 >= 0)) {
45682 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "Enquire_get_eset" "', argument " "4"" of type '" "int""'"); goto fail; } while(0);
45683 }
45684 arg4 = static_cast< int >(val4);
45685 ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
45686 if (!(ecode5 >= 0)) {
45687 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode5 != (-1)) ? ecode5 : -5)), "in method '" "Enquire_get_eset" "', argument " "5"" of type '" "double""'"); goto fail; } while(0);
45688 }
45689 arg5 = static_cast< double >(val5);
45690 res6 = SWIG_Python_ConvertPtrAndOwn(swig_obj[5], &argp6, swig_types[20], 0 | 0, 0);
45691 if (!(res6 >= 0)) {
45692 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res6 != (-1)) ? res6 : -5)), "in method '" "Enquire_get_eset" "', argument " "6"" of type '" "Xapian::ExpandDecider const *""'"); goto fail; } while(0);
45693 }
45694 arg6 = reinterpret_cast< Xapian::ExpandDecider * >(argp6);
45695 {
45696 SWIG_Python_Thread_Allow _swig_thread_allow;
45697 {
45698 try {
45699 result = ((Xapian::Enquire const *)arg1)->get_eset(arg2,(Xapian::RSet const &)*arg3,arg4,arg5,(Xapian::ExpandDecider const *)arg6);
45700 } catch (...) {
45701 _swig_thread_allow.end();
45702 Xapian::SetPythonException();
45703 goto fail;
45704 }
45705 }
45706 _swig_thread_allow.end();
45707 }
45708 resultobj = SWIG_Python_NewPointerObj((new Xapian::ESet(static_cast< const Xapian::ESet& >(result))), swig_types[16], 0x1 | 0);
45709 return resultobj;
45710fail:
45711 return __null;
45712}
45713static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_eset__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
45714 PyObject *resultobj = 0;
45715 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45716 Xapian::termcount arg2 ;
45717 Xapian::RSet *arg3 = 0 ;
45718 int arg4 ;
45719 double arg5 ;
45720 void *argp1 = 0 ;
45721 int res1 = 0 ;
45722 unsigned int val2 ;
45723 int ecode2 = 0 ;
45724 void *argp3 = 0 ;
45725 int res3 = 0 ;
45726 int val4 ;
45727 int ecode4 = 0 ;
45728 double val5 ;
45729 int ecode5 = 0 ;
45730 Xapian::ESet result;
45731 if ((nobjs < 5) || (nobjs > 5)) goto fail;
45732 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45733 if (!(res1 >= 0)) {
45734 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_eset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45735 }
45736 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45737 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45738 if (!(ecode2 >= 0)) {
45739 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_eset" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
45740 }
45741 arg2 = static_cast< Xapian::termcount >(val2);
45742 res3 = SWIG_Python_ConvertPtrAndOwn(swig_obj[2], &argp3, swig_types[43], 0 | 0, 0);
45743 if (!(res3 >= 0)) {
45744 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45745 }
45746 if (!argp3) {
45747 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45748 }
45749 arg3 = reinterpret_cast< Xapian::RSet * >(argp3);
45750 ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
45751 if (!(ecode4 >= 0)) {
45752 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "Enquire_get_eset" "', argument " "4"" of type '" "int""'"); goto fail; } while(0);
45753 }
45754 arg4 = static_cast< int >(val4);
45755 ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
45756 if (!(ecode5 >= 0)) {
45757 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode5 != (-1)) ? ecode5 : -5)), "in method '" "Enquire_get_eset" "', argument " "5"" of type '" "double""'"); goto fail; } while(0);
45758 }
45759 arg5 = static_cast< double >(val5);
45760 {
45761 SWIG_Python_Thread_Allow _swig_thread_allow;
45762 {
45763 try {
45764 result = ((Xapian::Enquire const *)arg1)->get_eset(arg2,(Xapian::RSet const &)*arg3,arg4,arg5);
45765 } catch (...) {
45766 _swig_thread_allow.end();
45767 Xapian::SetPythonException();
45768 goto fail;
45769 }
45770 }
45771 _swig_thread_allow.end();
45772 }
45773 resultobj = SWIG_Python_NewPointerObj((new Xapian::ESet(static_cast< const Xapian::ESet& >(result))), swig_types[16], 0x1 | 0);
45774 return resultobj;
45775fail:
45776 return __null;
45777}
45778static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_eset__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
45779 PyObject *resultobj = 0;
45780 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45781 Xapian::termcount arg2 ;
45782 Xapian::RSet *arg3 = 0 ;
45783 int arg4 ;
45784 void *argp1 = 0 ;
45785 int res1 = 0 ;
45786 unsigned int val2 ;
45787 int ecode2 = 0 ;
45788 void *argp3 = 0 ;
45789 int res3 = 0 ;
45790 int val4 ;
45791 int ecode4 = 0 ;
45792 Xapian::ESet result;
45793 if ((nobjs < 4) || (nobjs > 4)) goto fail;
45794 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45795 if (!(res1 >= 0)) {
45796 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_eset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45797 }
45798 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45799 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45800 if (!(ecode2 >= 0)) {
45801 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_eset" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
45802 }
45803 arg2 = static_cast< Xapian::termcount >(val2);
45804 res3 = SWIG_Python_ConvertPtrAndOwn(swig_obj[2], &argp3, swig_types[43], 0 | 0, 0);
45805 if (!(res3 >= 0)) {
45806 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45807 }
45808 if (!argp3) {
45809 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45810 }
45811 arg3 = reinterpret_cast< Xapian::RSet * >(argp3);
45812 ecode4 = SWIG_AsVal_int(swig_obj[3], &val4);
45813 if (!(ecode4 >= 0)) {
45814 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "Enquire_get_eset" "', argument " "4"" of type '" "int""'"); goto fail; } while(0);
45815 }
45816 arg4 = static_cast< int >(val4);
45817 {
45818 SWIG_Python_Thread_Allow _swig_thread_allow;
45819 {
45820 try {
45821 result = ((Xapian::Enquire const *)arg1)->get_eset(arg2,(Xapian::RSet const &)*arg3,arg4);
45822 } catch (...) {
45823 _swig_thread_allow.end();
45824 Xapian::SetPythonException();
45825 goto fail;
45826 }
45827 }
45828 _swig_thread_allow.end();
45829 }
45830 resultobj = SWIG_Python_NewPointerObj((new Xapian::ESet(static_cast< const Xapian::ESet& >(result))), swig_types[16], 0x1 | 0);
45831 return resultobj;
45832fail:
45833 return __null;
45834}
45835static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_eset__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
45836 PyObject *resultobj = 0;
45837 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45838 Xapian::termcount arg2 ;
45839 Xapian::RSet *arg3 = 0 ;
45840 void *argp1 = 0 ;
45841 int res1 = 0 ;
45842 unsigned int val2 ;
45843 int ecode2 = 0 ;
45844 void *argp3 = 0 ;
45845 int res3 = 0 ;
45846 Xapian::ESet result;
45847 if ((nobjs < 3) || (nobjs > 3)) goto fail;
45848 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45849 if (!(res1 >= 0)) {
45850 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_eset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45851 }
45852 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45853 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45854 if (!(ecode2 >= 0)) {
45855 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_eset" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
45856 }
45857 arg2 = static_cast< Xapian::termcount >(val2);
45858 res3 = SWIG_Python_ConvertPtrAndOwn(swig_obj[2], &argp3, swig_types[43], 0 | 0, 0);
45859 if (!(res3 >= 0)) {
45860 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45861 }
45862 if (!argp3) {
45863 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45864 }
45865 arg3 = reinterpret_cast< Xapian::RSet * >(argp3);
45866 {
45867 SWIG_Python_Thread_Allow _swig_thread_allow;
45868 {
45869 try {
45870 result = ((Xapian::Enquire const *)arg1)->get_eset(arg2,(Xapian::RSet const &)*arg3);
45871 } catch (...) {
45872 _swig_thread_allow.end();
45873 Xapian::SetPythonException();
45874 goto fail;
45875 }
45876 }
45877 _swig_thread_allow.end();
45878 }
45879 resultobj = SWIG_Python_NewPointerObj((new Xapian::ESet(static_cast< const Xapian::ESet& >(result))), swig_types[16], 0x1 | 0);
45880 return resultobj;
45881fail:
45882 return __null;
45883}
45884static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_eset__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
45885 PyObject *resultobj = 0;
45886 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45887 Xapian::termcount arg2 ;
45888 Xapian::RSet *arg3 = 0 ;
45889 Xapian::ExpandDecider *arg4 = (Xapian::ExpandDecider *) 0 ;
45890 void *argp1 = 0 ;
45891 int res1 = 0 ;
45892 unsigned int val2 ;
45893 int ecode2 = 0 ;
45894 void *argp3 = 0 ;
45895 int res3 = 0 ;
45896 void *argp4 = 0 ;
45897 int res4 = 0 ;
45898 Xapian::ESet result;
45899 if ((nobjs < 4) || (nobjs > 4)) goto fail;
45900 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45901 if (!(res1 >= 0)) {
45902 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_eset" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45903 }
45904 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45905 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45906 if (!(ecode2 >= 0)) {
45907 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_eset" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
45908 }
45909 arg2 = static_cast< Xapian::termcount >(val2);
45910 res3 = SWIG_Python_ConvertPtrAndOwn(swig_obj[2], &argp3, swig_types[43], 0 | 0, 0);
45911 if (!(res3 >= 0)) {
45912 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45913 }
45914 if (!argp3) {
45915 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_get_eset" "', argument " "3"" of type '" "Xapian::RSet const &""'"); goto fail; } while(0);
45916 }
45917 arg3 = reinterpret_cast< Xapian::RSet * >(argp3);
45918 res4 = SWIG_Python_ConvertPtrAndOwn(swig_obj[3], &argp4, swig_types[20], 0 | 0, 0);
45919 if (!(res4 >= 0)) {
45920 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res4 != (-1)) ? res4 : -5)), "in method '" "Enquire_get_eset" "', argument " "4"" of type '" "Xapian::ExpandDecider const *""'"); goto fail; } while(0);
45921 }
45922 arg4 = reinterpret_cast< Xapian::ExpandDecider * >(argp4);
45923 {
45924 SWIG_Python_Thread_Allow _swig_thread_allow;
45925 {
45926 try {
45927 result = ((Xapian::Enquire const *)arg1)->get_eset(arg2,(Xapian::RSet const &)*arg3,(Xapian::ExpandDecider const *)arg4);
45928 } catch (...) {
45929 _swig_thread_allow.end();
45930 Xapian::SetPythonException();
45931 goto fail;
45932 }
45933 }
45934 _swig_thread_allow.end();
45935 }
45936 resultobj = SWIG_Python_NewPointerObj((new Xapian::ESet(static_cast< const Xapian::ESet& >(result))), swig_types[16], 0x1 | 0);
45937 return resultobj;
45938fail:
45939 return __null;
45940}
45941static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_eset(PyObject *self, PyObject *args) {
45942 int argc;
45943 PyObject *argv[7];
45944 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_get_eset",0,6,argv))) goto fail;
45945 --argc;
45946 if (argc == 3) {
45947 return _wrap_Enquire_get_eset__SWIG_3(self, argc, argv);
45948 }
45949 if (argc == 4) {
45950 int _v = 0;
45951 {
45952 void *vptr = 0;
45953 int res = SWIG_Python_ConvertPtrAndOwn(argv[3], &vptr, swig_types[20], 0, 0);
45954 _v = ((res >= 0) ? 1 : 0);
45955 }
45956 if (!_v) goto check_2;
45957 return _wrap_Enquire_get_eset__SWIG_4(self, argc, argv);
45958 }
45959check_2:
45960 if (argc == 4) {
45961 return _wrap_Enquire_get_eset__SWIG_2(self, argc, argv);
45962 }
45963 if (argc == 5) {
45964 return _wrap_Enquire_get_eset__SWIG_1(self, argc, argv);
45965 }
45966 if (argc == 6) {
45967 return _wrap_Enquire_get_eset__SWIG_0(self, argc, argv);
45968 }
45969fail:
45970 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_get_eset'.\n"
45971 " Possible C/C++ prototypes are:\n"
45972 " get_eset(Xapian::Enquire const *,Xapian::termcount,Xapian::RSet const &,int,double,Xapian::ExpandDecider const *)\n"
45973 " get_eset(Xapian::Enquire const *,Xapian::termcount,Xapian::RSet const &,int,double)\n"
45974 " get_eset(Xapian::Enquire const *,Xapian::termcount,Xapian::RSet const &,int)\n"
45975 " get_eset(Xapian::Enquire const *,Xapian::termcount,Xapian::RSet const &)\n"
45976 " get_eset(Xapian::Enquire const *,Xapian::termcount,Xapian::RSet const &,Xapian::ExpandDecider const *)\n");
45977 return __null;
45978}
45979static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_matching_terms_begin__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
45980 PyObject *resultobj = 0;
45981 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
45982 Xapian::docid arg2 ;
45983 void *argp1 = 0 ;
45984 int res1 = 0 ;
45985 unsigned int val2 ;
45986 int ecode2 = 0 ;
45987 Xapian::TermIterator result;
45988 if ((nobjs < 2) || (nobjs > 2)) goto fail;
45989 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
45990 if (!(res1 >= 0)) {
45991 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_matching_terms_begin" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
45992 }
45993 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
45994 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
45995 if (!(ecode2 >= 0)) {
45996 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_matching_terms_begin" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
45997 }
45998 arg2 = static_cast< Xapian::docid >(val2);
45999 {
46000 SWIG_Python_Thread_Allow _swig_thread_allow;
46001 {
46002 try {
46003 result = ((Xapian::Enquire const *)arg1)->get_matching_terms_begin(arg2);
46004 } catch (...) {
46005 _swig_thread_allow.end();
46006 Xapian::SetPythonException();
46007 goto fail;
46008 }
46009 }
46010 _swig_thread_allow.end();
46011 }
46012 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
46013 return resultobj;
46014fail:
46015 return __null;
46016}
46017static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_matching_terms_end__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
46018 PyObject *resultobj = 0;
46019 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
46020 Xapian::docid arg2 ;
46021 void *argp1 = 0 ;
46022 int res1 = 0 ;
46023 unsigned int val2 ;
46024 int ecode2 = 0 ;
46025 Xapian::TermIterator result;
46026 if ((nobjs < 2) || (nobjs > 2)) goto fail;
46027 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
46028 if (!(res1 >= 0)) {
46029 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_matching_terms_end" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
46030 }
46031 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
46032 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
46033 if (!(ecode2 >= 0)) {
46034 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Enquire_get_matching_terms_end" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
46035 }
46036 arg2 = static_cast< Xapian::docid >(val2);
46037 {
46038 SWIG_Python_Thread_Allow _swig_thread_allow;
46039 {
46040 try {
46041 result = ((Xapian::Enquire const *)arg1)->get_matching_terms_end(arg2);
46042 } catch (...) {
46043 _swig_thread_allow.end();
46044 Xapian::SetPythonException();
46045 goto fail;
46046 }
46047 }
46048 _swig_thread_allow.end();
46049 }
46050 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
46051 return resultobj;
46052fail:
46053 return __null;
46054}
46055static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_matching_terms_begin__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
46056 PyObject *resultobj = 0;
46057 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
46058 Xapian::MSetIterator *arg2 = 0 ;
46059 void *argp1 = 0 ;
46060 int res1 = 0 ;
46061 void *argp2 = 0 ;
46062 int res2 = 0 ;
46063 Xapian::TermIterator result;
46064 if ((nobjs < 2) || (nobjs > 2)) goto fail;
46065 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
46066 if (!(res1 >= 0)) {
46067 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_matching_terms_begin" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
46068 }
46069 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
46070 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0 | 0, 0);
46071 if (!(res2 >= 0)) {
46072 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_get_matching_terms_begin" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
46073 }
46074 if (!argp2) {
46075 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_get_matching_terms_begin" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
46076 }
46077 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
46078 {
46079 SWIG_Python_Thread_Allow _swig_thread_allow;
46080 {
46081 try {
46082 result = ((Xapian::Enquire const *)arg1)->get_matching_terms_begin((Xapian::MSetIterator const &)*arg2);
46083 } catch (...) {
46084 _swig_thread_allow.end();
46085 Xapian::SetPythonException();
46086 goto fail;
46087 }
46088 }
46089 _swig_thread_allow.end();
46090 }
46091 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
46092 return resultobj;
46093fail:
46094 return __null;
46095}
46096static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_matching_terms_begin(PyObject *self, PyObject *args) {
46097 int argc;
46098 PyObject *argv[3];
46099 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_get_matching_terms_begin",0,2,argv))) goto fail;
46100 --argc;
46101 if (argc == 2) {
46102 int _v = 0;
46103 {
46104 int res = SWIG_Python_ConvertPtrAndOwn(argv[1], 0, swig_types[29], 0, 0);
46105 _v = ((res >= 0) ? 1 : 0);
46106 }
46107 if (!_v) goto check_1;
46108 return _wrap_Enquire_get_matching_terms_begin__SWIG_1(self, argc, argv);
46109 }
46110check_1:
46111 if (argc == 2) {
46112 return _wrap_Enquire_get_matching_terms_begin__SWIG_0(self, argc, argv);
46113 }
46114fail:
46115 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_get_matching_terms_begin'.\n"
46116 " Possible C/C++ prototypes are:\n"
46117 " get_matching_terms_begin(Xapian::Enquire const *,Xapian::docid)\n"
46118 " get_matching_terms_begin(Xapian::Enquire const *,Xapian::MSetIterator const &)\n");
46119 return __null;
46120}
46121static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_matching_terms_end__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
46122 PyObject *resultobj = 0;
46123 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
46124 Xapian::MSetIterator *arg2 = 0 ;
46125 void *argp1 = 0 ;
46126 int res1 = 0 ;
46127 void *argp2 = 0 ;
46128 int res2 = 0 ;
46129 Xapian::TermIterator result;
46130 if ((nobjs < 2) || (nobjs > 2)) goto fail;
46131 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
46132 if (!(res1 >= 0)) {
46133 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_matching_terms_end" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
46134 }
46135 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
46136 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0 | 0, 0);
46137 if (!(res2 >= 0)) {
46138 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_get_matching_terms_end" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
46139 }
46140 if (!argp2) {
46141 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_get_matching_terms_end" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
46142 }
46143 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
46144 {
46145 SWIG_Python_Thread_Allow _swig_thread_allow;
46146 {
46147 try {
46148 result = ((Xapian::Enquire const *)arg1)->get_matching_terms_end((Xapian::MSetIterator const &)*arg2);
46149 } catch (...) {
46150 _swig_thread_allow.end();
46151 Xapian::SetPythonException();
46152 goto fail;
46153 }
46154 }
46155 _swig_thread_allow.end();
46156 }
46157 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
46158 return resultobj;
46159fail:
46160 return __null;
46161}
46162static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_matching_terms_end(PyObject *self, PyObject *args) {
46163 int argc;
46164 PyObject *argv[3];
46165 if (!(argc = SWIG_Python_UnpackTuple(args,"Enquire_get_matching_terms_end",0,2,argv))) goto fail;
46166 --argc;
46167 if (argc == 2) {
46168 int _v = 0;
46169 {
46170 int res = SWIG_Python_ConvertPtrAndOwn(argv[1], 0, swig_types[29], 0, 0);
46171 _v = ((res >= 0) ? 1 : 0);
46172 }
46173 if (!_v) goto check_1;
46174 return _wrap_Enquire_get_matching_terms_end__SWIG_1(self, argc, argv);
46175 }
46176check_1:
46177 if (argc == 2) {
46178 return _wrap_Enquire_get_matching_terms_end__SWIG_0(self, argc, argv);
46179 }
46180fail:
46181 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Enquire_get_matching_terms_end'.\n"
46182 " Possible C/C++ prototypes are:\n"
46183 " get_matching_terms_end(Xapian::Enquire const *,Xapian::docid)\n"
46184 " get_matching_terms_end(Xapian::Enquire const *,Xapian::MSetIterator const &)\n");
46185 return __null;
46186}
46187static __attribute__ ((__unused__)) PyObject *_wrap_Enquire_get_matching_terms(PyObject *, PyObject *args) {
46188 PyObject *resultobj = 0;
46189 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
46190 Xapian::MSetIterator *arg2 = 0 ;
46191 void *argp1 = 0 ;
46192 int res1 = 0 ;
46193 void *argp2 = 0 ;
46194 int res2 = 0 ;
46195 PyObject *swig_obj[2] ;
46196 std::pair< Xapian::TermIterator,Xapian::TermIterator > result;
46197 if (!SWIG_Python_UnpackTuple(args,"Enquire_get_matching_terms",2,2,swig_obj)) goto fail;
46198 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
46199 if (!(res1 >= 0)) {
46200 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire_get_matching_terms" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
46201 }
46202 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
46203 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[29], 0 | 0, 0);
46204 if (!(res2 >= 0)) {
46205 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Enquire_get_matching_terms" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
46206 }
46207 if (!argp2) {
46208 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Enquire_get_matching_terms" "', argument " "2"" of type '" "Xapian::MSetIterator const &""'"); goto fail; } while(0);
46209 }
46210 arg2 = reinterpret_cast< Xapian::MSetIterator * >(argp2);
46211 {
46212 SWIG_Python_Thread_Allow _swig_thread_allow;
46213 {
46214 try {
46215 result = Xapian_Enquire_get_matching_terms((Xapian::Enquire const *)arg1,(Xapian::MSetIterator const &)*arg2);
46216 } catch (...) {
46217 _swig_thread_allow.end();
46218 Xapian::SetPythonException();
46219 goto fail;
46220 }
46221 }
46222 _swig_thread_allow.end();
46223 }
46224 {
46225 resultobj = PyList_New(0);
46226 if (resultobj == 0) {
46227 return __null;
46228 }
46229 for (Xapian::TermIterator i = (&result)->first; i != (&result)->second; ++i) {
46230 PyObject * str = PyString_FromStringAndSize((*i).data(), (*i).size());
46231 if (str == 0) return __null;
46232 if (PyList_Append(resultobj, str) == -1) {
46233 if ( --((PyObject*)(str))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(str)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(str))));
46234 return __null;
46235 }
46236 if ( --((PyObject*)(str))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(str)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(str))));
46237 }
46238 }
46239 return resultobj;
46240fail:
46241 return __null;
46242}
46243static __attribute__ ((__unused__)) PyObject *_wrap_Enquire___str__(PyObject *, PyObject *args) {
46244 PyObject *resultobj = 0;
46245 Xapian::Enquire *arg1 = (Xapian::Enquire *) 0 ;
46246 void *argp1 = 0 ;
46247 int res1 = 0 ;
46248 PyObject *swig_obj[1] ;
46249 std::string result;
46250 if (!args) goto fail;
46251 swig_obj[0] = args;
46252 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[18], 0 | 0, 0);
46253 if (!(res1 >= 0)) {
46254 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Enquire___str__" "', argument " "1"" of type '" "Xapian::Enquire const *""'"); goto fail; } while(0);
46255 }
46256 arg1 = reinterpret_cast< Xapian::Enquire * >(argp1);
46257 {
46258 SWIG_Python_Thread_Allow _swig_thread_allow;
46259 {
46260 try {
46261 result = ((Xapian::Enquire const *)arg1)->get_description();
46262 } catch (...) {
46263 _swig_thread_allow.end();
46264 Xapian::SetPythonException();
46265 goto fail;
46266 }
46267 }
46268 _swig_thread_allow.end();
46269 }
46270 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
46271 return resultobj;
46272fail:
46273 return __null;
46274}
46275static __attribute__ ((__unused__)) PyObject *Enquire_swigregister(PyObject *, PyObject *args) {
46276 PyObject *obj;
46277 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
46278 SWIG_TypeNewClientData(swig_types[18], SwigPyClientData_New(obj));
46279 return SWIG_Py_Void();
46280}
46281static __attribute__ ((__unused__)) PyObject *Enquire_swiginit(PyObject *, PyObject *args) {
46282 return SWIG_Python_InitShadowInstance(args);
46283}
46284static __attribute__ ((__unused__)) PyObject *_wrap_new_Registry__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
46285 PyObject *resultobj = 0;
46286 Xapian::Registry *arg1 = 0 ;
46287 void *argp1 = 0 ;
46288 int res1 = 0 ;
46289 Xapian::Registry *result = 0 ;
46290 if ((nobjs < 1) || (nobjs > 1)) goto fail;
46291 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[45], 0 | 0, 0);
46292 if (!(res1 >= 0)) {
46293 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Registry" "', argument " "1"" of type '" "Xapian::Registry const &""'"); goto fail; } while(0);
46294 }
46295 if (!argp1) {
46296 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Registry" "', argument " "1"" of type '" "Xapian::Registry const &""'"); goto fail; } while(0);
46297 }
46298 arg1 = reinterpret_cast< Xapian::Registry * >(argp1);
46299 {
46300 SWIG_Python_Thread_Allow _swig_thread_allow;
46301 {
46302 try {
46303 result = (Xapian::Registry *)new Xapian::Registry((Xapian::Registry const &)*arg1);
46304 } catch (...) {
46305 _swig_thread_allow.end();
46306 Xapian::SetPythonException();
46307 goto fail;
46308 }
46309 }
46310 _swig_thread_allow.end();
46311 }
46312 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[45], ((0x1 << 1) | 0x1) | 0);
46313 return resultobj;
46314fail:
46315 return __null;
46316}
46317static __attribute__ ((__unused__)) PyObject *_wrap_new_Registry__SWIG_1(PyObject *, int nobjs, PyObject **) {
46318 PyObject *resultobj = 0;
46319 Xapian::Registry *result = 0 ;
46320 if ((nobjs < 0) || (nobjs > 0)) goto fail;
46321 {
46322 SWIG_Python_Thread_Allow _swig_thread_allow;
46323 {
46324 try {
46325 result = (Xapian::Registry *)new Xapian::Registry();
46326 } catch (...) {
46327 _swig_thread_allow.end();
46328 Xapian::SetPythonException();
46329 goto fail;
46330 }
46331 }
46332 _swig_thread_allow.end();
46333 }
46334 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[45], ((0x1 << 1) | 0x1) | 0);
46335 return resultobj;
46336fail:
46337 return __null;
46338}
46339static __attribute__ ((__unused__)) PyObject *_wrap_new_Registry(PyObject *self, PyObject *args) {
46340 int argc;
46341 PyObject *argv[2];
46342 if (!(argc = SWIG_Python_UnpackTuple(args,"new_Registry",0,1,argv))) goto fail;
46343 --argc;
46344 if (argc == 0) {
46345 return _wrap_new_Registry__SWIG_1(self, argc, argv);
46346 }
46347 if (argc == 1) {
46348 return _wrap_new_Registry__SWIG_0(self, argc, argv);
46349 }
46350fail:
46351 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_Registry'.\n"
46352 " Possible C/C++ prototypes are:\n"
46353 " Xapian::Registry(Xapian::Registry const &)\n"
46354 " Xapian::Registry()\n");
46355 return __null;
46356}
46357static __attribute__ ((__unused__)) PyObject *_wrap_delete_Registry(PyObject *, PyObject *args) {
46358 PyObject *resultobj = 0;
46359 Xapian::Registry *arg1 = (Xapian::Registry *) 0 ;
46360 void *argp1 = 0 ;
46361 int res1 = 0 ;
46362 PyObject *swig_obj[1] ;
46363 if (!args) goto fail;
46364 swig_obj[0] = args;
46365 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[45], 0x1 | 0, 0);
46366 if (!(res1 >= 0)) {
46367 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Registry" "', argument " "1"" of type '" "Xapian::Registry *""'"); goto fail; } while(0);
46368 }
46369 arg1 = reinterpret_cast< Xapian::Registry * >(argp1);
46370 {
46371 SWIG_Python_Thread_Allow _swig_thread_allow;
46372 {
46373 try {
46374 delete arg1;
46375 } catch (...) {
46376 _swig_thread_allow.end();
46377 Xapian::SetPythonException();
46378 goto fail;
46379 }
46380 }
46381 _swig_thread_allow.end();
46382 }
46383 resultobj = SWIG_Py_Void();
46384 return resultobj;
46385fail:
46386 return __null;
46387}
46388static __attribute__ ((__unused__)) PyObject *_wrap_Registry_register_weighting_scheme(PyObject *, PyObject *args) {
46389 PyObject *resultobj = 0;
46390 Xapian::Registry *arg1 = (Xapian::Registry *) 0 ;
46391 Xapian::Weight *arg2 = 0 ;
46392 void *argp1 = 0 ;
46393 int res1 = 0 ;
46394 void *argp2 = 0 ;
46395 int res2 = 0 ;
46396 PyObject *swig_obj[2] ;
46397 if (!SWIG_Python_UnpackTuple(args,"Registry_register_weighting_scheme",2,2,swig_obj)) goto fail;
46398 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[45], 0 | 0, 0);
46399 if (!(res1 >= 0)) {
46400 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Registry_register_weighting_scheme" "', argument " "1"" of type '" "Xapian::Registry *""'"); goto fail; } while(0);
46401 }
46402 arg1 = reinterpret_cast< Xapian::Registry * >(argp1);
46403 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[65], 0 | 0, 0);
46404 if (!(res2 >= 0)) {
46405 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Registry_register_weighting_scheme" "', argument " "2"" of type '" "Xapian::Weight const &""'"); goto fail; } while(0);
46406 }
46407 if (!argp2) {
46408 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Registry_register_weighting_scheme" "', argument " "2"" of type '" "Xapian::Weight const &""'"); goto fail; } while(0);
46409 }
46410 arg2 = reinterpret_cast< Xapian::Weight * >(argp2);
46411 {
46412 SWIG_Python_Thread_Allow _swig_thread_allow;
46413 {
46414 try {
46415 (arg1)->register_weighting_scheme((Xapian::Weight const &)*arg2);
46416 } catch (...) {
46417 _swig_thread_allow.end();
46418 Xapian::SetPythonException();
46419 goto fail;
46420 }
46421 }
46422 _swig_thread_allow.end();
46423 }
46424 resultobj = SWIG_Py_Void();
46425 return resultobj;
46426fail:
46427 return __null;
46428}
46429static __attribute__ ((__unused__)) PyObject *_wrap_Registry_get_weighting_scheme(PyObject *, PyObject *args) {
46430 PyObject *resultobj = 0;
46431 Xapian::Registry *arg1 = (Xapian::Registry *) 0 ;
46432 std::string *arg2 = 0 ;
46433 void *argp1 = 0 ;
46434 int res1 = 0 ;
46435 int res2 = ((0)) ;
46436 PyObject *swig_obj[2] ;
46437 Xapian::Weight *result = 0 ;
46438 if (!SWIG_Python_UnpackTuple(args,"Registry_get_weighting_scheme",2,2,swig_obj)) goto fail;
46439 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[45], 0 | 0, 0);
46440 if (!(res1 >= 0)) {
46441 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Registry_get_weighting_scheme" "', argument " "1"" of type '" "Xapian::Registry const *""'"); goto fail; } while(0);
46442 }
46443 arg1 = reinterpret_cast< Xapian::Registry * >(argp1);
46444 {
46445 std::string *ptr = (std::string *)0;
46446 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
46447 if (!(res2 >= 0)) {
46448 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Registry_get_weighting_scheme" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
46449 }
46450 if (!ptr) {
46451 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Registry_get_weighting_scheme" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
46452 }
46453 arg2 = ptr;
46454 }
46455 {
46456 SWIG_Python_Thread_Allow _swig_thread_allow;
46457 {
46458 try {
46459 result = (Xapian::Weight *)((Xapian::Registry const *)arg1)->get_weighting_scheme((std::string const &)*arg2);
46460 } catch (...) {
46461 _swig_thread_allow.end();
46462 Xapian::SetPythonException();
46463 goto fail;
46464 }
46465 }
46466 _swig_thread_allow.end();
46467 }
46468 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[65], 0 | 0);
46469 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
46470 return resultobj;
46471fail:
46472 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
46473 return __null;
46474}
46475static __attribute__ ((__unused__)) PyObject *_wrap_Registry_register_posting_source(PyObject *, PyObject *args) {
46476 PyObject *resultobj = 0;
46477 Xapian::Registry *arg1 = (Xapian::Registry *) 0 ;
46478 Xapian::PostingSource *arg2 = 0 ;
46479 void *argp1 = 0 ;
46480 int res1 = 0 ;
46481 void *argp2 = 0 ;
46482 int res2 = 0 ;
46483 PyObject *swig_obj[2] ;
46484 if (!SWIG_Python_UnpackTuple(args,"Registry_register_posting_source",2,2,swig_obj)) goto fail;
46485 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[45], 0 | 0, 0);
46486 if (!(res1 >= 0)) {
46487 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Registry_register_posting_source" "', argument " "1"" of type '" "Xapian::Registry *""'"); goto fail; } while(0);
46488 }
46489 arg1 = reinterpret_cast< Xapian::Registry * >(argp1);
46490 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[39], 0 | 0, 0);
46491 if (!(res2 >= 0)) {
46492 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Registry_register_posting_source" "', argument " "2"" of type '" "Xapian::PostingSource const &""'"); goto fail; } while(0);
46493 }
46494 if (!argp2) {
46495 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Registry_register_posting_source" "', argument " "2"" of type '" "Xapian::PostingSource const &""'"); goto fail; } while(0);
46496 }
46497 arg2 = reinterpret_cast< Xapian::PostingSource * >(argp2);
46498 {
46499 SWIG_Python_Thread_Allow _swig_thread_allow;
46500 {
46501 try {
46502 (arg1)->register_posting_source((Xapian::PostingSource const &)*arg2);
46503 } catch (...) {
46504 _swig_thread_allow.end();
46505 Xapian::SetPythonException();
46506 goto fail;
46507 }
46508 }
46509 _swig_thread_allow.end();
46510 }
46511 resultobj = SWIG_Py_Void();
46512 return resultobj;
46513fail:
46514 return __null;
46515}
46516static __attribute__ ((__unused__)) PyObject *_wrap_Registry_get_posting_source(PyObject *, PyObject *args) {
46517 PyObject *resultobj = 0;
46518 Xapian::Registry *arg1 = (Xapian::Registry *) 0 ;
46519 std::string *arg2 = 0 ;
46520 void *argp1 = 0 ;
46521 int res1 = 0 ;
46522 int res2 = ((0)) ;
46523 PyObject *swig_obj[2] ;
46524 Swig::Director *director = 0;
46525 Xapian::PostingSource *result = 0 ;
46526 if (!SWIG_Python_UnpackTuple(args,"Registry_get_posting_source",2,2,swig_obj)) goto fail;
46527 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[45], 0 | 0, 0);
46528 if (!(res1 >= 0)) {
46529 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Registry_get_posting_source" "', argument " "1"" of type '" "Xapian::Registry const *""'"); goto fail; } while(0);
46530 }
46531 arg1 = reinterpret_cast< Xapian::Registry * >(argp1);
46532 {
46533 std::string *ptr = (std::string *)0;
46534 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
46535 if (!(res2 >= 0)) {
46536 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Registry_get_posting_source" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
46537 }
46538 if (!ptr) {
46539 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Registry_get_posting_source" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
46540 }
46541 arg2 = ptr;
46542 }
46543 {
46544 SWIG_Python_Thread_Allow _swig_thread_allow;
46545 {
46546 try {
46547 result = (Xapian::PostingSource *)((Xapian::Registry const *)arg1)->get_posting_source((std::string const &)*arg2);
46548 } catch (...) {
46549 _swig_thread_allow.end();
46550 Xapian::SetPythonException();
46551 goto fail;
46552 }
46553 }
46554 _swig_thread_allow.end();
46555 }
46556 director = dynamic_cast<Swig::Director*>(result);
46557 if (director) {
46558 resultobj = director->swig_get_self();
46559 ( ((PyObject*)(resultobj))->ob_refcnt++);
46560 } else {
46561 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[39], 0 | 0);
46562 }
46563 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
46564 return resultobj;
46565fail:
46566 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
46567 return __null;
46568}
46569static __attribute__ ((__unused__)) PyObject *_wrap_Registry_register_match_spy(PyObject *, PyObject *args) {
46570 PyObject *resultobj = 0;
46571 Xapian::Registry *arg1 = (Xapian::Registry *) 0 ;
46572 Xapian::MatchSpy *arg2 = 0 ;
46573 void *argp1 = 0 ;
46574 int res1 = 0 ;
46575 void *argp2 = 0 ;
46576 int res2 = 0 ;
46577 PyObject *swig_obj[2] ;
46578 if (!SWIG_Python_UnpackTuple(args,"Registry_register_match_spy",2,2,swig_obj)) goto fail;
46579 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[45], 0 | 0, 0);
46580 if (!(res1 >= 0)) {
46581 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Registry_register_match_spy" "', argument " "1"" of type '" "Xapian::Registry *""'"); goto fail; } while(0);
46582 }
46583 arg1 = reinterpret_cast< Xapian::Registry * >(argp1);
46584 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[31], 0 | 0, 0);
46585 if (!(res2 >= 0)) {
46586 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Registry_register_match_spy" "', argument " "2"" of type '" "Xapian::MatchSpy const &""'"); goto fail; } while(0);
46587 }
46588 if (!argp2) {
46589 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Registry_register_match_spy" "', argument " "2"" of type '" "Xapian::MatchSpy const &""'"); goto fail; } while(0);
46590 }
46591 arg2 = reinterpret_cast< Xapian::MatchSpy * >(argp2);
46592 {
46593 SWIG_Python_Thread_Allow _swig_thread_allow;
46594 {
46595 try {
46596 (arg1)->register_match_spy((Xapian::MatchSpy const &)*arg2);
46597 } catch (...) {
46598 _swig_thread_allow.end();
46599 Xapian::SetPythonException();
46600 goto fail;
46601 }
46602 }
46603 _swig_thread_allow.end();
46604 }
46605 resultobj = SWIG_Py_Void();
46606 return resultobj;
46607fail:
46608 return __null;
46609}
46610static __attribute__ ((__unused__)) PyObject *_wrap_Registry_get_match_spy(PyObject *, PyObject *args) {
46611 PyObject *resultobj = 0;
46612 Xapian::Registry *arg1 = (Xapian::Registry *) 0 ;
46613 std::string *arg2 = 0 ;
46614 void *argp1 = 0 ;
46615 int res1 = 0 ;
46616 int res2 = ((0)) ;
46617 PyObject *swig_obj[2] ;
46618 Xapian::MatchSpy *result = 0 ;
46619 if (!SWIG_Python_UnpackTuple(args,"Registry_get_match_spy",2,2,swig_obj)) goto fail;
46620 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[45], 0 | 0, 0);
46621 if (!(res1 >= 0)) {
46622 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Registry_get_match_spy" "', argument " "1"" of type '" "Xapian::Registry const *""'"); goto fail; } while(0);
46623 }
46624 arg1 = reinterpret_cast< Xapian::Registry * >(argp1);
46625 {
46626 std::string *ptr = (std::string *)0;
46627 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
46628 if (!(res2 >= 0)) {
46629 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Registry_get_match_spy" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
46630 }
46631 if (!ptr) {
46632 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Registry_get_match_spy" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
46633 }
46634 arg2 = ptr;
46635 }
46636 {
46637 SWIG_Python_Thread_Allow _swig_thread_allow;
46638 {
46639 try {
46640 result = (Xapian::MatchSpy *)((Xapian::Registry const *)arg1)->get_match_spy((std::string const &)*arg2);
46641 } catch (...) {
46642 _swig_thread_allow.end();
46643 Xapian::SetPythonException();
46644 goto fail;
46645 }
46646 }
46647 _swig_thread_allow.end();
46648 }
46649 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[31], 0 | 0);
46650 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
46651 return resultobj;
46652fail:
46653 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
46654 return __null;
46655}
46656static __attribute__ ((__unused__)) PyObject *Registry_swigregister(PyObject *, PyObject *args) {
46657 PyObject *obj;
46658 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
46659 SWIG_TypeNewClientData(swig_types[45], SwigPyClientData_New(obj));
46660 return SWIG_Py_Void();
46661}
46662static __attribute__ ((__unused__)) PyObject *Registry_swiginit(PyObject *, PyObject *args) {
46663 return SWIG_Python_InitShadowInstance(args);
46664}
46665static __attribute__ ((__unused__)) PyObject *_wrap_delete_Weight(PyObject *, PyObject *args) {
46666 PyObject *resultobj = 0;
46667 Xapian::Weight *arg1 = (Xapian::Weight *) 0 ;
46668 void *argp1 = 0 ;
46669 int res1 = 0 ;
46670 PyObject *swig_obj[1] ;
46671 if (!args) goto fail;
46672 swig_obj[0] = args;
46673 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[65], 0x1 | 0, 0);
46674 if (!(res1 >= 0)) {
46675 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Weight" "', argument " "1"" of type '" "Xapian::Weight *""'"); goto fail; } while(0);
46676 }
46677 arg1 = reinterpret_cast< Xapian::Weight * >(argp1);
46678 {
46679 SWIG_Python_Thread_Allow _swig_thread_allow;
46680 {
46681 try {
46682 delete arg1;
46683 } catch (...) {
46684 _swig_thread_allow.end();
46685 Xapian::SetPythonException();
46686 goto fail;
46687 }
46688 }
46689 _swig_thread_allow.end();
46690 }
46691 resultobj = SWIG_Py_Void();
46692 return resultobj;
46693fail:
46694 return __null;
46695}
46696static __attribute__ ((__unused__)) PyObject *_wrap_Weight_name(PyObject *, PyObject *args) {
46697 PyObject *resultobj = 0;
46698 Xapian::Weight *arg1 = (Xapian::Weight *) 0 ;
46699 void *argp1 = 0 ;
46700 int res1 = 0 ;
46701 PyObject *swig_obj[1] ;
46702 std::string result;
46703 if (!args) goto fail;
46704 swig_obj[0] = args;
46705 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[65], 0 | 0, 0);
46706 if (!(res1 >= 0)) {
46707 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Weight_name" "', argument " "1"" of type '" "Xapian::Weight const *""'"); goto fail; } while(0);
46708 }
46709 arg1 = reinterpret_cast< Xapian::Weight * >(argp1);
46710 {
46711 SWIG_Python_Thread_Allow _swig_thread_allow;
46712 {
46713 try {
46714 result = ((Xapian::Weight const *)arg1)->name();
46715 } catch (...) {
46716 _swig_thread_allow.end();
46717 Xapian::SetPythonException();
46718 goto fail;
46719 }
46720 }
46721 _swig_thread_allow.end();
46722 }
46723 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
46724 return resultobj;
46725fail:
46726 return __null;
46727}
46728static __attribute__ ((__unused__)) PyObject *_wrap_Weight_get_sumpart(PyObject *, PyObject *args) {
46729 PyObject *resultobj = 0;
46730 Xapian::Weight *arg1 = (Xapian::Weight *) 0 ;
46731 Xapian::termcount arg2 ;
46732 Xapian::termcount arg3 ;
46733 void *argp1 = 0 ;
46734 int res1 = 0 ;
46735 unsigned int val2 ;
46736 int ecode2 = 0 ;
46737 unsigned int val3 ;
46738 int ecode3 = 0 ;
46739 PyObject *swig_obj[3] ;
46740 Xapian::weight result;
46741 if (!SWIG_Python_UnpackTuple(args,"Weight_get_sumpart",3,3,swig_obj)) goto fail;
46742 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[65], 0 | 0, 0);
46743 if (!(res1 >= 0)) {
46744 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Weight_get_sumpart" "', argument " "1"" of type '" "Xapian::Weight const *""'"); goto fail; } while(0);
46745 }
46746 arg1 = reinterpret_cast< Xapian::Weight * >(argp1);
46747 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
46748 if (!(ecode2 >= 0)) {
46749 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Weight_get_sumpart" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
46750 }
46751 arg2 = static_cast< Xapian::termcount >(val2);
46752 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
46753 if (!(ecode3 >= 0)) {
46754 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Weight_get_sumpart" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
46755 }
46756 arg3 = static_cast< Xapian::termcount >(val3);
46757 {
46758 SWIG_Python_Thread_Allow _swig_thread_allow;
46759 {
46760 try {
46761 result = (Xapian::weight)((Xapian::Weight const *)arg1)->get_sumpart(arg2,arg3);
46762 } catch (...) {
46763 _swig_thread_allow.end();
46764 Xapian::SetPythonException();
46765 goto fail;
46766 }
46767 }
46768 _swig_thread_allow.end();
46769 }
46770 resultobj = PyFloat_FromDouble(static_cast< double >(result));
46771 return resultobj;
46772fail:
46773 return __null;
46774}
46775static __attribute__ ((__unused__)) PyObject *_wrap_Weight_get_maxpart(PyObject *, PyObject *args) {
46776 PyObject *resultobj = 0;
46777 Xapian::Weight *arg1 = (Xapian::Weight *) 0 ;
46778 void *argp1 = 0 ;
46779 int res1 = 0 ;
46780 PyObject *swig_obj[1] ;
46781 Xapian::weight result;
46782 if (!args) goto fail;
46783 swig_obj[0] = args;
46784 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[65], 0 | 0, 0);
46785 if (!(res1 >= 0)) {
46786 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Weight_get_maxpart" "', argument " "1"" of type '" "Xapian::Weight const *""'"); goto fail; } while(0);
46787 }
46788 arg1 = reinterpret_cast< Xapian::Weight * >(argp1);
46789 {
46790 SWIG_Python_Thread_Allow _swig_thread_allow;
46791 {
46792 try {
46793 result = (Xapian::weight)((Xapian::Weight const *)arg1)->get_maxpart();
46794 } catch (...) {
46795 _swig_thread_allow.end();
46796 Xapian::SetPythonException();
46797 goto fail;
46798 }
46799 }
46800 _swig_thread_allow.end();
46801 }
46802 resultobj = PyFloat_FromDouble(static_cast< double >(result));
46803 return resultobj;
46804fail:
46805 return __null;
46806}
46807static __attribute__ ((__unused__)) PyObject *_wrap_Weight_get_sumextra(PyObject *, PyObject *args) {
46808 PyObject *resultobj = 0;
46809 Xapian::Weight *arg1 = (Xapian::Weight *) 0 ;
46810 Xapian::termcount arg2 ;
46811 void *argp1 = 0 ;
46812 int res1 = 0 ;
46813 unsigned int val2 ;
46814 int ecode2 = 0 ;
46815 PyObject *swig_obj[2] ;
46816 Xapian::weight result;
46817 if (!SWIG_Python_UnpackTuple(args,"Weight_get_sumextra",2,2,swig_obj)) goto fail;
46818 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[65], 0 | 0, 0);
46819 if (!(res1 >= 0)) {
46820 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Weight_get_sumextra" "', argument " "1"" of type '" "Xapian::Weight const *""'"); goto fail; } while(0);
46821 }
46822 arg1 = reinterpret_cast< Xapian::Weight * >(argp1);
46823 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
46824 if (!(ecode2 >= 0)) {
46825 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Weight_get_sumextra" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
46826 }
46827 arg2 = static_cast< Xapian::termcount >(val2);
46828 {
46829 SWIG_Python_Thread_Allow _swig_thread_allow;
46830 {
46831 try {
46832 result = (Xapian::weight)((Xapian::Weight const *)arg1)->get_sumextra(arg2);
46833 } catch (...) {
46834 _swig_thread_allow.end();
46835 Xapian::SetPythonException();
46836 goto fail;
46837 }
46838 }
46839 _swig_thread_allow.end();
46840 }
46841 resultobj = PyFloat_FromDouble(static_cast< double >(result));
46842 return resultobj;
46843fail:
46844 return __null;
46845}
46846static __attribute__ ((__unused__)) PyObject *_wrap_Weight_get_maxextra(PyObject *, PyObject *args) {
46847 PyObject *resultobj = 0;
46848 Xapian::Weight *arg1 = (Xapian::Weight *) 0 ;
46849 void *argp1 = 0 ;
46850 int res1 = 0 ;
46851 PyObject *swig_obj[1] ;
46852 Xapian::weight result;
46853 if (!args) goto fail;
46854 swig_obj[0] = args;
46855 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[65], 0 | 0, 0);
46856 if (!(res1 >= 0)) {
46857 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Weight_get_maxextra" "', argument " "1"" of type '" "Xapian::Weight const *""'"); goto fail; } while(0);
46858 }
46859 arg1 = reinterpret_cast< Xapian::Weight * >(argp1);
46860 {
46861 SWIG_Python_Thread_Allow _swig_thread_allow;
46862 {
46863 try {
46864 result = (Xapian::weight)((Xapian::Weight const *)arg1)->get_maxextra();
46865 } catch (...) {
46866 _swig_thread_allow.end();
46867 Xapian::SetPythonException();
46868 goto fail;
46869 }
46870 }
46871 _swig_thread_allow.end();
46872 }
46873 resultobj = PyFloat_FromDouble(static_cast< double >(result));
46874 return resultobj;
46875fail:
46876 return __null;
46877}
46878static __attribute__ ((__unused__)) PyObject *_wrap_Weight_get_sumpart_needs_doclength_(PyObject *, PyObject *args) {
46879 PyObject *resultobj = 0;
46880 Xapian::Weight *arg1 = (Xapian::Weight *) 0 ;
46881 void *argp1 = 0 ;
46882 int res1 = 0 ;
46883 PyObject *swig_obj[1] ;
46884 bool result;
46885 if (!args) goto fail;
46886 swig_obj[0] = args;
46887 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[65], 0 | 0, 0);
46888 if (!(res1 >= 0)) {
46889 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Weight_get_sumpart_needs_doclength_" "', argument " "1"" of type '" "Xapian::Weight const *""'"); goto fail; } while(0);
46890 }
46891 arg1 = reinterpret_cast< Xapian::Weight * >(argp1);
46892 {
46893 SWIG_Python_Thread_Allow _swig_thread_allow;
46894 {
46895 try {
46896 result = (bool)((Xapian::Weight const *)arg1)->get_sumpart_needs_doclength_();
46897 } catch (...) {
46898 _swig_thread_allow.end();
46899 Xapian::SetPythonException();
46900 goto fail;
46901 }
46902 }
46903 _swig_thread_allow.end();
46904 }
46905 resultobj = SWIG_From_bool(static_cast< bool >(result));
46906 return resultobj;
46907fail:
46908 return __null;
46909}
46910static __attribute__ ((__unused__)) PyObject *_wrap_Weight_get_sumpart_needs_wdf_(PyObject *, PyObject *args) {
46911 PyObject *resultobj = 0;
46912 Xapian::Weight *arg1 = (Xapian::Weight *) 0 ;
46913 void *argp1 = 0 ;
46914 int res1 = 0 ;
46915 PyObject *swig_obj[1] ;
46916 bool result;
46917 if (!args) goto fail;
46918 swig_obj[0] = args;
46919 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[65], 0 | 0, 0);
46920 if (!(res1 >= 0)) {
46921 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Weight_get_sumpart_needs_wdf_" "', argument " "1"" of type '" "Xapian::Weight const *""'"); goto fail; } while(0);
46922 }
46923 arg1 = reinterpret_cast< Xapian::Weight * >(argp1);
46924 {
46925 SWIG_Python_Thread_Allow _swig_thread_allow;
46926 {
46927 try {
46928 result = (bool)((Xapian::Weight const *)arg1)->get_sumpart_needs_wdf_();
46929 } catch (...) {
46930 _swig_thread_allow.end();
46931 Xapian::SetPythonException();
46932 goto fail;
46933 }
46934 }
46935 _swig_thread_allow.end();
46936 }
46937 resultobj = SWIG_From_bool(static_cast< bool >(result));
46938 return resultobj;
46939fail:
46940 return __null;
46941}
46942static __attribute__ ((__unused__)) PyObject *Weight_swigregister(PyObject *, PyObject *args) {
46943 PyObject *obj;
46944 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
46945 SWIG_TypeNewClientData(swig_types[65], SwigPyClientData_New(obj));
46946 return SWIG_Py_Void();
46947}
46948static __attribute__ ((__unused__)) PyObject *_wrap_new_BoolWeight(PyObject *, PyObject *args) {
46949 PyObject *resultobj = 0;
46950 Xapian::BoolWeight *result = 0 ;
46951 if (!SWIG_Python_UnpackTuple(args,"new_BoolWeight",0,0,0)) goto fail;
46952 {
46953 SWIG_Python_Thread_Allow _swig_thread_allow;
46954 {
46955 try {
46956 result = (Xapian::BoolWeight *)new Xapian::BoolWeight();
46957 } catch (...) {
46958 _swig_thread_allow.end();
46959 Xapian::SetPythonException();
46960 goto fail;
46961 }
46962 }
46963 _swig_thread_allow.end();
46964 }
46965 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[2], ((0x1 << 1) | 0x1) | 0);
46966 return resultobj;
46967fail:
46968 return __null;
46969}
46970static __attribute__ ((__unused__)) PyObject *_wrap_delete_BoolWeight(PyObject *, PyObject *args) {
46971 PyObject *resultobj = 0;
46972 Xapian::BoolWeight *arg1 = (Xapian::BoolWeight *) 0 ;
46973 void *argp1 = 0 ;
46974 int res1 = 0 ;
46975 PyObject *swig_obj[1] ;
46976 if (!args) goto fail;
46977 swig_obj[0] = args;
46978 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[2], 0x1 | 0, 0);
46979 if (!(res1 >= 0)) {
46980 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_BoolWeight" "', argument " "1"" of type '" "Xapian::BoolWeight *""'"); goto fail; } while(0);
46981 }
46982 arg1 = reinterpret_cast< Xapian::BoolWeight * >(argp1);
46983 {
46984 SWIG_Python_Thread_Allow _swig_thread_allow;
46985 {
46986 try {
46987 delete arg1;
46988 } catch (...) {
46989 _swig_thread_allow.end();
46990 Xapian::SetPythonException();
46991 goto fail;
46992 }
46993 }
46994 _swig_thread_allow.end();
46995 }
46996 resultobj = SWIG_Py_Void();
46997 return resultobj;
46998fail:
46999 return __null;
47000}
47001static __attribute__ ((__unused__)) PyObject *BoolWeight_swigregister(PyObject *, PyObject *args) {
47002 PyObject *obj;
47003 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
47004 SWIG_TypeNewClientData(swig_types[2], SwigPyClientData_New(obj));
47005 return SWIG_Py_Void();
47006}
47007static __attribute__ ((__unused__)) PyObject *BoolWeight_swiginit(PyObject *, PyObject *args) {
47008 return SWIG_Python_InitShadowInstance(args);
47009}
47010static __attribute__ ((__unused__)) PyObject *_wrap_new_BM25Weight__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
47011 PyObject *resultobj = 0;
47012 double arg1 ;
47013 double arg2 ;
47014 double arg3 ;
47015 double arg4 ;
47016 double arg5 ;
47017 double val1 ;
47018 int ecode1 = 0 ;
47019 double val2 ;
47020 int ecode2 = 0 ;
47021 double val3 ;
47022 int ecode3 = 0 ;
47023 double val4 ;
47024 int ecode4 = 0 ;
47025 double val5 ;
47026 int ecode5 = 0 ;
47027 Xapian::BM25Weight *result = 0 ;
47028 if ((nobjs < 5) || (nobjs > 5)) goto fail;
47029 ecode1 = SWIG_AsVal_double(swig_obj[0], &val1);
47030 if (!(ecode1 >= 0)) {
47031 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_BM25Weight" "', argument " "1"" of type '" "double""'"); goto fail; } while(0);
47032 }
47033 arg1 = static_cast< double >(val1);
47034 ecode2 = SWIG_AsVal_double(swig_obj[1], &val2);
47035 if (!(ecode2 >= 0)) {
47036 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_BM25Weight" "', argument " "2"" of type '" "double""'"); goto fail; } while(0);
47037 }
47038 arg2 = static_cast< double >(val2);
47039 ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
47040 if (!(ecode3 >= 0)) {
47041 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_BM25Weight" "', argument " "3"" of type '" "double""'"); goto fail; } while(0);
47042 }
47043 arg3 = static_cast< double >(val3);
47044 ecode4 = SWIG_AsVal_double(swig_obj[3], &val4);
47045 if (!(ecode4 >= 0)) {
47046 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "new_BM25Weight" "', argument " "4"" of type '" "double""'"); goto fail; } while(0);
47047 }
47048 arg4 = static_cast< double >(val4);
47049 ecode5 = SWIG_AsVal_double(swig_obj[4], &val5);
47050 if (!(ecode5 >= 0)) {
47051 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode5 != (-1)) ? ecode5 : -5)), "in method '" "new_BM25Weight" "', argument " "5"" of type '" "double""'"); goto fail; } while(0);
47052 }
47053 arg5 = static_cast< double >(val5);
47054 {
47055 SWIG_Python_Thread_Allow _swig_thread_allow;
47056 {
47057 try {
47058 result = (Xapian::BM25Weight *)new Xapian::BM25Weight(arg1,arg2,arg3,arg4,arg5);
47059 } catch (...) {
47060 _swig_thread_allow.end();
47061 Xapian::SetPythonException();
47062 goto fail;
47063 }
47064 }
47065 _swig_thread_allow.end();
47066 }
47067 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[1], ((0x1 << 1) | 0x1) | 0);
47068 return resultobj;
47069fail:
47070 return __null;
47071}
47072static __attribute__ ((__unused__)) PyObject *_wrap_new_BM25Weight__SWIG_1(PyObject *, int nobjs, PyObject **) {
47073 PyObject *resultobj = 0;
47074 Xapian::BM25Weight *result = 0 ;
47075 if ((nobjs < 0) || (nobjs > 0)) goto fail;
47076 {
47077 SWIG_Python_Thread_Allow _swig_thread_allow;
47078 {
47079 try {
47080 result = (Xapian::BM25Weight *)new Xapian::BM25Weight();
47081 } catch (...) {
47082 _swig_thread_allow.end();
47083 Xapian::SetPythonException();
47084 goto fail;
47085 }
47086 }
47087 _swig_thread_allow.end();
47088 }
47089 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[1], ((0x1 << 1) | 0x1) | 0);
47090 return resultobj;
47091fail:
47092 return __null;
47093}
47094static __attribute__ ((__unused__)) PyObject *_wrap_new_BM25Weight(PyObject *self, PyObject *args) {
47095 int argc;
47096 PyObject *argv[6];
47097 if (!(argc = SWIG_Python_UnpackTuple(args,"new_BM25Weight",0,5,argv))) goto fail;
47098 --argc;
47099 if (argc == 0) {
47100 return _wrap_new_BM25Weight__SWIG_1(self, argc, argv);
47101 }
47102 if (argc == 5) {
47103 return _wrap_new_BM25Weight__SWIG_0(self, argc, argv);
47104 }
47105fail:
47106 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_BM25Weight'.\n"
47107 " Possible C/C++ prototypes are:\n"
47108 " Xapian::BM25Weight(double,double,double,double,double)\n"
47109 " Xapian::BM25Weight()\n");
47110 return __null;
47111}
47112static __attribute__ ((__unused__)) PyObject *_wrap_delete_BM25Weight(PyObject *, PyObject *args) {
47113 PyObject *resultobj = 0;
47114 Xapian::BM25Weight *arg1 = (Xapian::BM25Weight *) 0 ;
47115 void *argp1 = 0 ;
47116 int res1 = 0 ;
47117 PyObject *swig_obj[1] ;
47118 if (!args) goto fail;
47119 swig_obj[0] = args;
47120 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[1], 0x1 | 0, 0);
47121 if (!(res1 >= 0)) {
47122 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_BM25Weight" "', argument " "1"" of type '" "Xapian::BM25Weight *""'"); goto fail; } while(0);
47123 }
47124 arg1 = reinterpret_cast< Xapian::BM25Weight * >(argp1);
47125 {
47126 SWIG_Python_Thread_Allow _swig_thread_allow;
47127 {
47128 try {
47129 delete arg1;
47130 } catch (...) {
47131 _swig_thread_allow.end();
47132 Xapian::SetPythonException();
47133 goto fail;
47134 }
47135 }
47136 _swig_thread_allow.end();
47137 }
47138 resultobj = SWIG_Py_Void();
47139 return resultobj;
47140fail:
47141 return __null;
47142}
47143static __attribute__ ((__unused__)) PyObject *BM25Weight_swigregister(PyObject *, PyObject *args) {
47144 PyObject *obj;
47145 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
47146 SWIG_TypeNewClientData(swig_types[1], SwigPyClientData_New(obj));
47147 return SWIG_Py_Void();
47148}
47149static __attribute__ ((__unused__)) PyObject *BM25Weight_swiginit(PyObject *, PyObject *args) {
47150 return SWIG_Python_InitShadowInstance(args);
47151}
47152static __attribute__ ((__unused__)) PyObject *_wrap_new_TradWeight__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
47153 PyObject *resultobj = 0;
47154 double arg1 ;
47155 double val1 ;
47156 int ecode1 = 0 ;
47157 Xapian::TradWeight *result = 0 ;
47158 if ((nobjs < 1) || (nobjs > 1)) goto fail;
47159 ecode1 = SWIG_AsVal_double(swig_obj[0], &val1);
47160 if (!(ecode1 >= 0)) {
47161 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_TradWeight" "', argument " "1"" of type '" "double""'"); goto fail; } while(0);
47162 }
47163 arg1 = static_cast< double >(val1);
47164 {
47165 SWIG_Python_Thread_Allow _swig_thread_allow;
47166 {
47167 try {
47168 result = (Xapian::TradWeight *)new Xapian::TradWeight(arg1);
47169 } catch (...) {
47170 _swig_thread_allow.end();
47171 Xapian::SetPythonException();
47172 goto fail;
47173 }
47174 }
47175 _swig_thread_allow.end();
47176 }
47177 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[56], ((0x1 << 1) | 0x1) | 0);
47178 return resultobj;
47179fail:
47180 return __null;
47181}
47182static __attribute__ ((__unused__)) PyObject *_wrap_new_TradWeight__SWIG_1(PyObject *, int nobjs, PyObject **) {
47183 PyObject *resultobj = 0;
47184 Xapian::TradWeight *result = 0 ;
47185 if ((nobjs < 0) || (nobjs > 0)) goto fail;
47186 {
47187 SWIG_Python_Thread_Allow _swig_thread_allow;
47188 {
47189 try {
47190 result = (Xapian::TradWeight *)new Xapian::TradWeight();
47191 } catch (...) {
47192 _swig_thread_allow.end();
47193 Xapian::SetPythonException();
47194 goto fail;
47195 }
47196 }
47197 _swig_thread_allow.end();
47198 }
47199 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[56], ((0x1 << 1) | 0x1) | 0);
47200 return resultobj;
47201fail:
47202 return __null;
47203}
47204static __attribute__ ((__unused__)) PyObject *_wrap_new_TradWeight(PyObject *self, PyObject *args) {
47205 int argc;
47206 PyObject *argv[2];
47207 if (!(argc = SWIG_Python_UnpackTuple(args,"new_TradWeight",0,1,argv))) goto fail;
47208 --argc;
47209 if (argc == 0) {
47210 return _wrap_new_TradWeight__SWIG_1(self, argc, argv);
47211 }
47212 if (argc == 1) {
47213 return _wrap_new_TradWeight__SWIG_0(self, argc, argv);
47214 }
47215fail:
47216 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_TradWeight'.\n"
47217 " Possible C/C++ prototypes are:\n"
47218 " Xapian::TradWeight(double)\n"
47219 " Xapian::TradWeight()\n");
47220 return __null;
47221}
47222static __attribute__ ((__unused__)) PyObject *_wrap_delete_TradWeight(PyObject *, PyObject *args) {
47223 PyObject *resultobj = 0;
47224 Xapian::TradWeight *arg1 = (Xapian::TradWeight *) 0 ;
47225 void *argp1 = 0 ;
47226 int res1 = 0 ;
47227 PyObject *swig_obj[1] ;
47228 if (!args) goto fail;
47229 swig_obj[0] = args;
47230 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[56], 0x1 | 0, 0);
47231 if (!(res1 >= 0)) {
47232 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_TradWeight" "', argument " "1"" of type '" "Xapian::TradWeight *""'"); goto fail; } while(0);
47233 }
47234 arg1 = reinterpret_cast< Xapian::TradWeight * >(argp1);
47235 {
47236 SWIG_Python_Thread_Allow _swig_thread_allow;
47237 {
47238 try {
47239 delete arg1;
47240 } catch (...) {
47241 _swig_thread_allow.end();
47242 Xapian::SetPythonException();
47243 goto fail;
47244 }
47245 }
47246 _swig_thread_allow.end();
47247 }
47248 resultobj = SWIG_Py_Void();
47249 return resultobj;
47250fail:
47251 return __null;
47252}
47253static __attribute__ ((__unused__)) PyObject *TradWeight_swigregister(PyObject *, PyObject *args) {
47254 PyObject *obj;
47255 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
47256 SWIG_TypeNewClientData(swig_types[56], SwigPyClientData_New(obj));
47257 return SWIG_Py_Void();
47258}
47259static __attribute__ ((__unused__)) PyObject *TradWeight_swiginit(PyObject *, PyObject *args) {
47260 return SWIG_Python_InitShadowInstance(args);
47261}
47262static __attribute__ ((__unused__)) PyObject *_wrap_new_MatchSpy(PyObject *, PyObject *args) {
47263 PyObject *resultobj = 0;
47264 PyObject *arg1 = (PyObject *) 0 ;
47265 PyObject *swig_obj[1] ;
47266 Xapian::MatchSpy *result = 0 ;
47267 if (!args) goto fail;
47268 swig_obj[0] = args;
47269 arg1 = swig_obj[0];
47270 {
47271 SWIG_Python_Thread_Allow _swig_thread_allow;
47272 {
47273 try {
47274 if ( arg1 != (&_Py_NoneStruct) ) {
47275 result = (Xapian::MatchSpy *)new SwigDirector_MatchSpy(arg1);
47276 } else {
47277 SWIG_Python_SetErrorMsg(PyExc_RuntimeError,"accessing abstract class or protected constructor");
47278 goto fail;
47279 }
47280 } catch (...) {
47281 _swig_thread_allow.end();
47282 Xapian::SetPythonException();
47283 goto fail;
47284 }
47285 }
47286 _swig_thread_allow.end();
47287 }
47288 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[31], ((0x1 << 1) | 0x1) | 0);
47289 return resultobj;
47290fail:
47291 return __null;
47292}
47293static __attribute__ ((__unused__)) PyObject *_wrap_delete_MatchSpy(PyObject *, PyObject *args) {
47294 PyObject *resultobj = 0;
47295 Xapian::MatchSpy *arg1 = (Xapian::MatchSpy *) 0 ;
47296 void *argp1 = 0 ;
47297 int res1 = 0 ;
47298 PyObject *swig_obj[1] ;
47299 if (!args) goto fail;
47300 swig_obj[0] = args;
47301 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[31], 0x1 | 0, 0);
47302 if (!(res1 >= 0)) {
47303 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_MatchSpy" "', argument " "1"" of type '" "Xapian::MatchSpy *""'"); goto fail; } while(0);
47304 }
47305 arg1 = reinterpret_cast< Xapian::MatchSpy * >(argp1);
47306 {
47307 SWIG_Python_Thread_Allow _swig_thread_allow;
47308 {
47309 try {
47310 delete arg1;
47311 } catch (...) {
47312 _swig_thread_allow.end();
47313 Xapian::SetPythonException();
47314 goto fail;
47315 }
47316 }
47317 _swig_thread_allow.end();
47318 }
47319 resultobj = SWIG_Py_Void();
47320 return resultobj;
47321fail:
47322 return __null;
47323}
47324static __attribute__ ((__unused__)) PyObject *_wrap_MatchSpy___call__(PyObject *, PyObject *args) {
47325 PyObject *resultobj = 0;
47326 Xapian::MatchSpy *arg1 = (Xapian::MatchSpy *) 0 ;
47327 Xapian::Document *arg2 = 0 ;
47328 Xapian::weight arg3 ;
47329 void *argp1 = 0 ;
47330 int res1 = 0 ;
47331 void *argp2 = 0 ;
47332 int res2 = 0 ;
47333 double val3 ;
47334 int ecode3 = 0 ;
47335 PyObject *swig_obj[3] ;
47336 Swig::Director *director = 0;
47337 bool upcall = false;
47338 if (!SWIG_Python_UnpackTuple(args,"MatchSpy___call__",3,3,swig_obj)) goto fail;
47339 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[31], 0 | 0, 0);
47340 if (!(res1 >= 0)) {
47341 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MatchSpy___call__" "', argument " "1"" of type '" "Xapian::MatchSpy *""'"); goto fail; } while(0);
47342 }
47343 arg1 = reinterpret_cast< Xapian::MatchSpy * >(argp1);
47344 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[15], 0 | 0, 0);
47345 if (!(res2 >= 0)) {
47346 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MatchSpy___call__" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
47347 }
47348 if (!argp2) {
47349 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MatchSpy___call__" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
47350 }
47351 arg2 = reinterpret_cast< Xapian::Document * >(argp2);
47352 ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
47353 if (!(ecode3 >= 0)) {
47354 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "MatchSpy___call__" "', argument " "3"" of type '" "Xapian::weight""'"); goto fail; } while(0);
47355 }
47356 arg3 = static_cast< Xapian::weight >(val3);
47357 director = dynamic_cast<Swig::Director*>(arg1);
47358 upcall = (director && (director->swig_get_self()==swig_obj[0]));
47359 try {
47360 {
47361 try {
47362 if (upcall) {
47363 Swig::DirectorPureVirtualException::raise("Xapian::MatchSpy::operator ()");
47364 } else {
47365 (arg1)->operator ()((Xapian::Document const &)*arg2,arg3);
47366 }
47367 } catch (...) {
47368 Xapian::SetPythonException();
47369 goto fail;
47370 }
47371 }
47372 } catch (Swig::DirectorException&) {
47373 goto fail;
47374 }
47375 resultobj = SWIG_Py_Void();
47376 return resultobj;
47377fail:
47378 return __null;
47379}
47380static __attribute__ ((__unused__)) PyObject *_wrap_MatchSpy_name(PyObject *, PyObject *args) {
47381 PyObject *resultobj = 0;
47382 Xapian::MatchSpy *arg1 = (Xapian::MatchSpy *) 0 ;
47383 void *argp1 = 0 ;
47384 int res1 = 0 ;
47385 PyObject *swig_obj[1] ;
47386 Swig::Director *director = 0;
47387 bool upcall = false;
47388 std::string result;
47389 if (!args) goto fail;
47390 swig_obj[0] = args;
47391 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[31], 0 | 0, 0);
47392 if (!(res1 >= 0)) {
47393 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MatchSpy_name" "', argument " "1"" of type '" "Xapian::MatchSpy const *""'"); goto fail; } while(0);
47394 }
47395 arg1 = reinterpret_cast< Xapian::MatchSpy * >(argp1);
47396 director = dynamic_cast<Swig::Director*>(arg1);
47397 upcall = (director && (director->swig_get_self()==swig_obj[0]));
47398 try {
47399 {
47400 try {
47401 if (upcall) {
47402 result = ((Xapian::MatchSpy const *)arg1)->Xapian::MatchSpy::name();
47403 } else {
47404 result = ((Xapian::MatchSpy const *)arg1)->name();
47405 }
47406 } catch (...) {
47407 Xapian::SetPythonException();
47408 goto fail;
47409 }
47410 }
47411 } catch (Swig::DirectorException&) {
47412 goto fail;
47413 }
47414 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
47415 return resultobj;
47416fail:
47417 return __null;
47418}
47419static __attribute__ ((__unused__)) PyObject *_wrap_MatchSpy_merge_results(PyObject *, PyObject *args) {
47420 PyObject *resultobj = 0;
47421 Xapian::MatchSpy *arg1 = (Xapian::MatchSpy *) 0 ;
47422 std::string *arg2 = 0 ;
47423 void *argp1 = 0 ;
47424 int res1 = 0 ;
47425 int res2 = ((0)) ;
47426 PyObject *swig_obj[2] ;
47427 Swig::Director *director = 0;
47428 bool upcall = false;
47429 if (!SWIG_Python_UnpackTuple(args,"MatchSpy_merge_results",2,2,swig_obj)) goto fail;
47430 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[31], 0 | 0, 0);
47431 if (!(res1 >= 0)) {
47432 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MatchSpy_merge_results" "', argument " "1"" of type '" "Xapian::MatchSpy *""'"); goto fail; } while(0);
47433 }
47434 arg1 = reinterpret_cast< Xapian::MatchSpy * >(argp1);
47435 {
47436 std::string *ptr = (std::string *)0;
47437 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
47438 if (!(res2 >= 0)) {
47439 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "MatchSpy_merge_results" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
47440 }
47441 if (!ptr) {
47442 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "MatchSpy_merge_results" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
47443 }
47444 arg2 = ptr;
47445 }
47446 director = dynamic_cast<Swig::Director*>(arg1);
47447 upcall = (director && (director->swig_get_self()==swig_obj[0]));
47448 try {
47449 {
47450 try {
47451 if (upcall) {
47452 (arg1)->Xapian::MatchSpy::merge_results((std::string const &)*arg2);
47453 } else {
47454 (arg1)->merge_results((std::string const &)*arg2);
47455 }
47456 } catch (...) {
47457 Xapian::SetPythonException();
47458 goto fail;
47459 }
47460 }
47461 } catch (Swig::DirectorException&) {
47462 goto fail;
47463 }
47464 resultobj = SWIG_Py_Void();
47465 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
47466 return resultobj;
47467fail:
47468 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
47469 return __null;
47470}
47471static __attribute__ ((__unused__)) PyObject *_wrap_MatchSpy___str__(PyObject *, PyObject *args) {
47472 PyObject *resultobj = 0;
47473 Xapian::MatchSpy *arg1 = (Xapian::MatchSpy *) 0 ;
47474 void *argp1 = 0 ;
47475 int res1 = 0 ;
47476 PyObject *swig_obj[1] ;
47477 Swig::Director *director = 0;
47478 bool upcall = false;
47479 std::string result;
47480 if (!args) goto fail;
47481 swig_obj[0] = args;
47482 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[31], 0 | 0, 0);
47483 if (!(res1 >= 0)) {
47484 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MatchSpy___str__" "', argument " "1"" of type '" "Xapian::MatchSpy const *""'"); goto fail; } while(0);
47485 }
47486 arg1 = reinterpret_cast< Xapian::MatchSpy * >(argp1);
47487 director = dynamic_cast<Swig::Director*>(arg1);
47488 upcall = (director && (director->swig_get_self()==swig_obj[0]));
47489 try {
47490 {
47491 try {
47492 if (upcall) {
47493 result = ((Xapian::MatchSpy const *)arg1)->Xapian::MatchSpy::get_description();
47494 } else {
47495 result = ((Xapian::MatchSpy const *)arg1)->get_description();
47496 }
47497 } catch (...) {
47498 Xapian::SetPythonException();
47499 goto fail;
47500 }
47501 }
47502 } catch (Swig::DirectorException&) {
47503 goto fail;
47504 }
47505 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
47506 return resultobj;
47507fail:
47508 return __null;
47509}
47510static __attribute__ ((__unused__)) PyObject *_wrap_disown_MatchSpy(PyObject *, PyObject *args) {
47511 PyObject *resultobj = 0;
47512 Xapian::MatchSpy *arg1 = (Xapian::MatchSpy *) 0 ;
47513 void *argp1 = 0 ;
47514 int res1 = 0 ;
47515 PyObject *swig_obj[1] ;
47516 if (!args) goto fail;
47517 swig_obj[0] = args;
47518 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[31], 0 | 0, 0);
47519 if (!(res1 >= 0)) {
47520 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "disown_MatchSpy" "', argument " "1"" of type '" "Xapian::MatchSpy *""'"); goto fail; } while(0);
47521 }
47522 arg1 = reinterpret_cast< Xapian::MatchSpy * >(argp1);
47523 {
47524 SWIG_Python_Thread_Allow _swig_thread_allow;
47525 {
47526 Swig::Director *director = dynamic_cast<Swig::Director *>(arg1);
47527 if (director) director->swig_disown();
47528 }
47529 _swig_thread_allow.end();
47530 }
47531 resultobj = SWIG_Py_Void();
47532 return resultobj;
47533fail:
47534 return __null;
47535}
47536static __attribute__ ((__unused__)) PyObject *MatchSpy_swigregister(PyObject *, PyObject *args) {
47537 PyObject *obj;
47538 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
47539 SWIG_TypeNewClientData(swig_types[31], SwigPyClientData_New(obj));
47540 return SWIG_Py_Void();
47541}
47542static __attribute__ ((__unused__)) PyObject *MatchSpy_swiginit(PyObject *, PyObject *args) {
47543 return SWIG_Python_InitShadowInstance(args);
47544}
47545static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueCountMatchSpy__SWIG_0(PyObject *, int nobjs, PyObject **) {
47546 PyObject *resultobj = 0;
47547 Xapian::ValueCountMatchSpy *result = 0 ;
47548 if ((nobjs < 0) || (nobjs > 0)) goto fail;
47549 {
47550 SWIG_Python_Thread_Allow _swig_thread_allow;
47551 {
47552 try {
47553 result = (Xapian::ValueCountMatchSpy *)new Xapian::ValueCountMatchSpy();
47554 } catch (...) {
47555 _swig_thread_allow.end();
47556 Xapian::SetPythonException();
47557 goto fail;
47558 }
47559 }
47560 _swig_thread_allow.end();
47561 }
47562 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[58], ((0x1 << 1) | 0x1) | 0);
47563 return resultobj;
47564fail:
47565 return __null;
47566}
47567static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueCountMatchSpy__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
47568 PyObject *resultobj = 0;
47569 Xapian::valueno arg1 ;
47570 unsigned int val1 ;
47571 int ecode1 = 0 ;
47572 Xapian::ValueCountMatchSpy *result = 0 ;
47573 if ((nobjs < 1) || (nobjs > 1)) goto fail;
47574 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
47575 if (!(ecode1 >= 0)) {
47576 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_ValueCountMatchSpy" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
47577 }
47578 arg1 = static_cast< Xapian::valueno >(val1);
47579 {
47580 SWIG_Python_Thread_Allow _swig_thread_allow;
47581 {
47582 try {
47583 result = (Xapian::ValueCountMatchSpy *)new Xapian::ValueCountMatchSpy(arg1);
47584 } catch (...) {
47585 _swig_thread_allow.end();
47586 Xapian::SetPythonException();
47587 goto fail;
47588 }
47589 }
47590 _swig_thread_allow.end();
47591 }
47592 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[58], ((0x1 << 1) | 0x1) | 0);
47593 return resultobj;
47594fail:
47595 return __null;
47596}
47597static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueCountMatchSpy(PyObject *self, PyObject *args) {
47598 int argc;
47599 PyObject *argv[2];
47600 if (!(argc = SWIG_Python_UnpackTuple(args,"new_ValueCountMatchSpy",0,1,argv))) goto fail;
47601 --argc;
47602 if (argc == 0) {
47603 return _wrap_new_ValueCountMatchSpy__SWIG_0(self, argc, argv);
47604 }
47605 if (argc == 1) {
47606 return _wrap_new_ValueCountMatchSpy__SWIG_1(self, argc, argv);
47607 }
47608fail:
47609 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_ValueCountMatchSpy'.\n"
47610 " Possible C/C++ prototypes are:\n"
47611 " Xapian::ValueCountMatchSpy()\n"
47612 " Xapian::ValueCountMatchSpy(Xapian::valueno)\n");
47613 return __null;
47614}
47615static __attribute__ ((__unused__)) PyObject *_wrap_ValueCountMatchSpy_get_total(PyObject *, PyObject *args) {
47616 PyObject *resultobj = 0;
47617 Xapian::ValueCountMatchSpy *arg1 = (Xapian::ValueCountMatchSpy *) 0 ;
47618 void *argp1 = 0 ;
47619 int res1 = 0 ;
47620 PyObject *swig_obj[1] ;
47621 size_t result;
47622 if (!args) goto fail;
47623 swig_obj[0] = args;
47624 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[58], 0 | 0, 0);
47625 if (!(res1 >= 0)) {
47626 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueCountMatchSpy_get_total" "', argument " "1"" of type '" "Xapian::ValueCountMatchSpy const *""'"); goto fail; } while(0);
47627 }
47628 arg1 = reinterpret_cast< Xapian::ValueCountMatchSpy * >(argp1);
47629 {
47630 SWIG_Python_Thread_Allow _swig_thread_allow;
47631 {
47632 try {
47633 result = ((Xapian::ValueCountMatchSpy const *)arg1)->get_total();
47634 } catch (...) {
47635 _swig_thread_allow.end();
47636 Xapian::SetPythonException();
47637 goto fail;
47638 }
47639 }
47640 _swig_thread_allow.end();
47641 }
47642 resultobj = SWIG_From_size_t(static_cast< size_t >(result));
47643 return resultobj;
47644fail:
47645 return __null;
47646}
47647static __attribute__ ((__unused__)) PyObject *_wrap_ValueCountMatchSpy_values_begin(PyObject *, PyObject *args) {
47648 PyObject *resultobj = 0;
47649 Xapian::ValueCountMatchSpy *arg1 = (Xapian::ValueCountMatchSpy *) 0 ;
47650 void *argp1 = 0 ;
47651 int res1 = 0 ;
47652 PyObject *swig_obj[1] ;
47653 Xapian::TermIterator result;
47654 if (!args) goto fail;
47655 swig_obj[0] = args;
47656 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[58], 0 | 0, 0);
47657 if (!(res1 >= 0)) {
47658 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueCountMatchSpy_values_begin" "', argument " "1"" of type '" "Xapian::ValueCountMatchSpy const *""'"); goto fail; } while(0);
47659 }
47660 arg1 = reinterpret_cast< Xapian::ValueCountMatchSpy * >(argp1);
47661 {
47662 SWIG_Python_Thread_Allow _swig_thread_allow;
47663 {
47664 try {
47665 result = ((Xapian::ValueCountMatchSpy const *)arg1)->values_begin();
47666 } catch (...) {
47667 _swig_thread_allow.end();
47668 Xapian::SetPythonException();
47669 goto fail;
47670 }
47671 }
47672 _swig_thread_allow.end();
47673 }
47674 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
47675 return resultobj;
47676fail:
47677 return __null;
47678}
47679static __attribute__ ((__unused__)) PyObject *_wrap_ValueCountMatchSpy_values_end(PyObject *, PyObject *args) {
47680 PyObject *resultobj = 0;
47681 Xapian::ValueCountMatchSpy *arg1 = (Xapian::ValueCountMatchSpy *) 0 ;
47682 void *argp1 = 0 ;
47683 int res1 = 0 ;
47684 PyObject *swig_obj[1] ;
47685 Xapian::TermIterator result;
47686 if (!args) goto fail;
47687 swig_obj[0] = args;
47688 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[58], 0 | 0, 0);
47689 if (!(res1 >= 0)) {
47690 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueCountMatchSpy_values_end" "', argument " "1"" of type '" "Xapian::ValueCountMatchSpy const *""'"); goto fail; } while(0);
47691 }
47692 arg1 = reinterpret_cast< Xapian::ValueCountMatchSpy * >(argp1);
47693 {
47694 SWIG_Python_Thread_Allow _swig_thread_allow;
47695 {
47696 try {
47697 result = ((Xapian::ValueCountMatchSpy const *)arg1)->values_end();
47698 } catch (...) {
47699 _swig_thread_allow.end();
47700 Xapian::SetPythonException();
47701 goto fail;
47702 }
47703 }
47704 _swig_thread_allow.end();
47705 }
47706 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
47707 return resultobj;
47708fail:
47709 return __null;
47710}
47711static __attribute__ ((__unused__)) PyObject *_wrap_ValueCountMatchSpy_top_values_begin(PyObject *, PyObject *args) {
47712 PyObject *resultobj = 0;
47713 Xapian::ValueCountMatchSpy *arg1 = (Xapian::ValueCountMatchSpy *) 0 ;
47714 size_t arg2 ;
47715 void *argp1 = 0 ;
47716 int res1 = 0 ;
47717 size_t val2 ;
47718 int ecode2 = 0 ;
47719 PyObject *swig_obj[2] ;
47720 Xapian::TermIterator result;
47721 if (!SWIG_Python_UnpackTuple(args,"ValueCountMatchSpy_top_values_begin",2,2,swig_obj)) goto fail;
47722 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[58], 0 | 0, 0);
47723 if (!(res1 >= 0)) {
47724 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueCountMatchSpy_top_values_begin" "', argument " "1"" of type '" "Xapian::ValueCountMatchSpy const *""'"); goto fail; } while(0);
47725 }
47726 arg1 = reinterpret_cast< Xapian::ValueCountMatchSpy * >(argp1);
47727 ecode2 = SWIG_AsVal_size_t(swig_obj[1], &val2);
47728 if (!(ecode2 >= 0)) {
47729 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "ValueCountMatchSpy_top_values_begin" "', argument " "2"" of type '" "size_t""'"); goto fail; } while(0);
47730 }
47731 arg2 = static_cast< size_t >(val2);
47732 {
47733 SWIG_Python_Thread_Allow _swig_thread_allow;
47734 {
47735 try {
47736 result = ((Xapian::ValueCountMatchSpy const *)arg1)->top_values_begin(arg2);
47737 } catch (...) {
47738 _swig_thread_allow.end();
47739 Xapian::SetPythonException();
47740 goto fail;
47741 }
47742 }
47743 _swig_thread_allow.end();
47744 }
47745 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
47746 return resultobj;
47747fail:
47748 return __null;
47749}
47750static __attribute__ ((__unused__)) PyObject *_wrap_ValueCountMatchSpy_top_values_end(PyObject *, PyObject *args) {
47751 PyObject *resultobj = 0;
47752 Xapian::ValueCountMatchSpy *arg1 = (Xapian::ValueCountMatchSpy *) 0 ;
47753 size_t arg2 ;
47754 void *argp1 = 0 ;
47755 int res1 = 0 ;
47756 size_t val2 ;
47757 int ecode2 = 0 ;
47758 PyObject *swig_obj[2] ;
47759 Xapian::TermIterator result;
47760 if (!SWIG_Python_UnpackTuple(args,"ValueCountMatchSpy_top_values_end",2,2,swig_obj)) goto fail;
47761 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[58], 0 | 0, 0);
47762 if (!(res1 >= 0)) {
47763 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueCountMatchSpy_top_values_end" "', argument " "1"" of type '" "Xapian::ValueCountMatchSpy const *""'"); goto fail; } while(0);
47764 }
47765 arg1 = reinterpret_cast< Xapian::ValueCountMatchSpy * >(argp1);
47766 ecode2 = SWIG_AsVal_size_t(swig_obj[1], &val2);
47767 if (!(ecode2 >= 0)) {
47768 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "ValueCountMatchSpy_top_values_end" "', argument " "2"" of type '" "size_t""'"); goto fail; } while(0);
47769 }
47770 arg2 = static_cast< size_t >(val2);
47771 {
47772 SWIG_Python_Thread_Allow _swig_thread_allow;
47773 {
47774 try {
47775 result = ((Xapian::ValueCountMatchSpy const *)arg1)->top_values_end(arg2);
47776 } catch (...) {
47777 _swig_thread_allow.end();
47778 Xapian::SetPythonException();
47779 goto fail;
47780 }
47781 }
47782 _swig_thread_allow.end();
47783 }
47784 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
47785 return resultobj;
47786fail:
47787 return __null;
47788}
47789static __attribute__ ((__unused__)) PyObject *_wrap_delete_ValueCountMatchSpy(PyObject *, PyObject *args) {
47790 PyObject *resultobj = 0;
47791 Xapian::ValueCountMatchSpy *arg1 = (Xapian::ValueCountMatchSpy *) 0 ;
47792 void *argp1 = 0 ;
47793 int res1 = 0 ;
47794 PyObject *swig_obj[1] ;
47795 if (!args) goto fail;
47796 swig_obj[0] = args;
47797 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[58], 0x1 | 0, 0);
47798 if (!(res1 >= 0)) {
47799 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ValueCountMatchSpy" "', argument " "1"" of type '" "Xapian::ValueCountMatchSpy *""'"); goto fail; } while(0);
47800 }
47801 arg1 = reinterpret_cast< Xapian::ValueCountMatchSpy * >(argp1);
47802 {
47803 SWIG_Python_Thread_Allow _swig_thread_allow;
47804 {
47805 try {
47806 delete arg1;
47807 } catch (...) {
47808 _swig_thread_allow.end();
47809 Xapian::SetPythonException();
47810 goto fail;
47811 }
47812 }
47813 _swig_thread_allow.end();
47814 }
47815 resultobj = SWIG_Py_Void();
47816 return resultobj;
47817fail:
47818 return __null;
47819}
47820static __attribute__ ((__unused__)) PyObject *ValueCountMatchSpy_swigregister(PyObject *, PyObject *args) {
47821 PyObject *obj;
47822 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
47823 SWIG_TypeNewClientData(swig_types[58], SwigPyClientData_New(obj));
47824 return SWIG_Py_Void();
47825}
47826static __attribute__ ((__unused__)) PyObject *ValueCountMatchSpy_swiginit(PyObject *, PyObject *args) {
47827 return SWIG_Python_InitShadowInstance(args);
47828}
47829static __attribute__ ((__unused__)) PyObject *_wrap_Database_add_database(PyObject *, PyObject *args) {
47830 PyObject *resultobj = 0;
47831 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
47832 Xapian::Database *arg2 = 0 ;
47833 void *argp1 = 0 ;
47834 int res1 = 0 ;
47835 void *argp2 = 0 ;
47836 int res2 = 0 ;
47837 PyObject *swig_obj[2] ;
47838 if (!SWIG_Python_UnpackTuple(args,"Database_add_database",2,2,swig_obj)) goto fail;
47839 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
47840 if (!(res1 >= 0)) {
47841 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_add_database" "', argument " "1"" of type '" "Xapian::Database *""'"); goto fail; } while(0);
47842 }
47843 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
47844 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[4], 0 | 0, 0);
47845 if (!(res2 >= 0)) {
47846 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_add_database" "', argument " "2"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
47847 }
47848 if (!argp2) {
47849 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_add_database" "', argument " "2"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
47850 }
47851 arg2 = reinterpret_cast< Xapian::Database * >(argp2);
47852 {
47853 SWIG_Python_Thread_Allow _swig_thread_allow;
47854 {
47855 try {
47856 (arg1)->add_database((Xapian::Database const &)*arg2);
47857 } catch (...) {
47858 _swig_thread_allow.end();
47859 Xapian::SetPythonException();
47860 goto fail;
47861 }
47862 }
47863 _swig_thread_allow.end();
47864 }
47865 resultobj = SWIG_Py_Void();
47866 return resultobj;
47867fail:
47868 return __null;
47869}
47870static __attribute__ ((__unused__)) PyObject *_wrap_new_Database__SWIG_0(PyObject *, int nobjs, PyObject **) {
47871 PyObject *resultobj = 0;
47872 Xapian::Database *result = 0 ;
47873 if ((nobjs < 0) || (nobjs > 0)) goto fail;
47874 {
47875 SWIG_Python_Thread_Allow _swig_thread_allow;
47876 {
47877 try {
47878 result = (Xapian::Database *)new Xapian::Database();
47879 } catch (...) {
47880 _swig_thread_allow.end();
47881 Xapian::SetPythonException();
47882 goto fail;
47883 }
47884 }
47885 _swig_thread_allow.end();
47886 }
47887 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[4], ((0x1 << 1) | 0x1) | 0);
47888 return resultobj;
47889fail:
47890 return __null;
47891}
47892static __attribute__ ((__unused__)) PyObject *_wrap_new_Database__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
47893 PyObject *resultobj = 0;
47894 std::string *arg1 = 0 ;
47895 int res1 = ((0)) ;
47896 Xapian::Database *result = 0 ;
47897 if ((nobjs < 1) || (nobjs > 1)) goto fail;
47898 {
47899 std::string *ptr = (std::string *)0;
47900 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
47901 if (!(res1 >= 0)) {
47902 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Database" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
47903 }
47904 if (!ptr) {
47905 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Database" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
47906 }
47907 arg1 = ptr;
47908 }
47909 {
47910 SWIG_Python_Thread_Allow _swig_thread_allow;
47911 {
47912 try {
47913 result = (Xapian::Database *)new Xapian::Database((std::string const &)*arg1);
47914 } catch (...) {
47915 _swig_thread_allow.end();
47916 Xapian::SetPythonException();
47917 goto fail;
47918 }
47919 }
47920 _swig_thread_allow.end();
47921 }
47922 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[4], ((0x1 << 1) | 0x1) | 0);
47923 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
47924 return resultobj;
47925fail:
47926 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
47927 return __null;
47928}
47929static __attribute__ ((__unused__)) PyObject *_wrap_delete_Database(PyObject *, PyObject *args) {
47930 PyObject *resultobj = 0;
47931 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
47932 void *argp1 = 0 ;
47933 int res1 = 0 ;
47934 PyObject *swig_obj[1] ;
47935 if (!args) goto fail;
47936 swig_obj[0] = args;
47937 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0x1 | 0, 0);
47938 if (!(res1 >= 0)) {
47939 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Database" "', argument " "1"" of type '" "Xapian::Database *""'"); goto fail; } while(0);
47940 }
47941 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
47942 {
47943 SWIG_Python_Thread_Allow _swig_thread_allow;
47944 {
47945 try {
47946 delete arg1;
47947 } catch (...) {
47948 _swig_thread_allow.end();
47949 Xapian::SetPythonException();
47950 goto fail;
47951 }
47952 }
47953 _swig_thread_allow.end();
47954 }
47955 resultobj = SWIG_Py_Void();
47956 return resultobj;
47957fail:
47958 return __null;
47959}
47960static __attribute__ ((__unused__)) PyObject *_wrap_new_Database__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
47961 PyObject *resultobj = 0;
47962 Xapian::Database *arg1 = 0 ;
47963 void *argp1 = 0 ;
47964 int res1 = 0 ;
47965 Xapian::Database *result = 0 ;
47966 if ((nobjs < 1) || (nobjs > 1)) goto fail;
47967 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
47968 if (!(res1 >= 0)) {
47969 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Database" "', argument " "1"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
47970 }
47971 if (!argp1) {
47972 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Database" "', argument " "1"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
47973 }
47974 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
47975 {
47976 SWIG_Python_Thread_Allow _swig_thread_allow;
47977 {
47978 try {
47979 result = (Xapian::Database *)new Xapian::Database((Xapian::Database const &)*arg1);
47980 } catch (...) {
47981 _swig_thread_allow.end();
47982 Xapian::SetPythonException();
47983 goto fail;
47984 }
47985 }
47986 _swig_thread_allow.end();
47987 }
47988 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[4], ((0x1 << 1) | 0x1) | 0);
47989 return resultobj;
47990fail:
47991 return __null;
47992}
47993static __attribute__ ((__unused__)) PyObject *_wrap_new_Database(PyObject *self, PyObject *args) {
47994 int argc;
47995 PyObject *argv[2];
47996 if (!(argc = SWIG_Python_UnpackTuple(args,"new_Database",0,1,argv))) goto fail;
47997 --argc;
47998 if (argc == 0) {
47999 return _wrap_new_Database__SWIG_0(self, argc, argv);
48000 }
48001 if (argc == 1) {
48002 int _v = 0;
48003 {
48004 int res = SWIG_Python_ConvertPtrAndOwn(argv[0], 0, swig_types[4], 0, 0);
48005 _v = ((res >= 0) ? 1 : 0);
48006 }
48007 if (!_v) goto check_2;
48008 return _wrap_new_Database__SWIG_2(self, argc, argv);
48009 }
48010check_2:
48011 if (argc == 1) {
48012 return _wrap_new_Database__SWIG_1(self, argc, argv);
48013 }
48014fail:
48015 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_Database'.\n"
48016 " Possible C/C++ prototypes are:\n"
48017 " Xapian::Database()\n"
48018 " Xapian::Database(std::string const &)\n"
48019 " Xapian::Database(Xapian::Database const &)\n");
48020 return __null;
48021}
48022static __attribute__ ((__unused__)) PyObject *_wrap_Database_reopen(PyObject *, PyObject *args) {
48023 PyObject *resultobj = 0;
48024 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48025 void *argp1 = 0 ;
48026 int res1 = 0 ;
48027 PyObject *swig_obj[1] ;
48028 if (!args) goto fail;
48029 swig_obj[0] = args;
48030 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48031 if (!(res1 >= 0)) {
48032 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_reopen" "', argument " "1"" of type '" "Xapian::Database *""'"); goto fail; } while(0);
48033 }
48034 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48035 {
48036 SWIG_Python_Thread_Allow _swig_thread_allow;
48037 {
48038 try {
48039 (arg1)->reopen();
48040 } catch (...) {
48041 _swig_thread_allow.end();
48042 Xapian::SetPythonException();
48043 goto fail;
48044 }
48045 }
48046 _swig_thread_allow.end();
48047 }
48048 resultobj = SWIG_Py_Void();
48049 return resultobj;
48050fail:
48051 return __null;
48052}
48053static __attribute__ ((__unused__)) PyObject *_wrap_Database_close(PyObject *, PyObject *args) {
48054 PyObject *resultobj = 0;
48055 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48056 void *argp1 = 0 ;
48057 int res1 = 0 ;
48058 PyObject *swig_obj[1] ;
48059 if (!args) goto fail;
48060 swig_obj[0] = args;
48061 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48062 if (!(res1 >= 0)) {
48063 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_close" "', argument " "1"" of type '" "Xapian::Database *""'"); goto fail; } while(0);
48064 }
48065 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48066 {
48067 SWIG_Python_Thread_Allow _swig_thread_allow;
48068 {
48069 try {
48070 (arg1)->close();
48071 } catch (...) {
48072 _swig_thread_allow.end();
48073 Xapian::SetPythonException();
48074 goto fail;
48075 }
48076 }
48077 _swig_thread_allow.end();
48078 }
48079 resultobj = SWIG_Py_Void();
48080 return resultobj;
48081fail:
48082 return __null;
48083}
48084static __attribute__ ((__unused__)) PyObject *_wrap_Database___str__(PyObject *, PyObject *args) {
48085 PyObject *resultobj = 0;
48086 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48087 void *argp1 = 0 ;
48088 int res1 = 0 ;
48089 PyObject *swig_obj[1] ;
48090 std::string result;
48091 if (!args) goto fail;
48092 swig_obj[0] = args;
48093 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48094 if (!(res1 >= 0)) {
48095 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database___str__" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48096 }
48097 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48098 {
48099 SWIG_Python_Thread_Allow _swig_thread_allow;
48100 {
48101 try {
48102 result = ((Xapian::Database const *)arg1)->get_description();
48103 } catch (...) {
48104 _swig_thread_allow.end();
48105 Xapian::SetPythonException();
48106 goto fail;
48107 }
48108 }
48109 _swig_thread_allow.end();
48110 }
48111 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
48112 return resultobj;
48113fail:
48114 return __null;
48115}
48116static __attribute__ ((__unused__)) PyObject *_wrap_Database_postlist_begin(PyObject *, PyObject *args) {
48117 PyObject *resultobj = 0;
48118 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48119 std::string *arg2 = 0 ;
48120 void *argp1 = 0 ;
48121 int res1 = 0 ;
48122 int res2 = ((0)) ;
48123 PyObject *swig_obj[2] ;
48124 Xapian::PostingIterator result;
48125 if (!SWIG_Python_UnpackTuple(args,"Database_postlist_begin",2,2,swig_obj)) goto fail;
48126 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48127 if (!(res1 >= 0)) {
48128 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_postlist_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48129 }
48130 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48131 {
48132 std::string *ptr = (std::string *)0;
48133 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
48134 if (!(res2 >= 0)) {
48135 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_postlist_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48136 }
48137 if (!ptr) {
48138 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_postlist_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48139 }
48140 arg2 = ptr;
48141 }
48142 {
48143 SWIG_Python_Thread_Allow _swig_thread_allow;
48144 {
48145 try {
48146 result = ((Xapian::Database const *)arg1)->postlist_begin((std::string const &)*arg2);
48147 } catch (...) {
48148 _swig_thread_allow.end();
48149 Xapian::SetPythonException();
48150 goto fail;
48151 }
48152 }
48153 _swig_thread_allow.end();
48154 }
48155 resultobj = SWIG_Python_NewPointerObj((new Xapian::PostingIterator(static_cast< const Xapian::PostingIterator& >(result))), swig_types[38], 0x1 | 0);
48156 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48157 return resultobj;
48158fail:
48159 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48160 return __null;
48161}
48162static __attribute__ ((__unused__)) PyObject *_wrap_Database_postlist_end(PyObject *, PyObject *args) {
48163 PyObject *resultobj = 0;
48164 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48165 std::string *arg2 = 0 ;
48166 void *argp1 = 0 ;
48167 int res1 = 0 ;
48168 int res2 = ((0)) ;
48169 PyObject *swig_obj[2] ;
48170 Xapian::PostingIterator result;
48171 if (!SWIG_Python_UnpackTuple(args,"Database_postlist_end",2,2,swig_obj)) goto fail;
48172 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48173 if (!(res1 >= 0)) {
48174 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_postlist_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48175 }
48176 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48177 {
48178 std::string *ptr = (std::string *)0;
48179 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
48180 if (!(res2 >= 0)) {
48181 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_postlist_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48182 }
48183 if (!ptr) {
48184 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_postlist_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48185 }
48186 arg2 = ptr;
48187 }
48188 {
48189 SWIG_Python_Thread_Allow _swig_thread_allow;
48190 {
48191 try {
48192 result = ((Xapian::Database const *)arg1)->postlist_end((std::string const &)*arg2);
48193 } catch (...) {
48194 _swig_thread_allow.end();
48195 Xapian::SetPythonException();
48196 goto fail;
48197 }
48198 }
48199 _swig_thread_allow.end();
48200 }
48201 resultobj = SWIG_Python_NewPointerObj((new Xapian::PostingIterator(static_cast< const Xapian::PostingIterator& >(result))), swig_types[38], 0x1 | 0);
48202 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48203 return resultobj;
48204fail:
48205 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48206 return __null;
48207}
48208static __attribute__ ((__unused__)) PyObject *_wrap_Database_termlist_begin(PyObject *, PyObject *args) {
48209 PyObject *resultobj = 0;
48210 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48211 Xapian::docid arg2 ;
48212 void *argp1 = 0 ;
48213 int res1 = 0 ;
48214 unsigned int val2 ;
48215 int ecode2 = 0 ;
48216 PyObject *swig_obj[2] ;
48217 Xapian::TermIterator result;
48218 if (!SWIG_Python_UnpackTuple(args,"Database_termlist_begin",2,2,swig_obj)) goto fail;
48219 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48220 if (!(res1 >= 0)) {
48221 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_termlist_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48222 }
48223 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48224 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
48225 if (!(ecode2 >= 0)) {
48226 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_termlist_begin" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
48227 }
48228 arg2 = static_cast< Xapian::docid >(val2);
48229 {
48230 SWIG_Python_Thread_Allow _swig_thread_allow;
48231 {
48232 try {
48233 result = ((Xapian::Database const *)arg1)->termlist_begin(arg2);
48234 } catch (...) {
48235 _swig_thread_allow.end();
48236 Xapian::SetPythonException();
48237 goto fail;
48238 }
48239 }
48240 _swig_thread_allow.end();
48241 }
48242 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
48243 return resultobj;
48244fail:
48245 return __null;
48246}
48247static __attribute__ ((__unused__)) PyObject *_wrap_Database_termlist_end(PyObject *, PyObject *args) {
48248 PyObject *resultobj = 0;
48249 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48250 Xapian::docid arg2 ;
48251 void *argp1 = 0 ;
48252 int res1 = 0 ;
48253 unsigned int val2 ;
48254 int ecode2 = 0 ;
48255 PyObject *swig_obj[2] ;
48256 Xapian::TermIterator result;
48257 if (!SWIG_Python_UnpackTuple(args,"Database_termlist_end",2,2,swig_obj)) goto fail;
48258 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48259 if (!(res1 >= 0)) {
48260 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_termlist_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48261 }
48262 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48263 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
48264 if (!(ecode2 >= 0)) {
48265 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_termlist_end" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
48266 }
48267 arg2 = static_cast< Xapian::docid >(val2);
48268 {
48269 SWIG_Python_Thread_Allow _swig_thread_allow;
48270 {
48271 try {
48272 result = ((Xapian::Database const *)arg1)->termlist_end(arg2);
48273 } catch (...) {
48274 _swig_thread_allow.end();
48275 Xapian::SetPythonException();
48276 goto fail;
48277 }
48278 }
48279 _swig_thread_allow.end();
48280 }
48281 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
48282 return resultobj;
48283fail:
48284 return __null;
48285}
48286static __attribute__ ((__unused__)) PyObject *_wrap_Database_positionlist_begin(PyObject *, PyObject *args) {
48287 PyObject *resultobj = 0;
48288 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48289 Xapian::docid arg2 ;
48290 std::string *arg3 = 0 ;
48291 void *argp1 = 0 ;
48292 int res1 = 0 ;
48293 unsigned int val2 ;
48294 int ecode2 = 0 ;
48295 int res3 = ((0)) ;
48296 PyObject *swig_obj[3] ;
48297 Xapian::PositionIterator result;
48298 if (!SWIG_Python_UnpackTuple(args,"Database_positionlist_begin",3,3,swig_obj)) goto fail;
48299 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48300 if (!(res1 >= 0)) {
48301 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_positionlist_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48302 }
48303 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48304 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
48305 if (!(ecode2 >= 0)) {
48306 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_positionlist_begin" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
48307 }
48308 arg2 = static_cast< Xapian::docid >(val2);
48309 {
48310 std::string *ptr = (std::string *)0;
48311 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
48312 if (!(res3 >= 0)) {
48313 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "Database_positionlist_begin" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
48314 }
48315 if (!ptr) {
48316 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_positionlist_begin" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
48317 }
48318 arg3 = ptr;
48319 }
48320 {
48321 SWIG_Python_Thread_Allow _swig_thread_allow;
48322 {
48323 try {
48324 result = ((Xapian::Database const *)arg1)->positionlist_begin(arg2,(std::string const &)*arg3);
48325 } catch (...) {
48326 _swig_thread_allow.end();
48327 Xapian::SetPythonException();
48328 goto fail;
48329 }
48330 }
48331 _swig_thread_allow.end();
48332 }
48333 resultobj = SWIG_Python_NewPointerObj((new Xapian::PositionIterator(static_cast< const Xapian::PositionIterator& >(result))), swig_types[37], 0x1 | 0);
48334 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
48335 return resultobj;
48336fail:
48337 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
48338 return __null;
48339}
48340static __attribute__ ((__unused__)) PyObject *_wrap_Database_positionlist_end(PyObject *, PyObject *args) {
48341 PyObject *resultobj = 0;
48342 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48343 Xapian::docid arg2 ;
48344 std::string *arg3 = 0 ;
48345 void *argp1 = 0 ;
48346 int res1 = 0 ;
48347 unsigned int val2 ;
48348 int ecode2 = 0 ;
48349 int res3 = ((0)) ;
48350 PyObject *swig_obj[3] ;
48351 Xapian::PositionIterator result;
48352 if (!SWIG_Python_UnpackTuple(args,"Database_positionlist_end",3,3,swig_obj)) goto fail;
48353 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48354 if (!(res1 >= 0)) {
48355 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_positionlist_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48356 }
48357 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48358 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
48359 if (!(ecode2 >= 0)) {
48360 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_positionlist_end" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
48361 }
48362 arg2 = static_cast< Xapian::docid >(val2);
48363 {
48364 std::string *ptr = (std::string *)0;
48365 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
48366 if (!(res3 >= 0)) {
48367 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "Database_positionlist_end" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
48368 }
48369 if (!ptr) {
48370 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_positionlist_end" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
48371 }
48372 arg3 = ptr;
48373 }
48374 {
48375 SWIG_Python_Thread_Allow _swig_thread_allow;
48376 {
48377 try {
48378 result = ((Xapian::Database const *)arg1)->positionlist_end(arg2,(std::string const &)*arg3);
48379 } catch (...) {
48380 _swig_thread_allow.end();
48381 Xapian::SetPythonException();
48382 goto fail;
48383 }
48384 }
48385 _swig_thread_allow.end();
48386 }
48387 resultobj = SWIG_Python_NewPointerObj((new Xapian::PositionIterator(static_cast< const Xapian::PositionIterator& >(result))), swig_types[37], 0x1 | 0);
48388 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
48389 return resultobj;
48390fail:
48391 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
48392 return __null;
48393}
48394static __attribute__ ((__unused__)) PyObject *_wrap_Database_allterms_begin__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
48395 PyObject *resultobj = 0;
48396 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48397 void *argp1 = 0 ;
48398 int res1 = 0 ;
48399 Xapian::TermIterator result;
48400 if ((nobjs < 1) || (nobjs > 1)) goto fail;
48401 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48402 if (!(res1 >= 0)) {
48403 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_allterms_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48404 }
48405 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48406 {
48407 SWIG_Python_Thread_Allow _swig_thread_allow;
48408 {
48409 try {
48410 result = ((Xapian::Database const *)arg1)->allterms_begin();
48411 } catch (...) {
48412 _swig_thread_allow.end();
48413 Xapian::SetPythonException();
48414 goto fail;
48415 }
48416 }
48417 _swig_thread_allow.end();
48418 }
48419 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
48420 return resultobj;
48421fail:
48422 return __null;
48423}
48424static __attribute__ ((__unused__)) PyObject *_wrap_Database_allterms_end__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
48425 PyObject *resultobj = 0;
48426 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48427 void *argp1 = 0 ;
48428 int res1 = 0 ;
48429 Xapian::TermIterator result;
48430 if ((nobjs < 1) || (nobjs > 1)) goto fail;
48431 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48432 if (!(res1 >= 0)) {
48433 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_allterms_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48434 }
48435 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48436 {
48437 SWIG_Python_Thread_Allow _swig_thread_allow;
48438 {
48439 try {
48440 result = ((Xapian::Database const *)arg1)->allterms_end();
48441 } catch (...) {
48442 _swig_thread_allow.end();
48443 Xapian::SetPythonException();
48444 goto fail;
48445 }
48446 }
48447 _swig_thread_allow.end();
48448 }
48449 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
48450 return resultobj;
48451fail:
48452 return __null;
48453}
48454static __attribute__ ((__unused__)) PyObject *_wrap_Database_allterms_begin__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
48455 PyObject *resultobj = 0;
48456 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48457 std::string *arg2 = 0 ;
48458 void *argp1 = 0 ;
48459 int res1 = 0 ;
48460 int res2 = ((0)) ;
48461 Xapian::TermIterator result;
48462 if ((nobjs < 2) || (nobjs > 2)) goto fail;
48463 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48464 if (!(res1 >= 0)) {
48465 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_allterms_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48466 }
48467 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48468 {
48469 std::string *ptr = (std::string *)0;
48470 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
48471 if (!(res2 >= 0)) {
48472 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_allterms_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48473 }
48474 if (!ptr) {
48475 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_allterms_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48476 }
48477 arg2 = ptr;
48478 }
48479 {
48480 SWIG_Python_Thread_Allow _swig_thread_allow;
48481 {
48482 try {
48483 result = ((Xapian::Database const *)arg1)->allterms_begin((std::string const &)*arg2);
48484 } catch (...) {
48485 _swig_thread_allow.end();
48486 Xapian::SetPythonException();
48487 goto fail;
48488 }
48489 }
48490 _swig_thread_allow.end();
48491 }
48492 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
48493 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48494 return resultobj;
48495fail:
48496 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48497 return __null;
48498}
48499static __attribute__ ((__unused__)) PyObject *_wrap_Database_allterms_begin(PyObject *self, PyObject *args) {
48500 int argc;
48501 PyObject *argv[3];
48502 if (!(argc = SWIG_Python_UnpackTuple(args,"Database_allterms_begin",0,2,argv))) goto fail;
48503 --argc;
48504 if (argc == 1) {
48505 return _wrap_Database_allterms_begin__SWIG_0(self, argc, argv);
48506 }
48507 if (argc == 2) {
48508 return _wrap_Database_allterms_begin__SWIG_1(self, argc, argv);
48509 }
48510fail:
48511 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Database_allterms_begin'.\n"
48512 " Possible C/C++ prototypes are:\n"
48513 " allterms_begin(Xapian::Database const *)\n"
48514 " allterms_begin(Xapian::Database const *,std::string const &)\n");
48515 return __null;
48516}
48517static __attribute__ ((__unused__)) PyObject *_wrap_Database_allterms_end__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
48518 PyObject *resultobj = 0;
48519 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48520 std::string *arg2 = 0 ;
48521 void *argp1 = 0 ;
48522 int res1 = 0 ;
48523 int res2 = ((0)) ;
48524 Xapian::TermIterator result;
48525 if ((nobjs < 2) || (nobjs > 2)) goto fail;
48526 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48527 if (!(res1 >= 0)) {
48528 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_allterms_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48529 }
48530 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48531 {
48532 std::string *ptr = (std::string *)0;
48533 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
48534 if (!(res2 >= 0)) {
48535 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_allterms_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48536 }
48537 if (!ptr) {
48538 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_allterms_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48539 }
48540 arg2 = ptr;
48541 }
48542 {
48543 SWIG_Python_Thread_Allow _swig_thread_allow;
48544 {
48545 try {
48546 result = ((Xapian::Database const *)arg1)->allterms_end((std::string const &)*arg2);
48547 } catch (...) {
48548 _swig_thread_allow.end();
48549 Xapian::SetPythonException();
48550 goto fail;
48551 }
48552 }
48553 _swig_thread_allow.end();
48554 }
48555 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
48556 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48557 return resultobj;
48558fail:
48559 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48560 return __null;
48561}
48562static __attribute__ ((__unused__)) PyObject *_wrap_Database_allterms_end(PyObject *self, PyObject *args) {
48563 int argc;
48564 PyObject *argv[3];
48565 if (!(argc = SWIG_Python_UnpackTuple(args,"Database_allterms_end",0,2,argv))) goto fail;
48566 --argc;
48567 if (argc == 1) {
48568 return _wrap_Database_allterms_end__SWIG_0(self, argc, argv);
48569 }
48570 if (argc == 2) {
48571 return _wrap_Database_allterms_end__SWIG_1(self, argc, argv);
48572 }
48573fail:
48574 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Database_allterms_end'.\n"
48575 " Possible C/C++ prototypes are:\n"
48576 " allterms_end(Xapian::Database const *)\n"
48577 " allterms_end(Xapian::Database const *,std::string const &)\n");
48578 return __null;
48579}
48580static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_doccount(PyObject *, PyObject *args) {
48581 PyObject *resultobj = 0;
48582 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48583 void *argp1 = 0 ;
48584 int res1 = 0 ;
48585 PyObject *swig_obj[1] ;
48586 Xapian::doccount result;
48587 if (!args) goto fail;
48588 swig_obj[0] = args;
48589 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48590 if (!(res1 >= 0)) {
48591 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_doccount" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48592 }
48593 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48594 {
48595 SWIG_Python_Thread_Allow _swig_thread_allow;
48596 {
48597 try {
48598 result = (Xapian::doccount)((Xapian::Database const *)arg1)->get_doccount();
48599 } catch (...) {
48600 _swig_thread_allow.end();
48601 Xapian::SetPythonException();
48602 goto fail;
48603 }
48604 }
48605 _swig_thread_allow.end();
48606 }
48607 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
48608 return resultobj;
48609fail:
48610 return __null;
48611}
48612static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_lastdocid(PyObject *, PyObject *args) {
48613 PyObject *resultobj = 0;
48614 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48615 void *argp1 = 0 ;
48616 int res1 = 0 ;
48617 PyObject *swig_obj[1] ;
48618 Xapian::docid result;
48619 if (!args) goto fail;
48620 swig_obj[0] = args;
48621 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48622 if (!(res1 >= 0)) {
48623 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_lastdocid" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48624 }
48625 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48626 {
48627 SWIG_Python_Thread_Allow _swig_thread_allow;
48628 {
48629 try {
48630 result = (Xapian::docid)((Xapian::Database const *)arg1)->get_lastdocid();
48631 } catch (...) {
48632 _swig_thread_allow.end();
48633 Xapian::SetPythonException();
48634 goto fail;
48635 }
48636 }
48637 _swig_thread_allow.end();
48638 }
48639 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
48640 return resultobj;
48641fail:
48642 return __null;
48643}
48644static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_avlength(PyObject *, PyObject *args) {
48645 PyObject *resultobj = 0;
48646 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48647 void *argp1 = 0 ;
48648 int res1 = 0 ;
48649 PyObject *swig_obj[1] ;
48650 Xapian::doclength result;
48651 if (!args) goto fail;
48652 swig_obj[0] = args;
48653 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48654 if (!(res1 >= 0)) {
48655 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_avlength" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48656 }
48657 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48658 {
48659 SWIG_Python_Thread_Allow _swig_thread_allow;
48660 {
48661 try {
48662 result = (Xapian::doclength)((Xapian::Database const *)arg1)->get_avlength();
48663 } catch (...) {
48664 _swig_thread_allow.end();
48665 Xapian::SetPythonException();
48666 goto fail;
48667 }
48668 }
48669 _swig_thread_allow.end();
48670 }
48671 resultobj = PyFloat_FromDouble(static_cast< double >(result));
48672 return resultobj;
48673fail:
48674 return __null;
48675}
48676static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_termfreq(PyObject *, PyObject *args) {
48677 PyObject *resultobj = 0;
48678 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48679 std::string *arg2 = 0 ;
48680 void *argp1 = 0 ;
48681 int res1 = 0 ;
48682 int res2 = ((0)) ;
48683 PyObject *swig_obj[2] ;
48684 Xapian::doccount result;
48685 if (!SWIG_Python_UnpackTuple(args,"Database_get_termfreq",2,2,swig_obj)) goto fail;
48686 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48687 if (!(res1 >= 0)) {
48688 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_termfreq" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48689 }
48690 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48691 {
48692 std::string *ptr = (std::string *)0;
48693 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
48694 if (!(res2 >= 0)) {
48695 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_get_termfreq" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48696 }
48697 if (!ptr) {
48698 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_get_termfreq" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48699 }
48700 arg2 = ptr;
48701 }
48702 {
48703 SWIG_Python_Thread_Allow _swig_thread_allow;
48704 {
48705 try {
48706 result = (Xapian::doccount)((Xapian::Database const *)arg1)->get_termfreq((std::string const &)*arg2);
48707 } catch (...) {
48708 _swig_thread_allow.end();
48709 Xapian::SetPythonException();
48710 goto fail;
48711 }
48712 }
48713 _swig_thread_allow.end();
48714 }
48715 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
48716 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48717 return resultobj;
48718fail:
48719 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48720 return __null;
48721}
48722static __attribute__ ((__unused__)) PyObject *_wrap_Database_term_exists(PyObject *, PyObject *args) {
48723 PyObject *resultobj = 0;
48724 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48725 std::string *arg2 = 0 ;
48726 void *argp1 = 0 ;
48727 int res1 = 0 ;
48728 int res2 = ((0)) ;
48729 PyObject *swig_obj[2] ;
48730 bool result;
48731 if (!SWIG_Python_UnpackTuple(args,"Database_term_exists",2,2,swig_obj)) goto fail;
48732 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48733 if (!(res1 >= 0)) {
48734 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_term_exists" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48735 }
48736 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48737 {
48738 std::string *ptr = (std::string *)0;
48739 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
48740 if (!(res2 >= 0)) {
48741 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_term_exists" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48742 }
48743 if (!ptr) {
48744 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_term_exists" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48745 }
48746 arg2 = ptr;
48747 }
48748 {
48749 SWIG_Python_Thread_Allow _swig_thread_allow;
48750 {
48751 try {
48752 result = (bool)((Xapian::Database const *)arg1)->term_exists((std::string const &)*arg2);
48753 } catch (...) {
48754 _swig_thread_allow.end();
48755 Xapian::SetPythonException();
48756 goto fail;
48757 }
48758 }
48759 _swig_thread_allow.end();
48760 }
48761 resultobj = SWIG_From_bool(static_cast< bool >(result));
48762 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48763 return resultobj;
48764fail:
48765 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48766 return __null;
48767}
48768static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_collection_freq(PyObject *, PyObject *args) {
48769 PyObject *resultobj = 0;
48770 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48771 std::string *arg2 = 0 ;
48772 void *argp1 = 0 ;
48773 int res1 = 0 ;
48774 int res2 = ((0)) ;
48775 PyObject *swig_obj[2] ;
48776 Xapian::termcount result;
48777 if (!SWIG_Python_UnpackTuple(args,"Database_get_collection_freq",2,2,swig_obj)) goto fail;
48778 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48779 if (!(res1 >= 0)) {
48780 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_collection_freq" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48781 }
48782 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48783 {
48784 std::string *ptr = (std::string *)0;
48785 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
48786 if (!(res2 >= 0)) {
48787 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_get_collection_freq" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48788 }
48789 if (!ptr) {
48790 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_get_collection_freq" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
48791 }
48792 arg2 = ptr;
48793 }
48794 {
48795 SWIG_Python_Thread_Allow _swig_thread_allow;
48796 {
48797 try {
48798 result = (Xapian::termcount)((Xapian::Database const *)arg1)->get_collection_freq((std::string const &)*arg2);
48799 } catch (...) {
48800 _swig_thread_allow.end();
48801 Xapian::SetPythonException();
48802 goto fail;
48803 }
48804 }
48805 _swig_thread_allow.end();
48806 }
48807 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
48808 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48809 return resultobj;
48810fail:
48811 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
48812 return __null;
48813}
48814static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_value_freq(PyObject *, PyObject *args) {
48815 PyObject *resultobj = 0;
48816 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48817 Xapian::valueno arg2 ;
48818 void *argp1 = 0 ;
48819 int res1 = 0 ;
48820 unsigned int val2 ;
48821 int ecode2 = 0 ;
48822 PyObject *swig_obj[2] ;
48823 Xapian::doccount result;
48824 if (!SWIG_Python_UnpackTuple(args,"Database_get_value_freq",2,2,swig_obj)) goto fail;
48825 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48826 if (!(res1 >= 0)) {
48827 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_value_freq" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48828 }
48829 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48830 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
48831 if (!(ecode2 >= 0)) {
48832 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_get_value_freq" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
48833 }
48834 arg2 = static_cast< Xapian::valueno >(val2);
48835 {
48836 SWIG_Python_Thread_Allow _swig_thread_allow;
48837 {
48838 try {
48839 result = (Xapian::doccount)((Xapian::Database const *)arg1)->get_value_freq(arg2);
48840 } catch (...) {
48841 _swig_thread_allow.end();
48842 Xapian::SetPythonException();
48843 goto fail;
48844 }
48845 }
48846 _swig_thread_allow.end();
48847 }
48848 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
48849 return resultobj;
48850fail:
48851 return __null;
48852}
48853static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_value_lower_bound(PyObject *, PyObject *args) {
48854 PyObject *resultobj = 0;
48855 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48856 Xapian::valueno arg2 ;
48857 void *argp1 = 0 ;
48858 int res1 = 0 ;
48859 unsigned int val2 ;
48860 int ecode2 = 0 ;
48861 PyObject *swig_obj[2] ;
48862 std::string result;
48863 if (!SWIG_Python_UnpackTuple(args,"Database_get_value_lower_bound",2,2,swig_obj)) goto fail;
48864 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48865 if (!(res1 >= 0)) {
48866 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_value_lower_bound" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48867 }
48868 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48869 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
48870 if (!(ecode2 >= 0)) {
48871 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_get_value_lower_bound" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
48872 }
48873 arg2 = static_cast< Xapian::valueno >(val2);
48874 {
48875 SWIG_Python_Thread_Allow _swig_thread_allow;
48876 {
48877 try {
48878 result = ((Xapian::Database const *)arg1)->get_value_lower_bound(arg2);
48879 } catch (...) {
48880 _swig_thread_allow.end();
48881 Xapian::SetPythonException();
48882 goto fail;
48883 }
48884 }
48885 _swig_thread_allow.end();
48886 }
48887 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
48888 return resultobj;
48889fail:
48890 return __null;
48891}
48892static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_value_upper_bound(PyObject *, PyObject *args) {
48893 PyObject *resultobj = 0;
48894 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48895 Xapian::valueno arg2 ;
48896 void *argp1 = 0 ;
48897 int res1 = 0 ;
48898 unsigned int val2 ;
48899 int ecode2 = 0 ;
48900 PyObject *swig_obj[2] ;
48901 std::string result;
48902 if (!SWIG_Python_UnpackTuple(args,"Database_get_value_upper_bound",2,2,swig_obj)) goto fail;
48903 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48904 if (!(res1 >= 0)) {
48905 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_value_upper_bound" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48906 }
48907 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48908 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
48909 if (!(ecode2 >= 0)) {
48910 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_get_value_upper_bound" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
48911 }
48912 arg2 = static_cast< Xapian::valueno >(val2);
48913 {
48914 SWIG_Python_Thread_Allow _swig_thread_allow;
48915 {
48916 try {
48917 result = ((Xapian::Database const *)arg1)->get_value_upper_bound(arg2);
48918 } catch (...) {
48919 _swig_thread_allow.end();
48920 Xapian::SetPythonException();
48921 goto fail;
48922 }
48923 }
48924 _swig_thread_allow.end();
48925 }
48926 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
48927 return resultobj;
48928fail:
48929 return __null;
48930}
48931static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_doclength_lower_bound(PyObject *, PyObject *args) {
48932 PyObject *resultobj = 0;
48933 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48934 void *argp1 = 0 ;
48935 int res1 = 0 ;
48936 PyObject *swig_obj[1] ;
48937 Xapian::termcount result;
48938 if (!args) goto fail;
48939 swig_obj[0] = args;
48940 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48941 if (!(res1 >= 0)) {
48942 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_doclength_lower_bound" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48943 }
48944 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48945 {
48946 SWIG_Python_Thread_Allow _swig_thread_allow;
48947 {
48948 try {
48949 result = (Xapian::termcount)((Xapian::Database const *)arg1)->get_doclength_lower_bound();
48950 } catch (...) {
48951 _swig_thread_allow.end();
48952 Xapian::SetPythonException();
48953 goto fail;
48954 }
48955 }
48956 _swig_thread_allow.end();
48957 }
48958 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
48959 return resultobj;
48960fail:
48961 return __null;
48962}
48963static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_doclength_upper_bound(PyObject *, PyObject *args) {
48964 PyObject *resultobj = 0;
48965 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48966 void *argp1 = 0 ;
48967 int res1 = 0 ;
48968 PyObject *swig_obj[1] ;
48969 Xapian::termcount result;
48970 if (!args) goto fail;
48971 swig_obj[0] = args;
48972 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
48973 if (!(res1 >= 0)) {
48974 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_doclength_upper_bound" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
48975 }
48976 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
48977 {
48978 SWIG_Python_Thread_Allow _swig_thread_allow;
48979 {
48980 try {
48981 result = (Xapian::termcount)((Xapian::Database const *)arg1)->get_doclength_upper_bound();
48982 } catch (...) {
48983 _swig_thread_allow.end();
48984 Xapian::SetPythonException();
48985 goto fail;
48986 }
48987 }
48988 _swig_thread_allow.end();
48989 }
48990 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
48991 return resultobj;
48992fail:
48993 return __null;
48994}
48995static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_wdf_upper_bound(PyObject *, PyObject *args) {
48996 PyObject *resultobj = 0;
48997 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
48998 std::string *arg2 = 0 ;
48999 void *argp1 = 0 ;
49000 int res1 = 0 ;
49001 int res2 = ((0)) ;
49002 PyObject *swig_obj[2] ;
49003 Xapian::termcount result;
49004 if (!SWIG_Python_UnpackTuple(args,"Database_get_wdf_upper_bound",2,2,swig_obj)) goto fail;
49005 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49006 if (!(res1 >= 0)) {
49007 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_wdf_upper_bound" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49008 }
49009 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49010 {
49011 std::string *ptr = (std::string *)0;
49012 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49013 if (!(res2 >= 0)) {
49014 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_get_wdf_upper_bound" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49015 }
49016 if (!ptr) {
49017 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_get_wdf_upper_bound" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49018 }
49019 arg2 = ptr;
49020 }
49021 {
49022 SWIG_Python_Thread_Allow _swig_thread_allow;
49023 {
49024 try {
49025 result = (Xapian::termcount)((Xapian::Database const *)arg1)->get_wdf_upper_bound((std::string const &)*arg2);
49026 } catch (...) {
49027 _swig_thread_allow.end();
49028 Xapian::SetPythonException();
49029 goto fail;
49030 }
49031 }
49032 _swig_thread_allow.end();
49033 }
49034 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
49035 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49036 return resultobj;
49037fail:
49038 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49039 return __null;
49040}
49041static __attribute__ ((__unused__)) PyObject *_wrap_Database_valuestream_begin(PyObject *, PyObject *args) {
49042 PyObject *resultobj = 0;
49043 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49044 Xapian::valueno arg2 ;
49045 void *argp1 = 0 ;
49046 int res1 = 0 ;
49047 unsigned int val2 ;
49048 int ecode2 = 0 ;
49049 PyObject *swig_obj[2] ;
49050 Xapian::ValueIterator result;
49051 if (!SWIG_Python_UnpackTuple(args,"Database_valuestream_begin",2,2,swig_obj)) goto fail;
49052 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49053 if (!(res1 >= 0)) {
49054 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_valuestream_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49055 }
49056 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49057 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
49058 if (!(ecode2 >= 0)) {
49059 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_valuestream_begin" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
49060 }
49061 arg2 = static_cast< Xapian::valueno >(val2);
49062 {
49063 SWIG_Python_Thread_Allow _swig_thread_allow;
49064 {
49065 try {
49066 result = ((Xapian::Database const *)arg1)->valuestream_begin(arg2);
49067 } catch (...) {
49068 _swig_thread_allow.end();
49069 Xapian::SetPythonException();
49070 goto fail;
49071 }
49072 }
49073 _swig_thread_allow.end();
49074 }
49075 resultobj = SWIG_Python_NewPointerObj((new Xapian::ValueIterator(static_cast< const Xapian::ValueIterator& >(result))), swig_types[59], 0x1 | 0);
49076 return resultobj;
49077fail:
49078 return __null;
49079}
49080static __attribute__ ((__unused__)) PyObject *_wrap_Database_valuestream_end(PyObject *, PyObject *args) {
49081 PyObject *resultobj = 0;
49082 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49083 Xapian::valueno arg2 ;
49084 void *argp1 = 0 ;
49085 int res1 = 0 ;
49086 unsigned int val2 ;
49087 int ecode2 = 0 ;
49088 PyObject *swig_obj[2] ;
49089 Xapian::ValueIterator result;
49090 if (!SWIG_Python_UnpackTuple(args,"Database_valuestream_end",2,2,swig_obj)) goto fail;
49091 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49092 if (!(res1 >= 0)) {
49093 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_valuestream_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49094 }
49095 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49096 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
49097 if (!(ecode2 >= 0)) {
49098 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_valuestream_end" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
49099 }
49100 arg2 = static_cast< Xapian::valueno >(val2);
49101 {
49102 SWIG_Python_Thread_Allow _swig_thread_allow;
49103 {
49104 try {
49105 result = ((Xapian::Database const *)arg1)->valuestream_end(arg2);
49106 } catch (...) {
49107 _swig_thread_allow.end();
49108 Xapian::SetPythonException();
49109 goto fail;
49110 }
49111 }
49112 _swig_thread_allow.end();
49113 }
49114 resultobj = SWIG_Python_NewPointerObj((new Xapian::ValueIterator(static_cast< const Xapian::ValueIterator& >(result))), swig_types[59], 0x1 | 0);
49115 return resultobj;
49116fail:
49117 return __null;
49118}
49119static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_doclength(PyObject *, PyObject *args) {
49120 PyObject *resultobj = 0;
49121 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49122 Xapian::docid arg2 ;
49123 void *argp1 = 0 ;
49124 int res1 = 0 ;
49125 unsigned int val2 ;
49126 int ecode2 = 0 ;
49127 PyObject *swig_obj[2] ;
49128 Xapian::doclength result;
49129 if (!SWIG_Python_UnpackTuple(args,"Database_get_doclength",2,2,swig_obj)) goto fail;
49130 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49131 if (!(res1 >= 0)) {
49132 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_doclength" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49133 }
49134 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49135 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
49136 if (!(ecode2 >= 0)) {
49137 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_get_doclength" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
49138 }
49139 arg2 = static_cast< Xapian::docid >(val2);
49140 {
49141 SWIG_Python_Thread_Allow _swig_thread_allow;
49142 {
49143 try {
49144 result = (Xapian::doclength)((Xapian::Database const *)arg1)->get_doclength(arg2);
49145 } catch (...) {
49146 _swig_thread_allow.end();
49147 Xapian::SetPythonException();
49148 goto fail;
49149 }
49150 }
49151 _swig_thread_allow.end();
49152 }
49153 resultobj = PyFloat_FromDouble(static_cast< double >(result));
49154 return resultobj;
49155fail:
49156 return __null;
49157}
49158static __attribute__ ((__unused__)) PyObject *_wrap_Database_keep_alive(PyObject *, PyObject *args) {
49159 PyObject *resultobj = 0;
49160 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49161 void *argp1 = 0 ;
49162 int res1 = 0 ;
49163 PyObject *swig_obj[1] ;
49164 if (!args) goto fail;
49165 swig_obj[0] = args;
49166 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49167 if (!(res1 >= 0)) {
49168 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_keep_alive" "', argument " "1"" of type '" "Xapian::Database *""'"); goto fail; } while(0);
49169 }
49170 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49171 {
49172 SWIG_Python_Thread_Allow _swig_thread_allow;
49173 {
49174 try {
49175 (arg1)->keep_alive();
49176 } catch (...) {
49177 _swig_thread_allow.end();
49178 Xapian::SetPythonException();
49179 goto fail;
49180 }
49181 }
49182 _swig_thread_allow.end();
49183 }
49184 resultobj = SWIG_Py_Void();
49185 return resultobj;
49186fail:
49187 return __null;
49188}
49189static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_document(PyObject *, PyObject *args) {
49190 PyObject *resultobj = 0;
49191 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49192 Xapian::docid arg2 ;
49193 void *argp1 = 0 ;
49194 int res1 = 0 ;
49195 unsigned int val2 ;
49196 int ecode2 = 0 ;
49197 PyObject *swig_obj[2] ;
49198 Xapian::Document result;
49199 if (!SWIG_Python_UnpackTuple(args,"Database_get_document",2,2,swig_obj)) goto fail;
49200 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49201 if (!(res1 >= 0)) {
49202 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_document" "', argument " "1"" of type '" "Xapian::Database *""'"); goto fail; } while(0);
49203 }
49204 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49205 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
49206 if (!(ecode2 >= 0)) {
49207 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Database_get_document" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
49208 }
49209 arg2 = static_cast< Xapian::docid >(val2);
49210 {
49211 SWIG_Python_Thread_Allow _swig_thread_allow;
49212 {
49213 try {
49214 result = (arg1)->get_document(arg2);
49215 } catch (...) {
49216 _swig_thread_allow.end();
49217 Xapian::SetPythonException();
49218 goto fail;
49219 }
49220 }
49221 _swig_thread_allow.end();
49222 }
49223 resultobj = SWIG_Python_NewPointerObj((new Xapian::Document(static_cast< const Xapian::Document& >(result))), swig_types[15], 0x1 | 0);
49224 return resultobj;
49225fail:
49226 return __null;
49227}
49228static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_spelling_suggestion__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
49229 PyObject *resultobj = 0;
49230 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49231 std::string *arg2 = 0 ;
49232 unsigned int arg3 ;
49233 void *argp1 = 0 ;
49234 int res1 = 0 ;
49235 int res2 = ((0)) ;
49236 unsigned int val3 ;
49237 int ecode3 = 0 ;
49238 std::string result;
49239 if ((nobjs < 3) || (nobjs > 3)) goto fail;
49240 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49241 if (!(res1 >= 0)) {
49242 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_spelling_suggestion" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49243 }
49244 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49245 {
49246 std::string *ptr = (std::string *)0;
49247 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49248 if (!(res2 >= 0)) {
49249 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_get_spelling_suggestion" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49250 }
49251 if (!ptr) {
49252 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_get_spelling_suggestion" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49253 }
49254 arg2 = ptr;
49255 }
49256 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
49257 if (!(ecode3 >= 0)) {
49258 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Database_get_spelling_suggestion" "', argument " "3"" of type '" "unsigned int""'"); goto fail; } while(0);
49259 }
49260 arg3 = static_cast< unsigned int >(val3);
49261 {
49262 SWIG_Python_Thread_Allow _swig_thread_allow;
49263 {
49264 try {
49265 result = ((Xapian::Database const *)arg1)->get_spelling_suggestion((std::string const &)*arg2,arg3);
49266 } catch (...) {
49267 _swig_thread_allow.end();
49268 Xapian::SetPythonException();
49269 goto fail;
49270 }
49271 }
49272 _swig_thread_allow.end();
49273 }
49274 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
49275 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49276 return resultobj;
49277fail:
49278 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49279 return __null;
49280}
49281static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_spelling_suggestion__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
49282 PyObject *resultobj = 0;
49283 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49284 std::string *arg2 = 0 ;
49285 void *argp1 = 0 ;
49286 int res1 = 0 ;
49287 int res2 = ((0)) ;
49288 std::string result;
49289 if ((nobjs < 2) || (nobjs > 2)) goto fail;
49290 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49291 if (!(res1 >= 0)) {
49292 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_spelling_suggestion" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49293 }
49294 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49295 {
49296 std::string *ptr = (std::string *)0;
49297 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49298 if (!(res2 >= 0)) {
49299 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_get_spelling_suggestion" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49300 }
49301 if (!ptr) {
49302 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_get_spelling_suggestion" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49303 }
49304 arg2 = ptr;
49305 }
49306 {
49307 SWIG_Python_Thread_Allow _swig_thread_allow;
49308 {
49309 try {
49310 result = ((Xapian::Database const *)arg1)->get_spelling_suggestion((std::string const &)*arg2);
49311 } catch (...) {
49312 _swig_thread_allow.end();
49313 Xapian::SetPythonException();
49314 goto fail;
49315 }
49316 }
49317 _swig_thread_allow.end();
49318 }
49319 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
49320 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49321 return resultobj;
49322fail:
49323 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49324 return __null;
49325}
49326static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_spelling_suggestion(PyObject *self, PyObject *args) {
49327 int argc;
49328 PyObject *argv[4];
49329 if (!(argc = SWIG_Python_UnpackTuple(args,"Database_get_spelling_suggestion",0,3,argv))) goto fail;
49330 --argc;
49331 if (argc == 2) {
49332 return _wrap_Database_get_spelling_suggestion__SWIG_1(self, argc, argv);
49333 }
49334 if (argc == 3) {
49335 return _wrap_Database_get_spelling_suggestion__SWIG_0(self, argc, argv);
49336 }
49337fail:
49338 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Database_get_spelling_suggestion'.\n"
49339 " Possible C/C++ prototypes are:\n"
49340 " get_spelling_suggestion(Xapian::Database const *,std::string const &,unsigned int)\n"
49341 " get_spelling_suggestion(Xapian::Database const *,std::string const &)\n");
49342 return __null;
49343}
49344static __attribute__ ((__unused__)) PyObject *_wrap_Database_spellings_begin(PyObject *, PyObject *args) {
49345 PyObject *resultobj = 0;
49346 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49347 void *argp1 = 0 ;
49348 int res1 = 0 ;
49349 PyObject *swig_obj[1] ;
49350 Xapian::TermIterator result;
49351 if (!args) goto fail;
49352 swig_obj[0] = args;
49353 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49354 if (!(res1 >= 0)) {
49355 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_spellings_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49356 }
49357 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49358 {
49359 SWIG_Python_Thread_Allow _swig_thread_allow;
49360 {
49361 try {
49362 result = ((Xapian::Database const *)arg1)->spellings_begin();
49363 } catch (...) {
49364 _swig_thread_allow.end();
49365 Xapian::SetPythonException();
49366 goto fail;
49367 }
49368 }
49369 _swig_thread_allow.end();
49370 }
49371 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49372 return resultobj;
49373fail:
49374 return __null;
49375}
49376static __attribute__ ((__unused__)) PyObject *_wrap_Database_spellings_end(PyObject *, PyObject *args) {
49377 PyObject *resultobj = 0;
49378 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49379 void *argp1 = 0 ;
49380 int res1 = 0 ;
49381 PyObject *swig_obj[1] ;
49382 Xapian::TermIterator result;
49383 if (!args) goto fail;
49384 swig_obj[0] = args;
49385 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49386 if (!(res1 >= 0)) {
49387 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_spellings_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49388 }
49389 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49390 {
49391 SWIG_Python_Thread_Allow _swig_thread_allow;
49392 {
49393 try {
49394 result = ((Xapian::Database const *)arg1)->spellings_end();
49395 } catch (...) {
49396 _swig_thread_allow.end();
49397 Xapian::SetPythonException();
49398 goto fail;
49399 }
49400 }
49401 _swig_thread_allow.end();
49402 }
49403 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49404 return resultobj;
49405fail:
49406 return __null;
49407}
49408static __attribute__ ((__unused__)) PyObject *_wrap_Database_synonyms_begin(PyObject *, PyObject *args) {
49409 PyObject *resultobj = 0;
49410 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49411 std::string *arg2 = 0 ;
49412 void *argp1 = 0 ;
49413 int res1 = 0 ;
49414 int res2 = ((0)) ;
49415 PyObject *swig_obj[2] ;
49416 Xapian::TermIterator result;
49417 if (!SWIG_Python_UnpackTuple(args,"Database_synonyms_begin",2,2,swig_obj)) goto fail;
49418 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49419 if (!(res1 >= 0)) {
49420 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_synonyms_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49421 }
49422 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49423 {
49424 std::string *ptr = (std::string *)0;
49425 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49426 if (!(res2 >= 0)) {
49427 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_synonyms_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49428 }
49429 if (!ptr) {
49430 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_synonyms_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49431 }
49432 arg2 = ptr;
49433 }
49434 {
49435 SWIG_Python_Thread_Allow _swig_thread_allow;
49436 {
49437 try {
49438 result = ((Xapian::Database const *)arg1)->synonyms_begin((std::string const &)*arg2);
49439 } catch (...) {
49440 _swig_thread_allow.end();
49441 Xapian::SetPythonException();
49442 goto fail;
49443 }
49444 }
49445 _swig_thread_allow.end();
49446 }
49447 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49448 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49449 return resultobj;
49450fail:
49451 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49452 return __null;
49453}
49454static __attribute__ ((__unused__)) PyObject *_wrap_Database_synonyms_end(PyObject *, PyObject *args) {
49455 PyObject *resultobj = 0;
49456 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49457 std::string *arg2 = 0 ;
49458 void *argp1 = 0 ;
49459 int res1 = 0 ;
49460 int res2 = ((0)) ;
49461 PyObject *swig_obj[2] ;
49462 Xapian::TermIterator result;
49463 if (!SWIG_Python_UnpackTuple(args,"Database_synonyms_end",2,2,swig_obj)) goto fail;
49464 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49465 if (!(res1 >= 0)) {
49466 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_synonyms_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49467 }
49468 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49469 {
49470 std::string *ptr = (std::string *)0;
49471 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49472 if (!(res2 >= 0)) {
49473 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_synonyms_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49474 }
49475 if (!ptr) {
49476 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_synonyms_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49477 }
49478 arg2 = ptr;
49479 }
49480 {
49481 SWIG_Python_Thread_Allow _swig_thread_allow;
49482 {
49483 try {
49484 result = ((Xapian::Database const *)arg1)->synonyms_end((std::string const &)*arg2);
49485 } catch (...) {
49486 _swig_thread_allow.end();
49487 Xapian::SetPythonException();
49488 goto fail;
49489 }
49490 }
49491 _swig_thread_allow.end();
49492 }
49493 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49494 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49495 return resultobj;
49496fail:
49497 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49498 return __null;
49499}
49500static __attribute__ ((__unused__)) PyObject *_wrap_Database_synonym_keys_begin__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
49501 PyObject *resultobj = 0;
49502 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49503 std::string *arg2 = 0 ;
49504 void *argp1 = 0 ;
49505 int res1 = 0 ;
49506 int res2 = ((0)) ;
49507 Xapian::TermIterator result;
49508 if ((nobjs < 2) || (nobjs > 2)) goto fail;
49509 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49510 if (!(res1 >= 0)) {
49511 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_synonym_keys_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49512 }
49513 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49514 {
49515 std::string *ptr = (std::string *)0;
49516 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49517 if (!(res2 >= 0)) {
49518 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_synonym_keys_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49519 }
49520 if (!ptr) {
49521 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_synonym_keys_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49522 }
49523 arg2 = ptr;
49524 }
49525 {
49526 SWIG_Python_Thread_Allow _swig_thread_allow;
49527 {
49528 try {
49529 result = ((Xapian::Database const *)arg1)->synonym_keys_begin((std::string const &)*arg2);
49530 } catch (...) {
49531 _swig_thread_allow.end();
49532 Xapian::SetPythonException();
49533 goto fail;
49534 }
49535 }
49536 _swig_thread_allow.end();
49537 }
49538 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49539 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49540 return resultobj;
49541fail:
49542 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49543 return __null;
49544}
49545static __attribute__ ((__unused__)) PyObject *_wrap_Database_synonym_keys_begin__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
49546 PyObject *resultobj = 0;
49547 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49548 void *argp1 = 0 ;
49549 int res1 = 0 ;
49550 Xapian::TermIterator result;
49551 if ((nobjs < 1) || (nobjs > 1)) goto fail;
49552 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49553 if (!(res1 >= 0)) {
49554 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_synonym_keys_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49555 }
49556 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49557 {
49558 SWIG_Python_Thread_Allow _swig_thread_allow;
49559 {
49560 try {
49561 result = ((Xapian::Database const *)arg1)->synonym_keys_begin();
49562 } catch (...) {
49563 _swig_thread_allow.end();
49564 Xapian::SetPythonException();
49565 goto fail;
49566 }
49567 }
49568 _swig_thread_allow.end();
49569 }
49570 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49571 return resultobj;
49572fail:
49573 return __null;
49574}
49575static __attribute__ ((__unused__)) PyObject *_wrap_Database_synonym_keys_begin(PyObject *self, PyObject *args) {
49576 int argc;
49577 PyObject *argv[3];
49578 if (!(argc = SWIG_Python_UnpackTuple(args,"Database_synonym_keys_begin",0,2,argv))) goto fail;
49579 --argc;
49580 if (argc == 1) {
49581 return _wrap_Database_synonym_keys_begin__SWIG_1(self, argc, argv);
49582 }
49583 if (argc == 2) {
49584 return _wrap_Database_synonym_keys_begin__SWIG_0(self, argc, argv);
49585 }
49586fail:
49587 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Database_synonym_keys_begin'.\n"
49588 " Possible C/C++ prototypes are:\n"
49589 " synonym_keys_begin(Xapian::Database const *,std::string const &)\n"
49590 " synonym_keys_begin(Xapian::Database const *)\n");
49591 return __null;
49592}
49593static __attribute__ ((__unused__)) PyObject *_wrap_Database_synonym_keys_end__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
49594 PyObject *resultobj = 0;
49595 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49596 std::string *arg2 = 0 ;
49597 void *argp1 = 0 ;
49598 int res1 = 0 ;
49599 int res2 = ((0)) ;
49600 Xapian::TermIterator result;
49601 if ((nobjs < 2) || (nobjs > 2)) goto fail;
49602 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49603 if (!(res1 >= 0)) {
49604 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_synonym_keys_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49605 }
49606 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49607 {
49608 std::string *ptr = (std::string *)0;
49609 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49610 if (!(res2 >= 0)) {
49611 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_synonym_keys_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49612 }
49613 if (!ptr) {
49614 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_synonym_keys_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49615 }
49616 arg2 = ptr;
49617 }
49618 {
49619 SWIG_Python_Thread_Allow _swig_thread_allow;
49620 {
49621 try {
49622 result = ((Xapian::Database const *)arg1)->synonym_keys_end((std::string const &)*arg2);
49623 } catch (...) {
49624 _swig_thread_allow.end();
49625 Xapian::SetPythonException();
49626 goto fail;
49627 }
49628 }
49629 _swig_thread_allow.end();
49630 }
49631 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49632 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49633 return resultobj;
49634fail:
49635 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49636 return __null;
49637}
49638static __attribute__ ((__unused__)) PyObject *_wrap_Database_synonym_keys_end__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
49639 PyObject *resultobj = 0;
49640 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49641 void *argp1 = 0 ;
49642 int res1 = 0 ;
49643 Xapian::TermIterator result;
49644 if ((nobjs < 1) || (nobjs > 1)) goto fail;
49645 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49646 if (!(res1 >= 0)) {
49647 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_synonym_keys_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49648 }
49649 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49650 {
49651 SWIG_Python_Thread_Allow _swig_thread_allow;
49652 {
49653 try {
49654 result = ((Xapian::Database const *)arg1)->synonym_keys_end();
49655 } catch (...) {
49656 _swig_thread_allow.end();
49657 Xapian::SetPythonException();
49658 goto fail;
49659 }
49660 }
49661 _swig_thread_allow.end();
49662 }
49663 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49664 return resultobj;
49665fail:
49666 return __null;
49667}
49668static __attribute__ ((__unused__)) PyObject *_wrap_Database_synonym_keys_end(PyObject *self, PyObject *args) {
49669 int argc;
49670 PyObject *argv[3];
49671 if (!(argc = SWIG_Python_UnpackTuple(args,"Database_synonym_keys_end",0,2,argv))) goto fail;
49672 --argc;
49673 if (argc == 1) {
49674 return _wrap_Database_synonym_keys_end__SWIG_1(self, argc, argv);
49675 }
49676 if (argc == 2) {
49677 return _wrap_Database_synonym_keys_end__SWIG_0(self, argc, argv);
49678 }
49679fail:
49680 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Database_synonym_keys_end'.\n"
49681 " Possible C/C++ prototypes are:\n"
49682 " synonym_keys_end(Xapian::Database const *,std::string const &)\n"
49683 " synonym_keys_end(Xapian::Database const *)\n");
49684 return __null;
49685}
49686static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_metadata(PyObject *, PyObject *args) {
49687 PyObject *resultobj = 0;
49688 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49689 std::string *arg2 = 0 ;
49690 void *argp1 = 0 ;
49691 int res1 = 0 ;
49692 int res2 = ((0)) ;
49693 PyObject *swig_obj[2] ;
49694 std::string result;
49695 if (!SWIG_Python_UnpackTuple(args,"Database_get_metadata",2,2,swig_obj)) goto fail;
49696 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49697 if (!(res1 >= 0)) {
49698 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_metadata" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49699 }
49700 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49701 {
49702 std::string *ptr = (std::string *)0;
49703 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49704 if (!(res2 >= 0)) {
49705 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database_get_metadata" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49706 }
49707 if (!ptr) {
49708 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database_get_metadata" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49709 }
49710 arg2 = ptr;
49711 }
49712 {
49713 SWIG_Python_Thread_Allow _swig_thread_allow;
49714 {
49715 try {
49716 result = ((Xapian::Database const *)arg1)->get_metadata((std::string const &)*arg2);
49717 } catch (...) {
49718 _swig_thread_allow.end();
49719 Xapian::SetPythonException();
49720 goto fail;
49721 }
49722 }
49723 _swig_thread_allow.end();
49724 }
49725 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
49726 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49727 return resultobj;
49728fail:
49729 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49730 return __null;
49731}
49732static __attribute__ ((__unused__)) PyObject *_wrap_Database__metadata_keys_begin__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
49733 PyObject *resultobj = 0;
49734 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49735 std::string *arg2 = 0 ;
49736 void *argp1 = 0 ;
49737 int res1 = 0 ;
49738 int res2 = ((0)) ;
49739 Xapian::TermIterator result;
49740 if ((nobjs < 2) || (nobjs > 2)) goto fail;
49741 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49742 if (!(res1 >= 0)) {
49743 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database__metadata_keys_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49744 }
49745 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49746 {
49747 std::string *ptr = (std::string *)0;
49748 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49749 if (!(res2 >= 0)) {
49750 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database__metadata_keys_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49751 }
49752 if (!ptr) {
49753 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database__metadata_keys_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49754 }
49755 arg2 = ptr;
49756 }
49757 {
49758 SWIG_Python_Thread_Allow _swig_thread_allow;
49759 {
49760 try {
49761 result = ((Xapian::Database const *)arg1)->metadata_keys_begin((std::string const &)*arg2);
49762 } catch (...) {
49763 _swig_thread_allow.end();
49764 Xapian::SetPythonException();
49765 goto fail;
49766 }
49767 }
49768 _swig_thread_allow.end();
49769 }
49770 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49771 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49772 return resultobj;
49773fail:
49774 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49775 return __null;
49776}
49777static __attribute__ ((__unused__)) PyObject *_wrap_Database__metadata_keys_begin__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
49778 PyObject *resultobj = 0;
49779 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49780 void *argp1 = 0 ;
49781 int res1 = 0 ;
49782 Xapian::TermIterator result;
49783 if ((nobjs < 1) || (nobjs > 1)) goto fail;
49784 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49785 if (!(res1 >= 0)) {
49786 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database__metadata_keys_begin" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49787 }
49788 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49789 {
49790 SWIG_Python_Thread_Allow _swig_thread_allow;
49791 {
49792 try {
49793 result = ((Xapian::Database const *)arg1)->metadata_keys_begin();
49794 } catch (...) {
49795 _swig_thread_allow.end();
49796 Xapian::SetPythonException();
49797 goto fail;
49798 }
49799 }
49800 _swig_thread_allow.end();
49801 }
49802 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49803 return resultobj;
49804fail:
49805 return __null;
49806}
49807static __attribute__ ((__unused__)) PyObject *_wrap_Database__metadata_keys_begin(PyObject *self, PyObject *args) {
49808 int argc;
49809 PyObject *argv[3];
49810 if (!(argc = SWIG_Python_UnpackTuple(args,"Database__metadata_keys_begin",0,2,argv))) goto fail;
49811 --argc;
49812 if (argc == 1) {
49813 return _wrap_Database__metadata_keys_begin__SWIG_1(self, argc, argv);
49814 }
49815 if (argc == 2) {
49816 return _wrap_Database__metadata_keys_begin__SWIG_0(self, argc, argv);
49817 }
49818fail:
49819 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Database__metadata_keys_begin'.\n"
49820 " Possible C/C++ prototypes are:\n"
49821 " metadata_keys_begin(Xapian::Database const *,std::string const &)\n"
49822 " metadata_keys_begin(Xapian::Database const *)\n");
49823 return __null;
49824}
49825static __attribute__ ((__unused__)) PyObject *_wrap_Database__metadata_keys_end__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
49826 PyObject *resultobj = 0;
49827 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49828 std::string *arg2 = 0 ;
49829 void *argp1 = 0 ;
49830 int res1 = 0 ;
49831 int res2 = ((0)) ;
49832 Xapian::TermIterator result;
49833 if ((nobjs < 2) || (nobjs > 2)) goto fail;
49834 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49835 if (!(res1 >= 0)) {
49836 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database__metadata_keys_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49837 }
49838 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49839 {
49840 std::string *ptr = (std::string *)0;
49841 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
49842 if (!(res2 >= 0)) {
49843 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Database__metadata_keys_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49844 }
49845 if (!ptr) {
49846 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Database__metadata_keys_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
49847 }
49848 arg2 = ptr;
49849 }
49850 {
49851 SWIG_Python_Thread_Allow _swig_thread_allow;
49852 {
49853 try {
49854 result = ((Xapian::Database const *)arg1)->metadata_keys_end((std::string const &)*arg2);
49855 } catch (...) {
49856 _swig_thread_allow.end();
49857 Xapian::SetPythonException();
49858 goto fail;
49859 }
49860 }
49861 _swig_thread_allow.end();
49862 }
49863 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49864 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49865 return resultobj;
49866fail:
49867 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
49868 return __null;
49869}
49870static __attribute__ ((__unused__)) PyObject *_wrap_Database__metadata_keys_end__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
49871 PyObject *resultobj = 0;
49872 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49873 void *argp1 = 0 ;
49874 int res1 = 0 ;
49875 Xapian::TermIterator result;
49876 if ((nobjs < 1) || (nobjs > 1)) goto fail;
49877 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49878 if (!(res1 >= 0)) {
49879 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database__metadata_keys_end" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49880 }
49881 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49882 {
49883 SWIG_Python_Thread_Allow _swig_thread_allow;
49884 {
49885 try {
49886 result = ((Xapian::Database const *)arg1)->metadata_keys_end();
49887 } catch (...) {
49888 _swig_thread_allow.end();
49889 Xapian::SetPythonException();
49890 goto fail;
49891 }
49892 }
49893 _swig_thread_allow.end();
49894 }
49895 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
49896 return resultobj;
49897fail:
49898 return __null;
49899}
49900static __attribute__ ((__unused__)) PyObject *_wrap_Database__metadata_keys_end(PyObject *self, PyObject *args) {
49901 int argc;
49902 PyObject *argv[3];
49903 if (!(argc = SWIG_Python_UnpackTuple(args,"Database__metadata_keys_end",0,2,argv))) goto fail;
49904 --argc;
49905 if (argc == 1) {
49906 return _wrap_Database__metadata_keys_end__SWIG_1(self, argc, argv);
49907 }
49908 if (argc == 2) {
49909 return _wrap_Database__metadata_keys_end__SWIG_0(self, argc, argv);
49910 }
49911fail:
49912 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Database__metadata_keys_end'.\n"
49913 " Possible C/C++ prototypes are:\n"
49914 " metadata_keys_end(Xapian::Database const *,std::string const &)\n"
49915 " metadata_keys_end(Xapian::Database const *)\n");
49916 return __null;
49917}
49918static __attribute__ ((__unused__)) PyObject *_wrap_Database_get_uuid(PyObject *, PyObject *args) {
49919 PyObject *resultobj = 0;
49920 Xapian::Database *arg1 = (Xapian::Database *) 0 ;
49921 void *argp1 = 0 ;
49922 int res1 = 0 ;
49923 PyObject *swig_obj[1] ;
49924 std::string result;
49925 if (!args) goto fail;
49926 swig_obj[0] = args;
49927 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[4], 0 | 0, 0);
49928 if (!(res1 >= 0)) {
49929 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Database_get_uuid" "', argument " "1"" of type '" "Xapian::Database const *""'"); goto fail; } while(0);
49930 }
49931 arg1 = reinterpret_cast< Xapian::Database * >(argp1);
49932 {
49933 SWIG_Python_Thread_Allow _swig_thread_allow;
49934 {
49935 try {
49936 result = ((Xapian::Database const *)arg1)->get_uuid();
49937 } catch (...) {
49938 _swig_thread_allow.end();
49939 Xapian::SetPythonException();
49940 goto fail;
49941 }
49942 }
49943 _swig_thread_allow.end();
49944 }
49945 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
49946 return resultobj;
49947fail:
49948 return __null;
49949}
49950static __attribute__ ((__unused__)) PyObject *Database_swigregister(PyObject *, PyObject *args) {
49951 PyObject *obj;
49952 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
49953 SWIG_TypeNewClientData(swig_types[4], SwigPyClientData_New(obj));
49954 return SWIG_Py_Void();
49955}
49956static __attribute__ ((__unused__)) PyObject *Database_swiginit(PyObject *, PyObject *args) {
49957 return SWIG_Python_InitShadowInstance(args);
49958}
49959static __attribute__ ((__unused__)) PyObject *_wrap_delete_WritableDatabase(PyObject *, PyObject *args) {
49960 PyObject *resultobj = 0;
49961 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
49962 void *argp1 = 0 ;
49963 int res1 = 0 ;
49964 PyObject *swig_obj[1] ;
49965 if (!args) goto fail;
49966 swig_obj[0] = args;
49967 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0x1 | 0, 0);
49968 if (!(res1 >= 0)) {
49969 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_WritableDatabase" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
49970 }
49971 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
49972 {
49973 SWIG_Python_Thread_Allow _swig_thread_allow;
49974 {
49975 try {
49976 delete arg1;
49977 } catch (...) {
49978 _swig_thread_allow.end();
49979 Xapian::SetPythonException();
49980 goto fail;
49981 }
49982 }
49983 _swig_thread_allow.end();
49984 }
49985 resultobj = SWIG_Py_Void();
49986 return resultobj;
49987fail:
49988 return __null;
49989}
49990static __attribute__ ((__unused__)) PyObject *_wrap_new_WritableDatabase__SWIG_0(PyObject *, int nobjs, PyObject **) {
49991 PyObject *resultobj = 0;
49992 Xapian::WritableDatabase *result = 0 ;
49993 if ((nobjs < 0) || (nobjs > 0)) goto fail;
49994 {
49995 SWIG_Python_Thread_Allow _swig_thread_allow;
49996 {
49997 try {
49998 result = (Xapian::WritableDatabase *)new Xapian::WritableDatabase();
49999 } catch (...) {
50000 _swig_thread_allow.end();
50001 Xapian::SetPythonException();
50002 goto fail;
50003 }
50004 }
50005 _swig_thread_allow.end();
50006 }
50007 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[66], ((0x1 << 1) | 0x1) | 0);
50008 return resultobj;
50009fail:
50010 return __null;
50011}
50012static __attribute__ ((__unused__)) PyObject *_wrap_new_WritableDatabase__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
50013 PyObject *resultobj = 0;
50014 std::string *arg1 = 0 ;
50015 int arg2 ;
50016 int res1 = ((0)) ;
50017 int val2 ;
50018 int ecode2 = 0 ;
50019 Xapian::WritableDatabase *result = 0 ;
50020 if ((nobjs < 2) || (nobjs > 2)) goto fail;
50021 {
50022 std::string *ptr = (std::string *)0;
50023 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
50024 if (!(res1 >= 0)) {
50025 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_WritableDatabase" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
50026 }
50027 if (!ptr) {
50028 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_WritableDatabase" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
50029 }
50030 arg1 = ptr;
50031 }
50032 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
50033 if (!(ecode2 >= 0)) {
50034 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_WritableDatabase" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
50035 }
50036 arg2 = static_cast< int >(val2);
50037 {
50038 SWIG_Python_Thread_Allow _swig_thread_allow;
50039 {
50040 try {
50041 result = (Xapian::WritableDatabase *)new Xapian::WritableDatabase((std::string const &)*arg1,arg2);
50042 } catch (...) {
50043 _swig_thread_allow.end();
50044 Xapian::SetPythonException();
50045 goto fail;
50046 }
50047 }
50048 _swig_thread_allow.end();
50049 }
50050 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[66], ((0x1 << 1) | 0x1) | 0);
50051 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
50052 return resultobj;
50053fail:
50054 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
50055 return __null;
50056}
50057static __attribute__ ((__unused__)) PyObject *_wrap_new_WritableDatabase__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
50058 PyObject *resultobj = 0;
50059 Xapian::WritableDatabase *arg1 = 0 ;
50060 void *argp1 = 0 ;
50061 int res1 = 0 ;
50062 Xapian::WritableDatabase *result = 0 ;
50063 if ((nobjs < 1) || (nobjs > 1)) goto fail;
50064 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50065 if (!(res1 >= 0)) {
50066 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_WritableDatabase" "', argument " "1"" of type '" "Xapian::WritableDatabase const &""'"); goto fail; } while(0);
50067 }
50068 if (!argp1) {
50069 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_WritableDatabase" "', argument " "1"" of type '" "Xapian::WritableDatabase const &""'"); goto fail; } while(0);
50070 }
50071 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50072 {
50073 SWIG_Python_Thread_Allow _swig_thread_allow;
50074 {
50075 try {
50076 result = (Xapian::WritableDatabase *)new Xapian::WritableDatabase((Xapian::WritableDatabase const &)*arg1);
50077 } catch (...) {
50078 _swig_thread_allow.end();
50079 Xapian::SetPythonException();
50080 goto fail;
50081 }
50082 }
50083 _swig_thread_allow.end();
50084 }
50085 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[66], ((0x1 << 1) | 0x1) | 0);
50086 return resultobj;
50087fail:
50088 return __null;
50089}
50090static __attribute__ ((__unused__)) PyObject *_wrap_new_WritableDatabase(PyObject *self, PyObject *args) {
50091 int argc;
50092 PyObject *argv[3];
50093 if (!(argc = SWIG_Python_UnpackTuple(args,"new_WritableDatabase",0,2,argv))) goto fail;
50094 --argc;
50095 if (argc == 0) {
50096 return _wrap_new_WritableDatabase__SWIG_0(self, argc, argv);
50097 }
50098 if (argc == 1) {
50099 return _wrap_new_WritableDatabase__SWIG_2(self, argc, argv);
50100 }
50101 if (argc == 2) {
50102 return _wrap_new_WritableDatabase__SWIG_1(self, argc, argv);
50103 }
50104fail:
50105 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_WritableDatabase'.\n"
50106 " Possible C/C++ prototypes are:\n"
50107 " Xapian::WritableDatabase()\n"
50108 " Xapian::WritableDatabase(std::string const &,int)\n"
50109 " Xapian::WritableDatabase(Xapian::WritableDatabase const &)\n");
50110 return __null;
50111}
50112static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_commit(PyObject *, PyObject *args) {
50113 PyObject *resultobj = 0;
50114 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50115 void *argp1 = 0 ;
50116 int res1 = 0 ;
50117 PyObject *swig_obj[1] ;
50118 if (!args) goto fail;
50119 swig_obj[0] = args;
50120 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50121 if (!(res1 >= 0)) {
50122 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_commit" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50123 }
50124 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50125 {
50126 SWIG_Python_Thread_Allow _swig_thread_allow;
50127 {
50128 try {
50129 (arg1)->commit();
50130 } catch (...) {
50131 _swig_thread_allow.end();
50132 Xapian::SetPythonException();
50133 goto fail;
50134 }
50135 }
50136 _swig_thread_allow.end();
50137 }
50138 resultobj = SWIG_Py_Void();
50139 return resultobj;
50140fail:
50141 return __null;
50142}
50143static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_flush(PyObject *, PyObject *args) {
50144 PyObject *resultobj = 0;
50145 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50146 void *argp1 = 0 ;
50147 int res1 = 0 ;
50148 PyObject *swig_obj[1] ;
50149 if (!args) goto fail;
50150 swig_obj[0] = args;
50151 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50152 if (!(res1 >= 0)) {
50153 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_flush" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50154 }
50155 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50156 {
50157 SWIG_Python_Thread_Allow _swig_thread_allow;
50158 {
50159 try {
50160 (arg1)->flush();
50161 } catch (...) {
50162 _swig_thread_allow.end();
50163 Xapian::SetPythonException();
50164 goto fail;
50165 }
50166 }
50167 _swig_thread_allow.end();
50168 }
50169 resultobj = SWIG_Py_Void();
50170 return resultobj;
50171fail:
50172 return __null;
50173}
50174static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_begin_transaction__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
50175 PyObject *resultobj = 0;
50176 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50177 bool arg2 ;
50178 void *argp1 = 0 ;
50179 int res1 = 0 ;
50180 bool val2 ;
50181 int ecode2 = 0 ;
50182 if ((nobjs < 2) || (nobjs > 2)) goto fail;
50183 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50184 if (!(res1 >= 0)) {
50185 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_begin_transaction" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50186 }
50187 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50188 ecode2 = SWIG_AsVal_bool(swig_obj[1], &val2);
50189 if (!(ecode2 >= 0)) {
50190 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "WritableDatabase_begin_transaction" "', argument " "2"" of type '" "bool""'"); goto fail; } while(0);
50191 }
50192 arg2 = static_cast< bool >(val2);
50193 {
50194 SWIG_Python_Thread_Allow _swig_thread_allow;
50195 {
50196 try {
50197 (arg1)->begin_transaction(arg2);
50198 } catch (...) {
50199 _swig_thread_allow.end();
50200 Xapian::SetPythonException();
50201 goto fail;
50202 }
50203 }
50204 _swig_thread_allow.end();
50205 }
50206 resultobj = SWIG_Py_Void();
50207 return resultobj;
50208fail:
50209 return __null;
50210}
50211static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_begin_transaction__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
50212 PyObject *resultobj = 0;
50213 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50214 void *argp1 = 0 ;
50215 int res1 = 0 ;
50216 if ((nobjs < 1) || (nobjs > 1)) goto fail;
50217 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50218 if (!(res1 >= 0)) {
50219 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_begin_transaction" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50220 }
50221 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50222 {
50223 SWIG_Python_Thread_Allow _swig_thread_allow;
50224 {
50225 try {
50226 (arg1)->begin_transaction();
50227 } catch (...) {
50228 _swig_thread_allow.end();
50229 Xapian::SetPythonException();
50230 goto fail;
50231 }
50232 }
50233 _swig_thread_allow.end();
50234 }
50235 resultobj = SWIG_Py_Void();
50236 return resultobj;
50237fail:
50238 return __null;
50239}
50240static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_begin_transaction(PyObject *self, PyObject *args) {
50241 int argc;
50242 PyObject *argv[3];
50243 if (!(argc = SWIG_Python_UnpackTuple(args,"WritableDatabase_begin_transaction",0,2,argv))) goto fail;
50244 --argc;
50245 if (argc == 1) {
50246 return _wrap_WritableDatabase_begin_transaction__SWIG_1(self, argc, argv);
50247 }
50248 if (argc == 2) {
50249 return _wrap_WritableDatabase_begin_transaction__SWIG_0(self, argc, argv);
50250 }
50251fail:
50252 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'WritableDatabase_begin_transaction'.\n"
50253 " Possible C/C++ prototypes are:\n"
50254 " begin_transaction(Xapian::WritableDatabase *,bool)\n"
50255 " begin_transaction(Xapian::WritableDatabase *)\n");
50256 return __null;
50257}
50258static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_commit_transaction(PyObject *, PyObject *args) {
50259 PyObject *resultobj = 0;
50260 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50261 void *argp1 = 0 ;
50262 int res1 = 0 ;
50263 PyObject *swig_obj[1] ;
50264 if (!args) goto fail;
50265 swig_obj[0] = args;
50266 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50267 if (!(res1 >= 0)) {
50268 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_commit_transaction" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50269 }
50270 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50271 {
50272 SWIG_Python_Thread_Allow _swig_thread_allow;
50273 {
50274 try {
50275 (arg1)->commit_transaction();
50276 } catch (...) {
50277 _swig_thread_allow.end();
50278 Xapian::SetPythonException();
50279 goto fail;
50280 }
50281 }
50282 _swig_thread_allow.end();
50283 }
50284 resultobj = SWIG_Py_Void();
50285 return resultobj;
50286fail:
50287 return __null;
50288}
50289static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_cancel_transaction(PyObject *, PyObject *args) {
50290 PyObject *resultobj = 0;
50291 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50292 void *argp1 = 0 ;
50293 int res1 = 0 ;
50294 PyObject *swig_obj[1] ;
50295 if (!args) goto fail;
50296 swig_obj[0] = args;
50297 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50298 if (!(res1 >= 0)) {
50299 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_cancel_transaction" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50300 }
50301 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50302 {
50303 SWIG_Python_Thread_Allow _swig_thread_allow;
50304 {
50305 try {
50306 (arg1)->cancel_transaction();
50307 } catch (...) {
50308 _swig_thread_allow.end();
50309 Xapian::SetPythonException();
50310 goto fail;
50311 }
50312 }
50313 _swig_thread_allow.end();
50314 }
50315 resultobj = SWIG_Py_Void();
50316 return resultobj;
50317fail:
50318 return __null;
50319}
50320static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_add_document(PyObject *, PyObject *args) {
50321 PyObject *resultobj = 0;
50322 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50323 Xapian::Document *arg2 = 0 ;
50324 void *argp1 = 0 ;
50325 int res1 = 0 ;
50326 void *argp2 = 0 ;
50327 int res2 = 0 ;
50328 PyObject *swig_obj[2] ;
50329 Xapian::docid result;
50330 if (!SWIG_Python_UnpackTuple(args,"WritableDatabase_add_document",2,2,swig_obj)) goto fail;
50331 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50332 if (!(res1 >= 0)) {
50333 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_add_document" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50334 }
50335 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50336 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[15], 0 | 0, 0);
50337 if (!(res2 >= 0)) {
50338 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_add_document" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
50339 }
50340 if (!argp2) {
50341 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_add_document" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
50342 }
50343 arg2 = reinterpret_cast< Xapian::Document * >(argp2);
50344 {
50345 SWIG_Python_Thread_Allow _swig_thread_allow;
50346 {
50347 try {
50348 result = (Xapian::docid)(arg1)->add_document((Xapian::Document const &)*arg2);
50349 } catch (...) {
50350 _swig_thread_allow.end();
50351 Xapian::SetPythonException();
50352 goto fail;
50353 }
50354 }
50355 _swig_thread_allow.end();
50356 }
50357 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
50358 return resultobj;
50359fail:
50360 return __null;
50361}
50362static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_delete_document__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
50363 PyObject *resultobj = 0;
50364 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50365 Xapian::docid arg2 ;
50366 void *argp1 = 0 ;
50367 int res1 = 0 ;
50368 unsigned int val2 ;
50369 int ecode2 = 0 ;
50370 if ((nobjs < 2) || (nobjs > 2)) goto fail;
50371 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50372 if (!(res1 >= 0)) {
50373 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_delete_document" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50374 }
50375 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50376 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
50377 if (!(ecode2 >= 0)) {
50378 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "WritableDatabase_delete_document" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
50379 }
50380 arg2 = static_cast< Xapian::docid >(val2);
50381 {
50382 SWIG_Python_Thread_Allow _swig_thread_allow;
50383 {
50384 try {
50385 (arg1)->delete_document(arg2);
50386 } catch (...) {
50387 _swig_thread_allow.end();
50388 Xapian::SetPythonException();
50389 goto fail;
50390 }
50391 }
50392 _swig_thread_allow.end();
50393 }
50394 resultobj = SWIG_Py_Void();
50395 return resultobj;
50396fail:
50397 return __null;
50398}
50399static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_replace_document__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
50400 PyObject *resultobj = 0;
50401 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50402 Xapian::docid arg2 ;
50403 Xapian::Document *arg3 = 0 ;
50404 void *argp1 = 0 ;
50405 int res1 = 0 ;
50406 unsigned int val2 ;
50407 int ecode2 = 0 ;
50408 void *argp3 = 0 ;
50409 int res3 = 0 ;
50410 if ((nobjs < 3) || (nobjs > 3)) goto fail;
50411 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50412 if (!(res1 >= 0)) {
50413 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_replace_document" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50414 }
50415 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50416 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
50417 if (!(ecode2 >= 0)) {
50418 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "WritableDatabase_replace_document" "', argument " "2"" of type '" "Xapian::docid""'"); goto fail; } while(0);
50419 }
50420 arg2 = static_cast< Xapian::docid >(val2);
50421 res3 = SWIG_Python_ConvertPtrAndOwn(swig_obj[2], &argp3, swig_types[15], 0 | 0, 0);
50422 if (!(res3 >= 0)) {
50423 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "WritableDatabase_replace_document" "', argument " "3"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
50424 }
50425 if (!argp3) {
50426 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_replace_document" "', argument " "3"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
50427 }
50428 arg3 = reinterpret_cast< Xapian::Document * >(argp3);
50429 {
50430 SWIG_Python_Thread_Allow _swig_thread_allow;
50431 {
50432 try {
50433 (arg1)->replace_document(arg2,(Xapian::Document const &)*arg3);
50434 } catch (...) {
50435 _swig_thread_allow.end();
50436 Xapian::SetPythonException();
50437 goto fail;
50438 }
50439 }
50440 _swig_thread_allow.end();
50441 }
50442 resultobj = SWIG_Py_Void();
50443 return resultobj;
50444fail:
50445 return __null;
50446}
50447static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_delete_document__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
50448 PyObject *resultobj = 0;
50449 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50450 std::string *arg2 = 0 ;
50451 void *argp1 = 0 ;
50452 int res1 = 0 ;
50453 int res2 = ((0)) ;
50454 if ((nobjs < 2) || (nobjs > 2)) goto fail;
50455 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50456 if (!(res1 >= 0)) {
50457 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_delete_document" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50458 }
50459 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50460 {
50461 std::string *ptr = (std::string *)0;
50462 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
50463 if (!(res2 >= 0)) {
50464 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_delete_document" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50465 }
50466 if (!ptr) {
50467 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_delete_document" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50468 }
50469 arg2 = ptr;
50470 }
50471 {
50472 SWIG_Python_Thread_Allow _swig_thread_allow;
50473 {
50474 try {
50475 (arg1)->delete_document((std::string const &)*arg2);
50476 } catch (...) {
50477 _swig_thread_allow.end();
50478 Xapian::SetPythonException();
50479 goto fail;
50480 }
50481 }
50482 _swig_thread_allow.end();
50483 }
50484 resultobj = SWIG_Py_Void();
50485 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50486 return resultobj;
50487fail:
50488 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50489 return __null;
50490}
50491static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_delete_document(PyObject *self, PyObject *args) {
50492 int argc;
50493 PyObject *argv[3];
50494 if (!(argc = SWIG_Python_UnpackTuple(args,"WritableDatabase_delete_document",0,2,argv))) goto fail;
50495 --argc;
50496 if (argc == 2) {
50497 int _v = 0;
50498 {
50499 {
50500 int res = SWIG_AsVal_unsigned_SS_int(argv[1], __null);
50501 _v = ((res >= 0) ? 1 : 0);
50502 }
50503 }
50504 if (!_v) goto check_1;
50505 return _wrap_WritableDatabase_delete_document__SWIG_0(self, argc, argv);
50506 }
50507check_1:
50508 if (argc == 2) {
50509 return _wrap_WritableDatabase_delete_document__SWIG_1(self, argc, argv);
50510 }
50511fail:
50512 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'WritableDatabase_delete_document'.\n"
50513 " Possible C/C++ prototypes are:\n"
50514 " delete_document(Xapian::WritableDatabase *,Xapian::docid)\n"
50515 " delete_document(Xapian::WritableDatabase *,std::string const &)\n");
50516 return __null;
50517}
50518static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_replace_document__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
50519 PyObject *resultobj = 0;
50520 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50521 std::string *arg2 = 0 ;
50522 Xapian::Document *arg3 = 0 ;
50523 void *argp1 = 0 ;
50524 int res1 = 0 ;
50525 int res2 = ((0)) ;
50526 void *argp3 = 0 ;
50527 int res3 = 0 ;
50528 Xapian::docid result;
50529 if ((nobjs < 3) || (nobjs > 3)) goto fail;
50530 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50531 if (!(res1 >= 0)) {
50532 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_replace_document" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
50533 }
50534 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50535 {
50536 std::string *ptr = (std::string *)0;
50537 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
50538 if (!(res2 >= 0)) {
50539 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_replace_document" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50540 }
50541 if (!ptr) {
50542 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_replace_document" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50543 }
50544 arg2 = ptr;
50545 }
50546 res3 = SWIG_Python_ConvertPtrAndOwn(swig_obj[2], &argp3, swig_types[15], 0 | 0, 0);
50547 if (!(res3 >= 0)) {
50548 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "WritableDatabase_replace_document" "', argument " "3"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
50549 }
50550 if (!argp3) {
50551 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_replace_document" "', argument " "3"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
50552 }
50553 arg3 = reinterpret_cast< Xapian::Document * >(argp3);
50554 {
50555 SWIG_Python_Thread_Allow _swig_thread_allow;
50556 {
50557 try {
50558 result = (Xapian::docid)(arg1)->replace_document((std::string const &)*arg2,(Xapian::Document const &)*arg3);
50559 } catch (...) {
50560 _swig_thread_allow.end();
50561 Xapian::SetPythonException();
50562 goto fail;
50563 }
50564 }
50565 _swig_thread_allow.end();
50566 }
50567 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
50568 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50569 return resultobj;
50570fail:
50571 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50572 return __null;
50573}
50574static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_replace_document(PyObject *self, PyObject *args) {
50575 int argc;
50576 PyObject *argv[4];
50577 if (!(argc = SWIG_Python_UnpackTuple(args,"WritableDatabase_replace_document",0,3,argv))) goto fail;
50578 --argc;
50579 if (argc == 3) {
50580 int _v = 0;
50581 {
50582 {
50583 int res = SWIG_AsVal_unsigned_SS_int(argv[1], __null);
50584 _v = ((res >= 0) ? 1 : 0);
50585 }
50586 }
50587 if (!_v) goto check_1;
50588 return _wrap_WritableDatabase_replace_document__SWIG_0(self, argc, argv);
50589 }
50590check_1:
50591 if (argc == 3) {
50592 return _wrap_WritableDatabase_replace_document__SWIG_1(self, argc, argv);
50593 }
50594fail:
50595 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'WritableDatabase_replace_document'.\n"
50596 " Possible C/C++ prototypes are:\n"
50597 " replace_document(Xapian::WritableDatabase *,Xapian::docid,Xapian::Document const &)\n"
50598 " replace_document(Xapian::WritableDatabase *,std::string const &,Xapian::Document const &)\n");
50599 return __null;
50600}
50601static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_add_spelling__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
50602 PyObject *resultobj = 0;
50603 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50604 std::string *arg2 = 0 ;
50605 Xapian::termcount arg3 ;
50606 void *argp1 = 0 ;
50607 int res1 = 0 ;
50608 int res2 = ((0)) ;
50609 unsigned int val3 ;
50610 int ecode3 = 0 ;
50611 if ((nobjs < 3) || (nobjs > 3)) goto fail;
50612 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50613 if (!(res1 >= 0)) {
50614 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_add_spelling" "', argument " "1"" of type '" "Xapian::WritableDatabase const *""'"); goto fail; } while(0);
50615 }
50616 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50617 {
50618 std::string *ptr = (std::string *)0;
50619 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
50620 if (!(res2 >= 0)) {
50621 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_add_spelling" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50622 }
50623 if (!ptr) {
50624 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_add_spelling" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50625 }
50626 arg2 = ptr;
50627 }
50628 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
50629 if (!(ecode3 >= 0)) {
50630 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "WritableDatabase_add_spelling" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
50631 }
50632 arg3 = static_cast< Xapian::termcount >(val3);
50633 {
50634 SWIG_Python_Thread_Allow _swig_thread_allow;
50635 {
50636 try {
50637 ((Xapian::WritableDatabase const *)arg1)->add_spelling((std::string const &)*arg2,arg3);
50638 } catch (...) {
50639 _swig_thread_allow.end();
50640 Xapian::SetPythonException();
50641 goto fail;
50642 }
50643 }
50644 _swig_thread_allow.end();
50645 }
50646 resultobj = SWIG_Py_Void();
50647 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50648 return resultobj;
50649fail:
50650 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50651 return __null;
50652}
50653static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_add_spelling__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
50654 PyObject *resultobj = 0;
50655 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50656 std::string *arg2 = 0 ;
50657 void *argp1 = 0 ;
50658 int res1 = 0 ;
50659 int res2 = ((0)) ;
50660 if ((nobjs < 2) || (nobjs > 2)) goto fail;
50661 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50662 if (!(res1 >= 0)) {
50663 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_add_spelling" "', argument " "1"" of type '" "Xapian::WritableDatabase const *""'"); goto fail; } while(0);
50664 }
50665 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50666 {
50667 std::string *ptr = (std::string *)0;
50668 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
50669 if (!(res2 >= 0)) {
50670 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_add_spelling" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50671 }
50672 if (!ptr) {
50673 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_add_spelling" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50674 }
50675 arg2 = ptr;
50676 }
50677 {
50678 SWIG_Python_Thread_Allow _swig_thread_allow;
50679 {
50680 try {
50681 ((Xapian::WritableDatabase const *)arg1)->add_spelling((std::string const &)*arg2);
50682 } catch (...) {
50683 _swig_thread_allow.end();
50684 Xapian::SetPythonException();
50685 goto fail;
50686 }
50687 }
50688 _swig_thread_allow.end();
50689 }
50690 resultobj = SWIG_Py_Void();
50691 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50692 return resultobj;
50693fail:
50694 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50695 return __null;
50696}
50697static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_add_spelling(PyObject *self, PyObject *args) {
50698 int argc;
50699 PyObject *argv[4];
50700 if (!(argc = SWIG_Python_UnpackTuple(args,"WritableDatabase_add_spelling",0,3,argv))) goto fail;
50701 --argc;
50702 if (argc == 2) {
50703 return _wrap_WritableDatabase_add_spelling__SWIG_1(self, argc, argv);
50704 }
50705 if (argc == 3) {
50706 return _wrap_WritableDatabase_add_spelling__SWIG_0(self, argc, argv);
50707 }
50708fail:
50709 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'WritableDatabase_add_spelling'.\n"
50710 " Possible C/C++ prototypes are:\n"
50711 " add_spelling(Xapian::WritableDatabase const *,std::string const &,Xapian::termcount)\n"
50712 " add_spelling(Xapian::WritableDatabase const *,std::string const &)\n");
50713 return __null;
50714}
50715static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_remove_spelling__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
50716 PyObject *resultobj = 0;
50717 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50718 std::string *arg2 = 0 ;
50719 Xapian::termcount arg3 ;
50720 void *argp1 = 0 ;
50721 int res1 = 0 ;
50722 int res2 = ((0)) ;
50723 unsigned int val3 ;
50724 int ecode3 = 0 ;
50725 if ((nobjs < 3) || (nobjs > 3)) goto fail;
50726 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50727 if (!(res1 >= 0)) {
50728 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_remove_spelling" "', argument " "1"" of type '" "Xapian::WritableDatabase const *""'"); goto fail; } while(0);
50729 }
50730 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50731 {
50732 std::string *ptr = (std::string *)0;
50733 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
50734 if (!(res2 >= 0)) {
50735 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_remove_spelling" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50736 }
50737 if (!ptr) {
50738 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_remove_spelling" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50739 }
50740 arg2 = ptr;
50741 }
50742 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
50743 if (!(ecode3 >= 0)) {
50744 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "WritableDatabase_remove_spelling" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
50745 }
50746 arg3 = static_cast< Xapian::termcount >(val3);
50747 {
50748 SWIG_Python_Thread_Allow _swig_thread_allow;
50749 {
50750 try {
50751 ((Xapian::WritableDatabase const *)arg1)->remove_spelling((std::string const &)*arg2,arg3);
50752 } catch (...) {
50753 _swig_thread_allow.end();
50754 Xapian::SetPythonException();
50755 goto fail;
50756 }
50757 }
50758 _swig_thread_allow.end();
50759 }
50760 resultobj = SWIG_Py_Void();
50761 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50762 return resultobj;
50763fail:
50764 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50765 return __null;
50766}
50767static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_remove_spelling__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
50768 PyObject *resultobj = 0;
50769 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50770 std::string *arg2 = 0 ;
50771 void *argp1 = 0 ;
50772 int res1 = 0 ;
50773 int res2 = ((0)) ;
50774 if ((nobjs < 2) || (nobjs > 2)) goto fail;
50775 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50776 if (!(res1 >= 0)) {
50777 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_remove_spelling" "', argument " "1"" of type '" "Xapian::WritableDatabase const *""'"); goto fail; } while(0);
50778 }
50779 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50780 {
50781 std::string *ptr = (std::string *)0;
50782 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
50783 if (!(res2 >= 0)) {
50784 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_remove_spelling" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50785 }
50786 if (!ptr) {
50787 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_remove_spelling" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50788 }
50789 arg2 = ptr;
50790 }
50791 {
50792 SWIG_Python_Thread_Allow _swig_thread_allow;
50793 {
50794 try {
50795 ((Xapian::WritableDatabase const *)arg1)->remove_spelling((std::string const &)*arg2);
50796 } catch (...) {
50797 _swig_thread_allow.end();
50798 Xapian::SetPythonException();
50799 goto fail;
50800 }
50801 }
50802 _swig_thread_allow.end();
50803 }
50804 resultobj = SWIG_Py_Void();
50805 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50806 return resultobj;
50807fail:
50808 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50809 return __null;
50810}
50811static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_remove_spelling(PyObject *self, PyObject *args) {
50812 int argc;
50813 PyObject *argv[4];
50814 if (!(argc = SWIG_Python_UnpackTuple(args,"WritableDatabase_remove_spelling",0,3,argv))) goto fail;
50815 --argc;
50816 if (argc == 2) {
50817 return _wrap_WritableDatabase_remove_spelling__SWIG_1(self, argc, argv);
50818 }
50819 if (argc == 3) {
50820 return _wrap_WritableDatabase_remove_spelling__SWIG_0(self, argc, argv);
50821 }
50822fail:
50823 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'WritableDatabase_remove_spelling'.\n"
50824 " Possible C/C++ prototypes are:\n"
50825 " remove_spelling(Xapian::WritableDatabase const *,std::string const &,Xapian::termcount)\n"
50826 " remove_spelling(Xapian::WritableDatabase const *,std::string const &)\n");
50827 return __null;
50828}
50829static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_add_synonym(PyObject *, PyObject *args) {
50830 PyObject *resultobj = 0;
50831 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50832 std::string *arg2 = 0 ;
50833 std::string *arg3 = 0 ;
50834 void *argp1 = 0 ;
50835 int res1 = 0 ;
50836 int res2 = ((0)) ;
50837 int res3 = ((0)) ;
50838 PyObject *swig_obj[3] ;
50839 if (!SWIG_Python_UnpackTuple(args,"WritableDatabase_add_synonym",3,3,swig_obj)) goto fail;
50840 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50841 if (!(res1 >= 0)) {
50842 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_add_synonym" "', argument " "1"" of type '" "Xapian::WritableDatabase const *""'"); goto fail; } while(0);
50843 }
50844 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50845 {
50846 std::string *ptr = (std::string *)0;
50847 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
50848 if (!(res2 >= 0)) {
50849 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_add_synonym" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50850 }
50851 if (!ptr) {
50852 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_add_synonym" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50853 }
50854 arg2 = ptr;
50855 }
50856 {
50857 std::string *ptr = (std::string *)0;
50858 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
50859 if (!(res3 >= 0)) {
50860 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "WritableDatabase_add_synonym" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
50861 }
50862 if (!ptr) {
50863 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_add_synonym" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
50864 }
50865 arg3 = ptr;
50866 }
50867 {
50868 SWIG_Python_Thread_Allow _swig_thread_allow;
50869 {
50870 try {
50871 ((Xapian::WritableDatabase const *)arg1)->add_synonym((std::string const &)*arg2,(std::string const &)*arg3);
50872 } catch (...) {
50873 _swig_thread_allow.end();
50874 Xapian::SetPythonException();
50875 goto fail;
50876 }
50877 }
50878 _swig_thread_allow.end();
50879 }
50880 resultobj = SWIG_Py_Void();
50881 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50882 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
50883 return resultobj;
50884fail:
50885 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50886 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
50887 return __null;
50888}
50889static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_remove_synonym(PyObject *, PyObject *args) {
50890 PyObject *resultobj = 0;
50891 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50892 std::string *arg2 = 0 ;
50893 std::string *arg3 = 0 ;
50894 void *argp1 = 0 ;
50895 int res1 = 0 ;
50896 int res2 = ((0)) ;
50897 int res3 = ((0)) ;
50898 PyObject *swig_obj[3] ;
50899 if (!SWIG_Python_UnpackTuple(args,"WritableDatabase_remove_synonym",3,3,swig_obj)) goto fail;
50900 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50901 if (!(res1 >= 0)) {
50902 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_remove_synonym" "', argument " "1"" of type '" "Xapian::WritableDatabase const *""'"); goto fail; } while(0);
50903 }
50904 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50905 {
50906 std::string *ptr = (std::string *)0;
50907 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
50908 if (!(res2 >= 0)) {
50909 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_remove_synonym" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50910 }
50911 if (!ptr) {
50912 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_remove_synonym" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50913 }
50914 arg2 = ptr;
50915 }
50916 {
50917 std::string *ptr = (std::string *)0;
50918 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
50919 if (!(res3 >= 0)) {
50920 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "WritableDatabase_remove_synonym" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
50921 }
50922 if (!ptr) {
50923 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_remove_synonym" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
50924 }
50925 arg3 = ptr;
50926 }
50927 {
50928 SWIG_Python_Thread_Allow _swig_thread_allow;
50929 {
50930 try {
50931 ((Xapian::WritableDatabase const *)arg1)->remove_synonym((std::string const &)*arg2,(std::string const &)*arg3);
50932 } catch (...) {
50933 _swig_thread_allow.end();
50934 Xapian::SetPythonException();
50935 goto fail;
50936 }
50937 }
50938 _swig_thread_allow.end();
50939 }
50940 resultobj = SWIG_Py_Void();
50941 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50942 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
50943 return resultobj;
50944fail:
50945 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50946 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
50947 return __null;
50948}
50949static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_clear_synonyms(PyObject *, PyObject *args) {
50950 PyObject *resultobj = 0;
50951 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50952 std::string *arg2 = 0 ;
50953 void *argp1 = 0 ;
50954 int res1 = 0 ;
50955 int res2 = ((0)) ;
50956 PyObject *swig_obj[2] ;
50957 if (!SWIG_Python_UnpackTuple(args,"WritableDatabase_clear_synonyms",2,2,swig_obj)) goto fail;
50958 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
50959 if (!(res1 >= 0)) {
50960 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_clear_synonyms" "', argument " "1"" of type '" "Xapian::WritableDatabase const *""'"); goto fail; } while(0);
50961 }
50962 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
50963 {
50964 std::string *ptr = (std::string *)0;
50965 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
50966 if (!(res2 >= 0)) {
50967 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_clear_synonyms" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50968 }
50969 if (!ptr) {
50970 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_clear_synonyms" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
50971 }
50972 arg2 = ptr;
50973 }
50974 {
50975 SWIG_Python_Thread_Allow _swig_thread_allow;
50976 {
50977 try {
50978 ((Xapian::WritableDatabase const *)arg1)->clear_synonyms((std::string const &)*arg2);
50979 } catch (...) {
50980 _swig_thread_allow.end();
50981 Xapian::SetPythonException();
50982 goto fail;
50983 }
50984 }
50985 _swig_thread_allow.end();
50986 }
50987 resultobj = SWIG_Py_Void();
50988 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50989 return resultobj;
50990fail:
50991 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
50992 return __null;
50993}
50994static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase_set_metadata(PyObject *, PyObject *args) {
50995 PyObject *resultobj = 0;
50996 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
50997 std::string *arg2 = 0 ;
50998 std::string *arg3 = 0 ;
50999 void *argp1 = 0 ;
51000 int res1 = 0 ;
51001 int res2 = ((0)) ;
51002 int res3 = ((0)) ;
51003 PyObject *swig_obj[3] ;
51004 if (!SWIG_Python_UnpackTuple(args,"WritableDatabase_set_metadata",3,3,swig_obj)) goto fail;
51005 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
51006 if (!(res1 >= 0)) {
51007 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase_set_metadata" "', argument " "1"" of type '" "Xapian::WritableDatabase *""'"); goto fail; } while(0);
51008 }
51009 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
51010 {
51011 std::string *ptr = (std::string *)0;
51012 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
51013 if (!(res2 >= 0)) {
51014 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "WritableDatabase_set_metadata" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
51015 }
51016 if (!ptr) {
51017 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_set_metadata" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
51018 }
51019 arg2 = ptr;
51020 }
51021 {
51022 std::string *ptr = (std::string *)0;
51023 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
51024 if (!(res3 >= 0)) {
51025 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "WritableDatabase_set_metadata" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
51026 }
51027 if (!ptr) {
51028 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "WritableDatabase_set_metadata" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
51029 }
51030 arg3 = ptr;
51031 }
51032 {
51033 SWIG_Python_Thread_Allow _swig_thread_allow;
51034 {
51035 try {
51036 (arg1)->set_metadata((std::string const &)*arg2,(std::string const &)*arg3);
51037 } catch (...) {
51038 _swig_thread_allow.end();
51039 Xapian::SetPythonException();
51040 goto fail;
51041 }
51042 }
51043 _swig_thread_allow.end();
51044 }
51045 resultobj = SWIG_Py_Void();
51046 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
51047 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
51048 return resultobj;
51049fail:
51050 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
51051 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
51052 return __null;
51053}
51054static __attribute__ ((__unused__)) PyObject *_wrap_WritableDatabase___str__(PyObject *, PyObject *args) {
51055 PyObject *resultobj = 0;
51056 Xapian::WritableDatabase *arg1 = (Xapian::WritableDatabase *) 0 ;
51057 void *argp1 = 0 ;
51058 int res1 = 0 ;
51059 PyObject *swig_obj[1] ;
51060 std::string result;
51061 if (!args) goto fail;
51062 swig_obj[0] = args;
51063 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[66], 0 | 0, 0);
51064 if (!(res1 >= 0)) {
51065 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "WritableDatabase___str__" "', argument " "1"" of type '" "Xapian::WritableDatabase const *""'"); goto fail; } while(0);
51066 }
51067 arg1 = reinterpret_cast< Xapian::WritableDatabase * >(argp1);
51068 {
51069 SWIG_Python_Thread_Allow _swig_thread_allow;
51070 {
51071 try {
51072 result = ((Xapian::WritableDatabase const *)arg1)->get_description();
51073 } catch (...) {
51074 _swig_thread_allow.end();
51075 Xapian::SetPythonException();
51076 goto fail;
51077 }
51078 }
51079 _swig_thread_allow.end();
51080 }
51081 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
51082 return resultobj;
51083fail:
51084 return __null;
51085}
51086static __attribute__ ((__unused__)) PyObject *WritableDatabase_swigregister(PyObject *, PyObject *args) {
51087 PyObject *obj;
51088 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
51089 SWIG_TypeNewClientData(swig_types[66], SwigPyClientData_New(obj));
51090 return SWIG_Py_Void();
51091}
51092static __attribute__ ((__unused__)) PyObject *WritableDatabase_swiginit(PyObject *, PyObject *args) {
51093 return SWIG_Python_InitShadowInstance(args);
51094}
51095static __attribute__ ((__unused__)) PyObject *_wrap_open_stub(PyObject *, PyObject *args) {
51096 PyObject *resultobj = 0;
51097 std::string *arg1 = 0 ;
51098 int res1 = ((0)) ;
51099 PyObject *swig_obj[1] ;
51100 Xapian::Database result;
51101 if (!args) goto fail;
51102 swig_obj[0] = args;
51103 {
51104 std::string *ptr = (std::string *)0;
51105 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51106 if (!(res1 >= 0)) {
51107 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "open_stub" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51108 }
51109 if (!ptr) {
51110 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "open_stub" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51111 }
51112 arg1 = ptr;
51113 }
51114 {
51115 SWIG_Python_Thread_Allow _swig_thread_allow;
51116 {
51117 try {
51118 result = Xapian::Auto::open_stub((std::string const &)*arg1);
51119 } catch (...) {
51120 _swig_thread_allow.end();
51121 Xapian::SetPythonException();
51122 goto fail;
51123 }
51124 }
51125 _swig_thread_allow.end();
51126 }
51127 resultobj = SWIG_Python_NewPointerObj((new Xapian::Database(static_cast< const Xapian::Database& >(result))), swig_types[4], 0x1 | 0);
51128 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51129 return resultobj;
51130fail:
51131 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51132 return __null;
51133}
51134static __attribute__ ((__unused__)) PyObject *_wrap_brass_open__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
51135 PyObject *resultobj = 0;
51136 std::string *arg1 = 0 ;
51137 int res1 = ((0)) ;
51138 Xapian::Database result;
51139 if ((nobjs < 1) || (nobjs > 1)) goto fail;
51140 {
51141 std::string *ptr = (std::string *)0;
51142 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51143 if (!(res1 >= 0)) {
51144 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "brass_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51145 }
51146 if (!ptr) {
51147 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "brass_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51148 }
51149 arg1 = ptr;
51150 }
51151 {
51152 SWIG_Python_Thread_Allow _swig_thread_allow;
51153 {
51154 try {
51155 result = Xapian::Brass::open((std::string const &)*arg1);
51156 } catch (...) {
51157 _swig_thread_allow.end();
51158 Xapian::SetPythonException();
51159 goto fail;
51160 }
51161 }
51162 _swig_thread_allow.end();
51163 }
51164 resultobj = SWIG_Python_NewPointerObj((new Xapian::Database(static_cast< const Xapian::Database& >(result))), swig_types[4], 0x1 | 0);
51165 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51166 return resultobj;
51167fail:
51168 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51169 return __null;
51170}
51171static __attribute__ ((__unused__)) PyObject *_wrap_brass_open__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
51172 PyObject *resultobj = 0;
51173 std::string *arg1 = 0 ;
51174 int arg2 ;
51175 int arg3 ;
51176 int res1 = ((0)) ;
51177 int val2 ;
51178 int ecode2 = 0 ;
51179 int val3 ;
51180 int ecode3 = 0 ;
51181 Xapian::WritableDatabase result;
51182 if ((nobjs < 3) || (nobjs > 3)) goto fail;
51183 {
51184 std::string *ptr = (std::string *)0;
51185 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51186 if (!(res1 >= 0)) {
51187 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "brass_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51188 }
51189 if (!ptr) {
51190 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "brass_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51191 }
51192 arg1 = ptr;
51193 }
51194 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
51195 if (!(ecode2 >= 0)) {
51196 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "brass_open" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
51197 }
51198 arg2 = static_cast< int >(val2);
51199 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
51200 if (!(ecode3 >= 0)) {
51201 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "brass_open" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
51202 }
51203 arg3 = static_cast< int >(val3);
51204 {
51205 SWIG_Python_Thread_Allow _swig_thread_allow;
51206 {
51207 try {
51208 result = Xapian::Brass::open((std::string const &)*arg1,arg2,arg3);
51209 } catch (...) {
51210 _swig_thread_allow.end();
51211 Xapian::SetPythonException();
51212 goto fail;
51213 }
51214 }
51215 _swig_thread_allow.end();
51216 }
51217 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51218 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51219 return resultobj;
51220fail:
51221 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51222 return __null;
51223}
51224static __attribute__ ((__unused__)) PyObject *_wrap_brass_open__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
51225 PyObject *resultobj = 0;
51226 std::string *arg1 = 0 ;
51227 int arg2 ;
51228 int res1 = ((0)) ;
51229 int val2 ;
51230 int ecode2 = 0 ;
51231 Xapian::WritableDatabase result;
51232 if ((nobjs < 2) || (nobjs > 2)) goto fail;
51233 {
51234 std::string *ptr = (std::string *)0;
51235 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51236 if (!(res1 >= 0)) {
51237 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "brass_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51238 }
51239 if (!ptr) {
51240 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "brass_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51241 }
51242 arg1 = ptr;
51243 }
51244 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
51245 if (!(ecode2 >= 0)) {
51246 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "brass_open" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
51247 }
51248 arg2 = static_cast< int >(val2);
51249 {
51250 SWIG_Python_Thread_Allow _swig_thread_allow;
51251 {
51252 try {
51253 result = Xapian::Brass::open((std::string const &)*arg1,arg2);
51254 } catch (...) {
51255 _swig_thread_allow.end();
51256 Xapian::SetPythonException();
51257 goto fail;
51258 }
51259 }
51260 _swig_thread_allow.end();
51261 }
51262 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51263 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51264 return resultobj;
51265fail:
51266 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51267 return __null;
51268}
51269static __attribute__ ((__unused__)) PyObject *_wrap_brass_open(PyObject *self, PyObject *args) {
51270 int argc;
51271 PyObject *argv[4];
51272 if (!(argc = SWIG_Python_UnpackTuple(args,"brass_open",0,3,argv))) goto fail;
51273 --argc;
51274 if (argc == 1) {
51275 return _wrap_brass_open__SWIG_0(self, argc, argv);
51276 }
51277 if (argc == 2) {
51278 return _wrap_brass_open__SWIG_2(self, argc, argv);
51279 }
51280 if (argc == 3) {
51281 return _wrap_brass_open__SWIG_1(self, argc, argv);
51282 }
51283fail:
51284 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'brass_open'.\n"
51285 " Possible C/C++ prototypes are:\n"
51286 " Xapian::Brass::open(std::string const &)\n"
51287 " Xapian::Brass::open(std::string const &,int,int)\n"
51288 " Xapian::Brass::open(std::string const &,int)\n");
51289 return __null;
51290}
51291static __attribute__ ((__unused__)) PyObject *_wrap_chert_open__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
51292 PyObject *resultobj = 0;
51293 std::string *arg1 = 0 ;
51294 int res1 = ((0)) ;
51295 Xapian::Database result;
51296 if ((nobjs < 1) || (nobjs > 1)) goto fail;
51297 {
51298 std::string *ptr = (std::string *)0;
51299 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51300 if (!(res1 >= 0)) {
51301 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "chert_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51302 }
51303 if (!ptr) {
51304 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "chert_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51305 }
51306 arg1 = ptr;
51307 }
51308 {
51309 SWIG_Python_Thread_Allow _swig_thread_allow;
51310 {
51311 try {
51312 result = Xapian::Chert::open((std::string const &)*arg1);
51313 } catch (...) {
51314 _swig_thread_allow.end();
51315 Xapian::SetPythonException();
51316 goto fail;
51317 }
51318 }
51319 _swig_thread_allow.end();
51320 }
51321 resultobj = SWIG_Python_NewPointerObj((new Xapian::Database(static_cast< const Xapian::Database& >(result))), swig_types[4], 0x1 | 0);
51322 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51323 return resultobj;
51324fail:
51325 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51326 return __null;
51327}
51328static __attribute__ ((__unused__)) PyObject *_wrap_chert_open__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
51329 PyObject *resultobj = 0;
51330 std::string *arg1 = 0 ;
51331 int arg2 ;
51332 int arg3 ;
51333 int res1 = ((0)) ;
51334 int val2 ;
51335 int ecode2 = 0 ;
51336 int val3 ;
51337 int ecode3 = 0 ;
51338 Xapian::WritableDatabase result;
51339 if ((nobjs < 3) || (nobjs > 3)) goto fail;
51340 {
51341 std::string *ptr = (std::string *)0;
51342 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51343 if (!(res1 >= 0)) {
51344 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "chert_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51345 }
51346 if (!ptr) {
51347 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "chert_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51348 }
51349 arg1 = ptr;
51350 }
51351 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
51352 if (!(ecode2 >= 0)) {
51353 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "chert_open" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
51354 }
51355 arg2 = static_cast< int >(val2);
51356 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
51357 if (!(ecode3 >= 0)) {
51358 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "chert_open" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
51359 }
51360 arg3 = static_cast< int >(val3);
51361 {
51362 SWIG_Python_Thread_Allow _swig_thread_allow;
51363 {
51364 try {
51365 result = Xapian::Chert::open((std::string const &)*arg1,arg2,arg3);
51366 } catch (...) {
51367 _swig_thread_allow.end();
51368 Xapian::SetPythonException();
51369 goto fail;
51370 }
51371 }
51372 _swig_thread_allow.end();
51373 }
51374 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51375 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51376 return resultobj;
51377fail:
51378 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51379 return __null;
51380}
51381static __attribute__ ((__unused__)) PyObject *_wrap_chert_open__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
51382 PyObject *resultobj = 0;
51383 std::string *arg1 = 0 ;
51384 int arg2 ;
51385 int res1 = ((0)) ;
51386 int val2 ;
51387 int ecode2 = 0 ;
51388 Xapian::WritableDatabase result;
51389 if ((nobjs < 2) || (nobjs > 2)) goto fail;
51390 {
51391 std::string *ptr = (std::string *)0;
51392 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51393 if (!(res1 >= 0)) {
51394 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "chert_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51395 }
51396 if (!ptr) {
51397 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "chert_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51398 }
51399 arg1 = ptr;
51400 }
51401 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
51402 if (!(ecode2 >= 0)) {
51403 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "chert_open" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
51404 }
51405 arg2 = static_cast< int >(val2);
51406 {
51407 SWIG_Python_Thread_Allow _swig_thread_allow;
51408 {
51409 try {
51410 result = Xapian::Chert::open((std::string const &)*arg1,arg2);
51411 } catch (...) {
51412 _swig_thread_allow.end();
51413 Xapian::SetPythonException();
51414 goto fail;
51415 }
51416 }
51417 _swig_thread_allow.end();
51418 }
51419 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51420 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51421 return resultobj;
51422fail:
51423 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51424 return __null;
51425}
51426static __attribute__ ((__unused__)) PyObject *_wrap_chert_open(PyObject *self, PyObject *args) {
51427 int argc;
51428 PyObject *argv[4];
51429 if (!(argc = SWIG_Python_UnpackTuple(args,"chert_open",0,3,argv))) goto fail;
51430 --argc;
51431 if (argc == 1) {
51432 return _wrap_chert_open__SWIG_0(self, argc, argv);
51433 }
51434 if (argc == 2) {
51435 return _wrap_chert_open__SWIG_2(self, argc, argv);
51436 }
51437 if (argc == 3) {
51438 return _wrap_chert_open__SWIG_1(self, argc, argv);
51439 }
51440fail:
51441 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'chert_open'.\n"
51442 " Possible C/C++ prototypes are:\n"
51443 " Xapian::Chert::open(std::string const &)\n"
51444 " Xapian::Chert::open(std::string const &,int,int)\n"
51445 " Xapian::Chert::open(std::string const &,int)\n");
51446 return __null;
51447}
51448static __attribute__ ((__unused__)) PyObject *_wrap_flint_open__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
51449 PyObject *resultobj = 0;
51450 std::string *arg1 = 0 ;
51451 int res1 = ((0)) ;
51452 Xapian::Database result;
51453 if ((nobjs < 1) || (nobjs > 1)) goto fail;
51454 {
51455 std::string *ptr = (std::string *)0;
51456 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51457 if (!(res1 >= 0)) {
51458 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "flint_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51459 }
51460 if (!ptr) {
51461 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "flint_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51462 }
51463 arg1 = ptr;
51464 }
51465 {
51466 SWIG_Python_Thread_Allow _swig_thread_allow;
51467 {
51468 try {
51469 result = Xapian::Flint::open((std::string const &)*arg1);
51470 } catch (...) {
51471 _swig_thread_allow.end();
51472 Xapian::SetPythonException();
51473 goto fail;
51474 }
51475 }
51476 _swig_thread_allow.end();
51477 }
51478 resultobj = SWIG_Python_NewPointerObj((new Xapian::Database(static_cast< const Xapian::Database& >(result))), swig_types[4], 0x1 | 0);
51479 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51480 return resultobj;
51481fail:
51482 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51483 return __null;
51484}
51485static __attribute__ ((__unused__)) PyObject *_wrap_flint_open__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
51486 PyObject *resultobj = 0;
51487 std::string *arg1 = 0 ;
51488 int arg2 ;
51489 int arg3 ;
51490 int res1 = ((0)) ;
51491 int val2 ;
51492 int ecode2 = 0 ;
51493 int val3 ;
51494 int ecode3 = 0 ;
51495 Xapian::WritableDatabase result;
51496 if ((nobjs < 3) || (nobjs > 3)) goto fail;
51497 {
51498 std::string *ptr = (std::string *)0;
51499 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51500 if (!(res1 >= 0)) {
51501 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "flint_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51502 }
51503 if (!ptr) {
51504 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "flint_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51505 }
51506 arg1 = ptr;
51507 }
51508 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
51509 if (!(ecode2 >= 0)) {
51510 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "flint_open" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
51511 }
51512 arg2 = static_cast< int >(val2);
51513 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
51514 if (!(ecode3 >= 0)) {
51515 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "flint_open" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
51516 }
51517 arg3 = static_cast< int >(val3);
51518 {
51519 SWIG_Python_Thread_Allow _swig_thread_allow;
51520 {
51521 try {
51522 result = Xapian::Flint::open((std::string const &)*arg1,arg2,arg3);
51523 } catch (...) {
51524 _swig_thread_allow.end();
51525 Xapian::SetPythonException();
51526 goto fail;
51527 }
51528 }
51529 _swig_thread_allow.end();
51530 }
51531 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51532 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51533 return resultobj;
51534fail:
51535 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51536 return __null;
51537}
51538static __attribute__ ((__unused__)) PyObject *_wrap_flint_open__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
51539 PyObject *resultobj = 0;
51540 std::string *arg1 = 0 ;
51541 int arg2 ;
51542 int res1 = ((0)) ;
51543 int val2 ;
51544 int ecode2 = 0 ;
51545 Xapian::WritableDatabase result;
51546 if ((nobjs < 2) || (nobjs > 2)) goto fail;
51547 {
51548 std::string *ptr = (std::string *)0;
51549 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51550 if (!(res1 >= 0)) {
51551 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "flint_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51552 }
51553 if (!ptr) {
51554 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "flint_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51555 }
51556 arg1 = ptr;
51557 }
51558 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
51559 if (!(ecode2 >= 0)) {
51560 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "flint_open" "', argument " "2"" of type '" "int""'"); goto fail; } while(0);
51561 }
51562 arg2 = static_cast< int >(val2);
51563 {
51564 SWIG_Python_Thread_Allow _swig_thread_allow;
51565 {
51566 try {
51567 result = Xapian::Flint::open((std::string const &)*arg1,arg2);
51568 } catch (...) {
51569 _swig_thread_allow.end();
51570 Xapian::SetPythonException();
51571 goto fail;
51572 }
51573 }
51574 _swig_thread_allow.end();
51575 }
51576 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51577 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51578 return resultobj;
51579fail:
51580 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51581 return __null;
51582}
51583static __attribute__ ((__unused__)) PyObject *_wrap_flint_open(PyObject *self, PyObject *args) {
51584 int argc;
51585 PyObject *argv[4];
51586 if (!(argc = SWIG_Python_UnpackTuple(args,"flint_open",0,3,argv))) goto fail;
51587 --argc;
51588 if (argc == 1) {
51589 return _wrap_flint_open__SWIG_0(self, argc, argv);
51590 }
51591 if (argc == 2) {
51592 return _wrap_flint_open__SWIG_2(self, argc, argv);
51593 }
51594 if (argc == 3) {
51595 return _wrap_flint_open__SWIG_1(self, argc, argv);
51596 }
51597fail:
51598 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'flint_open'.\n"
51599 " Possible C/C++ prototypes are:\n"
51600 " Xapian::Flint::open(std::string const &)\n"
51601 " Xapian::Flint::open(std::string const &,int,int)\n"
51602 " Xapian::Flint::open(std::string const &,int)\n");
51603 return __null;
51604}
51605static __attribute__ ((__unused__)) PyObject *_wrap_inmemory_open(PyObject *, PyObject *args) {
51606 PyObject *resultobj = 0;
51607 Xapian::WritableDatabase result;
51608 if (!SWIG_Python_UnpackTuple(args,"inmemory_open",0,0,0)) goto fail;
51609 {
51610 SWIG_Python_Thread_Allow _swig_thread_allow;
51611 {
51612 try {
51613 result = Xapian::InMemory::open();
51614 } catch (...) {
51615 _swig_thread_allow.end();
51616 Xapian::SetPythonException();
51617 goto fail;
51618 }
51619 }
51620 _swig_thread_allow.end();
51621 }
51622 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51623 return resultobj;
51624fail:
51625 return __null;
51626}
51627static __attribute__ ((__unused__)) PyObject *_wrap_remote_open__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
51628 PyObject *resultobj = 0;
51629 std::string *arg1 = 0 ;
51630 unsigned int arg2 ;
51631 Xapian::timeout arg3 ;
51632 Xapian::timeout arg4 ;
51633 int res1 = ((0)) ;
51634 unsigned int val2 ;
51635 int ecode2 = 0 ;
51636 unsigned int val3 ;
51637 int ecode3 = 0 ;
51638 unsigned int val4 ;
51639 int ecode4 = 0 ;
51640 Xapian::Database result;
51641 if ((nobjs < 4) || (nobjs > 4)) goto fail;
51642 {
51643 std::string *ptr = (std::string *)0;
51644 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51645 if (!(res1 >= 0)) {
51646 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51647 }
51648 if (!ptr) {
51649 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51650 }
51651 arg1 = ptr;
51652 }
51653 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
51654 if (!(ecode2 >= 0)) {
51655 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "remote_open" "', argument " "2"" of type '" "unsigned int""'"); goto fail; } while(0);
51656 }
51657 arg2 = static_cast< unsigned int >(val2);
51658 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
51659 if (!(ecode3 >= 0)) {
51660 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "remote_open" "', argument " "3"" of type '" "Xapian::timeout""'"); goto fail; } while(0);
51661 }
51662 arg3 = static_cast< Xapian::timeout >(val3);
51663 ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4);
51664 if (!(ecode4 >= 0)) {
51665 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "remote_open" "', argument " "4"" of type '" "Xapian::timeout""'"); goto fail; } while(0);
51666 }
51667 arg4 = static_cast< Xapian::timeout >(val4);
51668 {
51669 SWIG_Python_Thread_Allow _swig_thread_allow;
51670 {
51671 try {
51672 result = Xapian::Remote::open((std::string const &)*arg1,arg2,arg3,arg4);
51673 } catch (...) {
51674 _swig_thread_allow.end();
51675 Xapian::SetPythonException();
51676 goto fail;
51677 }
51678 }
51679 _swig_thread_allow.end();
51680 }
51681 resultobj = SWIG_Python_NewPointerObj((new Xapian::Database(static_cast< const Xapian::Database& >(result))), swig_types[4], 0x1 | 0);
51682 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51683 return resultobj;
51684fail:
51685 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51686 return __null;
51687}
51688static __attribute__ ((__unused__)) PyObject *_wrap_remote_open__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
51689 PyObject *resultobj = 0;
51690 std::string *arg1 = 0 ;
51691 unsigned int arg2 ;
51692 Xapian::timeout arg3 ;
51693 int res1 = ((0)) ;
51694 unsigned int val2 ;
51695 int ecode2 = 0 ;
51696 unsigned int val3 ;
51697 int ecode3 = 0 ;
51698 Xapian::Database result;
51699 if ((nobjs < 3) || (nobjs > 3)) goto fail;
51700 {
51701 std::string *ptr = (std::string *)0;
51702 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51703 if (!(res1 >= 0)) {
51704 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51705 }
51706 if (!ptr) {
51707 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51708 }
51709 arg1 = ptr;
51710 }
51711 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
51712 if (!(ecode2 >= 0)) {
51713 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "remote_open" "', argument " "2"" of type '" "unsigned int""'"); goto fail; } while(0);
51714 }
51715 arg2 = static_cast< unsigned int >(val2);
51716 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
51717 if (!(ecode3 >= 0)) {
51718 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "remote_open" "', argument " "3"" of type '" "Xapian::timeout""'"); goto fail; } while(0);
51719 }
51720 arg3 = static_cast< Xapian::timeout >(val3);
51721 {
51722 SWIG_Python_Thread_Allow _swig_thread_allow;
51723 {
51724 try {
51725 result = Xapian::Remote::open((std::string const &)*arg1,arg2,arg3);
51726 } catch (...) {
51727 _swig_thread_allow.end();
51728 Xapian::SetPythonException();
51729 goto fail;
51730 }
51731 }
51732 _swig_thread_allow.end();
51733 }
51734 resultobj = SWIG_Python_NewPointerObj((new Xapian::Database(static_cast< const Xapian::Database& >(result))), swig_types[4], 0x1 | 0);
51735 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51736 return resultobj;
51737fail:
51738 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51739 return __null;
51740}
51741static __attribute__ ((__unused__)) PyObject *_wrap_remote_open__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
51742 PyObject *resultobj = 0;
51743 std::string *arg1 = 0 ;
51744 unsigned int arg2 ;
51745 int res1 = ((0)) ;
51746 unsigned int val2 ;
51747 int ecode2 = 0 ;
51748 Xapian::Database result;
51749 if ((nobjs < 2) || (nobjs > 2)) goto fail;
51750 {
51751 std::string *ptr = (std::string *)0;
51752 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51753 if (!(res1 >= 0)) {
51754 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51755 }
51756 if (!ptr) {
51757 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51758 }
51759 arg1 = ptr;
51760 }
51761 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
51762 if (!(ecode2 >= 0)) {
51763 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "remote_open" "', argument " "2"" of type '" "unsigned int""'"); goto fail; } while(0);
51764 }
51765 arg2 = static_cast< unsigned int >(val2);
51766 {
51767 SWIG_Python_Thread_Allow _swig_thread_allow;
51768 {
51769 try {
51770 result = Xapian::Remote::open((std::string const &)*arg1,arg2);
51771 } catch (...) {
51772 _swig_thread_allow.end();
51773 Xapian::SetPythonException();
51774 goto fail;
51775 }
51776 }
51777 _swig_thread_allow.end();
51778 }
51779 resultobj = SWIG_Python_NewPointerObj((new Xapian::Database(static_cast< const Xapian::Database& >(result))), swig_types[4], 0x1 | 0);
51780 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51781 return resultobj;
51782fail:
51783 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51784 return __null;
51785}
51786static __attribute__ ((__unused__)) PyObject *_wrap_remote_open_writable__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
51787 PyObject *resultobj = 0;
51788 std::string *arg1 = 0 ;
51789 unsigned int arg2 ;
51790 Xapian::timeout arg3 ;
51791 Xapian::timeout arg4 ;
51792 int res1 = ((0)) ;
51793 unsigned int val2 ;
51794 int ecode2 = 0 ;
51795 unsigned int val3 ;
51796 int ecode3 = 0 ;
51797 unsigned int val4 ;
51798 int ecode4 = 0 ;
51799 Xapian::WritableDatabase result;
51800 if ((nobjs < 4) || (nobjs > 4)) goto fail;
51801 {
51802 std::string *ptr = (std::string *)0;
51803 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51804 if (!(res1 >= 0)) {
51805 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51806 }
51807 if (!ptr) {
51808 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51809 }
51810 arg1 = ptr;
51811 }
51812 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
51813 if (!(ecode2 >= 0)) {
51814 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "remote_open_writable" "', argument " "2"" of type '" "unsigned int""'"); goto fail; } while(0);
51815 }
51816 arg2 = static_cast< unsigned int >(val2);
51817 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
51818 if (!(ecode3 >= 0)) {
51819 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "remote_open_writable" "', argument " "3"" of type '" "Xapian::timeout""'"); goto fail; } while(0);
51820 }
51821 arg3 = static_cast< Xapian::timeout >(val3);
51822 ecode4 = SWIG_AsVal_unsigned_SS_int(swig_obj[3], &val4);
51823 if (!(ecode4 >= 0)) {
51824 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "remote_open_writable" "', argument " "4"" of type '" "Xapian::timeout""'"); goto fail; } while(0);
51825 }
51826 arg4 = static_cast< Xapian::timeout >(val4);
51827 {
51828 SWIG_Python_Thread_Allow _swig_thread_allow;
51829 {
51830 try {
51831 result = Xapian::Remote::open_writable((std::string const &)*arg1,arg2,arg3,arg4);
51832 } catch (...) {
51833 _swig_thread_allow.end();
51834 Xapian::SetPythonException();
51835 goto fail;
51836 }
51837 }
51838 _swig_thread_allow.end();
51839 }
51840 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51841 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51842 return resultobj;
51843fail:
51844 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51845 return __null;
51846}
51847static __attribute__ ((__unused__)) PyObject *_wrap_remote_open_writable__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
51848 PyObject *resultobj = 0;
51849 std::string *arg1 = 0 ;
51850 unsigned int arg2 ;
51851 Xapian::timeout arg3 ;
51852 int res1 = ((0)) ;
51853 unsigned int val2 ;
51854 int ecode2 = 0 ;
51855 unsigned int val3 ;
51856 int ecode3 = 0 ;
51857 Xapian::WritableDatabase result;
51858 if ((nobjs < 3) || (nobjs > 3)) goto fail;
51859 {
51860 std::string *ptr = (std::string *)0;
51861 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51862 if (!(res1 >= 0)) {
51863 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51864 }
51865 if (!ptr) {
51866 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51867 }
51868 arg1 = ptr;
51869 }
51870 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
51871 if (!(ecode2 >= 0)) {
51872 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "remote_open_writable" "', argument " "2"" of type '" "unsigned int""'"); goto fail; } while(0);
51873 }
51874 arg2 = static_cast< unsigned int >(val2);
51875 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
51876 if (!(ecode3 >= 0)) {
51877 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "remote_open_writable" "', argument " "3"" of type '" "Xapian::timeout""'"); goto fail; } while(0);
51878 }
51879 arg3 = static_cast< Xapian::timeout >(val3);
51880 {
51881 SWIG_Python_Thread_Allow _swig_thread_allow;
51882 {
51883 try {
51884 result = Xapian::Remote::open_writable((std::string const &)*arg1,arg2,arg3);
51885 } catch (...) {
51886 _swig_thread_allow.end();
51887 Xapian::SetPythonException();
51888 goto fail;
51889 }
51890 }
51891 _swig_thread_allow.end();
51892 }
51893 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51894 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51895 return resultobj;
51896fail:
51897 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51898 return __null;
51899}
51900static __attribute__ ((__unused__)) PyObject *_wrap_remote_open_writable__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
51901 PyObject *resultobj = 0;
51902 std::string *arg1 = 0 ;
51903 unsigned int arg2 ;
51904 int res1 = ((0)) ;
51905 unsigned int val2 ;
51906 int ecode2 = 0 ;
51907 Xapian::WritableDatabase result;
51908 if ((nobjs < 2) || (nobjs > 2)) goto fail;
51909 {
51910 std::string *ptr = (std::string *)0;
51911 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51912 if (!(res1 >= 0)) {
51913 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51914 }
51915 if (!ptr) {
51916 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51917 }
51918 arg1 = ptr;
51919 }
51920 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
51921 if (!(ecode2 >= 0)) {
51922 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "remote_open_writable" "', argument " "2"" of type '" "unsigned int""'"); goto fail; } while(0);
51923 }
51924 arg2 = static_cast< unsigned int >(val2);
51925 {
51926 SWIG_Python_Thread_Allow _swig_thread_allow;
51927 {
51928 try {
51929 result = Xapian::Remote::open_writable((std::string const &)*arg1,arg2);
51930 } catch (...) {
51931 _swig_thread_allow.end();
51932 Xapian::SetPythonException();
51933 goto fail;
51934 }
51935 }
51936 _swig_thread_allow.end();
51937 }
51938 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
51939 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51940 return resultobj;
51941fail:
51942 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51943 return __null;
51944}
51945static __attribute__ ((__unused__)) PyObject *_wrap_remote_open__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
51946 PyObject *resultobj = 0;
51947 std::string *arg1 = 0 ;
51948 std::string *arg2 = 0 ;
51949 Xapian::timeout arg3 ;
51950 int res1 = ((0)) ;
51951 int res2 = ((0)) ;
51952 unsigned int val3 ;
51953 int ecode3 = 0 ;
51954 Xapian::Database result;
51955 if ((nobjs < 3) || (nobjs > 3)) goto fail;
51956 {
51957 std::string *ptr = (std::string *)0;
51958 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
51959 if (!(res1 >= 0)) {
51960 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51961 }
51962 if (!ptr) {
51963 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
51964 }
51965 arg1 = ptr;
51966 }
51967 {
51968 std::string *ptr = (std::string *)0;
51969 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
51970 if (!(res2 >= 0)) {
51971 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "remote_open" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
51972 }
51973 if (!ptr) {
51974 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
51975 }
51976 arg2 = ptr;
51977 }
51978 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
51979 if (!(ecode3 >= 0)) {
51980 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "remote_open" "', argument " "3"" of type '" "Xapian::timeout""'"); goto fail; } while(0);
51981 }
51982 arg3 = static_cast< Xapian::timeout >(val3);
51983 {
51984 SWIG_Python_Thread_Allow _swig_thread_allow;
51985 {
51986 try {
51987 result = Xapian::Remote::open((std::string const &)*arg1,(std::string const &)*arg2,arg3);
51988 } catch (...) {
51989 _swig_thread_allow.end();
51990 Xapian::SetPythonException();
51991 goto fail;
51992 }
51993 }
51994 _swig_thread_allow.end();
51995 }
51996 resultobj = SWIG_Python_NewPointerObj((new Xapian::Database(static_cast< const Xapian::Database& >(result))), swig_types[4], 0x1 | 0);
51997 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
51998 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
51999 return resultobj;
52000fail:
52001 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52002 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
52003 return __null;
52004}
52005static __attribute__ ((__unused__)) PyObject *_wrap_remote_open__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
52006 PyObject *resultobj = 0;
52007 std::string *arg1 = 0 ;
52008 std::string *arg2 = 0 ;
52009 int res1 = ((0)) ;
52010 int res2 = ((0)) ;
52011 Xapian::Database result;
52012 if ((nobjs < 2) || (nobjs > 2)) goto fail;
52013 {
52014 std::string *ptr = (std::string *)0;
52015 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
52016 if (!(res1 >= 0)) {
52017 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52018 }
52019 if (!ptr) {
52020 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52021 }
52022 arg1 = ptr;
52023 }
52024 {
52025 std::string *ptr = (std::string *)0;
52026 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
52027 if (!(res2 >= 0)) {
52028 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "remote_open" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
52029 }
52030 if (!ptr) {
52031 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
52032 }
52033 arg2 = ptr;
52034 }
52035 {
52036 SWIG_Python_Thread_Allow _swig_thread_allow;
52037 {
52038 try {
52039 result = Xapian::Remote::open((std::string const &)*arg1,(std::string const &)*arg2);
52040 } catch (...) {
52041 _swig_thread_allow.end();
52042 Xapian::SetPythonException();
52043 goto fail;
52044 }
52045 }
52046 _swig_thread_allow.end();
52047 }
52048 resultobj = SWIG_Python_NewPointerObj((new Xapian::Database(static_cast< const Xapian::Database& >(result))), swig_types[4], 0x1 | 0);
52049 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52050 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
52051 return resultobj;
52052fail:
52053 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52054 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
52055 return __null;
52056}
52057static __attribute__ ((__unused__)) PyObject *_wrap_remote_open(PyObject *self, PyObject *args) {
52058 int argc;
52059 PyObject *argv[5];
52060 if (!(argc = SWIG_Python_UnpackTuple(args,"remote_open",0,4,argv))) goto fail;
52061 --argc;
52062 if (argc == 2) {
52063 int _v = 0;
52064 {
52065 {
52066 int res = SWIG_AsVal_unsigned_SS_int(argv[1], __null);
52067 _v = ((res >= 0) ? 1 : 0);
52068 }
52069 }
52070 if (!_v) goto check_1;
52071 return _wrap_remote_open__SWIG_2(self, argc, argv);
52072 }
52073check_1:
52074 if (argc == 2) {
52075 return _wrap_remote_open__SWIG_4(self, argc, argv);
52076 }
52077 if (argc == 3) {
52078 int _v = 0;
52079 {
52080 {
52081 int res = SWIG_AsVal_unsigned_SS_int(argv[1], __null);
52082 _v = ((res >= 0) ? 1 : 0);
52083 }
52084 }
52085 if (!_v) goto check_3;
52086 return _wrap_remote_open__SWIG_1(self, argc, argv);
52087 }
52088check_3:
52089 if (argc == 3) {
52090 return _wrap_remote_open__SWIG_3(self, argc, argv);
52091 }
52092 if (argc == 4) {
52093 return _wrap_remote_open__SWIG_0(self, argc, argv);
52094 }
52095fail:
52096 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'remote_open'.\n"
52097 " Possible C/C++ prototypes are:\n"
52098 " Xapian::Remote::open(std::string const &,unsigned int,Xapian::timeout,Xapian::timeout)\n"
52099 " Xapian::Remote::open(std::string const &,unsigned int,Xapian::timeout)\n"
52100 " Xapian::Remote::open(std::string const &,unsigned int)\n"
52101 " Xapian::Remote::open(std::string const &,std::string const &,Xapian::timeout)\n"
52102 " Xapian::Remote::open(std::string const &,std::string const &)\n");
52103 return __null;
52104}
52105static __attribute__ ((__unused__)) PyObject *_wrap_remote_open_writable__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
52106 PyObject *resultobj = 0;
52107 std::string *arg1 = 0 ;
52108 std::string *arg2 = 0 ;
52109 Xapian::timeout arg3 ;
52110 int res1 = ((0)) ;
52111 int res2 = ((0)) ;
52112 unsigned int val3 ;
52113 int ecode3 = 0 ;
52114 Xapian::WritableDatabase result;
52115 if ((nobjs < 3) || (nobjs > 3)) goto fail;
52116 {
52117 std::string *ptr = (std::string *)0;
52118 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
52119 if (!(res1 >= 0)) {
52120 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52121 }
52122 if (!ptr) {
52123 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52124 }
52125 arg1 = ptr;
52126 }
52127 {
52128 std::string *ptr = (std::string *)0;
52129 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
52130 if (!(res2 >= 0)) {
52131 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "remote_open_writable" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
52132 }
52133 if (!ptr) {
52134 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open_writable" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
52135 }
52136 arg2 = ptr;
52137 }
52138 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
52139 if (!(ecode3 >= 0)) {
52140 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "remote_open_writable" "', argument " "3"" of type '" "Xapian::timeout""'"); goto fail; } while(0);
52141 }
52142 arg3 = static_cast< Xapian::timeout >(val3);
52143 {
52144 SWIG_Python_Thread_Allow _swig_thread_allow;
52145 {
52146 try {
52147 result = Xapian::Remote::open_writable((std::string const &)*arg1,(std::string const &)*arg2,arg3);
52148 } catch (...) {
52149 _swig_thread_allow.end();
52150 Xapian::SetPythonException();
52151 goto fail;
52152 }
52153 }
52154 _swig_thread_allow.end();
52155 }
52156 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
52157 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52158 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
52159 return resultobj;
52160fail:
52161 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52162 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
52163 return __null;
52164}
52165static __attribute__ ((__unused__)) PyObject *_wrap_remote_open_writable__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
52166 PyObject *resultobj = 0;
52167 std::string *arg1 = 0 ;
52168 std::string *arg2 = 0 ;
52169 int res1 = ((0)) ;
52170 int res2 = ((0)) ;
52171 Xapian::WritableDatabase result;
52172 if ((nobjs < 2) || (nobjs > 2)) goto fail;
52173 {
52174 std::string *ptr = (std::string *)0;
52175 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
52176 if (!(res1 >= 0)) {
52177 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52178 }
52179 if (!ptr) {
52180 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open_writable" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52181 }
52182 arg1 = ptr;
52183 }
52184 {
52185 std::string *ptr = (std::string *)0;
52186 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
52187 if (!(res2 >= 0)) {
52188 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "remote_open_writable" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
52189 }
52190 if (!ptr) {
52191 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "remote_open_writable" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
52192 }
52193 arg2 = ptr;
52194 }
52195 {
52196 SWIG_Python_Thread_Allow _swig_thread_allow;
52197 {
52198 try {
52199 result = Xapian::Remote::open_writable((std::string const &)*arg1,(std::string const &)*arg2);
52200 } catch (...) {
52201 _swig_thread_allow.end();
52202 Xapian::SetPythonException();
52203 goto fail;
52204 }
52205 }
52206 _swig_thread_allow.end();
52207 }
52208 resultobj = SWIG_Python_NewPointerObj((new Xapian::WritableDatabase(static_cast< const Xapian::WritableDatabase& >(result))), swig_types[66], 0x1 | 0);
52209 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52210 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
52211 return resultobj;
52212fail:
52213 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52214 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
52215 return __null;
52216}
52217static __attribute__ ((__unused__)) PyObject *_wrap_remote_open_writable(PyObject *self, PyObject *args) {
52218 int argc;
52219 PyObject *argv[5];
52220 if (!(argc = SWIG_Python_UnpackTuple(args,"remote_open_writable",0,4,argv))) goto fail;
52221 --argc;
52222 if (argc == 2) {
52223 int _v = 0;
52224 {
52225 {
52226 int res = SWIG_AsVal_unsigned_SS_int(argv[1], __null);
52227 _v = ((res >= 0) ? 1 : 0);
52228 }
52229 }
52230 if (!_v) goto check_1;
52231 return _wrap_remote_open_writable__SWIG_2(self, argc, argv);
52232 }
52233check_1:
52234 if (argc == 2) {
52235 return _wrap_remote_open_writable__SWIG_4(self, argc, argv);
52236 }
52237 if (argc == 3) {
52238 int _v = 0;
52239 {
52240 {
52241 int res = SWIG_AsVal_unsigned_SS_int(argv[1], __null);
52242 _v = ((res >= 0) ? 1 : 0);
52243 }
52244 }
52245 if (!_v) goto check_3;
52246 return _wrap_remote_open_writable__SWIG_1(self, argc, argv);
52247 }
52248check_3:
52249 if (argc == 3) {
52250 return _wrap_remote_open_writable__SWIG_3(self, argc, argv);
52251 }
52252 if (argc == 4) {
52253 return _wrap_remote_open_writable__SWIG_0(self, argc, argv);
52254 }
52255fail:
52256 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'remote_open_writable'.\n"
52257 " Possible C/C++ prototypes are:\n"
52258 " Xapian::Remote::open_writable(std::string const &,unsigned int,Xapian::timeout,Xapian::timeout)\n"
52259 " Xapian::Remote::open_writable(std::string const &,unsigned int,Xapian::timeout)\n"
52260 " Xapian::Remote::open_writable(std::string const &,unsigned int)\n"
52261 " Xapian::Remote::open_writable(std::string const &,std::string const &,Xapian::timeout)\n"
52262 " Xapian::Remote::open_writable(std::string const &,std::string const &)\n");
52263 return __null;
52264}
52265static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
52266 PyObject *resultobj = 0;
52267 Xapian::Query *arg1 = 0 ;
52268 void *argp1 = 0 ;
52269 int res1 = 0 ;
52270 Xapian::Query *result = 0 ;
52271 if ((nobjs < 1) || (nobjs > 1)) goto fail;
52272 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[40], 0 | 0, 0);
52273 if (!(res1 >= 0)) {
52274 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
52275 }
52276 if (!argp1) {
52277 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
52278 }
52279 arg1 = reinterpret_cast< Xapian::Query * >(argp1);
52280 {
52281 SWIG_Python_Thread_Allow _swig_thread_allow;
52282 {
52283 try {
52284 result = (Xapian::Query *)new Xapian::Query((Xapian::Query const &)*arg1);
52285 } catch (...) {
52286 _swig_thread_allow.end();
52287 Xapian::SetPythonException();
52288 goto fail;
52289 }
52290 }
52291 _swig_thread_allow.end();
52292 }
52293 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52294 return resultobj;
52295fail:
52296 return __null;
52297}
52298static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_1(PyObject *, int nobjs, PyObject **) {
52299 PyObject *resultobj = 0;
52300 Xapian::Query *result = 0 ;
52301 if ((nobjs < 0) || (nobjs > 0)) goto fail;
52302 {
52303 SWIG_Python_Thread_Allow _swig_thread_allow;
52304 {
52305 try {
52306 result = (Xapian::Query *)new Xapian::Query();
52307 } catch (...) {
52308 _swig_thread_allow.end();
52309 Xapian::SetPythonException();
52310 goto fail;
52311 }
52312 }
52313 _swig_thread_allow.end();
52314 }
52315 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52316 return resultobj;
52317fail:
52318 return __null;
52319}
52320static __attribute__ ((__unused__)) PyObject *_wrap_delete_Query(PyObject *, PyObject *args) {
52321 PyObject *resultobj = 0;
52322 Xapian::Query *arg1 = (Xapian::Query *) 0 ;
52323 void *argp1 = 0 ;
52324 int res1 = 0 ;
52325 PyObject *swig_obj[1] ;
52326 if (!args) goto fail;
52327 swig_obj[0] = args;
52328 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[40], 0x1 | 0, 0);
52329 if (!(res1 >= 0)) {
52330 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Query" "', argument " "1"" of type '" "Xapian::Query *""'"); goto fail; } while(0);
52331 }
52332 arg1 = reinterpret_cast< Xapian::Query * >(argp1);
52333 {
52334 SWIG_Python_Thread_Allow _swig_thread_allow;
52335 {
52336 try {
52337 delete arg1;
52338 } catch (...) {
52339 _swig_thread_allow.end();
52340 Xapian::SetPythonException();
52341 goto fail;
52342 }
52343 }
52344 _swig_thread_allow.end();
52345 }
52346 resultobj = SWIG_Py_Void();
52347 return resultobj;
52348fail:
52349 return __null;
52350}
52351static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
52352 PyObject *resultobj = 0;
52353 std::string *arg1 = 0 ;
52354 Xapian::termcount arg2 ;
52355 Xapian::termpos arg3 ;
52356 int res1 = ((0)) ;
52357 unsigned int val2 ;
52358 int ecode2 = 0 ;
52359 unsigned int val3 ;
52360 int ecode3 = 0 ;
52361 Xapian::Query *result = 0 ;
52362 if ((nobjs < 3) || (nobjs > 3)) goto fail;
52363 {
52364 std::string *ptr = (std::string *)0;
52365 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
52366 if (!(res1 >= 0)) {
52367 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52368 }
52369 if (!ptr) {
52370 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52371 }
52372 arg1 = ptr;
52373 }
52374 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
52375 if (!(ecode2 >= 0)) {
52376 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_Query" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
52377 }
52378 arg2 = static_cast< Xapian::termcount >(val2);
52379 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
52380 if (!(ecode3 >= 0)) {
52381 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_Query" "', argument " "3"" of type '" "Xapian::termpos""'"); goto fail; } while(0);
52382 }
52383 arg3 = static_cast< Xapian::termpos >(val3);
52384 {
52385 SWIG_Python_Thread_Allow _swig_thread_allow;
52386 {
52387 try {
52388 result = (Xapian::Query *)new Xapian::Query((std::string const &)*arg1,arg2,arg3);
52389 } catch (...) {
52390 _swig_thread_allow.end();
52391 Xapian::SetPythonException();
52392 goto fail;
52393 }
52394 }
52395 _swig_thread_allow.end();
52396 }
52397 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52398 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52399 return resultobj;
52400fail:
52401 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52402 return __null;
52403}
52404static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
52405 PyObject *resultobj = 0;
52406 std::string *arg1 = 0 ;
52407 Xapian::termcount arg2 ;
52408 int res1 = ((0)) ;
52409 unsigned int val2 ;
52410 int ecode2 = 0 ;
52411 Xapian::Query *result = 0 ;
52412 if ((nobjs < 2) || (nobjs > 2)) goto fail;
52413 {
52414 std::string *ptr = (std::string *)0;
52415 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
52416 if (!(res1 >= 0)) {
52417 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52418 }
52419 if (!ptr) {
52420 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52421 }
52422 arg1 = ptr;
52423 }
52424 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
52425 if (!(ecode2 >= 0)) {
52426 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_Query" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
52427 }
52428 arg2 = static_cast< Xapian::termcount >(val2);
52429 {
52430 SWIG_Python_Thread_Allow _swig_thread_allow;
52431 {
52432 try {
52433 result = (Xapian::Query *)new Xapian::Query((std::string const &)*arg1,arg2);
52434 } catch (...) {
52435 _swig_thread_allow.end();
52436 Xapian::SetPythonException();
52437 goto fail;
52438 }
52439 }
52440 _swig_thread_allow.end();
52441 }
52442 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52443 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52444 return resultobj;
52445fail:
52446 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52447 return __null;
52448}
52449static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
52450 PyObject *resultobj = 0;
52451 std::string *arg1 = 0 ;
52452 int res1 = ((0)) ;
52453 Xapian::Query *result = 0 ;
52454 if ((nobjs < 1) || (nobjs > 1)) goto fail;
52455 {
52456 std::string *ptr = (std::string *)0;
52457 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
52458 if (!(res1 >= 0)) {
52459 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52460 }
52461 if (!ptr) {
52462 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52463 }
52464 arg1 = ptr;
52465 }
52466 {
52467 SWIG_Python_Thread_Allow _swig_thread_allow;
52468 {
52469 try {
52470 result = (Xapian::Query *)new Xapian::Query((std::string const &)*arg1);
52471 } catch (...) {
52472 _swig_thread_allow.end();
52473 Xapian::SetPythonException();
52474 goto fail;
52475 }
52476 }
52477 _swig_thread_allow.end();
52478 }
52479 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52480 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52481 return resultobj;
52482fail:
52483 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52484 return __null;
52485}
52486static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_5(PyObject *, int nobjs, PyObject **swig_obj) {
52487 PyObject *resultobj = 0;
52488 Xapian::Query::op arg1 ;
52489 Xapian::Query *arg2 = 0 ;
52490 Xapian::Query *arg3 = 0 ;
52491 int val1 ;
52492 int ecode1 = 0 ;
52493 void *argp2 = 0 ;
52494 int res2 = 0 ;
52495 void *argp3 = 0 ;
52496 int res3 = 0 ;
52497 Xapian::Query *result = 0 ;
52498 if ((nobjs < 3) || (nobjs > 3)) goto fail;
52499 ecode1 = SWIG_AsVal_int(swig_obj[0], &val1);
52500 if (!(ecode1 >= 0)) {
52501 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::Query::op""'"); goto fail; } while(0);
52502 }
52503 arg1 = static_cast< Xapian::Query::op >(val1);
52504 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[40], 0 | 0, 0);
52505 if (!(res2 >= 0)) {
52506 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_Query" "', argument " "2"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
52507 }
52508 if (!argp2) {
52509 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "2"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
52510 }
52511 arg2 = reinterpret_cast< Xapian::Query * >(argp2);
52512 res3 = SWIG_Python_ConvertPtrAndOwn(swig_obj[2], &argp3, swig_types[40], 0 | 0, 0);
52513 if (!(res3 >= 0)) {
52514 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_Query" "', argument " "3"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
52515 }
52516 if (!argp3) {
52517 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "3"" of type '" "Xapian::Query const &""'"); goto fail; } while(0);
52518 }
52519 arg3 = reinterpret_cast< Xapian::Query * >(argp3);
52520 {
52521 SWIG_Python_Thread_Allow _swig_thread_allow;
52522 {
52523 try {
52524 result = (Xapian::Query *)new Xapian::Query(arg1,(Xapian::Query const &)*arg2,(Xapian::Query const &)*arg3);
52525 } catch (...) {
52526 _swig_thread_allow.end();
52527 Xapian::SetPythonException();
52528 goto fail;
52529 }
52530 }
52531 _swig_thread_allow.end();
52532 }
52533 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52534 return resultobj;
52535fail:
52536 return __null;
52537}
52538static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_6(PyObject *, int nobjs, PyObject **swig_obj) {
52539 PyObject *resultobj = 0;
52540 Xapian::Query::op arg1 ;
52541 std::string *arg2 = 0 ;
52542 std::string *arg3 = 0 ;
52543 int val1 ;
52544 int ecode1 = 0 ;
52545 int res2 = ((0)) ;
52546 int res3 = ((0)) ;
52547 Xapian::Query *result = 0 ;
52548 if ((nobjs < 3) || (nobjs > 3)) goto fail;
52549 ecode1 = SWIG_AsVal_int(swig_obj[0], &val1);
52550 if (!(ecode1 >= 0)) {
52551 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::Query::op""'"); goto fail; } while(0);
52552 }
52553 arg1 = static_cast< Xapian::Query::op >(val1);
52554 {
52555 std::string *ptr = (std::string *)0;
52556 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
52557 if (!(res2 >= 0)) {
52558 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_Query" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
52559 }
52560 if (!ptr) {
52561 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
52562 }
52563 arg2 = ptr;
52564 }
52565 {
52566 std::string *ptr = (std::string *)0;
52567 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
52568 if (!(res3 >= 0)) {
52569 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_Query" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
52570 }
52571 if (!ptr) {
52572 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
52573 }
52574 arg3 = ptr;
52575 }
52576 {
52577 SWIG_Python_Thread_Allow _swig_thread_allow;
52578 {
52579 try {
52580 result = (Xapian::Query *)new Xapian::Query(arg1,(std::string const &)*arg2,(std::string const &)*arg3);
52581 } catch (...) {
52582 _swig_thread_allow.end();
52583 Xapian::SetPythonException();
52584 goto fail;
52585 }
52586 }
52587 _swig_thread_allow.end();
52588 }
52589 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52590 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
52591 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
52592 return resultobj;
52593fail:
52594 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
52595 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
52596 return __null;
52597}
52598static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_9(PyObject *, int nobjs, PyObject **swig_obj) {
52599 PyObject *resultobj = 0;
52600 Xapian::Query::op arg1 ;
52601 Xapian::Query arg2 ;
52602 double arg3 ;
52603 int val1 ;
52604 int ecode1 = 0 ;
52605 void *argp2 ;
52606 int res2 = 0 ;
52607 double val3 ;
52608 int ecode3 = 0 ;
52609 Xapian::Query *result = 0 ;
52610 if ((nobjs < 3) || (nobjs > 3)) goto fail;
52611 ecode1 = SWIG_AsVal_int(swig_obj[0], &val1);
52612 if (!(ecode1 >= 0)) {
52613 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::Query::op""'"); goto fail; } while(0);
52614 }
52615 arg1 = static_cast< Xapian::Query::op >(val1);
52616 {
52617 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[40], 0 | 0, 0);
52618 if (!(res2 >= 0)) {
52619 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_Query" "', argument " "2"" of type '" "Xapian::Query""'"); goto fail; } while(0);
52620 }
52621 if (!argp2) {
52622 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "2"" of type '" "Xapian::Query""'"); goto fail; } while(0);
52623 } else {
52624 Xapian::Query * temp = reinterpret_cast< Xapian::Query * >(argp2);
52625 arg2 = *temp;
52626 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete temp;
52627 }
52628 }
52629 ecode3 = SWIG_AsVal_double(swig_obj[2], &val3);
52630 if (!(ecode3 >= 0)) {
52631 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_Query" "', argument " "3"" of type '" "double""'"); goto fail; } while(0);
52632 }
52633 arg3 = static_cast< double >(val3);
52634 {
52635 SWIG_Python_Thread_Allow _swig_thread_allow;
52636 {
52637 try {
52638 result = (Xapian::Query *)new Xapian::Query(arg1,arg2,arg3);
52639 } catch (...) {
52640 _swig_thread_allow.end();
52641 Xapian::SetPythonException();
52642 goto fail;
52643 }
52644 }
52645 _swig_thread_allow.end();
52646 }
52647 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52648 return resultobj;
52649fail:
52650 return __null;
52651}
52652static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_10(PyObject *, int nobjs, PyObject **swig_obj) {
52653 PyObject *resultobj = 0;
52654 Xapian::Query::op arg1 ;
52655 Xapian::valueno arg2 ;
52656 std::string *arg3 = 0 ;
52657 std::string *arg4 = 0 ;
52658 int val1 ;
52659 int ecode1 = 0 ;
52660 unsigned int val2 ;
52661 int ecode2 = 0 ;
52662 int res3 = ((0)) ;
52663 int res4 = ((0)) ;
52664 Xapian::Query *result = 0 ;
52665 if ((nobjs < 4) || (nobjs > 4)) goto fail;
52666 ecode1 = SWIG_AsVal_int(swig_obj[0], &val1);
52667 if (!(ecode1 >= 0)) {
52668 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::Query::op""'"); goto fail; } while(0);
52669 }
52670 arg1 = static_cast< Xapian::Query::op >(val1);
52671 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
52672 if (!(ecode2 >= 0)) {
52673 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_Query" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
52674 }
52675 arg2 = static_cast< Xapian::valueno >(val2);
52676 {
52677 std::string *ptr = (std::string *)0;
52678 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
52679 if (!(res3 >= 0)) {
52680 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_Query" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
52681 }
52682 if (!ptr) {
52683 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
52684 }
52685 arg3 = ptr;
52686 }
52687 {
52688 std::string *ptr = (std::string *)0;
52689 res4 = SWIG_anystring_as_ptr(&(swig_obj[3]), &ptr);
52690 if (!(res4 >= 0)) {
52691 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res4 != (-1)) ? res4 : -5)), "in method '" "new_Query" "', argument " "4"" of type '" "std::string const &""'"); goto fail; } while(0);
52692 }
52693 if (!ptr) {
52694 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "4"" of type '" "std::string const &""'"); goto fail; } while(0);
52695 }
52696 arg4 = ptr;
52697 }
52698 {
52699 SWIG_Python_Thread_Allow _swig_thread_allow;
52700 {
52701 try {
52702 result = (Xapian::Query *)new Xapian::Query(arg1,arg2,(std::string const &)*arg3,(std::string const &)*arg4);
52703 } catch (...) {
52704 _swig_thread_allow.end();
52705 Xapian::SetPythonException();
52706 goto fail;
52707 }
52708 }
52709 _swig_thread_allow.end();
52710 }
52711 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52712 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
52713 if (((res4 >= 0) && (res4 & ((1 << 8) << 1)))) delete arg4;
52714 return resultobj;
52715fail:
52716 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
52717 if (((res4 >= 0) && (res4 & ((1 << 8) << 1)))) delete arg4;
52718 return __null;
52719}
52720static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_11(PyObject *, int nobjs, PyObject **swig_obj) {
52721 PyObject *resultobj = 0;
52722 Xapian::Query::op arg1 ;
52723 Xapian::valueno arg2 ;
52724 std::string *arg3 = 0 ;
52725 int val1 ;
52726 int ecode1 = 0 ;
52727 unsigned int val2 ;
52728 int ecode2 = 0 ;
52729 int res3 = ((0)) ;
52730 Xapian::Query *result = 0 ;
52731 if ((nobjs < 3) || (nobjs > 3)) goto fail;
52732 ecode1 = SWIG_AsVal_int(swig_obj[0], &val1);
52733 if (!(ecode1 >= 0)) {
52734 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::Query::op""'"); goto fail; } while(0);
52735 }
52736 arg1 = static_cast< Xapian::Query::op >(val1);
52737 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
52738 if (!(ecode2 >= 0)) {
52739 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_Query" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
52740 }
52741 arg2 = static_cast< Xapian::valueno >(val2);
52742 {
52743 std::string *ptr = (std::string *)0;
52744 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
52745 if (!(res3 >= 0)) {
52746 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "new_Query" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
52747 }
52748 if (!ptr) {
52749 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Query" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
52750 }
52751 arg3 = ptr;
52752 }
52753 {
52754 SWIG_Python_Thread_Allow _swig_thread_allow;
52755 {
52756 try {
52757 result = (Xapian::Query *)new Xapian::Query(arg1,arg2,(std::string const &)*arg3);
52758 } catch (...) {
52759 _swig_thread_allow.end();
52760 Xapian::SetPythonException();
52761 goto fail;
52762 }
52763 }
52764 _swig_thread_allow.end();
52765 }
52766 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52767 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
52768 return resultobj;
52769fail:
52770 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
52771 return __null;
52772}
52773static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_12(PyObject *, int nobjs, PyObject **swig_obj) {
52774 PyObject *resultobj = 0;
52775 Xapian::PostingSource *arg1 = (Xapian::PostingSource *) 0 ;
52776 void *argp1 = 0 ;
52777 int res1 = 0 ;
52778 Xapian::Query *result = 0 ;
52779 if ((nobjs < 1) || (nobjs > 1)) goto fail;
52780 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[39], 0 | 0, 0);
52781 if (!(res1 >= 0)) {
52782 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::PostingSource *""'"); goto fail; } while(0);
52783 }
52784 arg1 = reinterpret_cast< Xapian::PostingSource * >(argp1);
52785 {
52786 SWIG_Python_Thread_Allow _swig_thread_allow;
52787 {
52788 try {
52789 result = (Xapian::Query *)new Xapian::Query(arg1);
52790 } catch (...) {
52791 _swig_thread_allow.end();
52792 Xapian::SetPythonException();
52793 goto fail;
52794 }
52795 }
52796 _swig_thread_allow.end();
52797 }
52798 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
52799 return resultobj;
52800fail:
52801 return __null;
52802}
52803static __attribute__ ((__unused__)) PyObject *_wrap_Query_get_length(PyObject *, PyObject *args) {
52804 PyObject *resultobj = 0;
52805 Xapian::Query *arg1 = (Xapian::Query *) 0 ;
52806 void *argp1 = 0 ;
52807 int res1 = 0 ;
52808 PyObject *swig_obj[1] ;
52809 Xapian::termcount result;
52810 if (!args) goto fail;
52811 swig_obj[0] = args;
52812 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[40], 0 | 0, 0);
52813 if (!(res1 >= 0)) {
52814 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Query_get_length" "', argument " "1"" of type '" "Xapian::Query const *""'"); goto fail; } while(0);
52815 }
52816 arg1 = reinterpret_cast< Xapian::Query * >(argp1);
52817 {
52818 SWIG_Python_Thread_Allow _swig_thread_allow;
52819 {
52820 try {
52821 result = (Xapian::termcount)((Xapian::Query const *)arg1)->get_length();
52822 } catch (...) {
52823 _swig_thread_allow.end();
52824 Xapian::SetPythonException();
52825 goto fail;
52826 }
52827 }
52828 _swig_thread_allow.end();
52829 }
52830 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
52831 return resultobj;
52832fail:
52833 return __null;
52834}
52835static __attribute__ ((__unused__)) PyObject *_wrap_Query_get_terms_begin(PyObject *, PyObject *args) {
52836 PyObject *resultobj = 0;
52837 Xapian::Query *arg1 = (Xapian::Query *) 0 ;
52838 void *argp1 = 0 ;
52839 int res1 = 0 ;
52840 PyObject *swig_obj[1] ;
52841 Xapian::TermIterator result;
52842 if (!args) goto fail;
52843 swig_obj[0] = args;
52844 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[40], 0 | 0, 0);
52845 if (!(res1 >= 0)) {
52846 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Query_get_terms_begin" "', argument " "1"" of type '" "Xapian::Query const *""'"); goto fail; } while(0);
52847 }
52848 arg1 = reinterpret_cast< Xapian::Query * >(argp1);
52849 {
52850 SWIG_Python_Thread_Allow _swig_thread_allow;
52851 {
52852 try {
52853 result = ((Xapian::Query const *)arg1)->get_terms_begin();
52854 } catch (...) {
52855 _swig_thread_allow.end();
52856 Xapian::SetPythonException();
52857 goto fail;
52858 }
52859 }
52860 _swig_thread_allow.end();
52861 }
52862 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
52863 return resultobj;
52864fail:
52865 return __null;
52866}
52867static __attribute__ ((__unused__)) PyObject *_wrap_Query_get_terms_end(PyObject *, PyObject *args) {
52868 PyObject *resultobj = 0;
52869 Xapian::Query *arg1 = (Xapian::Query *) 0 ;
52870 void *argp1 = 0 ;
52871 int res1 = 0 ;
52872 PyObject *swig_obj[1] ;
52873 Xapian::TermIterator result;
52874 if (!args) goto fail;
52875 swig_obj[0] = args;
52876 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[40], 0 | 0, 0);
52877 if (!(res1 >= 0)) {
52878 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Query_get_terms_end" "', argument " "1"" of type '" "Xapian::Query const *""'"); goto fail; } while(0);
52879 }
52880 arg1 = reinterpret_cast< Xapian::Query * >(argp1);
52881 {
52882 SWIG_Python_Thread_Allow _swig_thread_allow;
52883 {
52884 try {
52885 result = ((Xapian::Query const *)arg1)->get_terms_end();
52886 } catch (...) {
52887 _swig_thread_allow.end();
52888 Xapian::SetPythonException();
52889 goto fail;
52890 }
52891 }
52892 _swig_thread_allow.end();
52893 }
52894 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
52895 return resultobj;
52896fail:
52897 return __null;
52898}
52899static __attribute__ ((__unused__)) PyObject *_wrap_Query_empty(PyObject *, PyObject *args) {
52900 PyObject *resultobj = 0;
52901 Xapian::Query *arg1 = (Xapian::Query *) 0 ;
52902 void *argp1 = 0 ;
52903 int res1 = 0 ;
52904 PyObject *swig_obj[1] ;
52905 bool result;
52906 if (!args) goto fail;
52907 swig_obj[0] = args;
52908 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[40], 0 | 0, 0);
52909 if (!(res1 >= 0)) {
52910 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Query_empty" "', argument " "1"" of type '" "Xapian::Query const *""'"); goto fail; } while(0);
52911 }
52912 arg1 = reinterpret_cast< Xapian::Query * >(argp1);
52913 {
52914 SWIG_Python_Thread_Allow _swig_thread_allow;
52915 {
52916 try {
52917 result = (bool)((Xapian::Query const *)arg1)->empty();
52918 } catch (...) {
52919 _swig_thread_allow.end();
52920 Xapian::SetPythonException();
52921 goto fail;
52922 }
52923 }
52924 _swig_thread_allow.end();
52925 }
52926 resultobj = SWIG_From_bool(static_cast< bool >(result));
52927 return resultobj;
52928fail:
52929 return __null;
52930}
52931static __attribute__ ((__unused__)) PyObject *_wrap_Query_serialise(PyObject *, PyObject *args) {
52932 PyObject *resultobj = 0;
52933 Xapian::Query *arg1 = (Xapian::Query *) 0 ;
52934 void *argp1 = 0 ;
52935 int res1 = 0 ;
52936 PyObject *swig_obj[1] ;
52937 std::string result;
52938 if (!args) goto fail;
52939 swig_obj[0] = args;
52940 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[40], 0 | 0, 0);
52941 if (!(res1 >= 0)) {
52942 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Query_serialise" "', argument " "1"" of type '" "Xapian::Query const *""'"); goto fail; } while(0);
52943 }
52944 arg1 = reinterpret_cast< Xapian::Query * >(argp1);
52945 {
52946 SWIG_Python_Thread_Allow _swig_thread_allow;
52947 {
52948 try {
52949 result = ((Xapian::Query const *)arg1)->serialise();
52950 } catch (...) {
52951 _swig_thread_allow.end();
52952 Xapian::SetPythonException();
52953 goto fail;
52954 }
52955 }
52956 _swig_thread_allow.end();
52957 }
52958 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
52959 return resultobj;
52960fail:
52961 return __null;
52962}
52963static __attribute__ ((__unused__)) PyObject *_wrap_Query_unserialise__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
52964 PyObject *resultobj = 0;
52965 std::string *arg1 = 0 ;
52966 int res1 = ((0)) ;
52967 Xapian::Query result;
52968 if ((nobjs < 1) || (nobjs > 1)) goto fail;
52969 {
52970 std::string *ptr = (std::string *)0;
52971 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
52972 if (!(res1 >= 0)) {
52973 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Query_unserialise" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52974 }
52975 if (!ptr) {
52976 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Query_unserialise" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
52977 }
52978 arg1 = ptr;
52979 }
52980 {
52981 SWIG_Python_Thread_Allow _swig_thread_allow;
52982 {
52983 try {
52984 result = Xapian::Query::unserialise((std::string const &)*arg1);
52985 } catch (...) {
52986 _swig_thread_allow.end();
52987 Xapian::SetPythonException();
52988 goto fail;
52989 }
52990 }
52991 _swig_thread_allow.end();
52992 }
52993 resultobj = SWIG_Python_NewPointerObj((new Xapian::Query(static_cast< const Xapian::Query& >(result))), swig_types[40], 0x1 | 0);
52994 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52995 return resultobj;
52996fail:
52997 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
52998 return __null;
52999}
53000static __attribute__ ((__unused__)) PyObject *_wrap_Query_unserialise__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
53001 PyObject *resultobj = 0;
53002 std::string *arg1 = 0 ;
53003 Xapian::Registry *arg2 = 0 ;
53004 int res1 = ((0)) ;
53005 void *argp2 = 0 ;
53006 int res2 = 0 ;
53007 Xapian::Query result;
53008 if ((nobjs < 2) || (nobjs > 2)) goto fail;
53009 {
53010 std::string *ptr = (std::string *)0;
53011 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
53012 if (!(res1 >= 0)) {
53013 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Query_unserialise" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
53014 }
53015 if (!ptr) {
53016 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Query_unserialise" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
53017 }
53018 arg1 = ptr;
53019 }
53020 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[45], 0 | 0, 0);
53021 if (!(res2 >= 0)) {
53022 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Query_unserialise" "', argument " "2"" of type '" "Xapian::Registry const &""'"); goto fail; } while(0);
53023 }
53024 if (!argp2) {
53025 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Query_unserialise" "', argument " "2"" of type '" "Xapian::Registry const &""'"); goto fail; } while(0);
53026 }
53027 arg2 = reinterpret_cast< Xapian::Registry * >(argp2);
53028 {
53029 SWIG_Python_Thread_Allow _swig_thread_allow;
53030 {
53031 try {
53032 result = Xapian::Query::unserialise((std::string const &)*arg1,(Xapian::Registry const &)*arg2);
53033 } catch (...) {
53034 _swig_thread_allow.end();
53035 Xapian::SetPythonException();
53036 goto fail;
53037 }
53038 }
53039 _swig_thread_allow.end();
53040 }
53041 resultobj = SWIG_Python_NewPointerObj((new Xapian::Query(static_cast< const Xapian::Query& >(result))), swig_types[40], 0x1 | 0);
53042 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
53043 return resultobj;
53044fail:
53045 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
53046 return __null;
53047}
53048static __attribute__ ((__unused__)) PyObject *_wrap_Query_unserialise(PyObject *self, PyObject *args) {
53049 int argc;
53050 PyObject *argv[3];
53051 if (!(argc = SWIG_Python_UnpackTuple(args,"Query_unserialise",0,2,argv))) goto fail;
53052 --argc;
53053 if (argc == 1) {
53054 return _wrap_Query_unserialise__SWIG_0(self, argc, argv);
53055 }
53056 if (argc == 2) {
53057 return _wrap_Query_unserialise__SWIG_1(self, argc, argv);
53058 }
53059fail:
53060 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'Query_unserialise'.\n"
53061 " Possible C/C++ prototypes are:\n"
53062 " unserialise(std::string const &)\n"
53063 " Xapian::Query::unserialise(std::string const &,Xapian::Registry const &)\n");
53064 return __null;
53065}
53066static __attribute__ ((__unused__)) PyObject *_wrap_Query___str__(PyObject *, PyObject *args) {
53067 PyObject *resultobj = 0;
53068 Xapian::Query *arg1 = (Xapian::Query *) 0 ;
53069 void *argp1 = 0 ;
53070 int res1 = 0 ;
53071 PyObject *swig_obj[1] ;
53072 std::string result;
53073 if (!args) goto fail;
53074 swig_obj[0] = args;
53075 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[40], 0 | 0, 0);
53076 if (!(res1 >= 0)) {
53077 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Query___str__" "', argument " "1"" of type '" "Xapian::Query const *""'"); goto fail; } while(0);
53078 }
53079 arg1 = reinterpret_cast< Xapian::Query * >(argp1);
53080 {
53081 SWIG_Python_Thread_Allow _swig_thread_allow;
53082 {
53083 try {
53084 result = ((Xapian::Query const *)arg1)->get_description();
53085 } catch (...) {
53086 _swig_thread_allow.end();
53087 Xapian::SetPythonException();
53088 goto fail;
53089 }
53090 }
53091 _swig_thread_allow.end();
53092 }
53093 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
53094 return resultobj;
53095fail:
53096 return __null;
53097}
53098static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_13(PyObject *, int nobjs, PyObject **swig_obj) {
53099 PyObject *resultobj = 0;
53100 Xapian::Query::op arg1 ;
53101 std::vector< Xapian::Query > *arg2 = 0 ;
53102 Xapian::termcount arg3 ;
53103 int val1 ;
53104 int ecode1 = 0 ;
53105 vector< Xapian::Query > v2 ;
53106 unsigned int val3 ;
53107 int ecode3 = 0 ;
53108 Xapian::Query *result = 0 ;
53109 if ((nobjs < 3) || (nobjs > 3)) goto fail;
53110 ecode1 = SWIG_AsVal_int(swig_obj[0], &val1);
53111 if (!(ecode1 >= 0)) {
53112 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::Query::op""'"); goto fail; } while(0);
53113 }
53114 arg1 = static_cast< Xapian::Query::op >(val1);
53115 {
53116 PyObject * fastseq = PySequence_Fast(swig_obj[1], "expected sequence of strings or queries");
53117 if (!fastseq) {
53118 goto fail;
53119 }
53120 int numitems = (((((((PyObject*)(fastseq))->ob_type))->tp_flags & ((1L<<25))) != 0) ? (((PyVarObject*)(fastseq))->ob_size) : (((PyVarObject*)(fastseq))->ob_size));
53121 v2.reserve(numitems);
53122 for (int i = 0; i < numitems; ++i) {
53123 PyObject *obj = (((((((PyObject*)(fastseq))->ob_type))->tp_flags & ((1L<<25))) != 0) ? (((PyListObject *)(fastseq))->ob_item[i]) : (((PyTupleObject *)(fastseq))->ob_item[i]));
53124 PyObject *decrefme = __null;
53125 if (((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<28))) != 0)) {
53126 PyObject *strobj = PyUnicodeUCS4_EncodeUTF8((((PyUnicodeObject *)(obj))->str), (((PyUnicodeObject *)(obj))->length), "ignore");
53127 if (!strobj) goto fail;
53128 obj = strobj;
53129 decrefme = strobj;
53130 }
53131 if (((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<27))) != 0))
53132 {
53133 char * p;
53134 Py_ssize_t len;
53135 (void)PyString_AsStringAndSize(obj, &p, &len);
53136 v2.push_back(Xapian::Query(string(p, len)));
53137 } else {
53138 Xapian::Query *subqp = Xapian::get_py_query(obj);
53139 if (!subqp) {
53140 PyErr_SetString(PyExc_TypeError, "expected string or query");
53141 if ((decrefme) == __null) ; else if ( --((PyObject*)(decrefme))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(decrefme)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(decrefme))));
53142 goto fail;
53143 }
53144 v2.push_back(*subqp);
53145 }
53146 if ((decrefme) == __null) ; else if ( --((PyObject*)(decrefme))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(decrefme)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(decrefme))));
53147 }
53148 arg2 = &v2;
53149 if ( --((PyObject*)(fastseq))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(fastseq)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(fastseq))));
53150 }
53151 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
53152 if (!(ecode3 >= 0)) {
53153 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_Query" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
53154 }
53155 arg3 = static_cast< Xapian::termcount >(val3);
53156 {
53157 SWIG_Python_Thread_Allow _swig_thread_allow;
53158 {
53159 try {
53160 result = (Xapian::Query *)new_Xapian_Query__SWIG_13(arg1,(std::vector< Xapian::Query > const &)*arg2,arg3);
53161 } catch (...) {
53162 _swig_thread_allow.end();
53163 Xapian::SetPythonException();
53164 goto fail;
53165 }
53166 }
53167 _swig_thread_allow.end();
53168 }
53169 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
53170 return resultobj;
53171fail:
53172 return __null;
53173}
53174static __attribute__ ((__unused__)) PyObject *_wrap_new_Query__SWIG_14(PyObject *, int nobjs, PyObject **swig_obj) {
53175 PyObject *resultobj = 0;
53176 Xapian::Query::op arg1 ;
53177 std::vector< Xapian::Query > *arg2 = 0 ;
53178 int val1 ;
53179 int ecode1 = 0 ;
53180 vector< Xapian::Query > v2 ;
53181 Xapian::Query *result = 0 ;
53182 if ((nobjs < 2) || (nobjs > 2)) goto fail;
53183 ecode1 = SWIG_AsVal_int(swig_obj[0], &val1);
53184 if (!(ecode1 >= 0)) {
53185 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_Query" "', argument " "1"" of type '" "Xapian::Query::op""'"); goto fail; } while(0);
53186 }
53187 arg1 = static_cast< Xapian::Query::op >(val1);
53188 {
53189 PyObject * fastseq = PySequence_Fast(swig_obj[1], "expected sequence of strings or queries");
53190 if (!fastseq) {
53191 goto fail;
53192 }
53193 int numitems = (((((((PyObject*)(fastseq))->ob_type))->tp_flags & ((1L<<25))) != 0) ? (((PyVarObject*)(fastseq))->ob_size) : (((PyVarObject*)(fastseq))->ob_size));
53194 v2.reserve(numitems);
53195 for (int i = 0; i < numitems; ++i) {
53196 PyObject *obj = (((((((PyObject*)(fastseq))->ob_type))->tp_flags & ((1L<<25))) != 0) ? (((PyListObject *)(fastseq))->ob_item[i]) : (((PyTupleObject *)(fastseq))->ob_item[i]));
53197 PyObject *decrefme = __null;
53198 if (((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<28))) != 0)) {
53199 PyObject *strobj = PyUnicodeUCS4_EncodeUTF8((((PyUnicodeObject *)(obj))->str), (((PyUnicodeObject *)(obj))->length), "ignore");
53200 if (!strobj) goto fail;
53201 obj = strobj;
53202 decrefme = strobj;
53203 }
53204 if (((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<27))) != 0))
53205 {
53206 char * p;
53207 Py_ssize_t len;
53208 (void)PyString_AsStringAndSize(obj, &p, &len);
53209 v2.push_back(Xapian::Query(string(p, len)));
53210 } else {
53211 Xapian::Query *subqp = Xapian::get_py_query(obj);
53212 if (!subqp) {
53213 PyErr_SetString(PyExc_TypeError, "expected string or query");
53214 if ((decrefme) == __null) ; else if ( --((PyObject*)(decrefme))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(decrefme)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(decrefme))));
53215 goto fail;
53216 }
53217 v2.push_back(*subqp);
53218 }
53219 if ((decrefme) == __null) ; else if ( --((PyObject*)(decrefme))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(decrefme)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(decrefme))));
53220 }
53221 arg2 = &v2;
53222 if ( --((PyObject*)(fastseq))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(fastseq)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(fastseq))));
53223 }
53224 {
53225 SWIG_Python_Thread_Allow _swig_thread_allow;
53226 {
53227 try {
53228 result = (Xapian::Query *)new_Xapian_Query__SWIG_13(arg1,(std::vector< Xapian::Query > const &)*arg2);
53229 } catch (...) {
53230 _swig_thread_allow.end();
53231 Xapian::SetPythonException();
53232 goto fail;
53233 }
53234 }
53235 _swig_thread_allow.end();
53236 }
53237 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[40], ((0x1 << 1) | 0x1) | 0);
53238 return resultobj;
53239fail:
53240 return __null;
53241}
53242static __attribute__ ((__unused__)) PyObject *_wrap_new_Query(PyObject *self, PyObject *args) {
53243 int argc;
53244 PyObject *argv[5];
53245 if (!(argc = SWIG_Python_UnpackTuple(args,"new_Query",0,4,argv))) goto fail;
53246 --argc;
53247 if (argc == 0) {
53248 return _wrap_new_Query__SWIG_1(self, argc, argv);
53249 }
53250 if (argc == 1) {
53251 int _v = 0;
53252 {
53253 int res = SWIG_Python_ConvertPtrAndOwn(argv[0], 0, swig_types[40], 0, 0);
53254 _v = ((res >= 0) ? 1 : 0);
53255 }
53256 if (!_v) goto check_2;
53257 return _wrap_new_Query__SWIG_0(self, argc, argv);
53258 }
53259check_2:
53260 if (argc == 1) {
53261 int _v = 0;
53262 {
53263 void *vptr = 0;
53264 int res = SWIG_Python_ConvertPtrAndOwn(argv[0], &vptr, swig_types[39], 0, 0);
53265 _v = ((res >= 0) ? 1 : 0);
53266 }
53267 if (!_v) goto check_3;
53268 return _wrap_new_Query__SWIG_12(self, argc, argv);
53269 }
53270check_3:
53271 if (argc == 1) {
53272 return _wrap_new_Query__SWIG_4(self, argc, argv);
53273 }
53274 if (argc == 2) {
53275 int _v = 0;
53276 {
53277 {
53278 int res = SWIG_AsVal_int(argv[0], __null);
53279 _v = ((res >= 0) ? 1 : 0);
53280 }
53281 }
53282 if (!_v) goto check_5;
53283 {
53284 {
53285 if (!PySequence_Check(argv[1])) {
53286 _v = 0;
53287 } else {
53288 _v = 1;
53289 PyObject * fastseq = PySequence_Fast(argv[1], "expected sequence of strings or queries");
53290 if (!fastseq) {
53291 goto fail;
53292 }
53293 int numitems = (((((((PyObject*)(fastseq))->ob_type))->tp_flags & ((1L<<25))) != 0) ? (((PyVarObject*)(fastseq))->ob_size) : (((PyVarObject*)(fastseq))->ob_size));
53294 for (int i = 0; i < numitems; ++i) {
53295 PyObject *obj = (((((((PyObject*)(fastseq))->ob_type))->tp_flags & ((1L<<25))) != 0) ? (((PyListObject *)(fastseq))->ob_item[i]) : (((PyTupleObject *)(fastseq))->ob_item[i]));
53296 if (!((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<28))) != 0) &&
53297 !((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<27))) != 0) &&
53298 !Xapian::get_py_query(obj)) {
53299 _v = 0;
53300 break;
53301 }
53302 }
53303 if ( --((PyObject*)(fastseq))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(fastseq)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(fastseq))));
53304 }
53305 }
53306 }
53307 if (!_v) goto check_5;
53308 return _wrap_new_Query__SWIG_14(self, argc, argv);
53309 }
53310check_5:
53311 if (argc == 2) {
53312 return _wrap_new_Query__SWIG_3(self, argc, argv);
53313 }
53314 if (argc == 3) {
53315 int _v = 0;
53316 {
53317 {
53318 int res = SWIG_AsVal_int(argv[0], __null);
53319 _v = ((res >= 0) ? 1 : 0);
53320 }
53321 }
53322 if (!_v) goto check_7;
53323 {
53324 int res = SWIG_Python_ConvertPtrAndOwn(argv[1], 0, swig_types[40], 0, 0);
53325 _v = ((res >= 0) ? 1 : 0);
53326 }
53327 if (!_v) goto check_7;
53328 {
53329 int res = SWIG_Python_ConvertPtrAndOwn(argv[2], 0, swig_types[40], 0, 0);
53330 _v = ((res >= 0) ? 1 : 0);
53331 }
53332 if (!_v) goto check_7;
53333 return _wrap_new_Query__SWIG_5(self, argc, argv);
53334 }
53335check_7:
53336 if (argc == 3) {
53337 int _v = 0;
53338 {
53339 {
53340 int res = SWIG_AsVal_int(argv[0], __null);
53341 _v = ((res >= 0) ? 1 : 0);
53342 }
53343 }
53344 if (!_v) goto check_8;
53345 {
53346 int res = SWIG_Python_ConvertPtrAndOwn(argv[1], 0, swig_types[40], 0, 0);
53347 _v = ((res >= 0) ? 1 : 0);
53348 }
53349 if (!_v) goto check_8;
53350 {
53351 {
53352 int res = SWIG_AsVal_double(argv[2], __null);
53353 _v = ((res >= 0) ? 1 : 0);
53354 }
53355 }
53356 if (!_v) goto check_8;
53357 return _wrap_new_Query__SWIG_9(self, argc, argv);
53358 }
53359check_8:
53360 if (argc == 3) {
53361 int _v = 0;
53362 {
53363 {
53364 int res = SWIG_AsVal_int(argv[0], __null);
53365 _v = ((res >= 0) ? 1 : 0);
53366 }
53367 }
53368 if (!_v) goto check_9;
53369 {
53370 {
53371 int res = SWIG_AsVal_unsigned_SS_int(argv[1], __null);
53372 _v = ((res >= 0) ? 1 : 0);
53373 }
53374 }
53375 if (!_v) goto check_9;
53376 {
53377 int res = SWIG_anystring_as_ptr(&(argv[2]), (std::string**)(0));
53378 _v = ((res >= 0) ? 1 : 0);
53379 }
53380 if (!_v) goto check_9;
53381 return _wrap_new_Query__SWIG_11(self, argc, argv);
53382 }
53383check_9:
53384 if (argc == 3) {
53385 int _v = 0;
53386 {
53387 {
53388 int res = SWIG_AsVal_int(argv[0], __null);
53389 _v = ((res >= 0) ? 1 : 0);
53390 }
53391 }
53392 if (!_v) goto check_10;
53393 {
53394 {
53395 if (!PySequence_Check(argv[1])) {
53396 _v = 0;
53397 } else {
53398 _v = 1;
53399 PyObject * fastseq = PySequence_Fast(argv[1], "expected sequence of strings or queries");
53400 if (!fastseq) {
53401 goto fail;
53402 }
53403 int numitems = (((((((PyObject*)(fastseq))->ob_type))->tp_flags & ((1L<<25))) != 0) ? (((PyVarObject*)(fastseq))->ob_size) : (((PyVarObject*)(fastseq))->ob_size));
53404 for (int i = 0; i < numitems; ++i) {
53405 PyObject *obj = (((((((PyObject*)(fastseq))->ob_type))->tp_flags & ((1L<<25))) != 0) ? (((PyListObject *)(fastseq))->ob_item[i]) : (((PyTupleObject *)(fastseq))->ob_item[i]));
53406 if (!((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<28))) != 0) &&
53407 !((((((PyObject*)(obj))->ob_type))->tp_flags & ((1L<<27))) != 0) &&
53408 !Xapian::get_py_query(obj)) {
53409 _v = 0;
53410 break;
53411 }
53412 }
53413 if ( --((PyObject*)(fastseq))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(fastseq)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(fastseq))));
53414 }
53415 }
53416 }
53417 if (!_v) goto check_10;
53418 {
53419 {
53420 int res = SWIG_AsVal_unsigned_SS_int(argv[2], __null);
53421 _v = ((res >= 0) ? 1 : 0);
53422 }
53423 }
53424 if (!_v) goto check_10;
53425 return _wrap_new_Query__SWIG_13(self, argc, argv);
53426 }
53427check_10:
53428 if (argc == 3) {
53429 int _v = 0;
53430 {
53431 {
53432 int res = SWIG_AsVal_int(argv[0], __null);
53433 _v = ((res >= 0) ? 1 : 0);
53434 }
53435 }
53436 if (!_v) goto check_11;
53437 {
53438 int res = SWIG_anystring_as_ptr(&(argv[1]), (std::string**)(0));
53439 _v = ((res >= 0) ? 1 : 0);
53440 }
53441 if (!_v) goto check_11;
53442 {
53443 int res = SWIG_anystring_as_ptr(&(argv[2]), (std::string**)(0));
53444 _v = ((res >= 0) ? 1 : 0);
53445 }
53446 if (!_v) goto check_11;
53447 return _wrap_new_Query__SWIG_6(self, argc, argv);
53448 }
53449check_11:
53450 if (argc == 3) {
53451 return _wrap_new_Query__SWIG_2(self, argc, argv);
53452 }
53453 if (argc == 4) {
53454 return _wrap_new_Query__SWIG_10(self, argc, argv);
53455 }
53456fail:
53457 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_Query'.\n"
53458 " Possible C/C++ prototypes are:\n"
53459 " Xapian::Query(Xapian::Query const &)\n"
53460 " Xapian::Query()\n"
53461 " Xapian::Query(std::string const &,Xapian::termcount,Xapian::termpos)\n"
53462 " Xapian::Query(std::string const &,Xapian::termcount)\n"
53463 " Xapian::Query(std::string const &)\n"
53464 " Xapian::Query(Xapian::Query::op,Xapian::Query const &,Xapian::Query const &)\n"
53465 " Xapian::Query(Xapian::Query::op,std::string const &,std::string const &)\n"
53466 " Xapian::Query(Xapian::Query::op,Xapian::Query,double)\n"
53467 " Xapian::Query(Xapian::Query::op,Xapian::valueno,std::string const &,std::string const &)\n"
53468 " Xapian::Query(Xapian::Query::op,Xapian::valueno,std::string const &)\n"
53469 " Xapian::Query(Xapian::PostingSource *)\n"
53470 " Xapian::Query(Xapian::Query::op,std::vector< Xapian::Query > const &,Xapian::termcount)\n"
53471 " Xapian::Query(Xapian::Query::op,std::vector< Xapian::Query > const &)\n");
53472 return __null;
53473}
53474static __attribute__ ((__unused__)) PyObject *Query_swigregister(PyObject *, PyObject *args) {
53475 PyObject *obj;
53476 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
53477 SWIG_TypeNewClientData(swig_types[40], SwigPyClientData_New(obj));
53478 return SWIG_Py_Void();
53479}
53480static __attribute__ ((__unused__)) PyObject *Query_swiginit(PyObject *, PyObject *args) {
53481 return SWIG_Python_InitShadowInstance(args);
53482}
53483static __attribute__ ((__unused__)) PyObject *_wrap_Stopper___call__(PyObject *, PyObject *args) {
53484 PyObject *resultobj = 0;
53485 Xapian::Stopper *arg1 = (Xapian::Stopper *) 0 ;
53486 std::string *arg2 = 0 ;
53487 void *argp1 = 0 ;
53488 int res1 = 0 ;
53489 int res2 = ((0)) ;
53490 PyObject *swig_obj[2] ;
53491 Swig::Director *director = 0;
53492 bool upcall = false;
53493 bool result;
53494 if (!SWIG_Python_UnpackTuple(args,"Stopper___call__",2,2,swig_obj)) goto fail;
53495 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[52], 0 | 0, 0);
53496 if (!(res1 >= 0)) {
53497 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Stopper___call__" "', argument " "1"" of type '" "Xapian::Stopper const *""'"); goto fail; } while(0);
53498 }
53499 arg1 = reinterpret_cast< Xapian::Stopper * >(argp1);
53500 {
53501 std::string *ptr = (std::string *)0;
53502 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
53503 if (!(res2 >= 0)) {
53504 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Stopper___call__" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
53505 }
53506 if (!ptr) {
53507 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Stopper___call__" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
53508 }
53509 arg2 = ptr;
53510 }
53511 director = dynamic_cast<Swig::Director*>(arg1);
53512 upcall = (director && (director->swig_get_self()==swig_obj[0]));
53513 try {
53514 {
53515 try {
53516 if (upcall) {
53517 Swig::DirectorPureVirtualException::raise("Xapian::Stopper::operator ()");
53518 } else {
53519 result = (bool)((Xapian::Stopper const *)arg1)->operator ()((std::string const &)*arg2);
53520 }
53521 } catch (...) {
53522 Xapian::SetPythonException();
53523 goto fail;
53524 }
53525 }
53526 } catch (Swig::DirectorException&) {
53527 goto fail;
53528 }
53529 resultobj = SWIG_From_bool(static_cast< bool >(result));
53530 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
53531 return resultobj;
53532fail:
53533 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
53534 return __null;
53535}
53536static __attribute__ ((__unused__)) PyObject *_wrap_delete_Stopper(PyObject *, PyObject *args) {
53537 PyObject *resultobj = 0;
53538 Xapian::Stopper *arg1 = (Xapian::Stopper *) 0 ;
53539 void *argp1 = 0 ;
53540 int res1 = 0 ;
53541 PyObject *swig_obj[1] ;
53542 if (!args) goto fail;
53543 swig_obj[0] = args;
53544 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[52], 0x1 | 0, 0);
53545 if (!(res1 >= 0)) {
53546 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Stopper" "', argument " "1"" of type '" "Xapian::Stopper *""'"); goto fail; } while(0);
53547 }
53548 arg1 = reinterpret_cast< Xapian::Stopper * >(argp1);
53549 {
53550 SWIG_Python_Thread_Allow _swig_thread_allow;
53551 {
53552 try {
53553 delete arg1;
53554 } catch (...) {
53555 _swig_thread_allow.end();
53556 Xapian::SetPythonException();
53557 goto fail;
53558 }
53559 }
53560 _swig_thread_allow.end();
53561 }
53562 resultobj = SWIG_Py_Void();
53563 return resultobj;
53564fail:
53565 return __null;
53566}
53567static __attribute__ ((__unused__)) PyObject *_wrap_Stopper___str__(PyObject *, PyObject *args) {
53568 PyObject *resultobj = 0;
53569 Xapian::Stopper *arg1 = (Xapian::Stopper *) 0 ;
53570 void *argp1 = 0 ;
53571 int res1 = 0 ;
53572 PyObject *swig_obj[1] ;
53573 Swig::Director *director = 0;
53574 bool upcall = false;
53575 std::string result;
53576 if (!args) goto fail;
53577 swig_obj[0] = args;
53578 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[52], 0 | 0, 0);
53579 if (!(res1 >= 0)) {
53580 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Stopper___str__" "', argument " "1"" of type '" "Xapian::Stopper const *""'"); goto fail; } while(0);
53581 }
53582 arg1 = reinterpret_cast< Xapian::Stopper * >(argp1);
53583 director = dynamic_cast<Swig::Director*>(arg1);
53584 upcall = (director && (director->swig_get_self()==swig_obj[0]));
53585 try {
53586 {
53587 try {
53588 if (upcall) {
53589 result = ((Xapian::Stopper const *)arg1)->Xapian::Stopper::get_description();
53590 } else {
53591 result = ((Xapian::Stopper const *)arg1)->get_description();
53592 }
53593 } catch (...) {
53594 Xapian::SetPythonException();
53595 goto fail;
53596 }
53597 }
53598 } catch (Swig::DirectorException&) {
53599 goto fail;
53600 }
53601 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
53602 return resultobj;
53603fail:
53604 return __null;
53605}
53606static __attribute__ ((__unused__)) PyObject *_wrap_new_Stopper(PyObject *, PyObject *args) {
53607 PyObject *resultobj = 0;
53608 PyObject *arg1 = (PyObject *) 0 ;
53609 PyObject *swig_obj[1] ;
53610 Xapian::Stopper *result = 0 ;
53611 if (!args) goto fail;
53612 swig_obj[0] = args;
53613 arg1 = swig_obj[0];
53614 {
53615 SWIG_Python_Thread_Allow _swig_thread_allow;
53616 {
53617 try {
53618 if ( arg1 != (&_Py_NoneStruct) ) {
53619 result = (Xapian::Stopper *)new SwigDirector_Stopper(arg1);
53620 } else {
53621 SWIG_Python_SetErrorMsg(PyExc_RuntimeError,"accessing abstract class or protected constructor");
53622 goto fail;
53623 }
53624 } catch (...) {
53625 _swig_thread_allow.end();
53626 Xapian::SetPythonException();
53627 goto fail;
53628 }
53629 }
53630 _swig_thread_allow.end();
53631 }
53632 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[52], ((0x1 << 1) | 0x1) | 0);
53633 return resultobj;
53634fail:
53635 return __null;
53636}
53637static __attribute__ ((__unused__)) PyObject *_wrap_disown_Stopper(PyObject *, PyObject *args) {
53638 PyObject *resultobj = 0;
53639 Xapian::Stopper *arg1 = (Xapian::Stopper *) 0 ;
53640 void *argp1 = 0 ;
53641 int res1 = 0 ;
53642 PyObject *swig_obj[1] ;
53643 if (!args) goto fail;
53644 swig_obj[0] = args;
53645 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[52], 0 | 0, 0);
53646 if (!(res1 >= 0)) {
53647 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "disown_Stopper" "', argument " "1"" of type '" "Xapian::Stopper *""'"); goto fail; } while(0);
53648 }
53649 arg1 = reinterpret_cast< Xapian::Stopper * >(argp1);
53650 {
53651 SWIG_Python_Thread_Allow _swig_thread_allow;
53652 {
53653 Swig::Director *director = dynamic_cast<Swig::Director *>(arg1);
53654 if (director) director->swig_disown();
53655 }
53656 _swig_thread_allow.end();
53657 }
53658 resultobj = SWIG_Py_Void();
53659 return resultobj;
53660fail:
53661 return __null;
53662}
53663static __attribute__ ((__unused__)) PyObject *Stopper_swigregister(PyObject *, PyObject *args) {
53664 PyObject *obj;
53665 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
53666 SWIG_TypeNewClientData(swig_types[52], SwigPyClientData_New(obj));
53667 return SWIG_Py_Void();
53668}
53669static __attribute__ ((__unused__)) PyObject *Stopper_swiginit(PyObject *, PyObject *args) {
53670 return SWIG_Python_InitShadowInstance(args);
53671}
53672static __attribute__ ((__unused__)) PyObject *_wrap_new_SimpleStopper(PyObject *, PyObject *args) {
53673 PyObject *resultobj = 0;
53674 Xapian::SimpleStopper *result = 0 ;
53675 if (!SWIG_Python_UnpackTuple(args,"new_SimpleStopper",0,0,0)) goto fail;
53676 {
53677 SWIG_Python_Thread_Allow _swig_thread_allow;
53678 {
53679 try {
53680 result = (Xapian::SimpleStopper *)new Xapian::SimpleStopper();
53681 } catch (...) {
53682 _swig_thread_allow.end();
53683 Xapian::SetPythonException();
53684 goto fail;
53685 }
53686 }
53687 _swig_thread_allow.end();
53688 }
53689 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[48], ((0x1 << 1) | 0x1) | 0);
53690 return resultobj;
53691fail:
53692 return __null;
53693}
53694static __attribute__ ((__unused__)) PyObject *_wrap_SimpleStopper_add(PyObject *, PyObject *args) {
53695 PyObject *resultobj = 0;
53696 Xapian::SimpleStopper *arg1 = (Xapian::SimpleStopper *) 0 ;
53697 std::string *arg2 = 0 ;
53698 void *argp1 = 0 ;
53699 int res1 = 0 ;
53700 int res2 = ((0)) ;
53701 PyObject *swig_obj[2] ;
53702 if (!SWIG_Python_UnpackTuple(args,"SimpleStopper_add",2,2,swig_obj)) goto fail;
53703 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[48], 0 | 0, 0);
53704 if (!(res1 >= 0)) {
53705 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "SimpleStopper_add" "', argument " "1"" of type '" "Xapian::SimpleStopper *""'"); goto fail; } while(0);
53706 }
53707 arg1 = reinterpret_cast< Xapian::SimpleStopper * >(argp1);
53708 {
53709 std::string *ptr = (std::string *)0;
53710 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
53711 if (!(res2 >= 0)) {
53712 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "SimpleStopper_add" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
53713 }
53714 if (!ptr) {
53715 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "SimpleStopper_add" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
53716 }
53717 arg2 = ptr;
53718 }
53719 {
53720 SWIG_Python_Thread_Allow _swig_thread_allow;
53721 {
53722 try {
53723 (arg1)->add((std::string const &)*arg2);
53724 } catch (...) {
53725 _swig_thread_allow.end();
53726 Xapian::SetPythonException();
53727 goto fail;
53728 }
53729 }
53730 _swig_thread_allow.end();
53731 }
53732 resultobj = SWIG_Py_Void();
53733 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
53734 return resultobj;
53735fail:
53736 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
53737 return __null;
53738}
53739static __attribute__ ((__unused__)) PyObject *_wrap_delete_SimpleStopper(PyObject *, PyObject *args) {
53740 PyObject *resultobj = 0;
53741 Xapian::SimpleStopper *arg1 = (Xapian::SimpleStopper *) 0 ;
53742 void *argp1 = 0 ;
53743 int res1 = 0 ;
53744 PyObject *swig_obj[1] ;
53745 if (!args) goto fail;
53746 swig_obj[0] = args;
53747 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[48], 0x1 | 0, 0);
53748 if (!(res1 >= 0)) {
53749 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_SimpleStopper" "', argument " "1"" of type '" "Xapian::SimpleStopper *""'"); goto fail; } while(0);
53750 }
53751 arg1 = reinterpret_cast< Xapian::SimpleStopper * >(argp1);
53752 {
53753 SWIG_Python_Thread_Allow _swig_thread_allow;
53754 {
53755 try {
53756 delete arg1;
53757 } catch (...) {
53758 _swig_thread_allow.end();
53759 Xapian::SetPythonException();
53760 goto fail;
53761 }
53762 }
53763 _swig_thread_allow.end();
53764 }
53765 resultobj = SWIG_Py_Void();
53766 return resultobj;
53767fail:
53768 return __null;
53769}
53770static __attribute__ ((__unused__)) PyObject *SimpleStopper_swigregister(PyObject *, PyObject *args) {
53771 PyObject *obj;
53772 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
53773 SWIG_TypeNewClientData(swig_types[48], SwigPyClientData_New(obj));
53774 return SWIG_Py_Void();
53775}
53776static __attribute__ ((__unused__)) PyObject *SimpleStopper_swiginit(PyObject *, PyObject *args) {
53777 return SWIG_Python_InitShadowInstance(args);
53778}
53779static __attribute__ ((__unused__)) PyObject *_wrap_delete_ValueRangeProcessor(PyObject *, PyObject *args) {
53780 PyObject *resultobj = 0;
53781 Xapian::ValueRangeProcessor *arg1 = (Xapian::ValueRangeProcessor *) 0 ;
53782 void *argp1 = 0 ;
53783 int res1 = 0 ;
53784 PyObject *swig_obj[1] ;
53785 if (!args) goto fail;
53786 swig_obj[0] = args;
53787 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[62], 0x1 | 0, 0);
53788 if (!(res1 >= 0)) {
53789 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ValueRangeProcessor" "', argument " "1"" of type '" "Xapian::ValueRangeProcessor *""'"); goto fail; } while(0);
53790 }
53791 arg1 = reinterpret_cast< Xapian::ValueRangeProcessor * >(argp1);
53792 {
53793 SWIG_Python_Thread_Allow _swig_thread_allow;
53794 {
53795 try {
53796 delete arg1;
53797 } catch (...) {
53798 _swig_thread_allow.end();
53799 Xapian::SetPythonException();
53800 goto fail;
53801 }
53802 }
53803 _swig_thread_allow.end();
53804 }
53805 resultobj = SWIG_Py_Void();
53806 return resultobj;
53807fail:
53808 return __null;
53809}
53810static __attribute__ ((__unused__)) PyObject *_wrap_ValueRangeProcessor___call__(PyObject *, PyObject *args) {
53811 PyObject *resultobj = 0;
53812 Xapian::ValueRangeProcessor *arg1 = (Xapian::ValueRangeProcessor *) 0 ;
53813 std::string *arg2 = 0 ;
53814 std::string *arg3 = 0 ;
53815 void *argp1 = 0 ;
53816 int res1 = 0 ;
53817 std::string temp2 ;
53818 std::string temp3 ;
53819 PyObject *swig_obj[3] ;
53820 Swig::Director *director = 0;
53821 bool upcall = false;
53822 Xapian::valueno result;
53823 if (!SWIG_Python_UnpackTuple(args,"ValueRangeProcessor___call__",3,3,swig_obj)) goto fail;
53824 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[62], 0 | 0, 0);
53825 if (!(res1 >= 0)) {
53826 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueRangeProcessor___call__" "', argument " "1"" of type '" "Xapian::ValueRangeProcessor *""'"); goto fail; } while(0);
53827 }
53828 arg1 = reinterpret_cast< Xapian::ValueRangeProcessor * >(argp1);
53829 {
53830 std::string *ptr = (std::string *)0;
53831 int res = SWIG_AsPtr_std_string(swig_obj[1], &ptr);
53832 if (!(res >= 0) || !ptr) {
53833 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType((((ptr ? res : -5) != (-1)) ? (ptr ? res : -5) : -5)), "in method '" "ValueRangeProcessor___call__" "', argument " "2"" of type '" "std::string &""'"); goto fail; } while(0);
53834 }
53835 temp2 = *ptr;
53836 arg2 = &temp2;
53837 if (((res >= 0) && (res & ((1 << 8) << 1)))) delete ptr;
53838 }
53839 {
53840 std::string *ptr = (std::string *)0;
53841 int res = SWIG_AsPtr_std_string(swig_obj[2], &ptr);
53842 if (!(res >= 0) || !ptr) {
53843 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType((((ptr ? res : -5) != (-1)) ? (ptr ? res : -5) : -5)), "in method '" "ValueRangeProcessor___call__" "', argument " "3"" of type '" "std::string &""'"); goto fail; } while(0);
53844 }
53845 temp3 = *ptr;
53846 arg3 = &temp3;
53847 if (((res >= 0) && (res & ((1 << 8) << 1)))) delete ptr;
53848 }
53849 director = dynamic_cast<Swig::Director*>(arg1);
53850 upcall = (director && (director->swig_get_self()==swig_obj[0]));
53851 try {
53852 {
53853 try {
53854 if (upcall) {
53855 Swig::DirectorPureVirtualException::raise("Xapian::ValueRangeProcessor::operator ()");
53856 } else {
53857 result = (Xapian::valueno)(arg1)->operator ()(*arg2,*arg3);
53858 }
53859 } catch (...) {
53860 Xapian::SetPythonException();
53861 goto fail;
53862 }
53863 }
53864 } catch (Swig::DirectorException&) {
53865 goto fail;
53866 }
53867 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
53868 {
53869 PyObject * str;
53870 PyObject * newresult;
53871 newresult = PyTuple_New(3);
53872 if (newresult == 0) {
53873 if ( --((PyObject*)(resultobj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(resultobj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(resultobj))));
53874 resultobj = __null;
53875 goto fail;
53876 }
53877 (((PyTupleObject *)(newresult))->ob_item[0] = resultobj);
53878 resultobj = newresult;
53879 str = PyString_FromStringAndSize(arg2->data(), arg2->size());
53880 if (str == 0) {
53881 if ( --((PyObject*)(resultobj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(resultobj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(resultobj))));
53882 resultobj = __null;
53883 goto fail;
53884 }
53885 (((PyTupleObject *)(resultobj))->ob_item[1] = str);
53886 str = PyString_FromStringAndSize(arg3->data(), arg3->size());
53887 if (str == 0) {
53888 if ( --((PyObject*)(resultobj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(resultobj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(resultobj))));
53889 resultobj = __null;
53890 goto fail;
53891 }
53892 (((PyTupleObject *)(resultobj))->ob_item[2] = str);
53893 }
53894 return resultobj;
53895fail:
53896 return __null;
53897}
53898static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueRangeProcessor(PyObject *, PyObject *args) {
53899 PyObject *resultobj = 0;
53900 PyObject *arg1 = (PyObject *) 0 ;
53901 PyObject *swig_obj[1] ;
53902 Xapian::ValueRangeProcessor *result = 0 ;
53903 if (!args) goto fail;
53904 swig_obj[0] = args;
53905 arg1 = swig_obj[0];
53906 {
53907 SWIG_Python_Thread_Allow _swig_thread_allow;
53908 {
53909 try {
53910 if ( arg1 != (&_Py_NoneStruct) ) {
53911 result = (Xapian::ValueRangeProcessor *)new SwigDirector_ValueRangeProcessor(arg1);
53912 } else {
53913 SWIG_Python_SetErrorMsg(PyExc_RuntimeError,"accessing abstract class or protected constructor");
53914 goto fail;
53915 }
53916 } catch (...) {
53917 _swig_thread_allow.end();
53918 Xapian::SetPythonException();
53919 goto fail;
53920 }
53921 }
53922 _swig_thread_allow.end();
53923 }
53924 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[62], ((0x1 << 1) | 0x1) | 0);
53925 return resultobj;
53926fail:
53927 return __null;
53928}
53929static __attribute__ ((__unused__)) PyObject *_wrap_disown_ValueRangeProcessor(PyObject *, PyObject *args) {
53930 PyObject *resultobj = 0;
53931 Xapian::ValueRangeProcessor *arg1 = (Xapian::ValueRangeProcessor *) 0 ;
53932 void *argp1 = 0 ;
53933 int res1 = 0 ;
53934 PyObject *swig_obj[1] ;
53935 if (!args) goto fail;
53936 swig_obj[0] = args;
53937 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[62], 0 | 0, 0);
53938 if (!(res1 >= 0)) {
53939 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "disown_ValueRangeProcessor" "', argument " "1"" of type '" "Xapian::ValueRangeProcessor *""'"); goto fail; } while(0);
53940 }
53941 arg1 = reinterpret_cast< Xapian::ValueRangeProcessor * >(argp1);
53942 {
53943 SWIG_Python_Thread_Allow _swig_thread_allow;
53944 {
53945 Swig::Director *director = dynamic_cast<Swig::Director *>(arg1);
53946 if (director) director->swig_disown();
53947 }
53948 _swig_thread_allow.end();
53949 }
53950 resultobj = SWIG_Py_Void();
53951 return resultobj;
53952fail:
53953 return __null;
53954}
53955static __attribute__ ((__unused__)) PyObject *ValueRangeProcessor_swigregister(PyObject *, PyObject *args) {
53956 PyObject *obj;
53957 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
53958 SWIG_TypeNewClientData(swig_types[62], SwigPyClientData_New(obj));
53959 return SWIG_Py_Void();
53960}
53961static __attribute__ ((__unused__)) PyObject *ValueRangeProcessor_swiginit(PyObject *, PyObject *args) {
53962 return SWIG_Python_InitShadowInstance(args);
53963}
53964static __attribute__ ((__unused__)) PyObject *_wrap_new_StringValueRangeProcessor__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
53965 PyObject *resultobj = 0;
53966 Xapian::valueno arg1 ;
53967 unsigned int val1 ;
53968 int ecode1 = 0 ;
53969 Xapian::StringValueRangeProcessor *result = 0 ;
53970 if ((nobjs < 1) || (nobjs > 1)) goto fail;
53971 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
53972 if (!(ecode1 >= 0)) {
53973 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_StringValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
53974 }
53975 arg1 = static_cast< Xapian::valueno >(val1);
53976 {
53977 SWIG_Python_Thread_Allow _swig_thread_allow;
53978 {
53979 try {
53980 result = (Xapian::StringValueRangeProcessor *)new Xapian::StringValueRangeProcessor(arg1);
53981 } catch (...) {
53982 _swig_thread_allow.end();
53983 Xapian::SetPythonException();
53984 goto fail;
53985 }
53986 }
53987 _swig_thread_allow.end();
53988 }
53989 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[53], ((0x1 << 1) | 0x1) | 0);
53990 return resultobj;
53991fail:
53992 return __null;
53993}
53994static __attribute__ ((__unused__)) PyObject *_wrap_new_StringValueRangeProcessor__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
53995 PyObject *resultobj = 0;
53996 Xapian::valueno arg1 ;
53997 std::string *arg2 = 0 ;
53998 bool arg3 ;
53999 unsigned int val1 ;
54000 int ecode1 = 0 ;
54001 int res2 = ((0)) ;
54002 bool val3 ;
54003 int ecode3 = 0 ;
54004 Xapian::StringValueRangeProcessor *result = 0 ;
54005 if ((nobjs < 3) || (nobjs > 3)) goto fail;
54006 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54007 if (!(ecode1 >= 0)) {
54008 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_StringValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54009 }
54010 arg1 = static_cast< Xapian::valueno >(val1);
54011 {
54012 std::string *ptr = (std::string *)0;
54013 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
54014 if (!(res2 >= 0)) {
54015 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_StringValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54016 }
54017 if (!ptr) {
54018 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_StringValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54019 }
54020 arg2 = ptr;
54021 }
54022 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
54023 if (!(ecode3 >= 0)) {
54024 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_StringValueRangeProcessor" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
54025 }
54026 arg3 = static_cast< bool >(val3);
54027 {
54028 SWIG_Python_Thread_Allow _swig_thread_allow;
54029 {
54030 try {
54031 result = (Xapian::StringValueRangeProcessor *)new Xapian::StringValueRangeProcessor(arg1,(std::string const &)*arg2,arg3);
54032 } catch (...) {
54033 _swig_thread_allow.end();
54034 Xapian::SetPythonException();
54035 goto fail;
54036 }
54037 }
54038 _swig_thread_allow.end();
54039 }
54040 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[53], ((0x1 << 1) | 0x1) | 0);
54041 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54042 return resultobj;
54043fail:
54044 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54045 return __null;
54046}
54047static __attribute__ ((__unused__)) PyObject *_wrap_new_StringValueRangeProcessor__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
54048 PyObject *resultobj = 0;
54049 Xapian::valueno arg1 ;
54050 std::string *arg2 = 0 ;
54051 unsigned int val1 ;
54052 int ecode1 = 0 ;
54053 int res2 = ((0)) ;
54054 Xapian::StringValueRangeProcessor *result = 0 ;
54055 if ((nobjs < 2) || (nobjs > 2)) goto fail;
54056 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54057 if (!(ecode1 >= 0)) {
54058 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_StringValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54059 }
54060 arg1 = static_cast< Xapian::valueno >(val1);
54061 {
54062 std::string *ptr = (std::string *)0;
54063 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
54064 if (!(res2 >= 0)) {
54065 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_StringValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54066 }
54067 if (!ptr) {
54068 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_StringValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54069 }
54070 arg2 = ptr;
54071 }
54072 {
54073 SWIG_Python_Thread_Allow _swig_thread_allow;
54074 {
54075 try {
54076 result = (Xapian::StringValueRangeProcessor *)new Xapian::StringValueRangeProcessor(arg1,(std::string const &)*arg2);
54077 } catch (...) {
54078 _swig_thread_allow.end();
54079 Xapian::SetPythonException();
54080 goto fail;
54081 }
54082 }
54083 _swig_thread_allow.end();
54084 }
54085 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[53], ((0x1 << 1) | 0x1) | 0);
54086 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54087 return resultobj;
54088fail:
54089 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54090 return __null;
54091}
54092static __attribute__ ((__unused__)) PyObject *_wrap_new_StringValueRangeProcessor(PyObject *self, PyObject *args) {
54093 int argc;
54094 PyObject *argv[4];
54095 if (!(argc = SWIG_Python_UnpackTuple(args,"new_StringValueRangeProcessor",0,3,argv))) goto fail;
54096 --argc;
54097 if (argc == 1) {
54098 return _wrap_new_StringValueRangeProcessor__SWIG_0(self, argc, argv);
54099 }
54100 if (argc == 2) {
54101 return _wrap_new_StringValueRangeProcessor__SWIG_2(self, argc, argv);
54102 }
54103 if (argc == 3) {
54104 return _wrap_new_StringValueRangeProcessor__SWIG_1(self, argc, argv);
54105 }
54106fail:
54107 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_StringValueRangeProcessor'.\n"
54108 " Possible C/C++ prototypes are:\n"
54109 " Xapian::StringValueRangeProcessor(Xapian::valueno)\n"
54110 " Xapian::StringValueRangeProcessor(Xapian::valueno,std::string const &,bool)\n"
54111 " Xapian::StringValueRangeProcessor(Xapian::valueno,std::string const &)\n");
54112 return __null;
54113}
54114static __attribute__ ((__unused__)) PyObject *_wrap_delete_StringValueRangeProcessor(PyObject *, PyObject *args) {
54115 PyObject *resultobj = 0;
54116 Xapian::StringValueRangeProcessor *arg1 = (Xapian::StringValueRangeProcessor *) 0 ;
54117 void *argp1 = 0 ;
54118 int res1 = 0 ;
54119 PyObject *swig_obj[1] ;
54120 if (!args) goto fail;
54121 swig_obj[0] = args;
54122 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[53], 0x1 | 0, 0);
54123 if (!(res1 >= 0)) {
54124 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_StringValueRangeProcessor" "', argument " "1"" of type '" "Xapian::StringValueRangeProcessor *""'"); goto fail; } while(0);
54125 }
54126 arg1 = reinterpret_cast< Xapian::StringValueRangeProcessor * >(argp1);
54127 {
54128 SWIG_Python_Thread_Allow _swig_thread_allow;
54129 {
54130 try {
54131 delete arg1;
54132 } catch (...) {
54133 _swig_thread_allow.end();
54134 Xapian::SetPythonException();
54135 goto fail;
54136 }
54137 }
54138 _swig_thread_allow.end();
54139 }
54140 resultobj = SWIG_Py_Void();
54141 return resultobj;
54142fail:
54143 return __null;
54144}
54145static __attribute__ ((__unused__)) PyObject *StringValueRangeProcessor_swigregister(PyObject *, PyObject *args) {
54146 PyObject *obj;
54147 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
54148 SWIG_TypeNewClientData(swig_types[53], SwigPyClientData_New(obj));
54149 return SWIG_Py_Void();
54150}
54151static __attribute__ ((__unused__)) PyObject *StringValueRangeProcessor_swiginit(PyObject *, PyObject *args) {
54152 return SWIG_Python_InitShadowInstance(args);
54153}
54154static __attribute__ ((__unused__)) PyObject *_wrap_new_DateValueRangeProcessor__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
54155 PyObject *resultobj = 0;
54156 Xapian::valueno arg1 ;
54157 bool arg2 ;
54158 int arg3 ;
54159 unsigned int val1 ;
54160 int ecode1 = 0 ;
54161 bool val2 ;
54162 int ecode2 = 0 ;
54163 int val3 ;
54164 int ecode3 = 0 ;
54165 Xapian::DateValueRangeProcessor *result = 0 ;
54166 if ((nobjs < 3) || (nobjs > 3)) goto fail;
54167 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54168 if (!(ecode1 >= 0)) {
54169 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54170 }
54171 arg1 = static_cast< Xapian::valueno >(val1);
54172 ecode2 = SWIG_AsVal_bool(swig_obj[1], &val2);
54173 if (!(ecode2 >= 0)) {
54174 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "bool""'"); goto fail; } while(0);
54175 }
54176 arg2 = static_cast< bool >(val2);
54177 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
54178 if (!(ecode3 >= 0)) {
54179 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "3"" of type '" "int""'"); goto fail; } while(0);
54180 }
54181 arg3 = static_cast< int >(val3);
54182 {
54183 SWIG_Python_Thread_Allow _swig_thread_allow;
54184 {
54185 try {
54186 result = (Xapian::DateValueRangeProcessor *)new Xapian::DateValueRangeProcessor(arg1,arg2,arg3);
54187 } catch (...) {
54188 _swig_thread_allow.end();
54189 Xapian::SetPythonException();
54190 goto fail;
54191 }
54192 }
54193 _swig_thread_allow.end();
54194 }
54195 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[12], ((0x1 << 1) | 0x1) | 0);
54196 return resultobj;
54197fail:
54198 return __null;
54199}
54200static __attribute__ ((__unused__)) PyObject *_wrap_new_DateValueRangeProcessor__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
54201 PyObject *resultobj = 0;
54202 Xapian::valueno arg1 ;
54203 bool arg2 ;
54204 unsigned int val1 ;
54205 int ecode1 = 0 ;
54206 bool val2 ;
54207 int ecode2 = 0 ;
54208 Xapian::DateValueRangeProcessor *result = 0 ;
54209 if ((nobjs < 2) || (nobjs > 2)) goto fail;
54210 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54211 if (!(ecode1 >= 0)) {
54212 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54213 }
54214 arg1 = static_cast< Xapian::valueno >(val1);
54215 ecode2 = SWIG_AsVal_bool(swig_obj[1], &val2);
54216 if (!(ecode2 >= 0)) {
54217 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "bool""'"); goto fail; } while(0);
54218 }
54219 arg2 = static_cast< bool >(val2);
54220 {
54221 SWIG_Python_Thread_Allow _swig_thread_allow;
54222 {
54223 try {
54224 result = (Xapian::DateValueRangeProcessor *)new Xapian::DateValueRangeProcessor(arg1,arg2);
54225 } catch (...) {
54226 _swig_thread_allow.end();
54227 Xapian::SetPythonException();
54228 goto fail;
54229 }
54230 }
54231 _swig_thread_allow.end();
54232 }
54233 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[12], ((0x1 << 1) | 0x1) | 0);
54234 return resultobj;
54235fail:
54236 return __null;
54237}
54238static __attribute__ ((__unused__)) PyObject *_wrap_new_DateValueRangeProcessor__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
54239 PyObject *resultobj = 0;
54240 Xapian::valueno arg1 ;
54241 unsigned int val1 ;
54242 int ecode1 = 0 ;
54243 Xapian::DateValueRangeProcessor *result = 0 ;
54244 if ((nobjs < 1) || (nobjs > 1)) goto fail;
54245 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54246 if (!(ecode1 >= 0)) {
54247 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54248 }
54249 arg1 = static_cast< Xapian::valueno >(val1);
54250 {
54251 SWIG_Python_Thread_Allow _swig_thread_allow;
54252 {
54253 try {
54254 result = (Xapian::DateValueRangeProcessor *)new Xapian::DateValueRangeProcessor(arg1);
54255 } catch (...) {
54256 _swig_thread_allow.end();
54257 Xapian::SetPythonException();
54258 goto fail;
54259 }
54260 }
54261 _swig_thread_allow.end();
54262 }
54263 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[12], ((0x1 << 1) | 0x1) | 0);
54264 return resultobj;
54265fail:
54266 return __null;
54267}
54268static __attribute__ ((__unused__)) PyObject *_wrap_new_DateValueRangeProcessor__SWIG_3(PyObject *, int nobjs, PyObject **swig_obj) {
54269 PyObject *resultobj = 0;
54270 Xapian::valueno arg1 ;
54271 std::string *arg2 = 0 ;
54272 bool arg3 ;
54273 bool arg4 ;
54274 int arg5 ;
54275 unsigned int val1 ;
54276 int ecode1 = 0 ;
54277 int res2 = ((0)) ;
54278 bool val3 ;
54279 int ecode3 = 0 ;
54280 bool val4 ;
54281 int ecode4 = 0 ;
54282 int val5 ;
54283 int ecode5 = 0 ;
54284 Xapian::DateValueRangeProcessor *result = 0 ;
54285 if ((nobjs < 5) || (nobjs > 5)) goto fail;
54286 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54287 if (!(ecode1 >= 0)) {
54288 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54289 }
54290 arg1 = static_cast< Xapian::valueno >(val1);
54291 {
54292 std::string *ptr = (std::string *)0;
54293 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
54294 if (!(res2 >= 0)) {
54295 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54296 }
54297 if (!ptr) {
54298 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54299 }
54300 arg2 = ptr;
54301 }
54302 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
54303 if (!(ecode3 >= 0)) {
54304 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
54305 }
54306 arg3 = static_cast< bool >(val3);
54307 ecode4 = SWIG_AsVal_bool(swig_obj[3], &val4);
54308 if (!(ecode4 >= 0)) {
54309 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "4"" of type '" "bool""'"); goto fail; } while(0);
54310 }
54311 arg4 = static_cast< bool >(val4);
54312 ecode5 = SWIG_AsVal_int(swig_obj[4], &val5);
54313 if (!(ecode5 >= 0)) {
54314 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode5 != (-1)) ? ecode5 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "5"" of type '" "int""'"); goto fail; } while(0);
54315 }
54316 arg5 = static_cast< int >(val5);
54317 {
54318 SWIG_Python_Thread_Allow _swig_thread_allow;
54319 {
54320 try {
54321 result = (Xapian::DateValueRangeProcessor *)new Xapian::DateValueRangeProcessor(arg1,(std::string const &)*arg2,arg3,arg4,arg5);
54322 } catch (...) {
54323 _swig_thread_allow.end();
54324 Xapian::SetPythonException();
54325 goto fail;
54326 }
54327 }
54328 _swig_thread_allow.end();
54329 }
54330 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[12], ((0x1 << 1) | 0x1) | 0);
54331 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54332 return resultobj;
54333fail:
54334 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54335 return __null;
54336}
54337static __attribute__ ((__unused__)) PyObject *_wrap_new_DateValueRangeProcessor__SWIG_4(PyObject *, int nobjs, PyObject **swig_obj) {
54338 PyObject *resultobj = 0;
54339 Xapian::valueno arg1 ;
54340 std::string *arg2 = 0 ;
54341 bool arg3 ;
54342 bool arg4 ;
54343 unsigned int val1 ;
54344 int ecode1 = 0 ;
54345 int res2 = ((0)) ;
54346 bool val3 ;
54347 int ecode3 = 0 ;
54348 bool val4 ;
54349 int ecode4 = 0 ;
54350 Xapian::DateValueRangeProcessor *result = 0 ;
54351 if ((nobjs < 4) || (nobjs > 4)) goto fail;
54352 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54353 if (!(ecode1 >= 0)) {
54354 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54355 }
54356 arg1 = static_cast< Xapian::valueno >(val1);
54357 {
54358 std::string *ptr = (std::string *)0;
54359 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
54360 if (!(res2 >= 0)) {
54361 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54362 }
54363 if (!ptr) {
54364 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54365 }
54366 arg2 = ptr;
54367 }
54368 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
54369 if (!(ecode3 >= 0)) {
54370 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
54371 }
54372 arg3 = static_cast< bool >(val3);
54373 ecode4 = SWIG_AsVal_bool(swig_obj[3], &val4);
54374 if (!(ecode4 >= 0)) {
54375 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "4"" of type '" "bool""'"); goto fail; } while(0);
54376 }
54377 arg4 = static_cast< bool >(val4);
54378 {
54379 SWIG_Python_Thread_Allow _swig_thread_allow;
54380 {
54381 try {
54382 result = (Xapian::DateValueRangeProcessor *)new Xapian::DateValueRangeProcessor(arg1,(std::string const &)*arg2,arg3,arg4);
54383 } catch (...) {
54384 _swig_thread_allow.end();
54385 Xapian::SetPythonException();
54386 goto fail;
54387 }
54388 }
54389 _swig_thread_allow.end();
54390 }
54391 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[12], ((0x1 << 1) | 0x1) | 0);
54392 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54393 return resultobj;
54394fail:
54395 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54396 return __null;
54397}
54398static __attribute__ ((__unused__)) PyObject *_wrap_new_DateValueRangeProcessor__SWIG_5(PyObject *, int nobjs, PyObject **swig_obj) {
54399 PyObject *resultobj = 0;
54400 Xapian::valueno arg1 ;
54401 std::string *arg2 = 0 ;
54402 bool arg3 ;
54403 unsigned int val1 ;
54404 int ecode1 = 0 ;
54405 int res2 = ((0)) ;
54406 bool val3 ;
54407 int ecode3 = 0 ;
54408 Xapian::DateValueRangeProcessor *result = 0 ;
54409 if ((nobjs < 3) || (nobjs > 3)) goto fail;
54410 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54411 if (!(ecode1 >= 0)) {
54412 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54413 }
54414 arg1 = static_cast< Xapian::valueno >(val1);
54415 {
54416 std::string *ptr = (std::string *)0;
54417 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
54418 if (!(res2 >= 0)) {
54419 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54420 }
54421 if (!ptr) {
54422 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54423 }
54424 arg2 = ptr;
54425 }
54426 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
54427 if (!(ecode3 >= 0)) {
54428 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
54429 }
54430 arg3 = static_cast< bool >(val3);
54431 {
54432 SWIG_Python_Thread_Allow _swig_thread_allow;
54433 {
54434 try {
54435 result = (Xapian::DateValueRangeProcessor *)new Xapian::DateValueRangeProcessor(arg1,(std::string const &)*arg2,arg3);
54436 } catch (...) {
54437 _swig_thread_allow.end();
54438 Xapian::SetPythonException();
54439 goto fail;
54440 }
54441 }
54442 _swig_thread_allow.end();
54443 }
54444 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[12], ((0x1 << 1) | 0x1) | 0);
54445 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54446 return resultobj;
54447fail:
54448 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54449 return __null;
54450}
54451static __attribute__ ((__unused__)) PyObject *_wrap_new_DateValueRangeProcessor__SWIG_6(PyObject *, int nobjs, PyObject **swig_obj) {
54452 PyObject *resultobj = 0;
54453 Xapian::valueno arg1 ;
54454 std::string *arg2 = 0 ;
54455 unsigned int val1 ;
54456 int ecode1 = 0 ;
54457 int res2 = ((0)) ;
54458 Xapian::DateValueRangeProcessor *result = 0 ;
54459 if ((nobjs < 2) || (nobjs > 2)) goto fail;
54460 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54461 if (!(ecode1 >= 0)) {
54462 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54463 }
54464 arg1 = static_cast< Xapian::valueno >(val1);
54465 {
54466 std::string *ptr = (std::string *)0;
54467 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
54468 if (!(res2 >= 0)) {
54469 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54470 }
54471 if (!ptr) {
54472 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_DateValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54473 }
54474 arg2 = ptr;
54475 }
54476 {
54477 SWIG_Python_Thread_Allow _swig_thread_allow;
54478 {
54479 try {
54480 result = (Xapian::DateValueRangeProcessor *)new Xapian::DateValueRangeProcessor(arg1,(std::string const &)*arg2);
54481 } catch (...) {
54482 _swig_thread_allow.end();
54483 Xapian::SetPythonException();
54484 goto fail;
54485 }
54486 }
54487 _swig_thread_allow.end();
54488 }
54489 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[12], ((0x1 << 1) | 0x1) | 0);
54490 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54491 return resultobj;
54492fail:
54493 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54494 return __null;
54495}
54496static __attribute__ ((__unused__)) PyObject *_wrap_new_DateValueRangeProcessor(PyObject *self, PyObject *args) {
54497 int argc;
54498 PyObject *argv[6];
54499 if (!(argc = SWIG_Python_UnpackTuple(args,"new_DateValueRangeProcessor",0,5,argv))) goto fail;
54500 --argc;
54501 if (argc == 1) {
54502 return _wrap_new_DateValueRangeProcessor__SWIG_2(self, argc, argv);
54503 }
54504 if (argc == 2) {
54505 int _v = 0;
54506 {
54507 int res = SWIG_anystring_as_ptr(&(argv[1]), (std::string**)(0));
54508 _v = ((res >= 0) ? 1 : 0);
54509 }
54510 if (!_v) goto check_2;
54511 return _wrap_new_DateValueRangeProcessor__SWIG_6(self, argc, argv);
54512 }
54513check_2:
54514 if (argc == 2) {
54515 return _wrap_new_DateValueRangeProcessor__SWIG_1(self, argc, argv);
54516 }
54517 if (argc == 3) {
54518 int _v = 0;
54519 {
54520 int res = SWIG_anystring_as_ptr(&(argv[1]), (std::string**)(0));
54521 _v = ((res >= 0) ? 1 : 0);
54522 }
54523 if (!_v) goto check_4;
54524 {
54525 {
54526 int res = SWIG_AsVal_bool(argv[2], __null);
54527 _v = ((res >= 0) ? 1 : 0);
54528 }
54529 }
54530 if (!_v) goto check_4;
54531 return _wrap_new_DateValueRangeProcessor__SWIG_5(self, argc, argv);
54532 }
54533check_4:
54534 if (argc == 3) {
54535 return _wrap_new_DateValueRangeProcessor__SWIG_0(self, argc, argv);
54536 }
54537 if (argc == 4) {
54538 return _wrap_new_DateValueRangeProcessor__SWIG_4(self, argc, argv);
54539 }
54540 if (argc == 5) {
54541 return _wrap_new_DateValueRangeProcessor__SWIG_3(self, argc, argv);
54542 }
54543fail:
54544 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_DateValueRangeProcessor'.\n"
54545 " Possible C/C++ prototypes are:\n"
54546 " Xapian::DateValueRangeProcessor(Xapian::valueno,bool,int)\n"
54547 " Xapian::DateValueRangeProcessor(Xapian::valueno,bool)\n"
54548 " Xapian::DateValueRangeProcessor(Xapian::valueno)\n"
54549 " Xapian::DateValueRangeProcessor(Xapian::valueno,std::string const &,bool,bool,int)\n"
54550 " Xapian::DateValueRangeProcessor(Xapian::valueno,std::string const &,bool,bool)\n"
54551 " Xapian::DateValueRangeProcessor(Xapian::valueno,std::string const &,bool)\n"
54552 " Xapian::DateValueRangeProcessor(Xapian::valueno,std::string const &)\n");
54553 return __null;
54554}
54555static __attribute__ ((__unused__)) PyObject *_wrap_delete_DateValueRangeProcessor(PyObject *, PyObject *args) {
54556 PyObject *resultobj = 0;
54557 Xapian::DateValueRangeProcessor *arg1 = (Xapian::DateValueRangeProcessor *) 0 ;
54558 void *argp1 = 0 ;
54559 int res1 = 0 ;
54560 PyObject *swig_obj[1] ;
54561 if (!args) goto fail;
54562 swig_obj[0] = args;
54563 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[12], 0x1 | 0, 0);
54564 if (!(res1 >= 0)) {
54565 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_DateValueRangeProcessor" "', argument " "1"" of type '" "Xapian::DateValueRangeProcessor *""'"); goto fail; } while(0);
54566 }
54567 arg1 = reinterpret_cast< Xapian::DateValueRangeProcessor * >(argp1);
54568 {
54569 SWIG_Python_Thread_Allow _swig_thread_allow;
54570 {
54571 try {
54572 delete arg1;
54573 } catch (...) {
54574 _swig_thread_allow.end();
54575 Xapian::SetPythonException();
54576 goto fail;
54577 }
54578 }
54579 _swig_thread_allow.end();
54580 }
54581 resultobj = SWIG_Py_Void();
54582 return resultobj;
54583fail:
54584 return __null;
54585}
54586static __attribute__ ((__unused__)) PyObject *DateValueRangeProcessor_swigregister(PyObject *, PyObject *args) {
54587 PyObject *obj;
54588 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
54589 SWIG_TypeNewClientData(swig_types[12], SwigPyClientData_New(obj));
54590 return SWIG_Py_Void();
54591}
54592static __attribute__ ((__unused__)) PyObject *DateValueRangeProcessor_swiginit(PyObject *, PyObject *args) {
54593 return SWIG_Python_InitShadowInstance(args);
54594}
54595static __attribute__ ((__unused__)) PyObject *_wrap_new_NumberValueRangeProcessor__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
54596 PyObject *resultobj = 0;
54597 Xapian::valueno arg1 ;
54598 unsigned int val1 ;
54599 int ecode1 = 0 ;
54600 Xapian::NumberValueRangeProcessor *result = 0 ;
54601 if ((nobjs < 1) || (nobjs > 1)) goto fail;
54602 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54603 if (!(ecode1 >= 0)) {
54604 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_NumberValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54605 }
54606 arg1 = static_cast< Xapian::valueno >(val1);
54607 {
54608 SWIG_Python_Thread_Allow _swig_thread_allow;
54609 {
54610 try {
54611 result = (Xapian::NumberValueRangeProcessor *)new Xapian::NumberValueRangeProcessor(arg1);
54612 } catch (...) {
54613 _swig_thread_allow.end();
54614 Xapian::SetPythonException();
54615 goto fail;
54616 }
54617 }
54618 _swig_thread_allow.end();
54619 }
54620 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[36], ((0x1 << 1) | 0x1) | 0);
54621 return resultobj;
54622fail:
54623 return __null;
54624}
54625static __attribute__ ((__unused__)) PyObject *_wrap_new_NumberValueRangeProcessor__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
54626 PyObject *resultobj = 0;
54627 Xapian::valueno arg1 ;
54628 std::string *arg2 = 0 ;
54629 bool arg3 ;
54630 unsigned int val1 ;
54631 int ecode1 = 0 ;
54632 int res2 = ((0)) ;
54633 bool val3 ;
54634 int ecode3 = 0 ;
54635 Xapian::NumberValueRangeProcessor *result = 0 ;
54636 if ((nobjs < 3) || (nobjs > 3)) goto fail;
54637 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54638 if (!(ecode1 >= 0)) {
54639 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_NumberValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54640 }
54641 arg1 = static_cast< Xapian::valueno >(val1);
54642 {
54643 std::string *ptr = (std::string *)0;
54644 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
54645 if (!(res2 >= 0)) {
54646 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_NumberValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54647 }
54648 if (!ptr) {
54649 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NumberValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54650 }
54651 arg2 = ptr;
54652 }
54653 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
54654 if (!(ecode3 >= 0)) {
54655 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "new_NumberValueRangeProcessor" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
54656 }
54657 arg3 = static_cast< bool >(val3);
54658 {
54659 SWIG_Python_Thread_Allow _swig_thread_allow;
54660 {
54661 try {
54662 result = (Xapian::NumberValueRangeProcessor *)new Xapian::NumberValueRangeProcessor(arg1,(std::string const &)*arg2,arg3);
54663 } catch (...) {
54664 _swig_thread_allow.end();
54665 Xapian::SetPythonException();
54666 goto fail;
54667 }
54668 }
54669 _swig_thread_allow.end();
54670 }
54671 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[36], ((0x1 << 1) | 0x1) | 0);
54672 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54673 return resultobj;
54674fail:
54675 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54676 return __null;
54677}
54678static __attribute__ ((__unused__)) PyObject *_wrap_new_NumberValueRangeProcessor__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
54679 PyObject *resultobj = 0;
54680 Xapian::valueno arg1 ;
54681 std::string *arg2 = 0 ;
54682 unsigned int val1 ;
54683 int ecode1 = 0 ;
54684 int res2 = ((0)) ;
54685 Xapian::NumberValueRangeProcessor *result = 0 ;
54686 if ((nobjs < 2) || (nobjs > 2)) goto fail;
54687 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
54688 if (!(ecode1 >= 0)) {
54689 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_NumberValueRangeProcessor" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
54690 }
54691 arg1 = static_cast< Xapian::valueno >(val1);
54692 {
54693 std::string *ptr = (std::string *)0;
54694 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
54695 if (!(res2 >= 0)) {
54696 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "new_NumberValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54697 }
54698 if (!ptr) {
54699 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_NumberValueRangeProcessor" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
54700 }
54701 arg2 = ptr;
54702 }
54703 {
54704 SWIG_Python_Thread_Allow _swig_thread_allow;
54705 {
54706 try {
54707 result = (Xapian::NumberValueRangeProcessor *)new Xapian::NumberValueRangeProcessor(arg1,(std::string const &)*arg2);
54708 } catch (...) {
54709 _swig_thread_allow.end();
54710 Xapian::SetPythonException();
54711 goto fail;
54712 }
54713 }
54714 _swig_thread_allow.end();
54715 }
54716 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[36], ((0x1 << 1) | 0x1) | 0);
54717 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54718 return resultobj;
54719fail:
54720 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
54721 return __null;
54722}
54723static __attribute__ ((__unused__)) PyObject *_wrap_new_NumberValueRangeProcessor(PyObject *self, PyObject *args) {
54724 int argc;
54725 PyObject *argv[4];
54726 if (!(argc = SWIG_Python_UnpackTuple(args,"new_NumberValueRangeProcessor",0,3,argv))) goto fail;
54727 --argc;
54728 if (argc == 1) {
54729 return _wrap_new_NumberValueRangeProcessor__SWIG_0(self, argc, argv);
54730 }
54731 if (argc == 2) {
54732 return _wrap_new_NumberValueRangeProcessor__SWIG_2(self, argc, argv);
54733 }
54734 if (argc == 3) {
54735 return _wrap_new_NumberValueRangeProcessor__SWIG_1(self, argc, argv);
54736 }
54737fail:
54738 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_NumberValueRangeProcessor'.\n"
54739 " Possible C/C++ prototypes are:\n"
54740 " Xapian::NumberValueRangeProcessor(Xapian::valueno)\n"
54741 " Xapian::NumberValueRangeProcessor(Xapian::valueno,std::string const &,bool)\n"
54742 " Xapian::NumberValueRangeProcessor(Xapian::valueno,std::string const &)\n");
54743 return __null;
54744}
54745static __attribute__ ((__unused__)) PyObject *_wrap_delete_NumberValueRangeProcessor(PyObject *, PyObject *args) {
54746 PyObject *resultobj = 0;
54747 Xapian::NumberValueRangeProcessor *arg1 = (Xapian::NumberValueRangeProcessor *) 0 ;
54748 void *argp1 = 0 ;
54749 int res1 = 0 ;
54750 PyObject *swig_obj[1] ;
54751 if (!args) goto fail;
54752 swig_obj[0] = args;
54753 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[36], 0x1 | 0, 0);
54754 if (!(res1 >= 0)) {
54755 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_NumberValueRangeProcessor" "', argument " "1"" of type '" "Xapian::NumberValueRangeProcessor *""'"); goto fail; } while(0);
54756 }
54757 arg1 = reinterpret_cast< Xapian::NumberValueRangeProcessor * >(argp1);
54758 {
54759 SWIG_Python_Thread_Allow _swig_thread_allow;
54760 {
54761 try {
54762 delete arg1;
54763 } catch (...) {
54764 _swig_thread_allow.end();
54765 Xapian::SetPythonException();
54766 goto fail;
54767 }
54768 }
54769 _swig_thread_allow.end();
54770 }
54771 resultobj = SWIG_Py_Void();
54772 return resultobj;
54773fail:
54774 return __null;
54775}
54776static __attribute__ ((__unused__)) PyObject *NumberValueRangeProcessor_swigregister(PyObject *, PyObject *args) {
54777 PyObject *obj;
54778 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
54779 SWIG_TypeNewClientData(swig_types[36], SwigPyClientData_New(obj));
54780 return SWIG_Py_Void();
54781}
54782static __attribute__ ((__unused__)) PyObject *NumberValueRangeProcessor_swiginit(PyObject *, PyObject *args) {
54783 return SWIG_Python_InitShadowInstance(args);
54784}
54785static __attribute__ ((__unused__)) PyObject *_wrap_new_QueryParser(PyObject *, PyObject *args) {
54786 PyObject *resultobj = 0;
54787 Xapian::QueryParser *result = 0 ;
54788 if (!SWIG_Python_UnpackTuple(args,"new_QueryParser",0,0,0)) goto fail;
54789 {
54790 SWIG_Python_Thread_Allow _swig_thread_allow;
54791 {
54792 try {
54793 result = (Xapian::QueryParser *)new Xapian::QueryParser();
54794 } catch (...) {
54795 _swig_thread_allow.end();
54796 Xapian::SetPythonException();
54797 goto fail;
54798 }
54799 }
54800 _swig_thread_allow.end();
54801 }
54802 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[41], ((0x1 << 1) | 0x1) | 0);
54803 return resultobj;
54804fail:
54805 return __null;
54806}
54807static __attribute__ ((__unused__)) PyObject *_wrap_delete_QueryParser(PyObject *, PyObject *args) {
54808 PyObject *resultobj = 0;
54809 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
54810 void *argp1 = 0 ;
54811 int res1 = 0 ;
54812 PyObject *swig_obj[1] ;
54813 if (!args) goto fail;
54814 swig_obj[0] = args;
54815 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0x1 | 0, 0);
54816 if (!(res1 >= 0)) {
54817 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_QueryParser" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
54818 }
54819 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
54820 {
54821 SWIG_Python_Thread_Allow _swig_thread_allow;
54822 {
54823 try {
54824 delete arg1;
54825 } catch (...) {
54826 _swig_thread_allow.end();
54827 Xapian::SetPythonException();
54828 goto fail;
54829 }
54830 }
54831 _swig_thread_allow.end();
54832 }
54833 resultobj = SWIG_Py_Void();
54834 return resultobj;
54835fail:
54836 return __null;
54837}
54838static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_set_stemmer(PyObject *, PyObject *args) {
54839 PyObject *resultobj = 0;
54840 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
54841 Xapian::Stem *arg2 = 0 ;
54842 void *argp1 = 0 ;
54843 int res1 = 0 ;
54844 void *argp2 = 0 ;
54845 int res2 = 0 ;
54846 PyObject *swig_obj[2] ;
54847 if (!SWIG_Python_UnpackTuple(args,"QueryParser_set_stemmer",2,2,swig_obj)) goto fail;
54848 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
54849 if (!(res1 >= 0)) {
54850 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_set_stemmer" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
54851 }
54852 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
54853 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[50], 0 | 0, 0);
54854 if (!(res2 >= 0)) {
54855 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_set_stemmer" "', argument " "2"" of type '" "Xapian::Stem const &""'"); goto fail; } while(0);
54856 }
54857 if (!argp2) {
54858 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_set_stemmer" "', argument " "2"" of type '" "Xapian::Stem const &""'"); goto fail; } while(0);
54859 }
54860 arg2 = reinterpret_cast< Xapian::Stem * >(argp2);
54861 {
54862 SWIG_Python_Thread_Allow _swig_thread_allow;
54863 {
54864 try {
54865 (arg1)->set_stemmer((Xapian::Stem const &)*arg2);
54866 } catch (...) {
54867 _swig_thread_allow.end();
54868 Xapian::SetPythonException();
54869 goto fail;
54870 }
54871 }
54872 _swig_thread_allow.end();
54873 }
54874 resultobj = SWIG_Py_Void();
54875 return resultobj;
54876fail:
54877 return __null;
54878}
54879static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_set_stemming_strategy(PyObject *, PyObject *args) {
54880 PyObject *resultobj = 0;
54881 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
54882 Xapian::QueryParser::stem_strategy arg2 ;
54883 void *argp1 = 0 ;
54884 int res1 = 0 ;
54885 int val2 ;
54886 int ecode2 = 0 ;
54887 PyObject *swig_obj[2] ;
54888 if (!SWIG_Python_UnpackTuple(args,"QueryParser_set_stemming_strategy",2,2,swig_obj)) goto fail;
54889 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
54890 if (!(res1 >= 0)) {
54891 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_set_stemming_strategy" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
54892 }
54893 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
54894 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
54895 if (!(ecode2 >= 0)) {
54896 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "QueryParser_set_stemming_strategy" "', argument " "2"" of type '" "Xapian::QueryParser::stem_strategy""'"); goto fail; } while(0);
54897 }
54898 arg2 = static_cast< Xapian::QueryParser::stem_strategy >(val2);
54899 {
54900 SWIG_Python_Thread_Allow _swig_thread_allow;
54901 {
54902 try {
54903 (arg1)->set_stemming_strategy(arg2);
54904 } catch (...) {
54905 _swig_thread_allow.end();
54906 Xapian::SetPythonException();
54907 goto fail;
54908 }
54909 }
54910 _swig_thread_allow.end();
54911 }
54912 resultobj = SWIG_Py_Void();
54913 return resultobj;
54914fail:
54915 return __null;
54916}
54917static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_set_stopper__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
54918 PyObject *resultobj = 0;
54919 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
54920 Xapian::Stopper *arg2 = (Xapian::Stopper *) 0 ;
54921 void *argp1 = 0 ;
54922 int res1 = 0 ;
54923 void *argp2 = 0 ;
54924 int res2 = 0 ;
54925 if ((nobjs < 2) || (nobjs > 2)) goto fail;
54926 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
54927 if (!(res1 >= 0)) {
54928 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_set_stopper" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
54929 }
54930 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
54931 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[52], 0 | 0, 0);
54932 if (!(res2 >= 0)) {
54933 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_set_stopper" "', argument " "2"" of type '" "Xapian::Stopper const *""'"); goto fail; } while(0);
54934 }
54935 arg2 = reinterpret_cast< Xapian::Stopper * >(argp2);
54936 {
54937 SWIG_Python_Thread_Allow _swig_thread_allow;
54938 {
54939 try {
54940 (arg1)->set_stopper((Xapian::Stopper const *)arg2);
54941 } catch (...) {
54942 _swig_thread_allow.end();
54943 Xapian::SetPythonException();
54944 goto fail;
54945 }
54946 }
54947 _swig_thread_allow.end();
54948 }
54949 resultobj = SWIG_Py_Void();
54950 return resultobj;
54951fail:
54952 return __null;
54953}
54954static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_set_stopper__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
54955 PyObject *resultobj = 0;
54956 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
54957 void *argp1 = 0 ;
54958 int res1 = 0 ;
54959 if ((nobjs < 1) || (nobjs > 1)) goto fail;
54960 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
54961 if (!(res1 >= 0)) {
54962 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_set_stopper" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
54963 }
54964 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
54965 {
54966 SWIG_Python_Thread_Allow _swig_thread_allow;
54967 {
54968 try {
54969 (arg1)->set_stopper();
54970 } catch (...) {
54971 _swig_thread_allow.end();
54972 Xapian::SetPythonException();
54973 goto fail;
54974 }
54975 }
54976 _swig_thread_allow.end();
54977 }
54978 resultobj = SWIG_Py_Void();
54979 return resultobj;
54980fail:
54981 return __null;
54982}
54983static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_set_stopper(PyObject *self, PyObject *args) {
54984 int argc;
54985 PyObject *argv[3];
54986 if (!(argc = SWIG_Python_UnpackTuple(args,"QueryParser_set_stopper",0,2,argv))) goto fail;
54987 --argc;
54988 if (argc == 1) {
54989 return _wrap_QueryParser_set_stopper__SWIG_1(self, argc, argv);
54990 }
54991 if (argc == 2) {
54992 return _wrap_QueryParser_set_stopper__SWIG_0(self, argc, argv);
54993 }
54994fail:
54995 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'QueryParser_set_stopper'.\n"
54996 " Possible C/C++ prototypes are:\n"
54997 " set_stopper(Xapian::QueryParser *,Xapian::Stopper const *)\n"
54998 " set_stopper(Xapian::QueryParser *)\n");
54999 return __null;
55000}
55001static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_set_default_op(PyObject *, PyObject *args) {
55002 PyObject *resultobj = 0;
55003 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55004 Xapian::Query::op arg2 ;
55005 void *argp1 = 0 ;
55006 int res1 = 0 ;
55007 int val2 ;
55008 int ecode2 = 0 ;
55009 PyObject *swig_obj[2] ;
55010 if (!SWIG_Python_UnpackTuple(args,"QueryParser_set_default_op",2,2,swig_obj)) goto fail;
55011 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55012 if (!(res1 >= 0)) {
55013 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_set_default_op" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
55014 }
55015 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55016 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
55017 if (!(ecode2 >= 0)) {
55018 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "QueryParser_set_default_op" "', argument " "2"" of type '" "Xapian::Query::op""'"); goto fail; } while(0);
55019 }
55020 arg2 = static_cast< Xapian::Query::op >(val2);
55021 {
55022 SWIG_Python_Thread_Allow _swig_thread_allow;
55023 {
55024 try {
55025 (arg1)->set_default_op(arg2);
55026 } catch (...) {
55027 _swig_thread_allow.end();
55028 Xapian::SetPythonException();
55029 goto fail;
55030 }
55031 }
55032 _swig_thread_allow.end();
55033 }
55034 resultobj = SWIG_Py_Void();
55035 return resultobj;
55036fail:
55037 return __null;
55038}
55039static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_get_default_op(PyObject *, PyObject *args) {
55040 PyObject *resultobj = 0;
55041 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55042 void *argp1 = 0 ;
55043 int res1 = 0 ;
55044 PyObject *swig_obj[1] ;
55045 Xapian::Query::op result;
55046 if (!args) goto fail;
55047 swig_obj[0] = args;
55048 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55049 if (!(res1 >= 0)) {
55050 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_get_default_op" "', argument " "1"" of type '" "Xapian::QueryParser const *""'"); goto fail; } while(0);
55051 }
55052 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55053 {
55054 SWIG_Python_Thread_Allow _swig_thread_allow;
55055 {
55056 try {
55057 result = (Xapian::Query::op)((Xapian::QueryParser const *)arg1)->get_default_op();
55058 } catch (...) {
55059 _swig_thread_allow.end();
55060 Xapian::SetPythonException();
55061 goto fail;
55062 }
55063 }
55064 _swig_thread_allow.end();
55065 }
55066 resultobj = SWIG_From_int(static_cast< int >(result));
55067 return resultobj;
55068fail:
55069 return __null;
55070}
55071static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_set_database(PyObject *, PyObject *args) {
55072 PyObject *resultobj = 0;
55073 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55074 Xapian::Database *arg2 = 0 ;
55075 void *argp1 = 0 ;
55076 int res1 = 0 ;
55077 void *argp2 = 0 ;
55078 int res2 = 0 ;
55079 PyObject *swig_obj[2] ;
55080 if (!SWIG_Python_UnpackTuple(args,"QueryParser_set_database",2,2,swig_obj)) goto fail;
55081 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55082 if (!(res1 >= 0)) {
55083 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_set_database" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
55084 }
55085 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55086 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[4], 0 | 0, 0);
55087 if (!(res2 >= 0)) {
55088 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_set_database" "', argument " "2"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
55089 }
55090 if (!argp2) {
55091 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_set_database" "', argument " "2"" of type '" "Xapian::Database const &""'"); goto fail; } while(0);
55092 }
55093 arg2 = reinterpret_cast< Xapian::Database * >(argp2);
55094 {
55095 SWIG_Python_Thread_Allow _swig_thread_allow;
55096 {
55097 try {
55098 (arg1)->set_database((Xapian::Database const &)*arg2);
55099 } catch (...) {
55100 _swig_thread_allow.end();
55101 Xapian::SetPythonException();
55102 goto fail;
55103 }
55104 }
55105 _swig_thread_allow.end();
55106 }
55107 resultobj = SWIG_Py_Void();
55108 return resultobj;
55109fail:
55110 return __null;
55111}
55112static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_parse_query__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
55113 PyObject *resultobj = 0;
55114 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55115 std::string *arg2 = 0 ;
55116 unsigned int arg3 ;
55117 std::string *arg4 = 0 ;
55118 void *argp1 = 0 ;
55119 int res1 = 0 ;
55120 int res2 = ((0)) ;
55121 unsigned int val3 ;
55122 int ecode3 = 0 ;
55123 int res4 = ((0)) ;
55124 Xapian::Query result;
55125 if ((nobjs < 4) || (nobjs > 4)) goto fail;
55126 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55127 if (!(res1 >= 0)) {
55128 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_parse_query" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
55129 }
55130 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55131 {
55132 std::string *ptr = (std::string *)0;
55133 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
55134 if (!(res2 >= 0)) {
55135 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_parse_query" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55136 }
55137 if (!ptr) {
55138 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_parse_query" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55139 }
55140 arg2 = ptr;
55141 }
55142 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
55143 if (!(ecode3 >= 0)) {
55144 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "QueryParser_parse_query" "', argument " "3"" of type '" "unsigned int""'"); goto fail; } while(0);
55145 }
55146 arg3 = static_cast< unsigned int >(val3);
55147 {
55148 std::string *ptr = (std::string *)0;
55149 res4 = SWIG_anystring_as_ptr(&(swig_obj[3]), &ptr);
55150 if (!(res4 >= 0)) {
55151 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res4 != (-1)) ? res4 : -5)), "in method '" "QueryParser_parse_query" "', argument " "4"" of type '" "std::string const &""'"); goto fail; } while(0);
55152 }
55153 if (!ptr) {
55154 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_parse_query" "', argument " "4"" of type '" "std::string const &""'"); goto fail; } while(0);
55155 }
55156 arg4 = ptr;
55157 }
55158 {
55159 SWIG_Python_Thread_Allow _swig_thread_allow;
55160 {
55161 try {
55162 result = (arg1)->parse_query((std::string const &)*arg2,arg3,(std::string const &)*arg4);
55163 } catch (...) {
55164 _swig_thread_allow.end();
55165 Xapian::SetPythonException();
55166 goto fail;
55167 }
55168 }
55169 _swig_thread_allow.end();
55170 }
55171 resultobj = SWIG_Python_NewPointerObj((new Xapian::Query(static_cast< const Xapian::Query& >(result))), swig_types[40], 0x1 | 0);
55172 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55173 if (((res4 >= 0) && (res4 & ((1 << 8) << 1)))) delete arg4;
55174 return resultobj;
55175fail:
55176 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55177 if (((res4 >= 0) && (res4 & ((1 << 8) << 1)))) delete arg4;
55178 return __null;
55179}
55180static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_parse_query__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
55181 PyObject *resultobj = 0;
55182 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55183 std::string *arg2 = 0 ;
55184 unsigned int arg3 ;
55185 void *argp1 = 0 ;
55186 int res1 = 0 ;
55187 int res2 = ((0)) ;
55188 unsigned int val3 ;
55189 int ecode3 = 0 ;
55190 Xapian::Query result;
55191 if ((nobjs < 3) || (nobjs > 3)) goto fail;
55192 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55193 if (!(res1 >= 0)) {
55194 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_parse_query" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
55195 }
55196 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55197 {
55198 std::string *ptr = (std::string *)0;
55199 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
55200 if (!(res2 >= 0)) {
55201 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_parse_query" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55202 }
55203 if (!ptr) {
55204 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_parse_query" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55205 }
55206 arg2 = ptr;
55207 }
55208 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
55209 if (!(ecode3 >= 0)) {
55210 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "QueryParser_parse_query" "', argument " "3"" of type '" "unsigned int""'"); goto fail; } while(0);
55211 }
55212 arg3 = static_cast< unsigned int >(val3);
55213 {
55214 SWIG_Python_Thread_Allow _swig_thread_allow;
55215 {
55216 try {
55217 result = (arg1)->parse_query((std::string const &)*arg2,arg3);
55218 } catch (...) {
55219 _swig_thread_allow.end();
55220 Xapian::SetPythonException();
55221 goto fail;
55222 }
55223 }
55224 _swig_thread_allow.end();
55225 }
55226 resultobj = SWIG_Python_NewPointerObj((new Xapian::Query(static_cast< const Xapian::Query& >(result))), swig_types[40], 0x1 | 0);
55227 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55228 return resultobj;
55229fail:
55230 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55231 return __null;
55232}
55233static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_parse_query__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
55234 PyObject *resultobj = 0;
55235 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55236 std::string *arg2 = 0 ;
55237 void *argp1 = 0 ;
55238 int res1 = 0 ;
55239 int res2 = ((0)) ;
55240 Xapian::Query result;
55241 if ((nobjs < 2) || (nobjs > 2)) goto fail;
55242 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55243 if (!(res1 >= 0)) {
55244 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_parse_query" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
55245 }
55246 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55247 {
55248 std::string *ptr = (std::string *)0;
55249 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
55250 if (!(res2 >= 0)) {
55251 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_parse_query" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55252 }
55253 if (!ptr) {
55254 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_parse_query" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55255 }
55256 arg2 = ptr;
55257 }
55258 {
55259 SWIG_Python_Thread_Allow _swig_thread_allow;
55260 {
55261 try {
55262 result = (arg1)->parse_query((std::string const &)*arg2);
55263 } catch (...) {
55264 _swig_thread_allow.end();
55265 Xapian::SetPythonException();
55266 goto fail;
55267 }
55268 }
55269 _swig_thread_allow.end();
55270 }
55271 resultobj = SWIG_Python_NewPointerObj((new Xapian::Query(static_cast< const Xapian::Query& >(result))), swig_types[40], 0x1 | 0);
55272 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55273 return resultobj;
55274fail:
55275 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55276 return __null;
55277}
55278static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_parse_query(PyObject *self, PyObject *args) {
55279 int argc;
55280 PyObject *argv[5];
55281 if (!(argc = SWIG_Python_UnpackTuple(args,"QueryParser_parse_query",0,4,argv))) goto fail;
55282 --argc;
55283 if (argc == 2) {
55284 return _wrap_QueryParser_parse_query__SWIG_2(self, argc, argv);
55285 }
55286 if (argc == 3) {
55287 return _wrap_QueryParser_parse_query__SWIG_1(self, argc, argv);
55288 }
55289 if (argc == 4) {
55290 return _wrap_QueryParser_parse_query__SWIG_0(self, argc, argv);
55291 }
55292fail:
55293 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'QueryParser_parse_query'.\n"
55294 " Possible C/C++ prototypes are:\n"
55295 " parse_query(Xapian::QueryParser *,std::string const &,unsigned int,std::string const &)\n"
55296 " parse_query(Xapian::QueryParser *,std::string const &,unsigned int)\n"
55297 " parse_query(Xapian::QueryParser *,std::string const &)\n");
55298 return __null;
55299}
55300static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_add_prefix(PyObject *, PyObject *args) {
55301 PyObject *resultobj = 0;
55302 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55303 std::string *arg2 = 0 ;
55304 std::string *arg3 = 0 ;
55305 void *argp1 = 0 ;
55306 int res1 = 0 ;
55307 int res2 = ((0)) ;
55308 int res3 = ((0)) ;
55309 PyObject *swig_obj[3] ;
55310 if (!SWIG_Python_UnpackTuple(args,"QueryParser_add_prefix",3,3,swig_obj)) goto fail;
55311 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55312 if (!(res1 >= 0)) {
55313 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_add_prefix" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
55314 }
55315 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55316 {
55317 std::string *ptr = (std::string *)0;
55318 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
55319 if (!(res2 >= 0)) {
55320 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_add_prefix" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55321 }
55322 if (!ptr) {
55323 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_add_prefix" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55324 }
55325 arg2 = ptr;
55326 }
55327 {
55328 std::string *ptr = (std::string *)0;
55329 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
55330 if (!(res3 >= 0)) {
55331 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "QueryParser_add_prefix" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
55332 }
55333 if (!ptr) {
55334 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_add_prefix" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
55335 }
55336 arg3 = ptr;
55337 }
55338 {
55339 SWIG_Python_Thread_Allow _swig_thread_allow;
55340 {
55341 try {
55342 (arg1)->add_prefix((std::string const &)*arg2,(std::string const &)*arg3);
55343 } catch (...) {
55344 _swig_thread_allow.end();
55345 Xapian::SetPythonException();
55346 goto fail;
55347 }
55348 }
55349 _swig_thread_allow.end();
55350 }
55351 resultobj = SWIG_Py_Void();
55352 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55353 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
55354 return resultobj;
55355fail:
55356 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55357 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
55358 return __null;
55359}
55360static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_add_boolean_prefix__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
55361 PyObject *resultobj = 0;
55362 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55363 std::string *arg2 = 0 ;
55364 std::string *arg3 = 0 ;
55365 bool arg4 ;
55366 void *argp1 = 0 ;
55367 int res1 = 0 ;
55368 int res2 = ((0)) ;
55369 int res3 = ((0)) ;
55370 bool val4 ;
55371 int ecode4 = 0 ;
55372 if ((nobjs < 4) || (nobjs > 4)) goto fail;
55373 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55374 if (!(res1 >= 0)) {
55375 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_add_boolean_prefix" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
55376 }
55377 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55378 {
55379 std::string *ptr = (std::string *)0;
55380 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
55381 if (!(res2 >= 0)) {
55382 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_add_boolean_prefix" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55383 }
55384 if (!ptr) {
55385 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_add_boolean_prefix" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55386 }
55387 arg2 = ptr;
55388 }
55389 {
55390 std::string *ptr = (std::string *)0;
55391 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
55392 if (!(res3 >= 0)) {
55393 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "QueryParser_add_boolean_prefix" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
55394 }
55395 if (!ptr) {
55396 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_add_boolean_prefix" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
55397 }
55398 arg3 = ptr;
55399 }
55400 ecode4 = SWIG_AsVal_bool(swig_obj[3], &val4);
55401 if (!(ecode4 >= 0)) {
55402 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode4 != (-1)) ? ecode4 : -5)), "in method '" "QueryParser_add_boolean_prefix" "', argument " "4"" of type '" "bool""'"); goto fail; } while(0);
55403 }
55404 arg4 = static_cast< bool >(val4);
55405 {
55406 SWIG_Python_Thread_Allow _swig_thread_allow;
55407 {
55408 try {
55409 (arg1)->add_boolean_prefix((std::string const &)*arg2,(std::string const &)*arg3,arg4);
55410 } catch (...) {
55411 _swig_thread_allow.end();
55412 Xapian::SetPythonException();
55413 goto fail;
55414 }
55415 }
55416 _swig_thread_allow.end();
55417 }
55418 resultobj = SWIG_Py_Void();
55419 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55420 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
55421 return resultobj;
55422fail:
55423 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55424 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
55425 return __null;
55426}
55427static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_add_boolean_prefix__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
55428 PyObject *resultobj = 0;
55429 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55430 std::string *arg2 = 0 ;
55431 std::string *arg3 = 0 ;
55432 void *argp1 = 0 ;
55433 int res1 = 0 ;
55434 int res2 = ((0)) ;
55435 int res3 = ((0)) ;
55436 if ((nobjs < 3) || (nobjs > 3)) goto fail;
55437 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55438 if (!(res1 >= 0)) {
55439 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_add_boolean_prefix" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
55440 }
55441 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55442 {
55443 std::string *ptr = (std::string *)0;
55444 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
55445 if (!(res2 >= 0)) {
55446 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_add_boolean_prefix" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55447 }
55448 if (!ptr) {
55449 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_add_boolean_prefix" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55450 }
55451 arg2 = ptr;
55452 }
55453 {
55454 std::string *ptr = (std::string *)0;
55455 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
55456 if (!(res3 >= 0)) {
55457 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "QueryParser_add_boolean_prefix" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
55458 }
55459 if (!ptr) {
55460 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_add_boolean_prefix" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
55461 }
55462 arg3 = ptr;
55463 }
55464 {
55465 SWIG_Python_Thread_Allow _swig_thread_allow;
55466 {
55467 try {
55468 (arg1)->add_boolean_prefix((std::string const &)*arg2,(std::string const &)*arg3);
55469 } catch (...) {
55470 _swig_thread_allow.end();
55471 Xapian::SetPythonException();
55472 goto fail;
55473 }
55474 }
55475 _swig_thread_allow.end();
55476 }
55477 resultobj = SWIG_Py_Void();
55478 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55479 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
55480 return resultobj;
55481fail:
55482 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55483 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
55484 return __null;
55485}
55486static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_add_boolean_prefix(PyObject *self, PyObject *args) {
55487 int argc;
55488 PyObject *argv[5];
55489 if (!(argc = SWIG_Python_UnpackTuple(args,"QueryParser_add_boolean_prefix",0,4,argv))) goto fail;
55490 --argc;
55491 if (argc == 3) {
55492 return _wrap_QueryParser_add_boolean_prefix__SWIG_1(self, argc, argv);
55493 }
55494 if (argc == 4) {
55495 return _wrap_QueryParser_add_boolean_prefix__SWIG_0(self, argc, argv);
55496 }
55497fail:
55498 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'QueryParser_add_boolean_prefix'.\n"
55499 " Possible C/C++ prototypes are:\n"
55500 " add_boolean_prefix(Xapian::QueryParser *,std::string const &,std::string const &,bool)\n"
55501 " add_boolean_prefix(Xapian::QueryParser *,std::string const &,std::string const &)\n");
55502 return __null;
55503}
55504static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_stoplist_begin(PyObject *, PyObject *args) {
55505 PyObject *resultobj = 0;
55506 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55507 void *argp1 = 0 ;
55508 int res1 = 0 ;
55509 PyObject *swig_obj[1] ;
55510 Xapian::TermIterator result;
55511 if (!args) goto fail;
55512 swig_obj[0] = args;
55513 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55514 if (!(res1 >= 0)) {
55515 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_stoplist_begin" "', argument " "1"" of type '" "Xapian::QueryParser const *""'"); goto fail; } while(0);
55516 }
55517 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55518 {
55519 SWIG_Python_Thread_Allow _swig_thread_allow;
55520 {
55521 try {
55522 result = ((Xapian::QueryParser const *)arg1)->stoplist_begin();
55523 } catch (...) {
55524 _swig_thread_allow.end();
55525 Xapian::SetPythonException();
55526 goto fail;
55527 }
55528 }
55529 _swig_thread_allow.end();
55530 }
55531 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
55532 return resultobj;
55533fail:
55534 return __null;
55535}
55536static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_stoplist_end(PyObject *, PyObject *args) {
55537 PyObject *resultobj = 0;
55538 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55539 void *argp1 = 0 ;
55540 int res1 = 0 ;
55541 PyObject *swig_obj[1] ;
55542 Xapian::TermIterator result;
55543 if (!args) goto fail;
55544 swig_obj[0] = args;
55545 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55546 if (!(res1 >= 0)) {
55547 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_stoplist_end" "', argument " "1"" of type '" "Xapian::QueryParser const *""'"); goto fail; } while(0);
55548 }
55549 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55550 {
55551 SWIG_Python_Thread_Allow _swig_thread_allow;
55552 {
55553 try {
55554 result = ((Xapian::QueryParser const *)arg1)->stoplist_end();
55555 } catch (...) {
55556 _swig_thread_allow.end();
55557 Xapian::SetPythonException();
55558 goto fail;
55559 }
55560 }
55561 _swig_thread_allow.end();
55562 }
55563 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
55564 return resultobj;
55565fail:
55566 return __null;
55567}
55568static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_unstem_begin(PyObject *, PyObject *args) {
55569 PyObject *resultobj = 0;
55570 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55571 std::string *arg2 = 0 ;
55572 void *argp1 = 0 ;
55573 int res1 = 0 ;
55574 int res2 = ((0)) ;
55575 PyObject *swig_obj[2] ;
55576 Xapian::TermIterator result;
55577 if (!SWIG_Python_UnpackTuple(args,"QueryParser_unstem_begin",2,2,swig_obj)) goto fail;
55578 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55579 if (!(res1 >= 0)) {
55580 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_unstem_begin" "', argument " "1"" of type '" "Xapian::QueryParser const *""'"); goto fail; } while(0);
55581 }
55582 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55583 {
55584 std::string *ptr = (std::string *)0;
55585 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
55586 if (!(res2 >= 0)) {
55587 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_unstem_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55588 }
55589 if (!ptr) {
55590 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_unstem_begin" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55591 }
55592 arg2 = ptr;
55593 }
55594 {
55595 SWIG_Python_Thread_Allow _swig_thread_allow;
55596 {
55597 try {
55598 result = ((Xapian::QueryParser const *)arg1)->unstem_begin((std::string const &)*arg2);
55599 } catch (...) {
55600 _swig_thread_allow.end();
55601 Xapian::SetPythonException();
55602 goto fail;
55603 }
55604 }
55605 _swig_thread_allow.end();
55606 }
55607 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
55608 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55609 return resultobj;
55610fail:
55611 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55612 return __null;
55613}
55614static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_unstem_end(PyObject *, PyObject *args) {
55615 PyObject *resultobj = 0;
55616 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55617 std::string *arg2 = 0 ;
55618 void *argp1 = 0 ;
55619 int res1 = 0 ;
55620 int res2 = ((0)) ;
55621 PyObject *swig_obj[2] ;
55622 Xapian::TermIterator result;
55623 if (!SWIG_Python_UnpackTuple(args,"QueryParser_unstem_end",2,2,swig_obj)) goto fail;
55624 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55625 if (!(res1 >= 0)) {
55626 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_unstem_end" "', argument " "1"" of type '" "Xapian::QueryParser const *""'"); goto fail; } while(0);
55627 }
55628 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55629 {
55630 std::string *ptr = (std::string *)0;
55631 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
55632 if (!(res2 >= 0)) {
55633 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_unstem_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55634 }
55635 if (!ptr) {
55636 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "QueryParser_unstem_end" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55637 }
55638 arg2 = ptr;
55639 }
55640 {
55641 SWIG_Python_Thread_Allow _swig_thread_allow;
55642 {
55643 try {
55644 result = ((Xapian::QueryParser const *)arg1)->unstem_end((std::string const &)*arg2);
55645 } catch (...) {
55646 _swig_thread_allow.end();
55647 Xapian::SetPythonException();
55648 goto fail;
55649 }
55650 }
55651 _swig_thread_allow.end();
55652 }
55653 resultobj = SWIG_Python_NewPointerObj((new Xapian::TermIterator(static_cast< const Xapian::TermIterator& >(result))), swig_types[55], 0x1 | 0);
55654 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55655 return resultobj;
55656fail:
55657 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55658 return __null;
55659}
55660static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_add_valuerangeprocessor(PyObject *, PyObject *args) {
55661 PyObject *resultobj = 0;
55662 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55663 Xapian::ValueRangeProcessor *arg2 = (Xapian::ValueRangeProcessor *) 0 ;
55664 void *argp1 = 0 ;
55665 int res1 = 0 ;
55666 void *argp2 = 0 ;
55667 int res2 = 0 ;
55668 PyObject *swig_obj[2] ;
55669 if (!SWIG_Python_UnpackTuple(args,"QueryParser_add_valuerangeprocessor",2,2,swig_obj)) goto fail;
55670 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55671 if (!(res1 >= 0)) {
55672 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_add_valuerangeprocessor" "', argument " "1"" of type '" "Xapian::QueryParser *""'"); goto fail; } while(0);
55673 }
55674 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55675 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[62], 0 | 0, 0);
55676 if (!(res2 >= 0)) {
55677 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "QueryParser_add_valuerangeprocessor" "', argument " "2"" of type '" "Xapian::ValueRangeProcessor *""'"); goto fail; } while(0);
55678 }
55679 arg2 = reinterpret_cast< Xapian::ValueRangeProcessor * >(argp2);
55680 {
55681 SWIG_Python_Thread_Allow _swig_thread_allow;
55682 {
55683 try {
55684 (arg1)->add_valuerangeprocessor(arg2);
55685 } catch (...) {
55686 _swig_thread_allow.end();
55687 Xapian::SetPythonException();
55688 goto fail;
55689 }
55690 }
55691 _swig_thread_allow.end();
55692 }
55693 resultobj = SWIG_Py_Void();
55694 return resultobj;
55695fail:
55696 return __null;
55697}
55698static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser_get_corrected_query_string(PyObject *, PyObject *args) {
55699 PyObject *resultobj = 0;
55700 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55701 void *argp1 = 0 ;
55702 int res1 = 0 ;
55703 PyObject *swig_obj[1] ;
55704 std::string result;
55705 if (!args) goto fail;
55706 swig_obj[0] = args;
55707 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55708 if (!(res1 >= 0)) {
55709 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser_get_corrected_query_string" "', argument " "1"" of type '" "Xapian::QueryParser const *""'"); goto fail; } while(0);
55710 }
55711 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55712 {
55713 SWIG_Python_Thread_Allow _swig_thread_allow;
55714 {
55715 try {
55716 result = ((Xapian::QueryParser const *)arg1)->get_corrected_query_string();
55717 } catch (...) {
55718 _swig_thread_allow.end();
55719 Xapian::SetPythonException();
55720 goto fail;
55721 }
55722 }
55723 _swig_thread_allow.end();
55724 }
55725 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
55726 return resultobj;
55727fail:
55728 return __null;
55729}
55730static __attribute__ ((__unused__)) PyObject *_wrap_QueryParser___str__(PyObject *, PyObject *args) {
55731 PyObject *resultobj = 0;
55732 Xapian::QueryParser *arg1 = (Xapian::QueryParser *) 0 ;
55733 void *argp1 = 0 ;
55734 int res1 = 0 ;
55735 PyObject *swig_obj[1] ;
55736 std::string result;
55737 if (!args) goto fail;
55738 swig_obj[0] = args;
55739 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[41], 0 | 0, 0);
55740 if (!(res1 >= 0)) {
55741 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "QueryParser___str__" "', argument " "1"" of type '" "Xapian::QueryParser const *""'"); goto fail; } while(0);
55742 }
55743 arg1 = reinterpret_cast< Xapian::QueryParser * >(argp1);
55744 {
55745 SWIG_Python_Thread_Allow _swig_thread_allow;
55746 {
55747 try {
55748 result = ((Xapian::QueryParser const *)arg1)->get_description();
55749 } catch (...) {
55750 _swig_thread_allow.end();
55751 Xapian::SetPythonException();
55752 goto fail;
55753 }
55754 }
55755 _swig_thread_allow.end();
55756 }
55757 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
55758 return resultobj;
55759fail:
55760 return __null;
55761}
55762static __attribute__ ((__unused__)) PyObject *QueryParser_swigregister(PyObject *, PyObject *args) {
55763 PyObject *obj;
55764 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
55765 SWIG_TypeNewClientData(swig_types[41], SwigPyClientData_New(obj));
55766 return SWIG_Py_Void();
55767}
55768static __attribute__ ((__unused__)) PyObject *QueryParser_swiginit(PyObject *, PyObject *args) {
55769 return SWIG_Python_InitShadowInstance(args);
55770}
55771static __attribute__ ((__unused__)) PyObject *_wrap_sortable_serialise(PyObject *, PyObject *args) {
55772 PyObject *resultobj = 0;
55773 double arg1 ;
55774 double val1 ;
55775 int ecode1 = 0 ;
55776 PyObject *swig_obj[1] ;
55777 std::string result;
55778 if (!args) goto fail;
55779 swig_obj[0] = args;
55780 ecode1 = SWIG_AsVal_double(swig_obj[0], &val1);
55781 if (!(ecode1 >= 0)) {
55782 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "sortable_serialise" "', argument " "1"" of type '" "double""'"); goto fail; } while(0);
55783 }
55784 arg1 = static_cast< double >(val1);
55785 {
55786 SWIG_Python_Thread_Allow _swig_thread_allow;
55787 {
55788 try {
55789 result = Xapian::sortable_serialise(arg1);
55790 } catch (...) {
55791 _swig_thread_allow.end();
55792 Xapian::SetPythonException();
55793 goto fail;
55794 }
55795 }
55796 _swig_thread_allow.end();
55797 }
55798 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
55799 return resultobj;
55800fail:
55801 return __null;
55802}
55803static __attribute__ ((__unused__)) PyObject *_wrap_sortable_unserialise(PyObject *, PyObject *args) {
55804 PyObject *resultobj = 0;
55805 std::string *arg1 = 0 ;
55806 int res1 = ((0)) ;
55807 PyObject *swig_obj[1] ;
55808 double result;
55809 if (!args) goto fail;
55810 swig_obj[0] = args;
55811 {
55812 std::string *ptr = (std::string *)0;
55813 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
55814 if (!(res1 >= 0)) {
55815 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "sortable_unserialise" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
55816 }
55817 if (!ptr) {
55818 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "sortable_unserialise" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
55819 }
55820 arg1 = ptr;
55821 }
55822 {
55823 SWIG_Python_Thread_Allow _swig_thread_allow;
55824 {
55825 try {
55826 result = (double)Xapian::sortable_unserialise((std::string const &)*arg1);
55827 } catch (...) {
55828 _swig_thread_allow.end();
55829 Xapian::SetPythonException();
55830 goto fail;
55831 }
55832 }
55833 _swig_thread_allow.end();
55834 }
55835 resultobj = PyFloat_FromDouble(static_cast< double >(result));
55836 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
55837 return resultobj;
55838fail:
55839 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
55840 return __null;
55841}
55842static __attribute__ ((__unused__)) PyObject *_wrap_delete_StemImplementation(PyObject *, PyObject *args) {
55843 PyObject *resultobj = 0;
55844 Xapian::StemImplementation *arg1 = (Xapian::StemImplementation *) 0 ;
55845 void *argp1 = 0 ;
55846 int res1 = 0 ;
55847 PyObject *swig_obj[1] ;
55848 if (!args) goto fail;
55849 swig_obj[0] = args;
55850 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[51], 0x1 | 0, 0);
55851 if (!(res1 >= 0)) {
55852 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_StemImplementation" "', argument " "1"" of type '" "Xapian::StemImplementation *""'"); goto fail; } while(0);
55853 }
55854 arg1 = reinterpret_cast< Xapian::StemImplementation * >(argp1);
55855 {
55856 SWIG_Python_Thread_Allow _swig_thread_allow;
55857 {
55858 try {
55859 delete arg1;
55860 } catch (...) {
55861 _swig_thread_allow.end();
55862 Xapian::SetPythonException();
55863 goto fail;
55864 }
55865 }
55866 _swig_thread_allow.end();
55867 }
55868 resultobj = SWIG_Py_Void();
55869 return resultobj;
55870fail:
55871 return __null;
55872}
55873static __attribute__ ((__unused__)) PyObject *_wrap_StemImplementation___call__(PyObject *, PyObject *args) {
55874 PyObject *resultobj = 0;
55875 Xapian::StemImplementation *arg1 = (Xapian::StemImplementation *) 0 ;
55876 std::string *arg2 = 0 ;
55877 void *argp1 = 0 ;
55878 int res1 = 0 ;
55879 int res2 = ((0)) ;
55880 PyObject *swig_obj[2] ;
55881 Swig::Director *director = 0;
55882 bool upcall = false;
55883 std::string result;
55884 if (!SWIG_Python_UnpackTuple(args,"StemImplementation___call__",2,2,swig_obj)) goto fail;
55885 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[51], 0 | 0, 0);
55886 if (!(res1 >= 0)) {
55887 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "StemImplementation___call__" "', argument " "1"" of type '" "Xapian::StemImplementation *""'"); goto fail; } while(0);
55888 }
55889 arg1 = reinterpret_cast< Xapian::StemImplementation * >(argp1);
55890 {
55891 std::string *ptr = (std::string *)0;
55892 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
55893 if (!(res2 >= 0)) {
55894 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "StemImplementation___call__" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55895 }
55896 if (!ptr) {
55897 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "StemImplementation___call__" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
55898 }
55899 arg2 = ptr;
55900 }
55901 director = dynamic_cast<Swig::Director*>(arg1);
55902 upcall = (director && (director->swig_get_self()==swig_obj[0]));
55903 try {
55904 {
55905 try {
55906 if (upcall) {
55907 Swig::DirectorPureVirtualException::raise("Xapian::StemImplementation::operator ()");
55908 } else {
55909 result = (arg1)->operator ()((std::string const &)*arg2);
55910 }
55911 } catch (...) {
55912 Xapian::SetPythonException();
55913 goto fail;
55914 }
55915 }
55916 } catch (Swig::DirectorException&) {
55917 goto fail;
55918 }
55919 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
55920 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55921 return resultobj;
55922fail:
55923 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
55924 return __null;
55925}
55926static __attribute__ ((__unused__)) PyObject *_wrap_StemImplementation___str__(PyObject *, PyObject *args) {
55927 PyObject *resultobj = 0;
55928 Xapian::StemImplementation *arg1 = (Xapian::StemImplementation *) 0 ;
55929 void *argp1 = 0 ;
55930 int res1 = 0 ;
55931 PyObject *swig_obj[1] ;
55932 Swig::Director *director = 0;
55933 bool upcall = false;
55934 std::string result;
55935 if (!args) goto fail;
55936 swig_obj[0] = args;
55937 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[51], 0 | 0, 0);
55938 if (!(res1 >= 0)) {
55939 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "StemImplementation___str__" "', argument " "1"" of type '" "Xapian::StemImplementation const *""'"); goto fail; } while(0);
55940 }
55941 arg1 = reinterpret_cast< Xapian::StemImplementation * >(argp1);
55942 director = dynamic_cast<Swig::Director*>(arg1);
55943 upcall = (director && (director->swig_get_self()==swig_obj[0]));
55944 try {
55945 {
55946 try {
55947 if (upcall) {
55948 Swig::DirectorPureVirtualException::raise("Xapian::StemImplementation::get_description");
55949 } else {
55950 result = ((Xapian::StemImplementation const *)arg1)->get_description();
55951 }
55952 } catch (...) {
55953 Xapian::SetPythonException();
55954 goto fail;
55955 }
55956 }
55957 } catch (Swig::DirectorException&) {
55958 goto fail;
55959 }
55960 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
55961 return resultobj;
55962fail:
55963 return __null;
55964}
55965static __attribute__ ((__unused__)) PyObject *_wrap_new_StemImplementation(PyObject *, PyObject *args) {
55966 PyObject *resultobj = 0;
55967 PyObject *arg1 = (PyObject *) 0 ;
55968 PyObject *swig_obj[1] ;
55969 Xapian::StemImplementation *result = 0 ;
55970 if (!args) goto fail;
55971 swig_obj[0] = args;
55972 arg1 = swig_obj[0];
55973 {
55974 SWIG_Python_Thread_Allow _swig_thread_allow;
55975 {
55976 try {
55977 if ( arg1 != (&_Py_NoneStruct) ) {
55978 result = (Xapian::StemImplementation *)new SwigDirector_StemImplementation(arg1);
55979 } else {
55980 SWIG_Python_SetErrorMsg(PyExc_RuntimeError,"accessing abstract class or protected constructor");
55981 goto fail;
55982 }
55983 } catch (...) {
55984 _swig_thread_allow.end();
55985 Xapian::SetPythonException();
55986 goto fail;
55987 }
55988 }
55989 _swig_thread_allow.end();
55990 }
55991 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[51], ((0x1 << 1) | 0x1) | 0);
55992 return resultobj;
55993fail:
55994 return __null;
55995}
55996static __attribute__ ((__unused__)) PyObject *_wrap_disown_StemImplementation(PyObject *, PyObject *args) {
55997 PyObject *resultobj = 0;
55998 Xapian::StemImplementation *arg1 = (Xapian::StemImplementation *) 0 ;
55999 void *argp1 = 0 ;
56000 int res1 = 0 ;
56001 PyObject *swig_obj[1] ;
56002 if (!args) goto fail;
56003 swig_obj[0] = args;
56004 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[51], 0 | 0, 0);
56005 if (!(res1 >= 0)) {
56006 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "disown_StemImplementation" "', argument " "1"" of type '" "Xapian::StemImplementation *""'"); goto fail; } while(0);
56007 }
56008 arg1 = reinterpret_cast< Xapian::StemImplementation * >(argp1);
56009 {
56010 SWIG_Python_Thread_Allow _swig_thread_allow;
56011 {
56012 Swig::Director *director = dynamic_cast<Swig::Director *>(arg1);
56013 if (director) director->swig_disown();
56014 }
56015 _swig_thread_allow.end();
56016 }
56017 resultobj = SWIG_Py_Void();
56018 return resultobj;
56019fail:
56020 return __null;
56021}
56022static __attribute__ ((__unused__)) PyObject *StemImplementation_swigregister(PyObject *, PyObject *args) {
56023 PyObject *obj;
56024 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
56025 SWIG_TypeNewClientData(swig_types[51], SwigPyClientData_New(obj));
56026 return SWIG_Py_Void();
56027}
56028static __attribute__ ((__unused__)) PyObject *StemImplementation_swiginit(PyObject *, PyObject *args) {
56029 return SWIG_Python_InitShadowInstance(args);
56030}
56031static __attribute__ ((__unused__)) PyObject *_wrap_new_Stem__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
56032 PyObject *resultobj = 0;
56033 std::string *arg1 = 0 ;
56034 int res1 = ((0)) ;
56035 Xapian::Stem *result = 0 ;
56036 if ((nobjs < 1) || (nobjs > 1)) goto fail;
56037 {
56038 std::string *ptr = (std::string *)0;
56039 res1 = SWIG_anystring_as_ptr(&(swig_obj[0]), &ptr);
56040 if (!(res1 >= 0)) {
56041 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Stem" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
56042 }
56043 if (!ptr) {
56044 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "new_Stem" "', argument " "1"" of type '" "std::string const &""'"); goto fail; } while(0);
56045 }
56046 arg1 = ptr;
56047 }
56048 {
56049 SWIG_Python_Thread_Allow _swig_thread_allow;
56050 {
56051 try {
56052 result = (Xapian::Stem *)new Xapian::Stem((std::string const &)*arg1);
56053 } catch (...) {
56054 _swig_thread_allow.end();
56055 Xapian::SetPythonException();
56056 goto fail;
56057 }
56058 }
56059 _swig_thread_allow.end();
56060 }
56061 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[50], ((0x1 << 1) | 0x1) | 0);
56062 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
56063 return resultobj;
56064fail:
56065 if (((res1 >= 0) && (res1 & ((1 << 8) << 1)))) delete arg1;
56066 return __null;
56067}
56068static __attribute__ ((__unused__)) PyObject *_wrap_new_Stem__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
56069 PyObject *resultobj = 0;
56070 Xapian::StemImplementation *arg1 = (Xapian::StemImplementation *) 0 ;
56071 void *argp1 = 0 ;
56072 int res1 = 0 ;
56073 Xapian::Stem *result = 0 ;
56074 if ((nobjs < 1) || (nobjs > 1)) goto fail;
56075 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[51], 0 | 0, 0);
56076 if (!(res1 >= 0)) {
56077 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "new_Stem" "', argument " "1"" of type '" "Xapian::StemImplementation *""'"); goto fail; } while(0);
56078 }
56079 arg1 = reinterpret_cast< Xapian::StemImplementation * >(argp1);
56080 {
56081 SWIG_Python_Thread_Allow _swig_thread_allow;
56082 {
56083 try {
56084 result = (Xapian::Stem *)new Xapian::Stem(arg1);
56085 } catch (...) {
56086 _swig_thread_allow.end();
56087 Xapian::SetPythonException();
56088 goto fail;
56089 }
56090 }
56091 _swig_thread_allow.end();
56092 }
56093 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[50], ((0x1 << 1) | 0x1) | 0);
56094 return resultobj;
56095fail:
56096 return __null;
56097}
56098static __attribute__ ((__unused__)) PyObject *_wrap_new_Stem(PyObject *self, PyObject *args) {
56099 int argc;
56100 PyObject *argv[2];
56101 if (!(argc = SWIG_Python_UnpackTuple(args,"new_Stem",0,1,argv))) goto fail;
56102 --argc;
56103 if (argc == 1) {
56104 int _v = 0;
56105 {
56106 void *vptr = 0;
56107 int res = SWIG_Python_ConvertPtrAndOwn(argv[0], &vptr, swig_types[51], 0, 0);
56108 _v = ((res >= 0) ? 1 : 0);
56109 }
56110 if (!_v) goto check_1;
56111 return _wrap_new_Stem__SWIG_1(self, argc, argv);
56112 }
56113check_1:
56114 if (argc == 1) {
56115 return _wrap_new_Stem__SWIG_0(self, argc, argv);
56116 }
56117fail:
56118 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'new_Stem'.\n"
56119 " Possible C/C++ prototypes are:\n"
56120 " Xapian::Stem(std::string const &)\n"
56121 " Xapian::Stem(Xapian::StemImplementation *)\n");
56122 return __null;
56123}
56124static __attribute__ ((__unused__)) PyObject *_wrap_delete_Stem(PyObject *, PyObject *args) {
56125 PyObject *resultobj = 0;
56126 Xapian::Stem *arg1 = (Xapian::Stem *) 0 ;
56127 void *argp1 = 0 ;
56128 int res1 = 0 ;
56129 PyObject *swig_obj[1] ;
56130 if (!args) goto fail;
56131 swig_obj[0] = args;
56132 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[50], 0x1 | 0, 0);
56133 if (!(res1 >= 0)) {
56134 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Stem" "', argument " "1"" of type '" "Xapian::Stem *""'"); goto fail; } while(0);
56135 }
56136 arg1 = reinterpret_cast< Xapian::Stem * >(argp1);
56137 {
56138 SWIG_Python_Thread_Allow _swig_thread_allow;
56139 {
56140 try {
56141 delete arg1;
56142 } catch (...) {
56143 _swig_thread_allow.end();
56144 Xapian::SetPythonException();
56145 goto fail;
56146 }
56147 }
56148 _swig_thread_allow.end();
56149 }
56150 resultobj = SWIG_Py_Void();
56151 return resultobj;
56152fail:
56153 return __null;
56154}
56155static __attribute__ ((__unused__)) PyObject *_wrap_Stem___call__(PyObject *, PyObject *args) {
56156 PyObject *resultobj = 0;
56157 Xapian::Stem *arg1 = (Xapian::Stem *) 0 ;
56158 std::string *arg2 = 0 ;
56159 void *argp1 = 0 ;
56160 int res1 = 0 ;
56161 int res2 = ((0)) ;
56162 PyObject *swig_obj[2] ;
56163 std::string result;
56164 if (!SWIG_Python_UnpackTuple(args,"Stem___call__",2,2,swig_obj)) goto fail;
56165 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[50], 0 | 0, 0);
56166 if (!(res1 >= 0)) {
56167 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Stem___call__" "', argument " "1"" of type '" "Xapian::Stem const *""'"); goto fail; } while(0);
56168 }
56169 arg1 = reinterpret_cast< Xapian::Stem * >(argp1);
56170 {
56171 std::string *ptr = (std::string *)0;
56172 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
56173 if (!(res2 >= 0)) {
56174 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Stem___call__" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56175 }
56176 if (!ptr) {
56177 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Stem___call__" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56178 }
56179 arg2 = ptr;
56180 }
56181 {
56182 SWIG_Python_Thread_Allow _swig_thread_allow;
56183 {
56184 try {
56185 result = ((Xapian::Stem const *)arg1)->operator ()((std::string const &)*arg2);
56186 } catch (...) {
56187 _swig_thread_allow.end();
56188 Xapian::SetPythonException();
56189 goto fail;
56190 }
56191 }
56192 _swig_thread_allow.end();
56193 }
56194 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
56195 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56196 return resultobj;
56197fail:
56198 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56199 return __null;
56200}
56201static __attribute__ ((__unused__)) PyObject *_wrap_Stem___str__(PyObject *, PyObject *args) {
56202 PyObject *resultobj = 0;
56203 Xapian::Stem *arg1 = (Xapian::Stem *) 0 ;
56204 void *argp1 = 0 ;
56205 int res1 = 0 ;
56206 PyObject *swig_obj[1] ;
56207 std::string result;
56208 if (!args) goto fail;
56209 swig_obj[0] = args;
56210 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[50], 0 | 0, 0);
56211 if (!(res1 >= 0)) {
56212 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Stem___str__" "', argument " "1"" of type '" "Xapian::Stem const *""'"); goto fail; } while(0);
56213 }
56214 arg1 = reinterpret_cast< Xapian::Stem * >(argp1);
56215 {
56216 SWIG_Python_Thread_Allow _swig_thread_allow;
56217 {
56218 try {
56219 result = ((Xapian::Stem const *)arg1)->get_description();
56220 } catch (...) {
56221 _swig_thread_allow.end();
56222 Xapian::SetPythonException();
56223 goto fail;
56224 }
56225 }
56226 _swig_thread_allow.end();
56227 }
56228 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
56229 return resultobj;
56230fail:
56231 return __null;
56232}
56233static __attribute__ ((__unused__)) PyObject *_wrap_Stem_get_available_languages(PyObject *, PyObject *args) {
56234 PyObject *resultobj = 0;
56235 std::string result;
56236 if (!SWIG_Python_UnpackTuple(args,"Stem_get_available_languages",0,0,0)) goto fail;
56237 {
56238 SWIG_Python_Thread_Allow _swig_thread_allow;
56239 {
56240 try {
56241 result = Xapian::Stem::get_available_languages();
56242 } catch (...) {
56243 _swig_thread_allow.end();
56244 Xapian::SetPythonException();
56245 goto fail;
56246 }
56247 }
56248 _swig_thread_allow.end();
56249 }
56250 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
56251 return resultobj;
56252fail:
56253 return __null;
56254}
56255static __attribute__ ((__unused__)) PyObject *Stem_swigregister(PyObject *, PyObject *args) {
56256 PyObject *obj;
56257 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
56258 SWIG_TypeNewClientData(swig_types[50], SwigPyClientData_New(obj));
56259 return SWIG_Py_Void();
56260}
56261static __attribute__ ((__unused__)) PyObject *Stem_swiginit(PyObject *, PyObject *args) {
56262 return SWIG_Python_InitShadowInstance(args);
56263}
56264static __attribute__ ((__unused__)) PyObject *_wrap_new_TermGenerator(PyObject *, PyObject *args) {
56265 PyObject *resultobj = 0;
56266 Xapian::TermGenerator *result = 0 ;
56267 if (!SWIG_Python_UnpackTuple(args,"new_TermGenerator",0,0,0)) goto fail;
56268 {
56269 SWIG_Python_Thread_Allow _swig_thread_allow;
56270 {
56271 try {
56272 result = (Xapian::TermGenerator *)new Xapian::TermGenerator();
56273 } catch (...) {
56274 _swig_thread_allow.end();
56275 Xapian::SetPythonException();
56276 goto fail;
56277 }
56278 }
56279 _swig_thread_allow.end();
56280 }
56281 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[54], ((0x1 << 1) | 0x1) | 0);
56282 return resultobj;
56283fail:
56284 return __null;
56285}
56286static __attribute__ ((__unused__)) PyObject *_wrap_delete_TermGenerator(PyObject *, PyObject *args) {
56287 PyObject *resultobj = 0;
56288 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56289 void *argp1 = 0 ;
56290 int res1 = 0 ;
56291 PyObject *swig_obj[1] ;
56292 if (!args) goto fail;
56293 swig_obj[0] = args;
56294 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0x1 | 0, 0);
56295 if (!(res1 >= 0)) {
56296 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_TermGenerator" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56297 }
56298 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56299 {
56300 SWIG_Python_Thread_Allow _swig_thread_allow;
56301 {
56302 try {
56303 delete arg1;
56304 } catch (...) {
56305 _swig_thread_allow.end();
56306 Xapian::SetPythonException();
56307 goto fail;
56308 }
56309 }
56310 _swig_thread_allow.end();
56311 }
56312 resultobj = SWIG_Py_Void();
56313 return resultobj;
56314fail:
56315 return __null;
56316}
56317static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_stemmer(PyObject *, PyObject *args) {
56318 PyObject *resultobj = 0;
56319 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56320 Xapian::Stem *arg2 = 0 ;
56321 void *argp1 = 0 ;
56322 int res1 = 0 ;
56323 void *argp2 = 0 ;
56324 int res2 = 0 ;
56325 PyObject *swig_obj[2] ;
56326 if (!SWIG_Python_UnpackTuple(args,"TermGenerator_set_stemmer",2,2,swig_obj)) goto fail;
56327 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56328 if (!(res1 >= 0)) {
56329 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_set_stemmer" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56330 }
56331 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56332 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[50], 0 | 0, 0);
56333 if (!(res2 >= 0)) {
56334 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_set_stemmer" "', argument " "2"" of type '" "Xapian::Stem const &""'"); goto fail; } while(0);
56335 }
56336 if (!argp2) {
56337 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_set_stemmer" "', argument " "2"" of type '" "Xapian::Stem const &""'"); goto fail; } while(0);
56338 }
56339 arg2 = reinterpret_cast< Xapian::Stem * >(argp2);
56340 {
56341 SWIG_Python_Thread_Allow _swig_thread_allow;
56342 {
56343 try {
56344 (arg1)->set_stemmer((Xapian::Stem const &)*arg2);
56345 } catch (...) {
56346 _swig_thread_allow.end();
56347 Xapian::SetPythonException();
56348 goto fail;
56349 }
56350 }
56351 _swig_thread_allow.end();
56352 }
56353 resultobj = SWIG_Py_Void();
56354 return resultobj;
56355fail:
56356 return __null;
56357}
56358static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_stopper__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
56359 PyObject *resultobj = 0;
56360 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56361 Xapian::Stopper *arg2 = (Xapian::Stopper *) 0 ;
56362 void *argp1 = 0 ;
56363 int res1 = 0 ;
56364 void *argp2 = 0 ;
56365 int res2 = 0 ;
56366 if ((nobjs < 2) || (nobjs > 2)) goto fail;
56367 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56368 if (!(res1 >= 0)) {
56369 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_set_stopper" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56370 }
56371 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56372 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[52], 0 | 0, 0);
56373 if (!(res2 >= 0)) {
56374 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_set_stopper" "', argument " "2"" of type '" "Xapian::Stopper const *""'"); goto fail; } while(0);
56375 }
56376 arg2 = reinterpret_cast< Xapian::Stopper * >(argp2);
56377 {
56378 SWIG_Python_Thread_Allow _swig_thread_allow;
56379 {
56380 try {
56381 (arg1)->set_stopper((Xapian::Stopper const *)arg2);
56382 } catch (...) {
56383 _swig_thread_allow.end();
56384 Xapian::SetPythonException();
56385 goto fail;
56386 }
56387 }
56388 _swig_thread_allow.end();
56389 }
56390 resultobj = SWIG_Py_Void();
56391 return resultobj;
56392fail:
56393 return __null;
56394}
56395static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_stopper__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
56396 PyObject *resultobj = 0;
56397 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56398 void *argp1 = 0 ;
56399 int res1 = 0 ;
56400 if ((nobjs < 1) || (nobjs > 1)) goto fail;
56401 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56402 if (!(res1 >= 0)) {
56403 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_set_stopper" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56404 }
56405 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56406 {
56407 SWIG_Python_Thread_Allow _swig_thread_allow;
56408 {
56409 try {
56410 (arg1)->set_stopper();
56411 } catch (...) {
56412 _swig_thread_allow.end();
56413 Xapian::SetPythonException();
56414 goto fail;
56415 }
56416 }
56417 _swig_thread_allow.end();
56418 }
56419 resultobj = SWIG_Py_Void();
56420 return resultobj;
56421fail:
56422 return __null;
56423}
56424static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_stopper(PyObject *self, PyObject *args) {
56425 int argc;
56426 PyObject *argv[3];
56427 if (!(argc = SWIG_Python_UnpackTuple(args,"TermGenerator_set_stopper",0,2,argv))) goto fail;
56428 --argc;
56429 if (argc == 1) {
56430 return _wrap_TermGenerator_set_stopper__SWIG_1(self, argc, argv);
56431 }
56432 if (argc == 2) {
56433 return _wrap_TermGenerator_set_stopper__SWIG_0(self, argc, argv);
56434 }
56435fail:
56436 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'TermGenerator_set_stopper'.\n"
56437 " Possible C/C++ prototypes are:\n"
56438 " set_stopper(Xapian::TermGenerator *,Xapian::Stopper const *)\n"
56439 " set_stopper(Xapian::TermGenerator *)\n");
56440 return __null;
56441}
56442static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_document(PyObject *, PyObject *args) {
56443 PyObject *resultobj = 0;
56444 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56445 Xapian::Document *arg2 = 0 ;
56446 void *argp1 = 0 ;
56447 int res1 = 0 ;
56448 void *argp2 = 0 ;
56449 int res2 = 0 ;
56450 PyObject *swig_obj[2] ;
56451 if (!SWIG_Python_UnpackTuple(args,"TermGenerator_set_document",2,2,swig_obj)) goto fail;
56452 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56453 if (!(res1 >= 0)) {
56454 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_set_document" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56455 }
56456 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56457 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[15], 0 | 0, 0);
56458 if (!(res2 >= 0)) {
56459 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_set_document" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
56460 }
56461 if (!argp2) {
56462 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_set_document" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
56463 }
56464 arg2 = reinterpret_cast< Xapian::Document * >(argp2);
56465 {
56466 SWIG_Python_Thread_Allow _swig_thread_allow;
56467 {
56468 try {
56469 (arg1)->set_document((Xapian::Document const &)*arg2);
56470 } catch (...) {
56471 _swig_thread_allow.end();
56472 Xapian::SetPythonException();
56473 goto fail;
56474 }
56475 }
56476 _swig_thread_allow.end();
56477 }
56478 resultobj = SWIG_Py_Void();
56479 return resultobj;
56480fail:
56481 return __null;
56482}
56483static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_get_document(PyObject *, PyObject *args) {
56484 PyObject *resultobj = 0;
56485 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56486 void *argp1 = 0 ;
56487 int res1 = 0 ;
56488 PyObject *swig_obj[1] ;
56489 Xapian::Document *result = 0 ;
56490 if (!args) goto fail;
56491 swig_obj[0] = args;
56492 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56493 if (!(res1 >= 0)) {
56494 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_get_document" "', argument " "1"" of type '" "Xapian::TermGenerator const *""'"); goto fail; } while(0);
56495 }
56496 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56497 {
56498 SWIG_Python_Thread_Allow _swig_thread_allow;
56499 {
56500 try {
56501 result = (Xapian::Document *) &((Xapian::TermGenerator const *)arg1)->get_document();
56502 } catch (...) {
56503 _swig_thread_allow.end();
56504 Xapian::SetPythonException();
56505 goto fail;
56506 }
56507 }
56508 _swig_thread_allow.end();
56509 }
56510 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[15], 0 | 0);
56511 return resultobj;
56512fail:
56513 return __null;
56514}
56515static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_database(PyObject *, PyObject *args) {
56516 PyObject *resultobj = 0;
56517 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56518 Xapian::WritableDatabase *arg2 = 0 ;
56519 void *argp1 = 0 ;
56520 int res1 = 0 ;
56521 void *argp2 = 0 ;
56522 int res2 = 0 ;
56523 PyObject *swig_obj[2] ;
56524 if (!SWIG_Python_UnpackTuple(args,"TermGenerator_set_database",2,2,swig_obj)) goto fail;
56525 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56526 if (!(res1 >= 0)) {
56527 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_set_database" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56528 }
56529 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56530 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[66], 0 | 0, 0);
56531 if (!(res2 >= 0)) {
56532 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_set_database" "', argument " "2"" of type '" "Xapian::WritableDatabase const &""'"); goto fail; } while(0);
56533 }
56534 if (!argp2) {
56535 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_set_database" "', argument " "2"" of type '" "Xapian::WritableDatabase const &""'"); goto fail; } while(0);
56536 }
56537 arg2 = reinterpret_cast< Xapian::WritableDatabase * >(argp2);
56538 {
56539 SWIG_Python_Thread_Allow _swig_thread_allow;
56540 {
56541 try {
56542 (arg1)->set_database((Xapian::WritableDatabase const &)*arg2);
56543 } catch (...) {
56544 _swig_thread_allow.end();
56545 Xapian::SetPythonException();
56546 goto fail;
56547 }
56548 }
56549 _swig_thread_allow.end();
56550 }
56551 resultobj = SWIG_Py_Void();
56552 return resultobj;
56553fail:
56554 return __null;
56555}
56556static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_flags__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
56557 PyObject *resultobj = 0;
56558 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56559 Xapian::TermGenerator::flags arg2 ;
56560 Xapian::TermGenerator::flags arg3 ;
56561 void *argp1 = 0 ;
56562 int res1 = 0 ;
56563 int val2 ;
56564 int ecode2 = 0 ;
56565 int val3 ;
56566 int ecode3 = 0 ;
56567 Xapian::TermGenerator::flags result;
56568 if ((nobjs < 3) || (nobjs > 3)) goto fail;
56569 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56570 if (!(res1 >= 0)) {
56571 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_set_flags" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56572 }
56573 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56574 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
56575 if (!(ecode2 >= 0)) {
56576 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "TermGenerator_set_flags" "', argument " "2"" of type '" "Xapian::TermGenerator::flags""'"); goto fail; } while(0);
56577 }
56578 arg2 = static_cast< Xapian::TermGenerator::flags >(val2);
56579 ecode3 = SWIG_AsVal_int(swig_obj[2], &val3);
56580 if (!(ecode3 >= 0)) {
56581 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "TermGenerator_set_flags" "', argument " "3"" of type '" "Xapian::TermGenerator::flags""'"); goto fail; } while(0);
56582 }
56583 arg3 = static_cast< Xapian::TermGenerator::flags >(val3);
56584 {
56585 SWIG_Python_Thread_Allow _swig_thread_allow;
56586 {
56587 try {
56588 result = (Xapian::TermGenerator::flags)(arg1)->set_flags(arg2,arg3);
56589 } catch (...) {
56590 _swig_thread_allow.end();
56591 Xapian::SetPythonException();
56592 goto fail;
56593 }
56594 }
56595 _swig_thread_allow.end();
56596 }
56597 resultobj = SWIG_From_int(static_cast< int >(result));
56598 return resultobj;
56599fail:
56600 return __null;
56601}
56602static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_flags__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
56603 PyObject *resultobj = 0;
56604 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56605 Xapian::TermGenerator::flags arg2 ;
56606 void *argp1 = 0 ;
56607 int res1 = 0 ;
56608 int val2 ;
56609 int ecode2 = 0 ;
56610 Xapian::TermGenerator::flags result;
56611 if ((nobjs < 2) || (nobjs > 2)) goto fail;
56612 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56613 if (!(res1 >= 0)) {
56614 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_set_flags" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56615 }
56616 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56617 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
56618 if (!(ecode2 >= 0)) {
56619 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "TermGenerator_set_flags" "', argument " "2"" of type '" "Xapian::TermGenerator::flags""'"); goto fail; } while(0);
56620 }
56621 arg2 = static_cast< Xapian::TermGenerator::flags >(val2);
56622 {
56623 SWIG_Python_Thread_Allow _swig_thread_allow;
56624 {
56625 try {
56626 result = (Xapian::TermGenerator::flags)(arg1)->set_flags(arg2);
56627 } catch (...) {
56628 _swig_thread_allow.end();
56629 Xapian::SetPythonException();
56630 goto fail;
56631 }
56632 }
56633 _swig_thread_allow.end();
56634 }
56635 resultobj = SWIG_From_int(static_cast< int >(result));
56636 return resultobj;
56637fail:
56638 return __null;
56639}
56640static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_flags(PyObject *self, PyObject *args) {
56641 int argc;
56642 PyObject *argv[4];
56643 if (!(argc = SWIG_Python_UnpackTuple(args,"TermGenerator_set_flags",0,3,argv))) goto fail;
56644 --argc;
56645 if (argc == 2) {
56646 return _wrap_TermGenerator_set_flags__SWIG_1(self, argc, argv);
56647 }
56648 if (argc == 3) {
56649 return _wrap_TermGenerator_set_flags__SWIG_0(self, argc, argv);
56650 }
56651fail:
56652 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'TermGenerator_set_flags'.\n"
56653 " Possible C/C++ prototypes are:\n"
56654 " set_flags(Xapian::TermGenerator *,Xapian::TermGenerator::flags,Xapian::TermGenerator::flags)\n"
56655 " set_flags(Xapian::TermGenerator *,Xapian::TermGenerator::flags)\n");
56656 return __null;
56657}
56658static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_index_text__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
56659 PyObject *resultobj = 0;
56660 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56661 std::string *arg2 = 0 ;
56662 Xapian::termcount arg3 ;
56663 std::string *arg4 = 0 ;
56664 void *argp1 = 0 ;
56665 int res1 = 0 ;
56666 int res2 = ((0)) ;
56667 unsigned int val3 ;
56668 int ecode3 = 0 ;
56669 int res4 = ((0)) ;
56670 if ((nobjs < 4) || (nobjs > 4)) goto fail;
56671 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56672 if (!(res1 >= 0)) {
56673 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_index_text" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56674 }
56675 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56676 {
56677 std::string *ptr = (std::string *)0;
56678 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
56679 if (!(res2 >= 0)) {
56680 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_index_text" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56681 }
56682 if (!ptr) {
56683 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_index_text" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56684 }
56685 arg2 = ptr;
56686 }
56687 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
56688 if (!(ecode3 >= 0)) {
56689 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "TermGenerator_index_text" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
56690 }
56691 arg3 = static_cast< Xapian::termcount >(val3);
56692 {
56693 std::string *ptr = (std::string *)0;
56694 res4 = SWIG_anystring_as_ptr(&(swig_obj[3]), &ptr);
56695 if (!(res4 >= 0)) {
56696 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res4 != (-1)) ? res4 : -5)), "in method '" "TermGenerator_index_text" "', argument " "4"" of type '" "std::string const &""'"); goto fail; } while(0);
56697 }
56698 if (!ptr) {
56699 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_index_text" "', argument " "4"" of type '" "std::string const &""'"); goto fail; } while(0);
56700 }
56701 arg4 = ptr;
56702 }
56703 {
56704 SWIG_Python_Thread_Allow _swig_thread_allow;
56705 {
56706 try {
56707 (arg1)->index_text((std::string const &)*arg2,arg3,(std::string const &)*arg4);
56708 } catch (...) {
56709 _swig_thread_allow.end();
56710 Xapian::SetPythonException();
56711 goto fail;
56712 }
56713 }
56714 _swig_thread_allow.end();
56715 }
56716 resultobj = SWIG_Py_Void();
56717 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56718 if (((res4 >= 0) && (res4 & ((1 << 8) << 1)))) delete arg4;
56719 return resultobj;
56720fail:
56721 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56722 if (((res4 >= 0) && (res4 & ((1 << 8) << 1)))) delete arg4;
56723 return __null;
56724}
56725static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_index_text__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
56726 PyObject *resultobj = 0;
56727 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56728 std::string *arg2 = 0 ;
56729 Xapian::termcount arg3 ;
56730 void *argp1 = 0 ;
56731 int res1 = 0 ;
56732 int res2 = ((0)) ;
56733 unsigned int val3 ;
56734 int ecode3 = 0 ;
56735 if ((nobjs < 3) || (nobjs > 3)) goto fail;
56736 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56737 if (!(res1 >= 0)) {
56738 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_index_text" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56739 }
56740 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56741 {
56742 std::string *ptr = (std::string *)0;
56743 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
56744 if (!(res2 >= 0)) {
56745 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_index_text" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56746 }
56747 if (!ptr) {
56748 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_index_text" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56749 }
56750 arg2 = ptr;
56751 }
56752 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
56753 if (!(ecode3 >= 0)) {
56754 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "TermGenerator_index_text" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
56755 }
56756 arg3 = static_cast< Xapian::termcount >(val3);
56757 {
56758 SWIG_Python_Thread_Allow _swig_thread_allow;
56759 {
56760 try {
56761 (arg1)->index_text((std::string const &)*arg2,arg3);
56762 } catch (...) {
56763 _swig_thread_allow.end();
56764 Xapian::SetPythonException();
56765 goto fail;
56766 }
56767 }
56768 _swig_thread_allow.end();
56769 }
56770 resultobj = SWIG_Py_Void();
56771 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56772 return resultobj;
56773fail:
56774 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56775 return __null;
56776}
56777static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_index_text__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
56778 PyObject *resultobj = 0;
56779 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56780 std::string *arg2 = 0 ;
56781 void *argp1 = 0 ;
56782 int res1 = 0 ;
56783 int res2 = ((0)) ;
56784 if ((nobjs < 2) || (nobjs > 2)) goto fail;
56785 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56786 if (!(res1 >= 0)) {
56787 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_index_text" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56788 }
56789 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56790 {
56791 std::string *ptr = (std::string *)0;
56792 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
56793 if (!(res2 >= 0)) {
56794 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_index_text" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56795 }
56796 if (!ptr) {
56797 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_index_text" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56798 }
56799 arg2 = ptr;
56800 }
56801 {
56802 SWIG_Python_Thread_Allow _swig_thread_allow;
56803 {
56804 try {
56805 (arg1)->index_text((std::string const &)*arg2);
56806 } catch (...) {
56807 _swig_thread_allow.end();
56808 Xapian::SetPythonException();
56809 goto fail;
56810 }
56811 }
56812 _swig_thread_allow.end();
56813 }
56814 resultobj = SWIG_Py_Void();
56815 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56816 return resultobj;
56817fail:
56818 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56819 return __null;
56820}
56821static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_index_text(PyObject *self, PyObject *args) {
56822 int argc;
56823 PyObject *argv[5];
56824 if (!(argc = SWIG_Python_UnpackTuple(args,"TermGenerator_index_text",0,4,argv))) goto fail;
56825 --argc;
56826 if (argc == 2) {
56827 return _wrap_TermGenerator_index_text__SWIG_2(self, argc, argv);
56828 }
56829 if (argc == 3) {
56830 return _wrap_TermGenerator_index_text__SWIG_1(self, argc, argv);
56831 }
56832 if (argc == 4) {
56833 return _wrap_TermGenerator_index_text__SWIG_0(self, argc, argv);
56834 }
56835fail:
56836 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'TermGenerator_index_text'.\n"
56837 " Possible C/C++ prototypes are:\n"
56838 " index_text(Xapian::TermGenerator *,std::string const &,Xapian::termcount,std::string const &)\n"
56839 " index_text(Xapian::TermGenerator *,std::string const &,Xapian::termcount)\n"
56840 " index_text(Xapian::TermGenerator *,std::string const &)\n");
56841 return __null;
56842}
56843static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_index_text_without_positions__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
56844 PyObject *resultobj = 0;
56845 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56846 std::string *arg2 = 0 ;
56847 Xapian::termcount arg3 ;
56848 std::string *arg4 = 0 ;
56849 void *argp1 = 0 ;
56850 int res1 = 0 ;
56851 int res2 = ((0)) ;
56852 unsigned int val3 ;
56853 int ecode3 = 0 ;
56854 int res4 = ((0)) ;
56855 if ((nobjs < 4) || (nobjs > 4)) goto fail;
56856 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56857 if (!(res1 >= 0)) {
56858 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_index_text_without_positions" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56859 }
56860 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56861 {
56862 std::string *ptr = (std::string *)0;
56863 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
56864 if (!(res2 >= 0)) {
56865 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_index_text_without_positions" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56866 }
56867 if (!ptr) {
56868 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_index_text_without_positions" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56869 }
56870 arg2 = ptr;
56871 }
56872 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
56873 if (!(ecode3 >= 0)) {
56874 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "TermGenerator_index_text_without_positions" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
56875 }
56876 arg3 = static_cast< Xapian::termcount >(val3);
56877 {
56878 std::string *ptr = (std::string *)0;
56879 res4 = SWIG_anystring_as_ptr(&(swig_obj[3]), &ptr);
56880 if (!(res4 >= 0)) {
56881 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res4 != (-1)) ? res4 : -5)), "in method '" "TermGenerator_index_text_without_positions" "', argument " "4"" of type '" "std::string const &""'"); goto fail; } while(0);
56882 }
56883 if (!ptr) {
56884 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_index_text_without_positions" "', argument " "4"" of type '" "std::string const &""'"); goto fail; } while(0);
56885 }
56886 arg4 = ptr;
56887 }
56888 {
56889 SWIG_Python_Thread_Allow _swig_thread_allow;
56890 {
56891 try {
56892 (arg1)->index_text_without_positions((std::string const &)*arg2,arg3,(std::string const &)*arg4);
56893 } catch (...) {
56894 _swig_thread_allow.end();
56895 Xapian::SetPythonException();
56896 goto fail;
56897 }
56898 }
56899 _swig_thread_allow.end();
56900 }
56901 resultobj = SWIG_Py_Void();
56902 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56903 if (((res4 >= 0) && (res4 & ((1 << 8) << 1)))) delete arg4;
56904 return resultobj;
56905fail:
56906 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56907 if (((res4 >= 0) && (res4 & ((1 << 8) << 1)))) delete arg4;
56908 return __null;
56909}
56910static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_index_text_without_positions__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
56911 PyObject *resultobj = 0;
56912 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56913 std::string *arg2 = 0 ;
56914 Xapian::termcount arg3 ;
56915 void *argp1 = 0 ;
56916 int res1 = 0 ;
56917 int res2 = ((0)) ;
56918 unsigned int val3 ;
56919 int ecode3 = 0 ;
56920 if ((nobjs < 3) || (nobjs > 3)) goto fail;
56921 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56922 if (!(res1 >= 0)) {
56923 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_index_text_without_positions" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56924 }
56925 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56926 {
56927 std::string *ptr = (std::string *)0;
56928 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
56929 if (!(res2 >= 0)) {
56930 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_index_text_without_positions" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56931 }
56932 if (!ptr) {
56933 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_index_text_without_positions" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56934 }
56935 arg2 = ptr;
56936 }
56937 ecode3 = SWIG_AsVal_unsigned_SS_int(swig_obj[2], &val3);
56938 if (!(ecode3 >= 0)) {
56939 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "TermGenerator_index_text_without_positions" "', argument " "3"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
56940 }
56941 arg3 = static_cast< Xapian::termcount >(val3);
56942 {
56943 SWIG_Python_Thread_Allow _swig_thread_allow;
56944 {
56945 try {
56946 (arg1)->index_text_without_positions((std::string const &)*arg2,arg3);
56947 } catch (...) {
56948 _swig_thread_allow.end();
56949 Xapian::SetPythonException();
56950 goto fail;
56951 }
56952 }
56953 _swig_thread_allow.end();
56954 }
56955 resultobj = SWIG_Py_Void();
56956 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56957 return resultobj;
56958fail:
56959 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
56960 return __null;
56961}
56962static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_index_text_without_positions__SWIG_2(PyObject *, int nobjs, PyObject **swig_obj) {
56963 PyObject *resultobj = 0;
56964 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
56965 std::string *arg2 = 0 ;
56966 void *argp1 = 0 ;
56967 int res1 = 0 ;
56968 int res2 = ((0)) ;
56969 if ((nobjs < 2) || (nobjs > 2)) goto fail;
56970 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
56971 if (!(res1 >= 0)) {
56972 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_index_text_without_positions" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
56973 }
56974 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
56975 {
56976 std::string *ptr = (std::string *)0;
56977 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
56978 if (!(res2 >= 0)) {
56979 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "TermGenerator_index_text_without_positions" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56980 }
56981 if (!ptr) {
56982 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "TermGenerator_index_text_without_positions" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
56983 }
56984 arg2 = ptr;
56985 }
56986 {
56987 SWIG_Python_Thread_Allow _swig_thread_allow;
56988 {
56989 try {
56990 (arg1)->index_text_without_positions((std::string const &)*arg2);
56991 } catch (...) {
56992 _swig_thread_allow.end();
56993 Xapian::SetPythonException();
56994 goto fail;
56995 }
56996 }
56997 _swig_thread_allow.end();
56998 }
56999 resultobj = SWIG_Py_Void();
57000 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
57001 return resultobj;
57002fail:
57003 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
57004 return __null;
57005}
57006static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_index_text_without_positions(PyObject *self, PyObject *args) {
57007 int argc;
57008 PyObject *argv[5];
57009 if (!(argc = SWIG_Python_UnpackTuple(args,"TermGenerator_index_text_without_positions",0,4,argv))) goto fail;
57010 --argc;
57011 if (argc == 2) {
57012 return _wrap_TermGenerator_index_text_without_positions__SWIG_2(self, argc, argv);
57013 }
57014 if (argc == 3) {
57015 return _wrap_TermGenerator_index_text_without_positions__SWIG_1(self, argc, argv);
57016 }
57017 if (argc == 4) {
57018 return _wrap_TermGenerator_index_text_without_positions__SWIG_0(self, argc, argv);
57019 }
57020fail:
57021 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'TermGenerator_index_text_without_positions'.\n"
57022 " Possible C/C++ prototypes are:\n"
57023 " index_text_without_positions(Xapian::TermGenerator *,std::string const &,Xapian::termcount,std::string const &)\n"
57024 " index_text_without_positions(Xapian::TermGenerator *,std::string const &,Xapian::termcount)\n"
57025 " index_text_without_positions(Xapian::TermGenerator *,std::string const &)\n");
57026 return __null;
57027}
57028static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_increase_termpos__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
57029 PyObject *resultobj = 0;
57030 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
57031 Xapian::termcount arg2 ;
57032 void *argp1 = 0 ;
57033 int res1 = 0 ;
57034 unsigned int val2 ;
57035 int ecode2 = 0 ;
57036 if ((nobjs < 2) || (nobjs > 2)) goto fail;
57037 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
57038 if (!(res1 >= 0)) {
57039 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_increase_termpos" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
57040 }
57041 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
57042 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
57043 if (!(ecode2 >= 0)) {
57044 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "TermGenerator_increase_termpos" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
57045 }
57046 arg2 = static_cast< Xapian::termcount >(val2);
57047 {
57048 SWIG_Python_Thread_Allow _swig_thread_allow;
57049 {
57050 try {
57051 (arg1)->increase_termpos(arg2);
57052 } catch (...) {
57053 _swig_thread_allow.end();
57054 Xapian::SetPythonException();
57055 goto fail;
57056 }
57057 }
57058 _swig_thread_allow.end();
57059 }
57060 resultobj = SWIG_Py_Void();
57061 return resultobj;
57062fail:
57063 return __null;
57064}
57065static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_increase_termpos__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
57066 PyObject *resultobj = 0;
57067 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
57068 void *argp1 = 0 ;
57069 int res1 = 0 ;
57070 if ((nobjs < 1) || (nobjs > 1)) goto fail;
57071 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
57072 if (!(res1 >= 0)) {
57073 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_increase_termpos" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
57074 }
57075 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
57076 {
57077 SWIG_Python_Thread_Allow _swig_thread_allow;
57078 {
57079 try {
57080 (arg1)->increase_termpos();
57081 } catch (...) {
57082 _swig_thread_allow.end();
57083 Xapian::SetPythonException();
57084 goto fail;
57085 }
57086 }
57087 _swig_thread_allow.end();
57088 }
57089 resultobj = SWIG_Py_Void();
57090 return resultobj;
57091fail:
57092 return __null;
57093}
57094static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_increase_termpos(PyObject *self, PyObject *args) {
57095 int argc;
57096 PyObject *argv[3];
57097 if (!(argc = SWIG_Python_UnpackTuple(args,"TermGenerator_increase_termpos",0,2,argv))) goto fail;
57098 --argc;
57099 if (argc == 1) {
57100 return _wrap_TermGenerator_increase_termpos__SWIG_1(self, argc, argv);
57101 }
57102 if (argc == 2) {
57103 return _wrap_TermGenerator_increase_termpos__SWIG_0(self, argc, argv);
57104 }
57105fail:
57106 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'TermGenerator_increase_termpos'.\n"
57107 " Possible C/C++ prototypes are:\n"
57108 " increase_termpos(Xapian::TermGenerator *,Xapian::termcount)\n"
57109 " increase_termpos(Xapian::TermGenerator *)\n");
57110 return __null;
57111}
57112static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_get_termpos(PyObject *, PyObject *args) {
57113 PyObject *resultobj = 0;
57114 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
57115 void *argp1 = 0 ;
57116 int res1 = 0 ;
57117 PyObject *swig_obj[1] ;
57118 Xapian::termcount result;
57119 if (!args) goto fail;
57120 swig_obj[0] = args;
57121 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
57122 if (!(res1 >= 0)) {
57123 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_get_termpos" "', argument " "1"" of type '" "Xapian::TermGenerator const *""'"); goto fail; } while(0);
57124 }
57125 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
57126 {
57127 SWIG_Python_Thread_Allow _swig_thread_allow;
57128 {
57129 try {
57130 result = (Xapian::termcount)((Xapian::TermGenerator const *)arg1)->get_termpos();
57131 } catch (...) {
57132 _swig_thread_allow.end();
57133 Xapian::SetPythonException();
57134 goto fail;
57135 }
57136 }
57137 _swig_thread_allow.end();
57138 }
57139 resultobj = SWIG_From_unsigned_SS_int(static_cast< unsigned int >(result));
57140 return resultobj;
57141fail:
57142 return __null;
57143}
57144static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator_set_termpos(PyObject *, PyObject *args) {
57145 PyObject *resultobj = 0;
57146 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
57147 Xapian::termcount arg2 ;
57148 void *argp1 = 0 ;
57149 int res1 = 0 ;
57150 unsigned int val2 ;
57151 int ecode2 = 0 ;
57152 PyObject *swig_obj[2] ;
57153 if (!SWIG_Python_UnpackTuple(args,"TermGenerator_set_termpos",2,2,swig_obj)) goto fail;
57154 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
57155 if (!(res1 >= 0)) {
57156 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator_set_termpos" "', argument " "1"" of type '" "Xapian::TermGenerator *""'"); goto fail; } while(0);
57157 }
57158 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
57159 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
57160 if (!(ecode2 >= 0)) {
57161 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "TermGenerator_set_termpos" "', argument " "2"" of type '" "Xapian::termcount""'"); goto fail; } while(0);
57162 }
57163 arg2 = static_cast< Xapian::termcount >(val2);
57164 {
57165 SWIG_Python_Thread_Allow _swig_thread_allow;
57166 {
57167 try {
57168 (arg1)->set_termpos(arg2);
57169 } catch (...) {
57170 _swig_thread_allow.end();
57171 Xapian::SetPythonException();
57172 goto fail;
57173 }
57174 }
57175 _swig_thread_allow.end();
57176 }
57177 resultobj = SWIG_Py_Void();
57178 return resultobj;
57179fail:
57180 return __null;
57181}
57182static __attribute__ ((__unused__)) PyObject *_wrap_TermGenerator___str__(PyObject *, PyObject *args) {
57183 PyObject *resultobj = 0;
57184 Xapian::TermGenerator *arg1 = (Xapian::TermGenerator *) 0 ;
57185 void *argp1 = 0 ;
57186 int res1 = 0 ;
57187 PyObject *swig_obj[1] ;
57188 std::string result;
57189 if (!args) goto fail;
57190 swig_obj[0] = args;
57191 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[54], 0 | 0, 0);
57192 if (!(res1 >= 0)) {
57193 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "TermGenerator___str__" "', argument " "1"" of type '" "Xapian::TermGenerator const *""'"); goto fail; } while(0);
57194 }
57195 arg1 = reinterpret_cast< Xapian::TermGenerator * >(argp1);
57196 {
57197 SWIG_Python_Thread_Allow _swig_thread_allow;
57198 {
57199 try {
57200 result = ((Xapian::TermGenerator const *)arg1)->get_description();
57201 } catch (...) {
57202 _swig_thread_allow.end();
57203 Xapian::SetPythonException();
57204 goto fail;
57205 }
57206 }
57207 _swig_thread_allow.end();
57208 }
57209 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
57210 return resultobj;
57211fail:
57212 return __null;
57213}
57214static __attribute__ ((__unused__)) PyObject *TermGenerator_swigregister(PyObject *, PyObject *args) {
57215 PyObject *obj;
57216 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
57217 SWIG_TypeNewClientData(swig_types[54], SwigPyClientData_New(obj));
57218 return SWIG_Py_Void();
57219}
57220static __attribute__ ((__unused__)) PyObject *TermGenerator_swiginit(PyObject *, PyObject *args) {
57221 return SWIG_Python_InitShadowInstance(args);
57222}
57223static __attribute__ ((__unused__)) PyObject *_wrap_KeyMaker___call__(PyObject *, PyObject *args) {
57224 PyObject *resultobj = 0;
57225 Xapian::KeyMaker *arg1 = (Xapian::KeyMaker *) 0 ;
57226 Xapian::Document *arg2 = 0 ;
57227 void *argp1 = 0 ;
57228 int res1 = 0 ;
57229 void *argp2 = 0 ;
57230 int res2 = 0 ;
57231 PyObject *swig_obj[2] ;
57232 Swig::Director *director = 0;
57233 bool upcall = false;
57234 std::string result;
57235 if (!SWIG_Python_UnpackTuple(args,"KeyMaker___call__",2,2,swig_obj)) goto fail;
57236 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[26], 0 | 0, 0);
57237 if (!(res1 >= 0)) {
57238 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "KeyMaker___call__" "', argument " "1"" of type '" "Xapian::KeyMaker const *""'"); goto fail; } while(0);
57239 }
57240 arg1 = reinterpret_cast< Xapian::KeyMaker * >(argp1);
57241 res2 = SWIG_Python_ConvertPtrAndOwn(swig_obj[1], &argp2, swig_types[15], 0 | 0, 0);
57242 if (!(res2 >= 0)) {
57243 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "KeyMaker___call__" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
57244 }
57245 if (!argp2) {
57246 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "KeyMaker___call__" "', argument " "2"" of type '" "Xapian::Document const &""'"); goto fail; } while(0);
57247 }
57248 arg2 = reinterpret_cast< Xapian::Document * >(argp2);
57249 director = dynamic_cast<Swig::Director*>(arg1);
57250 upcall = (director && (director->swig_get_self()==swig_obj[0]));
57251 try {
57252 {
57253 try {
57254 if (upcall) {
57255 Swig::DirectorPureVirtualException::raise("Xapian::KeyMaker::operator ()");
57256 } else {
57257 result = ((Xapian::KeyMaker const *)arg1)->operator ()((Xapian::Document const &)*arg2);
57258 }
57259 } catch (...) {
57260 Xapian::SetPythonException();
57261 goto fail;
57262 }
57263 }
57264 } catch (Swig::DirectorException&) {
57265 goto fail;
57266 }
57267 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
57268 return resultobj;
57269fail:
57270 return __null;
57271}
57272static __attribute__ ((__unused__)) PyObject *_wrap_delete_KeyMaker(PyObject *, PyObject *args) {
57273 PyObject *resultobj = 0;
57274 Xapian::KeyMaker *arg1 = (Xapian::KeyMaker *) 0 ;
57275 void *argp1 = 0 ;
57276 int res1 = 0 ;
57277 PyObject *swig_obj[1] ;
57278 if (!args) goto fail;
57279 swig_obj[0] = args;
57280 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[26], 0x1 | 0, 0);
57281 if (!(res1 >= 0)) {
57282 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_KeyMaker" "', argument " "1"" of type '" "Xapian::KeyMaker *""'"); goto fail; } while(0);
57283 }
57284 arg1 = reinterpret_cast< Xapian::KeyMaker * >(argp1);
57285 {
57286 SWIG_Python_Thread_Allow _swig_thread_allow;
57287 {
57288 try {
57289 delete arg1;
57290 } catch (...) {
57291 _swig_thread_allow.end();
57292 Xapian::SetPythonException();
57293 goto fail;
57294 }
57295 }
57296 _swig_thread_allow.end();
57297 }
57298 resultobj = SWIG_Py_Void();
57299 return resultobj;
57300fail:
57301 return __null;
57302}
57303static __attribute__ ((__unused__)) PyObject *_wrap_new_KeyMaker(PyObject *, PyObject *args) {
57304 PyObject *resultobj = 0;
57305 PyObject *arg1 = (PyObject *) 0 ;
57306 PyObject *swig_obj[1] ;
57307 Xapian::KeyMaker *result = 0 ;
57308 if (!args) goto fail;
57309 swig_obj[0] = args;
57310 arg1 = swig_obj[0];
57311 {
57312 SWIG_Python_Thread_Allow _swig_thread_allow;
57313 {
57314 try {
57315 if ( arg1 != (&_Py_NoneStruct) ) {
57316 result = (Xapian::KeyMaker *)new SwigDirector_KeyMaker(arg1);
57317 } else {
57318 SWIG_Python_SetErrorMsg(PyExc_RuntimeError,"accessing abstract class or protected constructor");
57319 goto fail;
57320 }
57321 } catch (...) {
57322 _swig_thread_allow.end();
57323 Xapian::SetPythonException();
57324 goto fail;
57325 }
57326 }
57327 _swig_thread_allow.end();
57328 }
57329 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[26], ((0x1 << 1) | 0x1) | 0);
57330 return resultobj;
57331fail:
57332 return __null;
57333}
57334static __attribute__ ((__unused__)) PyObject *_wrap_disown_KeyMaker(PyObject *, PyObject *args) {
57335 PyObject *resultobj = 0;
57336 Xapian::KeyMaker *arg1 = (Xapian::KeyMaker *) 0 ;
57337 void *argp1 = 0 ;
57338 int res1 = 0 ;
57339 PyObject *swig_obj[1] ;
57340 if (!args) goto fail;
57341 swig_obj[0] = args;
57342 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[26], 0 | 0, 0);
57343 if (!(res1 >= 0)) {
57344 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "disown_KeyMaker" "', argument " "1"" of type '" "Xapian::KeyMaker *""'"); goto fail; } while(0);
57345 }
57346 arg1 = reinterpret_cast< Xapian::KeyMaker * >(argp1);
57347 {
57348 SWIG_Python_Thread_Allow _swig_thread_allow;
57349 {
57350 Swig::Director *director = dynamic_cast<Swig::Director *>(arg1);
57351 if (director) director->swig_disown();
57352 }
57353 _swig_thread_allow.end();
57354 }
57355 resultobj = SWIG_Py_Void();
57356 return resultobj;
57357fail:
57358 return __null;
57359}
57360static __attribute__ ((__unused__)) PyObject *KeyMaker_swigregister(PyObject *, PyObject *args) {
57361 PyObject *obj;
57362 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
57363 SWIG_TypeNewClientData(swig_types[26], SwigPyClientData_New(obj));
57364 return SWIG_Py_Void();
57365}
57366static __attribute__ ((__unused__)) PyObject *KeyMaker_swiginit(PyObject *, PyObject *args) {
57367 return SWIG_Python_InitShadowInstance(args);
57368}
57369static __attribute__ ((__unused__)) PyObject *_wrap_new_MultiValueKeyMaker(PyObject *, PyObject *args) {
57370 PyObject *resultobj = 0;
57371 Xapian::MultiValueKeyMaker *result = 0 ;
57372 if (!SWIG_Python_UnpackTuple(args,"new_MultiValueKeyMaker",0,0,0)) goto fail;
57373 {
57374 SWIG_Python_Thread_Allow _swig_thread_allow;
57375 {
57376 try {
57377 result = (Xapian::MultiValueKeyMaker *)new Xapian::MultiValueKeyMaker();
57378 } catch (...) {
57379 _swig_thread_allow.end();
57380 Xapian::SetPythonException();
57381 goto fail;
57382 }
57383 }
57384 _swig_thread_allow.end();
57385 }
57386 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[32], ((0x1 << 1) | 0x1) | 0);
57387 return resultobj;
57388fail:
57389 return __null;
57390}
57391static __attribute__ ((__unused__)) PyObject *_wrap_MultiValueKeyMaker_add_value__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
57392 PyObject *resultobj = 0;
57393 Xapian::MultiValueKeyMaker *arg1 = (Xapian::MultiValueKeyMaker *) 0 ;
57394 Xapian::valueno arg2 ;
57395 bool arg3 ;
57396 void *argp1 = 0 ;
57397 int res1 = 0 ;
57398 unsigned int val2 ;
57399 int ecode2 = 0 ;
57400 bool val3 ;
57401 int ecode3 = 0 ;
57402 if ((nobjs < 3) || (nobjs > 3)) goto fail;
57403 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[32], 0 | 0, 0);
57404 if (!(res1 >= 0)) {
57405 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MultiValueKeyMaker_add_value" "', argument " "1"" of type '" "Xapian::MultiValueKeyMaker *""'"); goto fail; } while(0);
57406 }
57407 arg1 = reinterpret_cast< Xapian::MultiValueKeyMaker * >(argp1);
57408 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
57409 if (!(ecode2 >= 0)) {
57410 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "MultiValueKeyMaker_add_value" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
57411 }
57412 arg2 = static_cast< Xapian::valueno >(val2);
57413 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
57414 if (!(ecode3 >= 0)) {
57415 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "MultiValueKeyMaker_add_value" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
57416 }
57417 arg3 = static_cast< bool >(val3);
57418 {
57419 SWIG_Python_Thread_Allow _swig_thread_allow;
57420 {
57421 try {
57422 (arg1)->add_value(arg2,arg3);
57423 } catch (...) {
57424 _swig_thread_allow.end();
57425 Xapian::SetPythonException();
57426 goto fail;
57427 }
57428 }
57429 _swig_thread_allow.end();
57430 }
57431 resultobj = SWIG_Py_Void();
57432 return resultobj;
57433fail:
57434 return __null;
57435}
57436static __attribute__ ((__unused__)) PyObject *_wrap_MultiValueKeyMaker_add_value__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
57437 PyObject *resultobj = 0;
57438 Xapian::MultiValueKeyMaker *arg1 = (Xapian::MultiValueKeyMaker *) 0 ;
57439 Xapian::valueno arg2 ;
57440 void *argp1 = 0 ;
57441 int res1 = 0 ;
57442 unsigned int val2 ;
57443 int ecode2 = 0 ;
57444 if ((nobjs < 2) || (nobjs > 2)) goto fail;
57445 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[32], 0 | 0, 0);
57446 if (!(res1 >= 0)) {
57447 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MultiValueKeyMaker_add_value" "', argument " "1"" of type '" "Xapian::MultiValueKeyMaker *""'"); goto fail; } while(0);
57448 }
57449 arg1 = reinterpret_cast< Xapian::MultiValueKeyMaker * >(argp1);
57450 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
57451 if (!(ecode2 >= 0)) {
57452 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "MultiValueKeyMaker_add_value" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
57453 }
57454 arg2 = static_cast< Xapian::valueno >(val2);
57455 {
57456 SWIG_Python_Thread_Allow _swig_thread_allow;
57457 {
57458 try {
57459 (arg1)->add_value(arg2);
57460 } catch (...) {
57461 _swig_thread_allow.end();
57462 Xapian::SetPythonException();
57463 goto fail;
57464 }
57465 }
57466 _swig_thread_allow.end();
57467 }
57468 resultobj = SWIG_Py_Void();
57469 return resultobj;
57470fail:
57471 return __null;
57472}
57473static __attribute__ ((__unused__)) PyObject *_wrap_MultiValueKeyMaker_add_value(PyObject *self, PyObject *args) {
57474 int argc;
57475 PyObject *argv[4];
57476 if (!(argc = SWIG_Python_UnpackTuple(args,"MultiValueKeyMaker_add_value",0,3,argv))) goto fail;
57477 --argc;
57478 if (argc == 2) {
57479 return _wrap_MultiValueKeyMaker_add_value__SWIG_1(self, argc, argv);
57480 }
57481 if (argc == 3) {
57482 return _wrap_MultiValueKeyMaker_add_value__SWIG_0(self, argc, argv);
57483 }
57484fail:
57485 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'MultiValueKeyMaker_add_value'.\n"
57486 " Possible C/C++ prototypes are:\n"
57487 " add_value(Xapian::MultiValueKeyMaker *,Xapian::valueno,bool)\n"
57488 " add_value(Xapian::MultiValueKeyMaker *,Xapian::valueno)\n");
57489 return __null;
57490}
57491static __attribute__ ((__unused__)) PyObject *_wrap_delete_MultiValueKeyMaker(PyObject *, PyObject *args) {
57492 PyObject *resultobj = 0;
57493 Xapian::MultiValueKeyMaker *arg1 = (Xapian::MultiValueKeyMaker *) 0 ;
57494 void *argp1 = 0 ;
57495 int res1 = 0 ;
57496 PyObject *swig_obj[1] ;
57497 if (!args) goto fail;
57498 swig_obj[0] = args;
57499 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[32], 0x1 | 0, 0);
57500 if (!(res1 >= 0)) {
57501 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_MultiValueKeyMaker" "', argument " "1"" of type '" "Xapian::MultiValueKeyMaker *""'"); goto fail; } while(0);
57502 }
57503 arg1 = reinterpret_cast< Xapian::MultiValueKeyMaker * >(argp1);
57504 {
57505 SWIG_Python_Thread_Allow _swig_thread_allow;
57506 {
57507 try {
57508 delete arg1;
57509 } catch (...) {
57510 _swig_thread_allow.end();
57511 Xapian::SetPythonException();
57512 goto fail;
57513 }
57514 }
57515 _swig_thread_allow.end();
57516 }
57517 resultobj = SWIG_Py_Void();
57518 return resultobj;
57519fail:
57520 return __null;
57521}
57522static __attribute__ ((__unused__)) PyObject *MultiValueKeyMaker_swigregister(PyObject *, PyObject *args) {
57523 PyObject *obj;
57524 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
57525 SWIG_TypeNewClientData(swig_types[32], SwigPyClientData_New(obj));
57526 return SWIG_Py_Void();
57527}
57528static __attribute__ ((__unused__)) PyObject *MultiValueKeyMaker_swiginit(PyObject *, PyObject *args) {
57529 return SWIG_Python_InitShadowInstance(args);
57530}
57531static __attribute__ ((__unused__)) PyObject *_wrap_delete_Sorter(PyObject *, PyObject *args) {
57532 PyObject *resultobj = 0;
57533 Xapian::Sorter *arg1 = (Xapian::Sorter *) 0 ;
57534 void *argp1 = 0 ;
57535 int res1 = 0 ;
57536 PyObject *swig_obj[1] ;
57537 if (!args) goto fail;
57538 swig_obj[0] = args;
57539 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[49], 0x1 | 0, 0);
57540 if (!(res1 >= 0)) {
57541 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Sorter" "', argument " "1"" of type '" "Xapian::Sorter *""'"); goto fail; } while(0);
57542 }
57543 arg1 = reinterpret_cast< Xapian::Sorter * >(argp1);
57544 {
57545 SWIG_Python_Thread_Allow _swig_thread_allow;
57546 {
57547 try {
57548 delete arg1;
57549 } catch (...) {
57550 _swig_thread_allow.end();
57551 Xapian::SetPythonException();
57552 goto fail;
57553 }
57554 }
57555 _swig_thread_allow.end();
57556 }
57557 resultobj = SWIG_Py_Void();
57558 return resultobj;
57559fail:
57560 return __null;
57561}
57562static __attribute__ ((__unused__)) PyObject *Sorter_swigregister(PyObject *, PyObject *args) {
57563 PyObject *obj;
57564 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
57565 SWIG_TypeNewClientData(swig_types[49], SwigPyClientData_New(obj));
57566 return SWIG_Py_Void();
57567}
57568static __attribute__ ((__unused__)) PyObject *_wrap_new_MultiValueSorter(PyObject *, PyObject *args) {
57569 PyObject *resultobj = 0;
57570 Xapian::MultiValueSorter *result = 0 ;
57571 if (!SWIG_Python_UnpackTuple(args,"new_MultiValueSorter",0,0,0)) goto fail;
57572 {
57573 SWIG_Python_Thread_Allow _swig_thread_allow;
57574 {
57575 try {
57576 result = (Xapian::MultiValueSorter *)new Xapian::MultiValueSorter();
57577 } catch (...) {
57578 _swig_thread_allow.end();
57579 Xapian::SetPythonException();
57580 goto fail;
57581 }
57582 }
57583 _swig_thread_allow.end();
57584 }
57585 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[33], ((0x1 << 1) | 0x1) | 0);
57586 return resultobj;
57587fail:
57588 return __null;
57589}
57590static __attribute__ ((__unused__)) PyObject *_wrap_MultiValueSorter_add__SWIG_0(PyObject *, int nobjs, PyObject **swig_obj) {
57591 PyObject *resultobj = 0;
57592 Xapian::MultiValueSorter *arg1 = (Xapian::MultiValueSorter *) 0 ;
57593 Xapian::valueno arg2 ;
57594 bool arg3 ;
57595 void *argp1 = 0 ;
57596 int res1 = 0 ;
57597 unsigned int val2 ;
57598 int ecode2 = 0 ;
57599 bool val3 ;
57600 int ecode3 = 0 ;
57601 if ((nobjs < 3) || (nobjs > 3)) goto fail;
57602 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[33], 0 | 0, 0);
57603 if (!(res1 >= 0)) {
57604 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MultiValueSorter_add" "', argument " "1"" of type '" "Xapian::MultiValueSorter *""'"); goto fail; } while(0);
57605 }
57606 arg1 = reinterpret_cast< Xapian::MultiValueSorter * >(argp1);
57607 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
57608 if (!(ecode2 >= 0)) {
57609 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "MultiValueSorter_add" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
57610 }
57611 arg2 = static_cast< Xapian::valueno >(val2);
57612 ecode3 = SWIG_AsVal_bool(swig_obj[2], &val3);
57613 if (!(ecode3 >= 0)) {
57614 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "MultiValueSorter_add" "', argument " "3"" of type '" "bool""'"); goto fail; } while(0);
57615 }
57616 arg3 = static_cast< bool >(val3);
57617 {
57618 SWIG_Python_Thread_Allow _swig_thread_allow;
57619 {
57620 try {
57621 (arg1)->add(arg2,arg3);
57622 } catch (...) {
57623 _swig_thread_allow.end();
57624 Xapian::SetPythonException();
57625 goto fail;
57626 }
57627 }
57628 _swig_thread_allow.end();
57629 }
57630 resultobj = SWIG_Py_Void();
57631 return resultobj;
57632fail:
57633 return __null;
57634}
57635static __attribute__ ((__unused__)) PyObject *_wrap_MultiValueSorter_add__SWIG_1(PyObject *, int nobjs, PyObject **swig_obj) {
57636 PyObject *resultobj = 0;
57637 Xapian::MultiValueSorter *arg1 = (Xapian::MultiValueSorter *) 0 ;
57638 Xapian::valueno arg2 ;
57639 void *argp1 = 0 ;
57640 int res1 = 0 ;
57641 unsigned int val2 ;
57642 int ecode2 = 0 ;
57643 if ((nobjs < 2) || (nobjs > 2)) goto fail;
57644 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[33], 0 | 0, 0);
57645 if (!(res1 >= 0)) {
57646 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "MultiValueSorter_add" "', argument " "1"" of type '" "Xapian::MultiValueSorter *""'"); goto fail; } while(0);
57647 }
57648 arg1 = reinterpret_cast< Xapian::MultiValueSorter * >(argp1);
57649 ecode2 = SWIG_AsVal_unsigned_SS_int(swig_obj[1], &val2);
57650 if (!(ecode2 >= 0)) {
57651 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "MultiValueSorter_add" "', argument " "2"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
57652 }
57653 arg2 = static_cast< Xapian::valueno >(val2);
57654 {
57655 SWIG_Python_Thread_Allow _swig_thread_allow;
57656 {
57657 try {
57658 (arg1)->add(arg2);
57659 } catch (...) {
57660 _swig_thread_allow.end();
57661 Xapian::SetPythonException();
57662 goto fail;
57663 }
57664 }
57665 _swig_thread_allow.end();
57666 }
57667 resultobj = SWIG_Py_Void();
57668 return resultobj;
57669fail:
57670 return __null;
57671}
57672static __attribute__ ((__unused__)) PyObject *_wrap_MultiValueSorter_add(PyObject *self, PyObject *args) {
57673 int argc;
57674 PyObject *argv[4];
57675 if (!(argc = SWIG_Python_UnpackTuple(args,"MultiValueSorter_add",0,3,argv))) goto fail;
57676 --argc;
57677 if (argc == 2) {
57678 return _wrap_MultiValueSorter_add__SWIG_1(self, argc, argv);
57679 }
57680 if (argc == 3) {
57681 return _wrap_MultiValueSorter_add__SWIG_0(self, argc, argv);
57682 }
57683fail:
57684 SWIG_Python_SetErrorMsg(PyExc_NotImplementedError,"Wrong number of arguments for overloaded function 'MultiValueSorter_add'.\n"
57685 " Possible C/C++ prototypes are:\n"
57686 " add(Xapian::MultiValueSorter *,Xapian::valueno,bool)\n"
57687 " add(Xapian::MultiValueSorter *,Xapian::valueno)\n");
57688 return __null;
57689}
57690static __attribute__ ((__unused__)) PyObject *_wrap_delete_MultiValueSorter(PyObject *, PyObject *args) {
57691 PyObject *resultobj = 0;
57692 Xapian::MultiValueSorter *arg1 = (Xapian::MultiValueSorter *) 0 ;
57693 void *argp1 = 0 ;
57694 int res1 = 0 ;
57695 PyObject *swig_obj[1] ;
57696 if (!args) goto fail;
57697 swig_obj[0] = args;
57698 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[33], 0x1 | 0, 0);
57699 if (!(res1 >= 0)) {
57700 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_MultiValueSorter" "', argument " "1"" of type '" "Xapian::MultiValueSorter *""'"); goto fail; } while(0);
57701 }
57702 arg1 = reinterpret_cast< Xapian::MultiValueSorter * >(argp1);
57703 {
57704 SWIG_Python_Thread_Allow _swig_thread_allow;
57705 {
57706 try {
57707 delete arg1;
57708 } catch (...) {
57709 _swig_thread_allow.end();
57710 Xapian::SetPythonException();
57711 goto fail;
57712 }
57713 }
57714 _swig_thread_allow.end();
57715 }
57716 resultobj = SWIG_Py_Void();
57717 return resultobj;
57718fail:
57719 return __null;
57720}
57721static __attribute__ ((__unused__)) PyObject *MultiValueSorter_swigregister(PyObject *, PyObject *args) {
57722 PyObject *obj;
57723 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
57724 SWIG_TypeNewClientData(swig_types[33], SwigPyClientData_New(obj));
57725 return SWIG_Py_Void();
57726}
57727static __attribute__ ((__unused__)) PyObject *MultiValueSorter_swiginit(PyObject *, PyObject *args) {
57728 return SWIG_Python_InitShadowInstance(args);
57729}
57730static __attribute__ ((__unused__)) PyObject *_wrap_new_ValueSetMatchDecider(PyObject *, PyObject *args) {
57731 PyObject *resultobj = 0;
57732 Xapian::valueno arg1 ;
57733 bool arg2 ;
57734 unsigned int val1 ;
57735 int ecode1 = 0 ;
57736 bool val2 ;
57737 int ecode2 = 0 ;
57738 PyObject *swig_obj[2] ;
57739 Xapian::ValueSetMatchDecider *result = 0 ;
57740 if (!SWIG_Python_UnpackTuple(args,"new_ValueSetMatchDecider",2,2,swig_obj)) goto fail;
57741 ecode1 = SWIG_AsVal_unsigned_SS_int(swig_obj[0], &val1);
57742 if (!(ecode1 >= 0)) {
57743 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode1 != (-1)) ? ecode1 : -5)), "in method '" "new_ValueSetMatchDecider" "', argument " "1"" of type '" "Xapian::valueno""'"); goto fail; } while(0);
57744 }
57745 arg1 = static_cast< Xapian::valueno >(val1);
57746 ecode2 = SWIG_AsVal_bool(swig_obj[1], &val2);
57747 if (!(ecode2 >= 0)) {
57748 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "new_ValueSetMatchDecider" "', argument " "2"" of type '" "bool""'"); goto fail; } while(0);
57749 }
57750 arg2 = static_cast< bool >(val2);
57751 {
57752 SWIG_Python_Thread_Allow _swig_thread_allow;
57753 {
57754 try {
57755 result = (Xapian::ValueSetMatchDecider *)new Xapian::ValueSetMatchDecider(arg1,arg2);
57756 } catch (...) {
57757 _swig_thread_allow.end();
57758 Xapian::SetPythonException();
57759 goto fail;
57760 }
57761 }
57762 _swig_thread_allow.end();
57763 }
57764 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[63], ((0x1 << 1) | 0x1) | 0);
57765 return resultobj;
57766fail:
57767 return __null;
57768}
57769static __attribute__ ((__unused__)) PyObject *_wrap_ValueSetMatchDecider_add_value(PyObject *, PyObject *args) {
57770 PyObject *resultobj = 0;
57771 Xapian::ValueSetMatchDecider *arg1 = (Xapian::ValueSetMatchDecider *) 0 ;
57772 std::string *arg2 = 0 ;
57773 void *argp1 = 0 ;
57774 int res1 = 0 ;
57775 int res2 = ((0)) ;
57776 PyObject *swig_obj[2] ;
57777 if (!SWIG_Python_UnpackTuple(args,"ValueSetMatchDecider_add_value",2,2,swig_obj)) goto fail;
57778 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[63], 0 | 0, 0);
57779 if (!(res1 >= 0)) {
57780 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueSetMatchDecider_add_value" "', argument " "1"" of type '" "Xapian::ValueSetMatchDecider *""'"); goto fail; } while(0);
57781 }
57782 arg1 = reinterpret_cast< Xapian::ValueSetMatchDecider * >(argp1);
57783 {
57784 std::string *ptr = (std::string *)0;
57785 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
57786 if (!(res2 >= 0)) {
57787 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ValueSetMatchDecider_add_value" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
57788 }
57789 if (!ptr) {
57790 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ValueSetMatchDecider_add_value" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
57791 }
57792 arg2 = ptr;
57793 }
57794 {
57795 SWIG_Python_Thread_Allow _swig_thread_allow;
57796 {
57797 try {
57798 (arg1)->add_value((std::string const &)*arg2);
57799 } catch (...) {
57800 _swig_thread_allow.end();
57801 Xapian::SetPythonException();
57802 goto fail;
57803 }
57804 }
57805 _swig_thread_allow.end();
57806 }
57807 resultobj = SWIG_Py_Void();
57808 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
57809 return resultobj;
57810fail:
57811 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
57812 return __null;
57813}
57814static __attribute__ ((__unused__)) PyObject *_wrap_ValueSetMatchDecider_remove_value(PyObject *, PyObject *args) {
57815 PyObject *resultobj = 0;
57816 Xapian::ValueSetMatchDecider *arg1 = (Xapian::ValueSetMatchDecider *) 0 ;
57817 std::string *arg2 = 0 ;
57818 void *argp1 = 0 ;
57819 int res1 = 0 ;
57820 int res2 = ((0)) ;
57821 PyObject *swig_obj[2] ;
57822 if (!SWIG_Python_UnpackTuple(args,"ValueSetMatchDecider_remove_value",2,2,swig_obj)) goto fail;
57823 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[63], 0 | 0, 0);
57824 if (!(res1 >= 0)) {
57825 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "ValueSetMatchDecider_remove_value" "', argument " "1"" of type '" "Xapian::ValueSetMatchDecider *""'"); goto fail; } while(0);
57826 }
57827 arg1 = reinterpret_cast< Xapian::ValueSetMatchDecider * >(argp1);
57828 {
57829 std::string *ptr = (std::string *)0;
57830 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
57831 if (!(res2 >= 0)) {
57832 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "ValueSetMatchDecider_remove_value" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
57833 }
57834 if (!ptr) {
57835 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "ValueSetMatchDecider_remove_value" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
57836 }
57837 arg2 = ptr;
57838 }
57839 {
57840 SWIG_Python_Thread_Allow _swig_thread_allow;
57841 {
57842 try {
57843 (arg1)->remove_value((std::string const &)*arg2);
57844 } catch (...) {
57845 _swig_thread_allow.end();
57846 Xapian::SetPythonException();
57847 goto fail;
57848 }
57849 }
57850 _swig_thread_allow.end();
57851 }
57852 resultobj = SWIG_Py_Void();
57853 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
57854 return resultobj;
57855fail:
57856 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
57857 return __null;
57858}
57859static __attribute__ ((__unused__)) PyObject *_wrap_delete_ValueSetMatchDecider(PyObject *, PyObject *args) {
57860 PyObject *resultobj = 0;
57861 Xapian::ValueSetMatchDecider *arg1 = (Xapian::ValueSetMatchDecider *) 0 ;
57862 void *argp1 = 0 ;
57863 int res1 = 0 ;
57864 PyObject *swig_obj[1] ;
57865 if (!args) goto fail;
57866 swig_obj[0] = args;
57867 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[63], 0x1 | 0, 0);
57868 if (!(res1 >= 0)) {
57869 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_ValueSetMatchDecider" "', argument " "1"" of type '" "Xapian::ValueSetMatchDecider *""'"); goto fail; } while(0);
57870 }
57871 arg1 = reinterpret_cast< Xapian::ValueSetMatchDecider * >(argp1);
57872 {
57873 SWIG_Python_Thread_Allow _swig_thread_allow;
57874 {
57875 try {
57876 delete arg1;
57877 } catch (...) {
57878 _swig_thread_allow.end();
57879 Xapian::SetPythonException();
57880 goto fail;
57881 }
57882 }
57883 _swig_thread_allow.end();
57884 }
57885 resultobj = SWIG_Py_Void();
57886 return resultobj;
57887fail:
57888 return __null;
57889}
57890static __attribute__ ((__unused__)) PyObject *ValueSetMatchDecider_swigregister(PyObject *, PyObject *args) {
57891 PyObject *obj;
57892 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
57893 SWIG_TypeNewClientData(swig_types[63], SwigPyClientData_New(obj));
57894 return SWIG_Py_Void();
57895}
57896static __attribute__ ((__unused__)) PyObject *ValueSetMatchDecider_swiginit(PyObject *, PyObject *args) {
57897 return SWIG_Python_InitShadowInstance(args);
57898}
57899static __attribute__ ((__unused__)) PyObject *_wrap_new_Compactor(PyObject *, PyObject *args) {
57900 PyObject *resultobj = 0;
57901 PyObject *arg1 = (PyObject *) 0 ;
57902 PyObject *swig_obj[1] ;
57903 Xapian::Compactor *result = 0 ;
57904 if (!args) goto fail;
57905 swig_obj[0] = args;
57906 arg1 = swig_obj[0];
57907 {
57908 SWIG_Python_Thread_Allow _swig_thread_allow;
57909 {
57910 try {
57911 if ( arg1 != (&_Py_NoneStruct) ) {
57912 result = (Xapian::Compactor *)new SwigDirector_Compactor(arg1);
57913 } else {
57914 result = (Xapian::Compactor *)new Xapian::Compactor();
57915 }
57916 } catch (...) {
57917 _swig_thread_allow.end();
57918 Xapian::SetPythonException();
57919 goto fail;
57920 }
57921 }
57922 _swig_thread_allow.end();
57923 }
57924 resultobj = SWIG_Python_NewPointerObj(const_cast< void * >(static_cast< const void * >(result)), swig_types[3], ((0x1 << 1) | 0x1) | 0);
57925 return resultobj;
57926fail:
57927 return __null;
57928}
57929static __attribute__ ((__unused__)) PyObject *_wrap_delete_Compactor(PyObject *, PyObject *args) {
57930 PyObject *resultobj = 0;
57931 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
57932 void *argp1 = 0 ;
57933 int res1 = 0 ;
57934 PyObject *swig_obj[1] ;
57935 if (!args) goto fail;
57936 swig_obj[0] = args;
57937 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0x1 | 0, 0);
57938 if (!(res1 >= 0)) {
57939 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "delete_Compactor" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
57940 }
57941 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
57942 {
57943 SWIG_Python_Thread_Allow _swig_thread_allow;
57944 {
57945 try {
57946 delete arg1;
57947 } catch (...) {
57948 _swig_thread_allow.end();
57949 Xapian::SetPythonException();
57950 goto fail;
57951 }
57952 }
57953 _swig_thread_allow.end();
57954 }
57955 resultobj = SWIG_Py_Void();
57956 return resultobj;
57957fail:
57958 return __null;
57959}
57960static __attribute__ ((__unused__)) PyObject *_wrap_Compactor_set_block_size(PyObject *, PyObject *args) {
57961 PyObject *resultobj = 0;
57962 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
57963 size_t arg2 ;
57964 void *argp1 = 0 ;
57965 int res1 = 0 ;
57966 size_t val2 ;
57967 int ecode2 = 0 ;
57968 PyObject *swig_obj[2] ;
57969 if (!SWIG_Python_UnpackTuple(args,"Compactor_set_block_size",2,2,swig_obj)) goto fail;
57970 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
57971 if (!(res1 >= 0)) {
57972 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Compactor_set_block_size" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
57973 }
57974 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
57975 ecode2 = SWIG_AsVal_size_t(swig_obj[1], &val2);
57976 if (!(ecode2 >= 0)) {
57977 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Compactor_set_block_size" "', argument " "2"" of type '" "size_t""'"); goto fail; } while(0);
57978 }
57979 arg2 = static_cast< size_t >(val2);
57980 {
57981 SWIG_Python_Thread_Allow _swig_thread_allow;
57982 {
57983 try {
57984 (arg1)->set_block_size(arg2);
57985 } catch (...) {
57986 _swig_thread_allow.end();
57987 Xapian::SetPythonException();
57988 goto fail;
57989 }
57990 }
57991 _swig_thread_allow.end();
57992 }
57993 resultobj = SWIG_Py_Void();
57994 return resultobj;
57995fail:
57996 return __null;
57997}
57998static __attribute__ ((__unused__)) PyObject *_wrap_Compactor_set_renumber(PyObject *, PyObject *args) {
57999 PyObject *resultobj = 0;
58000 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
58001 bool arg2 ;
58002 void *argp1 = 0 ;
58003 int res1 = 0 ;
58004 bool val2 ;
58005 int ecode2 = 0 ;
58006 PyObject *swig_obj[2] ;
58007 if (!SWIG_Python_UnpackTuple(args,"Compactor_set_renumber",2,2,swig_obj)) goto fail;
58008 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
58009 if (!(res1 >= 0)) {
58010 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Compactor_set_renumber" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
58011 }
58012 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
58013 ecode2 = SWIG_AsVal_bool(swig_obj[1], &val2);
58014 if (!(ecode2 >= 0)) {
58015 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Compactor_set_renumber" "', argument " "2"" of type '" "bool""'"); goto fail; } while(0);
58016 }
58017 arg2 = static_cast< bool >(val2);
58018 {
58019 SWIG_Python_Thread_Allow _swig_thread_allow;
58020 {
58021 try {
58022 (arg1)->set_renumber(arg2);
58023 } catch (...) {
58024 _swig_thread_allow.end();
58025 Xapian::SetPythonException();
58026 goto fail;
58027 }
58028 }
58029 _swig_thread_allow.end();
58030 }
58031 resultobj = SWIG_Py_Void();
58032 return resultobj;
58033fail:
58034 return __null;
58035}
58036static __attribute__ ((__unused__)) PyObject *_wrap_Compactor_set_multipass(PyObject *, PyObject *args) {
58037 PyObject *resultobj = 0;
58038 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
58039 bool arg2 ;
58040 void *argp1 = 0 ;
58041 int res1 = 0 ;
58042 bool val2 ;
58043 int ecode2 = 0 ;
58044 PyObject *swig_obj[2] ;
58045 if (!SWIG_Python_UnpackTuple(args,"Compactor_set_multipass",2,2,swig_obj)) goto fail;
58046 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
58047 if (!(res1 >= 0)) {
58048 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Compactor_set_multipass" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
58049 }
58050 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
58051 ecode2 = SWIG_AsVal_bool(swig_obj[1], &val2);
58052 if (!(ecode2 >= 0)) {
58053 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Compactor_set_multipass" "', argument " "2"" of type '" "bool""'"); goto fail; } while(0);
58054 }
58055 arg2 = static_cast< bool >(val2);
58056 {
58057 SWIG_Python_Thread_Allow _swig_thread_allow;
58058 {
58059 try {
58060 (arg1)->set_multipass(arg2);
58061 } catch (...) {
58062 _swig_thread_allow.end();
58063 Xapian::SetPythonException();
58064 goto fail;
58065 }
58066 }
58067 _swig_thread_allow.end();
58068 }
58069 resultobj = SWIG_Py_Void();
58070 return resultobj;
58071fail:
58072 return __null;
58073}
58074static __attribute__ ((__unused__)) PyObject *_wrap_Compactor_set_compaction_level(PyObject *, PyObject *args) {
58075 PyObject *resultobj = 0;
58076 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
58077 Xapian::Compactor::compaction_level arg2 ;
58078 void *argp1 = 0 ;
58079 int res1 = 0 ;
58080 int val2 ;
58081 int ecode2 = 0 ;
58082 PyObject *swig_obj[2] ;
58083 if (!SWIG_Python_UnpackTuple(args,"Compactor_set_compaction_level",2,2,swig_obj)) goto fail;
58084 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
58085 if (!(res1 >= 0)) {
58086 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Compactor_set_compaction_level" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
58087 }
58088 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
58089 ecode2 = SWIG_AsVal_int(swig_obj[1], &val2);
58090 if (!(ecode2 >= 0)) {
58091 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode2 != (-1)) ? ecode2 : -5)), "in method '" "Compactor_set_compaction_level" "', argument " "2"" of type '" "Xapian::Compactor::compaction_level""'"); goto fail; } while(0);
58092 }
58093 arg2 = static_cast< Xapian::Compactor::compaction_level >(val2);
58094 {
58095 SWIG_Python_Thread_Allow _swig_thread_allow;
58096 {
58097 try {
58098 (arg1)->set_compaction_level(arg2);
58099 } catch (...) {
58100 _swig_thread_allow.end();
58101 Xapian::SetPythonException();
58102 goto fail;
58103 }
58104 }
58105 _swig_thread_allow.end();
58106 }
58107 resultobj = SWIG_Py_Void();
58108 return resultobj;
58109fail:
58110 return __null;
58111}
58112static __attribute__ ((__unused__)) PyObject *_wrap_Compactor_set_destdir(PyObject *, PyObject *args) {
58113 PyObject *resultobj = 0;
58114 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
58115 std::string *arg2 = 0 ;
58116 void *argp1 = 0 ;
58117 int res1 = 0 ;
58118 int res2 = ((0)) ;
58119 PyObject *swig_obj[2] ;
58120 if (!SWIG_Python_UnpackTuple(args,"Compactor_set_destdir",2,2,swig_obj)) goto fail;
58121 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
58122 if (!(res1 >= 0)) {
58123 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Compactor_set_destdir" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
58124 }
58125 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
58126 {
58127 std::string *ptr = (std::string *)0;
58128 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
58129 if (!(res2 >= 0)) {
58130 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Compactor_set_destdir" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
58131 }
58132 if (!ptr) {
58133 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Compactor_set_destdir" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
58134 }
58135 arg2 = ptr;
58136 }
58137 {
58138 SWIG_Python_Thread_Allow _swig_thread_allow;
58139 {
58140 try {
58141 (arg1)->set_destdir((std::string const &)*arg2);
58142 } catch (...) {
58143 _swig_thread_allow.end();
58144 Xapian::SetPythonException();
58145 goto fail;
58146 }
58147 }
58148 _swig_thread_allow.end();
58149 }
58150 resultobj = SWIG_Py_Void();
58151 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
58152 return resultobj;
58153fail:
58154 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
58155 return __null;
58156}
58157static __attribute__ ((__unused__)) PyObject *_wrap_Compactor_add_source(PyObject *, PyObject *args) {
58158 PyObject *resultobj = 0;
58159 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
58160 std::string *arg2 = 0 ;
58161 void *argp1 = 0 ;
58162 int res1 = 0 ;
58163 int res2 = ((0)) ;
58164 PyObject *swig_obj[2] ;
58165 if (!SWIG_Python_UnpackTuple(args,"Compactor_add_source",2,2,swig_obj)) goto fail;
58166 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
58167 if (!(res1 >= 0)) {
58168 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Compactor_add_source" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
58169 }
58170 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
58171 {
58172 std::string *ptr = (std::string *)0;
58173 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
58174 if (!(res2 >= 0)) {
58175 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Compactor_add_source" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
58176 }
58177 if (!ptr) {
58178 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Compactor_add_source" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
58179 }
58180 arg2 = ptr;
58181 }
58182 {
58183 SWIG_Python_Thread_Allow _swig_thread_allow;
58184 {
58185 try {
58186 (arg1)->add_source((std::string const &)*arg2);
58187 } catch (...) {
58188 _swig_thread_allow.end();
58189 Xapian::SetPythonException();
58190 goto fail;
58191 }
58192 }
58193 _swig_thread_allow.end();
58194 }
58195 resultobj = SWIG_Py_Void();
58196 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
58197 return resultobj;
58198fail:
58199 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
58200 return __null;
58201}
58202static __attribute__ ((__unused__)) PyObject *_wrap_Compactor_compact(PyObject *, PyObject *args) {
58203 PyObject *resultobj = 0;
58204 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
58205 void *argp1 = 0 ;
58206 int res1 = 0 ;
58207 PyObject *swig_obj[1] ;
58208 if (!args) goto fail;
58209 swig_obj[0] = args;
58210 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
58211 if (!(res1 >= 0)) {
58212 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Compactor_compact" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
58213 }
58214 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
58215 {
58216 SWIG_Python_Thread_Allow _swig_thread_allow;
58217 {
58218 try {
58219 (arg1)->compact();
58220 } catch (...) {
58221 _swig_thread_allow.end();
58222 Xapian::SetPythonException();
58223 goto fail;
58224 }
58225 }
58226 _swig_thread_allow.end();
58227 }
58228 resultobj = SWIG_Py_Void();
58229 return resultobj;
58230fail:
58231 return __null;
58232}
58233static __attribute__ ((__unused__)) PyObject *_wrap_Compactor_set_status(PyObject *, PyObject *args) {
58234 PyObject *resultobj = 0;
58235 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
58236 std::string *arg2 = 0 ;
58237 std::string *arg3 = 0 ;
58238 void *argp1 = 0 ;
58239 int res1 = 0 ;
58240 int res2 = ((0)) ;
58241 int res3 = ((0)) ;
58242 PyObject *swig_obj[3] ;
58243 Swig::Director *director = 0;
58244 bool upcall = false;
58245 if (!SWIG_Python_UnpackTuple(args,"Compactor_set_status",3,3,swig_obj)) goto fail;
58246 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
58247 if (!(res1 >= 0)) {
58248 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Compactor_set_status" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
58249 }
58250 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
58251 {
58252 std::string *ptr = (std::string *)0;
58253 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
58254 if (!(res2 >= 0)) {
58255 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Compactor_set_status" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
58256 }
58257 if (!ptr) {
58258 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Compactor_set_status" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
58259 }
58260 arg2 = ptr;
58261 }
58262 {
58263 std::string *ptr = (std::string *)0;
58264 res3 = SWIG_anystring_as_ptr(&(swig_obj[2]), &ptr);
58265 if (!(res3 >= 0)) {
58266 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res3 != (-1)) ? res3 : -5)), "in method '" "Compactor_set_status" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
58267 }
58268 if (!ptr) {
58269 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Compactor_set_status" "', argument " "3"" of type '" "std::string const &""'"); goto fail; } while(0);
58270 }
58271 arg3 = ptr;
58272 }
58273 director = dynamic_cast<Swig::Director*>(arg1);
58274 upcall = (director && (director->swig_get_self()==swig_obj[0]));
58275 try {
58276 {
58277 try {
58278 if (upcall) {
58279 (arg1)->Xapian::Compactor::set_status((std::string const &)*arg2,(std::string const &)*arg3);
58280 } else {
58281 (arg1)->set_status((std::string const &)*arg2,(std::string const &)*arg3);
58282 }
58283 } catch (...) {
58284 Xapian::SetPythonException();
58285 goto fail;
58286 }
58287 }
58288 } catch (Swig::DirectorException&) {
58289 goto fail;
58290 }
58291 resultobj = SWIG_Py_Void();
58292 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
58293 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
58294 return resultobj;
58295fail:
58296 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
58297 if (((res3 >= 0) && (res3 & ((1 << 8) << 1)))) delete arg3;
58298 return __null;
58299}
58300static __attribute__ ((__unused__)) PyObject *_wrap_Compactor_resolve_duplicate_metadata(PyObject *, PyObject *args) {
58301 PyObject *resultobj = 0;
58302 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
58303 std::string *arg2 = 0 ;
58304 size_t arg3 ;
58305 std::string *arg4 ;
58306 void *argp1 = 0 ;
58307 int res1 = 0 ;
58308 int res2 = ((0)) ;
58309 size_t val3 ;
58310 int ecode3 = 0 ;
58311 void *argp4 = 0 ;
58312 int res4 = 0 ;
58313 PyObject *swig_obj[4] ;
58314 Swig::Director *director = 0;
58315 bool upcall = false;
58316 std::string result;
58317 if (!SWIG_Python_UnpackTuple(args,"Compactor_resolve_duplicate_metadata",4,4,swig_obj)) goto fail;
58318 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
58319 if (!(res1 >= 0)) {
58320 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "Compactor_resolve_duplicate_metadata" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
58321 }
58322 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
58323 {
58324 std::string *ptr = (std::string *)0;
58325 res2 = SWIG_anystring_as_ptr(&(swig_obj[1]), &ptr);
58326 if (!(res2 >= 0)) {
58327 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res2 != (-1)) ? res2 : -5)), "in method '" "Compactor_resolve_duplicate_metadata" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
58328 }
58329 if (!ptr) {
58330 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(-9), "invalid null reference " "in method '" "Compactor_resolve_duplicate_metadata" "', argument " "2"" of type '" "std::string const &""'"); goto fail; } while(0);
58331 }
58332 arg2 = ptr;
58333 }
58334 ecode3 = SWIG_AsVal_size_t(swig_obj[2], &val3);
58335 if (!(ecode3 >= 0)) {
58336 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((ecode3 != (-1)) ? ecode3 : -5)), "in method '" "Compactor_resolve_duplicate_metadata" "', argument " "3"" of type '" "size_t""'"); goto fail; } while(0);
58337 }
58338 arg3 = static_cast< size_t >(val3);
58339 res4 = SWIG_Python_ConvertPtrAndOwn(swig_obj[3], &argp4, swig_types[77], 0 | 0, 0);
58340 if (!(res4 >= 0)) {
58341 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res4 != (-1)) ? res4 : -5)), "in method '" "Compactor_resolve_duplicate_metadata" "', argument " "4"" of type '" "std::string const []""'"); goto fail; } while(0);
58342 }
58343 arg4 = reinterpret_cast< std::string * >(argp4);
58344 director = dynamic_cast<Swig::Director*>(arg1);
58345 upcall = (director && (director->swig_get_self()==swig_obj[0]));
58346 try {
58347 {
58348 try {
58349 if (upcall) {
58350 result = (arg1)->Xapian::Compactor::resolve_duplicate_metadata((std::string const &)*arg2,arg3,(std::string const (*))arg4);
58351 } else {
58352 result = (arg1)->resolve_duplicate_metadata((std::string const &)*arg2,arg3,(std::string const (*))arg4);
58353 }
58354 } catch (...) {
58355 Xapian::SetPythonException();
58356 goto fail;
58357 }
58358 }
58359 } catch (Swig::DirectorException&) {
58360 goto fail;
58361 }
58362 resultobj = SWIG_From_std_string(static_cast< std::string >(result));
58363 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
58364 return resultobj;
58365fail:
58366 if (((res2 >= 0) && (res2 & ((1 << 8) << 1)))) delete arg2;
58367 return __null;
58368}
58369static __attribute__ ((__unused__)) PyObject *_wrap_disown_Compactor(PyObject *, PyObject *args) {
58370 PyObject *resultobj = 0;
58371 Xapian::Compactor *arg1 = (Xapian::Compactor *) 0 ;
58372 void *argp1 = 0 ;
58373 int res1 = 0 ;
58374 PyObject *swig_obj[1] ;
58375 if (!args) goto fail;
58376 swig_obj[0] = args;
58377 res1 = SWIG_Python_ConvertPtrAndOwn(swig_obj[0], &argp1, swig_types[3], 0 | 0, 0);
58378 if (!(res1 >= 0)) {
58379 do { SWIG_Python_SetErrorMsg(SWIG_Python_ErrorType(((res1 != (-1)) ? res1 : -5)), "in method '" "disown_Compactor" "', argument " "1"" of type '" "Xapian::Compactor *""'"); goto fail; } while(0);
58380 }
58381 arg1 = reinterpret_cast< Xapian::Compactor * >(argp1);
58382 {
58383 SWIG_Python_Thread_Allow _swig_thread_allow;
58384 {
58385 Swig::Director *director = dynamic_cast<Swig::Director *>(arg1);
58386 if (director) director->swig_disown();
58387 }
58388 _swig_thread_allow.end();
58389 }
58390 resultobj = SWIG_Py_Void();
58391 return resultobj;
58392fail:
58393 return __null;
58394}
58395static __attribute__ ((__unused__)) PyObject *Compactor_swigregister(PyObject *, PyObject *args) {
58396 PyObject *obj;
58397 if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return __null;
58398 SWIG_TypeNewClientData(swig_types[3], SwigPyClientData_New(obj));
58399 return SWIG_Py_Void();
58400}
58401static __attribute__ ((__unused__)) PyObject *Compactor_swiginit(PyObject *, PyObject *args) {
58402 return SWIG_Python_InitShadowInstance(args);
58403}
58404static PyMethodDef SwigMethods[] = {
58405 { (char *)"SWIG_PyInstanceMethod_New", (PyCFunction)SWIG_PyInstanceMethod_New, 0x0008, __null},
58406 { (char *)"delete_SwigPyIterator", (PyCFunction)_wrap_delete_SwigPyIterator, 0x0008, __null},
58407 { (char *)"SwigPyIterator_value", (PyCFunction)_wrap_SwigPyIterator_value, 0x0008, __null},
58408 { (char *)"SwigPyIterator_incr", _wrap_SwigPyIterator_incr, 0x0001, __null},
58409 { (char *)"SwigPyIterator_decr", _wrap_SwigPyIterator_decr, 0x0001, __null},
58410 { (char *)"SwigPyIterator_distance", _wrap_SwigPyIterator_distance, 0x0001, __null},
58411 { (char *)"SwigPyIterator_equal", _wrap_SwigPyIterator_equal, 0x0001, __null},
58412 { (char *)"SwigPyIterator_copy", (PyCFunction)_wrap_SwigPyIterator_copy, 0x0008, __null},
58413 { (char *)"SwigPyIterator_next", (PyCFunction)_wrap_SwigPyIterator_next, 0x0008, __null},
58414 { (char *)"SwigPyIterator___next__", (PyCFunction)_wrap_SwigPyIterator___next__, 0x0008, __null},
58415 { (char *)"SwigPyIterator_previous", (PyCFunction)_wrap_SwigPyIterator_previous, 0x0008, __null},
58416 { (char *)"SwigPyIterator_advance", _wrap_SwigPyIterator_advance, 0x0001, __null},
58417 { (char *)"SwigPyIterator___eq__", _wrap_SwigPyIterator___eq__, 0x0001, __null},
58418 { (char *)"SwigPyIterator___ne__", _wrap_SwigPyIterator___ne__, 0x0001, __null},
58419 { (char *)"SwigPyIterator___iadd__", _wrap_SwigPyIterator___iadd__, 0x0001, __null},
58420 { (char *)"SwigPyIterator___isub__", _wrap_SwigPyIterator___isub__, 0x0001, __null},
58421 { (char *)"SwigPyIterator___add__", _wrap_SwigPyIterator___add__, 0x0001, __null},
58422 { (char *)"SwigPyIterator___sub__", _wrap_SwigPyIterator___sub__, 0x0001, __null},
58423 { (char *)"SwigPyIterator_swigregister", SwigPyIterator_swigregister, 0x0001, __null},
58424 { (char *)"Error_get_type", (PyCFunction)_wrap_Error_get_type, 0x0008, (char *)"\n"
58425 "The type of this error (e.g. \"DocNotFoundError\".).\n"
58426 "\n"
58427 "const char* Xapian::Error::get_type() const \n"
58428 ""},
58429 { (char *)"Error_get_msg", (PyCFunction)_wrap_Error_get_msg, 0x0008, (char *)"\n"
58430 "Message giving details of the error, intended for human consumption.\n"
58431 "\n"
58432 "const std::string& Xapian::Error::get_msg() const \n"
58433 ""},
58434 { (char *)"Error_get_context", (PyCFunction)_wrap_Error_get_context, 0x0008, (char *)"\n"
58435 "Optional context information.\n"
58436 "\n"
58437 "const std::string& Xapian::Error::get_context() const\n"
58438 "\n"
58439 "This context is intended for use by Xapian::ErrorHandler (for example\n"
58440 "so it can know which remote server is unreliable and report the\n"
58441 "problem and remove that server from those being searched). But it's\n"
58442 "typically a plain-text string, and so also fit for human consumption.\n"
58443 "\n"
58444 ""},
58445 { (char *)"Error_get_error_string", (PyCFunction)_wrap_Error_get_error_string, 0x0008, (char *)"\n"
58446 "Returns any system error string associated with this exception.\n"
58447 "\n"
58448 "const char* Xapian::Error::get_error_string() const\n"
58449 "\n"
58450 "The system error string may come from errno, h_errno (on UNIX), or\n"
58451 "GetLastError() (on MS Windows). If there is no associated system error\n"
58452 "string, NULL is returned. \n"
58453 ""},
58454 { (char *)"Error___str__", (PyCFunction)_wrap_Error___str__, 0x0008, __null},
58455 { (char *)"delete_Error", (PyCFunction)_wrap_delete_Error, 0x0008, __null},
58456 { (char *)"Error_swigregister", Error_swigregister, 0x0001, __null},
58457 { (char *)"delete_LogicError", (PyCFunction)_wrap_delete_LogicError, 0x0008, __null},
58458 { (char *)"LogicError_swigregister", LogicError_swigregister, 0x0001, __null},
58459 { (char *)"delete_RuntimeError", (PyCFunction)_wrap_delete_RuntimeError, 0x0008, __null},
58460 { (char *)"RuntimeError_swigregister", RuntimeError_swigregister, 0x0001, __null},
58461 { (char *)"new_AssertionError", _wrap_new_AssertionError, 0x0001, (char *)"\n"
58462 "Construct from message and errno value.\n"
58463 "\n"
58464 "Xapian::AssertionError::AssertionError(const std::string &msg_, int\n"
58465 "errno_) \n"
58466 ""},
58467 { (char *)"delete_AssertionError", (PyCFunction)_wrap_delete_AssertionError, 0x0008, __null},
58468 { (char *)"AssertionError_swigregister", AssertionError_swigregister, 0x0001, __null},
58469 { (char *)"AssertionError_swiginit", AssertionError_swiginit, 0x0001, __null},
58470 { (char *)"new_InvalidArgumentError", _wrap_new_InvalidArgumentError, 0x0001, (char *)"\n"
58471 "Construct from message and errno value.\n"
58472 "\n"
58473 "Xapian::InvalidArgumentError::InvalidArgumentError(const std::string\n"
58474 "&msg_, int errno_) \n"
58475 ""},
58476 { (char *)"delete_InvalidArgumentError", (PyCFunction)_wrap_delete_InvalidArgumentError, 0x0008, __null},
58477 { (char *)"InvalidArgumentError_swigregister", InvalidArgumentError_swigregister, 0x0001, __null},
58478 { (char *)"InvalidArgumentError_swiginit", InvalidArgumentError_swiginit, 0x0001, __null},
58479 { (char *)"new_InvalidOperationError", _wrap_new_InvalidOperationError, 0x0001, (char *)"\n"
58480 "Construct from message and errno value.\n"
58481 "\n"
58482 "Xapian::InvalidOperationError::InvalidOperationError(const std::string\n"
58483 "&msg_, int errno_) \n"
58484 ""},
58485 { (char *)"delete_InvalidOperationError", (PyCFunction)_wrap_delete_InvalidOperationError, 0x0008, __null},
58486 { (char *)"InvalidOperationError_swigregister", InvalidOperationError_swigregister, 0x0001, __null},
58487 { (char *)"InvalidOperationError_swiginit", InvalidOperationError_swiginit, 0x0001, __null},
58488 { (char *)"new_UnimplementedError", _wrap_new_UnimplementedError, 0x0001, (char *)"\n"
58489 "Construct from message and errno value.\n"
58490 "\n"
58491 "Xapian::UnimplementedError::UnimplementedError(const std::string\n"
58492 "&msg_, int errno_) \n"
58493 ""},
58494 { (char *)"delete_UnimplementedError", (PyCFunction)_wrap_delete_UnimplementedError, 0x0008, __null},
58495 { (char *)"UnimplementedError_swigregister", UnimplementedError_swigregister, 0x0001, __null},
58496 { (char *)"UnimplementedError_swiginit", UnimplementedError_swiginit, 0x0001, __null},
58497 { (char *)"new_DatabaseError", _wrap_new_DatabaseError, 0x0001, (char *)"\n"
58498 "Construct from message and errno value.\n"
58499 "\n"
58500 "Xapian::DatabaseError::DatabaseError(const std::string &msg_, int\n"
58501 "errno_) \n"
58502 ""},
58503 { (char *)"delete_DatabaseError", (PyCFunction)_wrap_delete_DatabaseError, 0x0008, __null},
58504 { (char *)"DatabaseError_swigregister", DatabaseError_swigregister, 0x0001, __null},
58505 { (char *)"DatabaseError_swiginit", DatabaseError_swiginit, 0x0001, __null},
58506 { (char *)"new_DatabaseCorruptError", _wrap_new_DatabaseCorruptError, 0x0001, (char *)"\n"
58507 "Construct from message and errno value.\n"
58508 "\n"
58509 "Xapian::DatabaseCorruptError::DatabaseCorruptError(const std::string\n"
58510 "&msg_, int errno_) \n"
58511 ""},
58512 { (char *)"delete_DatabaseCorruptError", (PyCFunction)_wrap_delete_DatabaseCorruptError, 0x0008, __null},
58513 { (char *)"DatabaseCorruptError_swigregister", DatabaseCorruptError_swigregister, 0x0001, __null},
58514 { (char *)"DatabaseCorruptError_swiginit", DatabaseCorruptError_swiginit, 0x0001, __null},
58515 { (char *)"new_DatabaseCreateError", _wrap_new_DatabaseCreateError, 0x0001, (char *)"\n"
58516 "Construct from message and errno value.\n"
58517 "\n"
58518 "Xapian::DatabaseCreateError::DatabaseCreateError(const std::string\n"
58519 "&msg_, int errno_) \n"
58520 ""},
58521 { (char *)"delete_DatabaseCreateError", (PyCFunction)_wrap_delete_DatabaseCreateError, 0x0008, __null},
58522 { (char *)"DatabaseCreateError_swigregister", DatabaseCreateError_swigregister, 0x0001, __null},
58523 { (char *)"DatabaseCreateError_swiginit", DatabaseCreateError_swiginit, 0x0001, __null},
58524 { (char *)"new_DatabaseLockError", _wrap_new_DatabaseLockError, 0x0001, (char *)"\n"
58525 "Construct from message and errno value.\n"
58526 "\n"
58527 "Xapian::DatabaseLockError::DatabaseLockError(const std::string &msg_,\n"
58528 "int errno_) \n"
58529 ""},
58530 { (char *)"delete_DatabaseLockError", (PyCFunction)_wrap_delete_DatabaseLockError, 0x0008, __null},
58531 { (char *)"DatabaseLockError_swigregister", DatabaseLockError_swigregister, 0x0001, __null},
58532 { (char *)"DatabaseLockError_swiginit", DatabaseLockError_swiginit, 0x0001, __null},
58533 { (char *)"new_DatabaseModifiedError", _wrap_new_DatabaseModifiedError, 0x0001, (char *)"\n"
58534 "Construct from message and errno value.\n"
58535 "\n"
58536 "Xapian::DatabaseModifiedError::DatabaseModifiedError(const std::string\n"
58537 "&msg_, int errno_) \n"
58538 ""},
58539 { (char *)"delete_DatabaseModifiedError", (PyCFunction)_wrap_delete_DatabaseModifiedError, 0x0008, __null},
58540 { (char *)"DatabaseModifiedError_swigregister", DatabaseModifiedError_swigregister, 0x0001, __null},
58541 { (char *)"DatabaseModifiedError_swiginit", DatabaseModifiedError_swiginit, 0x0001, __null},
58542 { (char *)"new_DatabaseOpeningError", _wrap_new_DatabaseOpeningError, 0x0001, (char *)"\n"
58543 "Construct from message and errno value.\n"
58544 "\n"
58545 "Xapian::DatabaseOpeningError::DatabaseOpeningError(const std::string\n"
58546 "&msg_, int errno_) \n"
58547 ""},
58548 { (char *)"delete_DatabaseOpeningError", (PyCFunction)_wrap_delete_DatabaseOpeningError, 0x0008, __null},
58549 { (char *)"DatabaseOpeningError_swigregister", DatabaseOpeningError_swigregister, 0x0001, __null},
58550 { (char *)"DatabaseOpeningError_swiginit", DatabaseOpeningError_swiginit, 0x0001, __null},
58551 { (char *)"new_DatabaseVersionError", _wrap_new_DatabaseVersionError, 0x0001, (char *)"\n"
58552 "Construct from message and errno value.\n"
58553 "\n"
58554 "Xapian::DatabaseVersionError::DatabaseVersionError(const std::string\n"
58555 "&msg_, int errno_) \n"
58556 ""},
58557 { (char *)"delete_DatabaseVersionError", (PyCFunction)_wrap_delete_DatabaseVersionError, 0x0008, __null},
58558 { (char *)"DatabaseVersionError_swigregister", DatabaseVersionError_swigregister, 0x0001, __null},
58559 { (char *)"DatabaseVersionError_swiginit", DatabaseVersionError_swiginit, 0x0001, __null},
58560 { (char *)"new_DocNotFoundError", _wrap_new_DocNotFoundError, 0x0001, (char *)"\n"
58561 "Construct from message and errno value.\n"
58562 "\n"
58563 "Xapian::DocNotFoundError::DocNotFoundError(const std::string &msg_,\n"
58564 "int errno_) \n"
58565 ""},
58566 { (char *)"delete_DocNotFoundError", (PyCFunction)_wrap_delete_DocNotFoundError, 0x0008, __null},
58567 { (char *)"DocNotFoundError_swigregister", DocNotFoundError_swigregister, 0x0001, __null},
58568 { (char *)"DocNotFoundError_swiginit", DocNotFoundError_swiginit, 0x0001, __null},
58569 { (char *)"new_FeatureUnavailableError", _wrap_new_FeatureUnavailableError, 0x0001, (char *)"\n"
58570 "Construct from message and errno value.\n"
58571 "\n"
58572 "Xapian::FeatureUnavailableError::FeatureUnavailableError(const\n"
58573 "std::string &msg_, int errno_) \n"
58574 ""},
58575 { (char *)"delete_FeatureUnavailableError", (PyCFunction)_wrap_delete_FeatureUnavailableError, 0x0008, __null},
58576 { (char *)"FeatureUnavailableError_swigregister", FeatureUnavailableError_swigregister, 0x0001, __null},
58577 { (char *)"FeatureUnavailableError_swiginit", FeatureUnavailableError_swiginit, 0x0001, __null},
58578 { (char *)"new_InternalError", _wrap_new_InternalError, 0x0001, (char *)"\n"
58579 "Construct from message and errno value.\n"
58580 "\n"
58581 "Xapian::InternalError::InternalError(const std::string &msg_, int\n"
58582 "errno_) \n"
58583 ""},
58584 { (char *)"delete_InternalError", (PyCFunction)_wrap_delete_InternalError, 0x0008, __null},
58585 { (char *)"InternalError_swigregister", InternalError_swigregister, 0x0001, __null},
58586 { (char *)"InternalError_swiginit", InternalError_swiginit, 0x0001, __null},
58587 { (char *)"new_NetworkError", _wrap_new_NetworkError, 0x0001, (char *)"\n"
58588 "Construct from message and errno value.\n"
58589 "\n"
58590 "Xapian::NetworkError::NetworkError(const std::string &msg_, int\n"
58591 "errno_) \n"
58592 ""},
58593 { (char *)"delete_NetworkError", (PyCFunction)_wrap_delete_NetworkError, 0x0008, __null},
58594 { (char *)"NetworkError_swigregister", NetworkError_swigregister, 0x0001, __null},
58595 { (char *)"NetworkError_swiginit", NetworkError_swiginit, 0x0001, __null},
58596 { (char *)"new_NetworkTimeoutError", _wrap_new_NetworkTimeoutError, 0x0001, (char *)"\n"
58597 "Construct from message and errno value.\n"
58598 "\n"
58599 "Xapian::NetworkTimeoutError::NetworkTimeoutError(const std::string\n"
58600 "&msg_, int errno_) \n"
58601 ""},
58602 { (char *)"delete_NetworkTimeoutError", (PyCFunction)_wrap_delete_NetworkTimeoutError, 0x0008, __null},
58603 { (char *)"NetworkTimeoutError_swigregister", NetworkTimeoutError_swigregister, 0x0001, __null},
58604 { (char *)"NetworkTimeoutError_swiginit", NetworkTimeoutError_swiginit, 0x0001, __null},
58605 { (char *)"new_QueryParserError", _wrap_new_QueryParserError, 0x0001, (char *)"\n"
58606 "Construct from message and errno value.\n"
58607 "\n"
58608 "Xapian::QueryParserError::QueryParserError(const std::string &msg_,\n"
58609 "int errno_) \n"
58610 ""},
58611 { (char *)"delete_QueryParserError", (PyCFunction)_wrap_delete_QueryParserError, 0x0008, __null},
58612 { (char *)"QueryParserError_swigregister", QueryParserError_swigregister, 0x0001, __null},
58613 { (char *)"QueryParserError_swiginit", QueryParserError_swiginit, 0x0001, __null},
58614 { (char *)"new_SerialisationError", _wrap_new_SerialisationError, 0x0001, (char *)"\n"
58615 "Construct from message and errno value.\n"
58616 "\n"
58617 "Xapian::SerialisationError::SerialisationError(const std::string\n"
58618 "&msg_, int errno_) \n"
58619 ""},
58620 { (char *)"delete_SerialisationError", (PyCFunction)_wrap_delete_SerialisationError, 0x0008, __null},
58621 { (char *)"SerialisationError_swigregister", SerialisationError_swigregister, 0x0001, __null},
58622 { (char *)"SerialisationError_swiginit", SerialisationError_swiginit, 0x0001, __null},
58623 { (char *)"new_RangeError", _wrap_new_RangeError, 0x0001, (char *)"\n"
58624 "Construct from message and errno value.\n"
58625 "\n"
58626 "Xapian::RangeError::RangeError(const std::string &msg_, int errno_) \n"
58627 ""},
58628 { (char *)"delete_RangeError", (PyCFunction)_wrap_delete_RangeError, 0x0008, __null},
58629 { (char *)"RangeError_swigregister", RangeError_swigregister, 0x0001, __null},
58630 { (char *)"RangeError_swiginit", RangeError_swiginit, 0x0001, __null},
58631 { (char *)"version_string", (PyCFunction)_wrap_version_string, 0x0004, __null},
58632 { (char *)"major_version", (PyCFunction)_wrap_major_version, 0x0004, __null},
58633 { (char *)"minor_version", (PyCFunction)_wrap_minor_version, 0x0004, __null},
58634 { (char *)"revision", (PyCFunction)_wrap_revision, 0x0004, __null},
58635 { (char *)"new_PositionIterator", _wrap_new_PositionIterator, 0x0001, (char *)"\n"
58636 "Copying is allowed.\n"
58637 "\n"
58638 "Xapian::PositionIterator::PositionIterator(const PositionIterator &o)\n"
58639 "\n"
58640 "The internals are reference counted, so copying is also cheap. \n"
58641 ""},
58642 { (char *)"delete_PositionIterator", (PyCFunction)_wrap_delete_PositionIterator, 0x0008, (char *)"\n"
58643 "Destructor.\n"
58644 "\n"
58645 "Xapian::PositionIterator::~PositionIterator() \n"
58646 ""},
58647 { (char *)"PositionIterator_get_termpos", (PyCFunction)_wrap_PositionIterator_get_termpos, 0x0008, __null},
58648 { (char *)"PositionIterator_next", (PyCFunction)_wrap_PositionIterator_next, 0x0008, __null},
58649 { (char *)"PositionIterator_equals", _wrap_PositionIterator_equals, 0x0001, __null},
58650 { (char *)"PositionIterator_skip_to", _wrap_PositionIterator_skip_to, 0x0001, (char *)"\n"
58651 "Advance the iterator to the specified termpos.\n"
58652 "\n"
58653 "void Xapian::PositionIterator::skip_to(Xapian::termpos pos)\n"
58654 "\n"
58655 "If the specified termpos isn't in the list, position ourselves on the\n"
58656 "first termpos after it (or at_end() if no greater term positions are\n"
58657 "present). \n"
58658 ""},
58659 { (char *)"PositionIterator___str__", (PyCFunction)_wrap_PositionIterator___str__, 0x0008, (char *)"\n"
58660 "Return a string describing this object.\n"
58661 "\n"
58662 "std::string Xapian::PositionIterator::get_description() const \n"
58663 ""},
58664 { (char *)"PositionIterator___eq__", _wrap_PositionIterator___eq__, 0x0001, __null},
58665 { (char *)"PositionIterator___ne__", _wrap_PositionIterator___ne__, 0x0001, __null},
58666 { (char *)"PositionIterator_swigregister", PositionIterator_swigregister, 0x0001, __null},
58667 { (char *)"PositionIterator_swiginit", PositionIterator_swiginit, 0x0001, __null},
58668 { (char *)"delete_PostingIterator", (PyCFunction)_wrap_delete_PostingIterator, 0x0008, (char *)"\n"
58669 "Destructor.\n"
58670 "\n"
58671 "Xapian::PostingIterator::~PostingIterator() \n"
58672 ""},
58673 { (char *)"new_PostingIterator", _wrap_new_PostingIterator, 0x0001, (char *)"\n"
58674 "Copying is allowed.\n"
58675 "\n"
58676 "Xapian::PostingIterator::PostingIterator(const PostingIterator &other)\n"
58677 "\n"
58678 "The internals are reference counted, so copying is also cheap. \n"
58679 ""},
58680 { (char *)"PostingIterator_skip_to", _wrap_PostingIterator_skip_to, 0x0001, (char *)"\n"
58681 "Advance the iterator to the specified docid.\n"
58682 "\n"
58683 "void Xapian::PostingIterator::skip_to(Xapian::docid did)\n"
58684 "\n"
58685 "If the specified docid isn't in the list, position ourselves on the\n"
58686 "first document after it (or at_end() if no greater docids are\n"
58687 "present). \n"
58688 ""},
58689 { (char *)"PostingIterator_get_doclength", (PyCFunction)_wrap_PostingIterator_get_doclength, 0x0008, (char *)"\n"
58690 "Get the length of the document at the current position in the\n"
58691 "postlist.\n"
58692 "\n"
58693 "Xapian::termcount Xapian::PostingIterator::get_doclength() const\n"
58694 "\n"
58695 "This information may be stored in the postlist, in which case this\n"
58696 "lookup should be extremely fast (indeed, not require further disk\n"
58697 "access). If the information is not present in the postlist, it will be\n"
58698 "retrieved from the database, at a greater performance cost. \n"
58699 ""},
58700 { (char *)"PostingIterator_get_wdf", (PyCFunction)_wrap_PostingIterator_get_wdf, 0x0008, (char *)"\n"
58701 "Get the within document frequency of the document at the current\n"
58702 "position in the postlist.\n"
58703 "\n"
58704 "Xapian::termcount Xapian::PostingIterator::get_wdf() const \n"
58705 ""},
58706 { (char *)"PostingIterator_positionlist_begin", (PyCFunction)_wrap_PostingIterator_positionlist_begin, 0x0008, (char *)"\n"
58707 "Return PositionIterator pointing to start of positionlist for current\n"
58708 "document.\n"
58709 "\n"
58710 "PositionIterator Xapian::PostingIterator::positionlist_begin() const\n"
58711 "\n"
58712 ""},
58713 { (char *)"PostingIterator_positionlist_end", (PyCFunction)_wrap_PostingIterator_positionlist_end, 0x0008, (char *)"\n"
58714 "Return PositionIterator pointing to end of positionlist for current\n"
58715 "document.\n"
58716 "\n"
58717 "PositionIterator Xapian::PostingIterator::positionlist_end() const \n"
58718 ""},
58719 { (char *)"PostingIterator___str__", (PyCFunction)_wrap_PostingIterator___str__, 0x0008, (char *)"\n"
58720 "Return a string describing this object.\n"
58721 "\n"
58722 "std::string Xapian::PostingIterator::get_description() const \n"
58723 ""},
58724 { (char *)"PostingIterator___eq__", _wrap_PostingIterator___eq__, 0x0001, __null},
58725 { (char *)"PostingIterator___ne__", _wrap_PostingIterator___ne__, 0x0001, __null},
58726 { (char *)"PostingIterator_get_docid", (PyCFunction)_wrap_PostingIterator_get_docid, 0x0008, __null},
58727 { (char *)"PostingIterator_next", (PyCFunction)_wrap_PostingIterator_next, 0x0008, __null},
58728 { (char *)"PostingIterator_equals", _wrap_PostingIterator_equals, 0x0001, __null},
58729 { (char *)"PostingIterator_swigregister", PostingIterator_swigregister, 0x0001, __null},
58730 { (char *)"PostingIterator_swiginit", PostingIterator_swiginit, 0x0001, __null},
58731 { (char *)"__eq__", _wrap___eq__, 0x0001, __null},
58732 { (char *)"__ne__", _wrap___ne__, 0x0001, __null},
58733 { (char *)"new_TermIterator", _wrap_new_TermIterator, 0x0001, (char *)"\n"
58734 "Copying is allowed.\n"
58735 "\n"
58736 "Xapian::TermIterator::TermIterator(const TermIterator &other)\n"
58737 "\n"
58738 "The internals are reference counted, so copying is also cheap. \n"
58739 ""},
58740 { (char *)"delete_TermIterator", (PyCFunction)_wrap_delete_TermIterator, 0x0008, (char *)"\n"
58741 "Destructor.\n"
58742 "\n"
58743 "Xapian::TermIterator::~TermIterator() \n"
58744 ""},
58745 { (char *)"TermIterator_get_term", (PyCFunction)_wrap_TermIterator_get_term, 0x0008, __null},
58746 { (char *)"TermIterator_next", (PyCFunction)_wrap_TermIterator_next, 0x0008, __null},
58747 { (char *)"TermIterator_equals", _wrap_TermIterator_equals, 0x0001, __null},
58748 { (char *)"TermIterator_skip_to", _wrap_TermIterator_skip_to, 0x0001, (char *)"\n"
58749 "Advance the iterator to the specified term.\n"
58750 "\n"
58751 "void Xapian::TermIterator::skip_to(const std::string &tname)\n"
58752 "\n"
58753 "If the specified term isn't in the list, position ourselves on the\n"
58754 "first term after it (or at_end() if no greater terms are present). \n"
58755 ""},
58756 { (char *)"TermIterator_get_wdf", (PyCFunction)_wrap_TermIterator_get_wdf, 0x0008, (char *)"\n"
58757 "Return the wdf of the current term (if meaningful).\n"
58758 "\n"
58759 "Xapian::termcount Xapian::TermIterator::get_wdf() const\n"
58760 "\n"
58761 "The wdf (within document frequency) is the number of occurences of a\n"
58762 "term in a particular document. \n"
58763 ""},
58764 { (char *)"TermIterator_get_termfreq", (PyCFunction)_wrap_TermIterator_get_termfreq, 0x0008, (char *)"\n"
58765 "Return the term frequency of the current term (if meaningful).\n"
58766 "\n"
58767 "Xapian::doccount Xapian::TermIterator::get_termfreq() const\n"
58768 "\n"
58769 "The term frequency is the number of documents which a term indexes. \n"
58770 ""},
58771 { (char *)"TermIterator_positionlist_begin", (PyCFunction)_wrap_TermIterator_positionlist_begin, 0x0008, (char *)"\n"
58772 "Return PositionIterator pointing to start of positionlist for current\n"
58773 "term.\n"
58774 "\n"
58775 "PositionIterator Xapian::TermIterator::positionlist_begin() const \n"
58776 ""},
58777 { (char *)"TermIterator_positionlist_end", (PyCFunction)_wrap_TermIterator_positionlist_end, 0x0008, (char *)"\n"
58778 "Return PositionIterator pointing to end of positionlist for current\n"
58779 "term.\n"
58780 "\n"
58781 "PositionIterator Xapian::TermIterator::positionlist_end() const \n"
58782 ""},
58783 { (char *)"TermIterator___str__", (PyCFunction)_wrap_TermIterator___str__, 0x0008, (char *)"\n"
58784 "Return a string describing this object.\n"
58785 "\n"
58786 "std::string Xapian::TermIterator::get_description() const \n"
58787 ""},
58788 { (char *)"TermIterator___eq__", _wrap_TermIterator___eq__, 0x0001, __null},
58789 { (char *)"TermIterator___ne__", _wrap_TermIterator___ne__, 0x0001, __null},
58790 { (char *)"TermIterator_swigregister", TermIterator_swigregister, 0x0001, __null},
58791 { (char *)"TermIterator_swiginit", TermIterator_swiginit, 0x0001, __null},
58792 { (char *)"new_ValueIterator", _wrap_new_ValueIterator, 0x0001, (char *)"\n"
58793 "Default constructor.\n"
58794 "\n"
58795 "Xapian::ValueIterator::ValueIterator()\n"
58796 "\n"
58797 "Creates an uninitialised iterator, which can't be used before being\n"
58798 "assigned to, but is sometimes syntactically convenient. \n"
58799 ""},
58800 { (char *)"delete_ValueIterator", (PyCFunction)_wrap_delete_ValueIterator, 0x0008, (char *)"\n"
58801 "Destructor.\n"
58802 "\n"
58803 "Xapian::ValueIterator::~ValueIterator() \n"
58804 ""},
58805 { (char *)"ValueIterator_get_value", (PyCFunction)_wrap_ValueIterator_get_value, 0x0008, __null},
58806 { (char *)"ValueIterator_next", (PyCFunction)_wrap_ValueIterator_next, 0x0008, __null},
58807 { (char *)"ValueIterator_equals", _wrap_ValueIterator_equals, 0x0001, __null},
58808 { (char *)"ValueIterator_get_docid", (PyCFunction)_wrap_ValueIterator_get_docid, 0x0008, (char *)"\n"
58809 "Return the docid at the current position.\n"
58810 "\n"
58811 "Xapian::docid Xapian::ValueIterator::get_docid() const\n"
58812 "\n"
58813 "If we're iterating over values of a document, this method will throw\n"
58814 "Xapian::InvalidOperationError. \n"
58815 ""},
58816 { (char *)"ValueIterator_get_valueno", (PyCFunction)_wrap_ValueIterator_get_valueno, 0x0008, (char *)"\n"
58817 "Return the value slot number for the current position.\n"
58818 "\n"
58819 "Xapian::valueno Xapian::ValueIterator::get_valueno() const\n"
58820 "\n"
58821 "If the iterator is over all values in a slot, this returns that slot's\n"
58822 "number. If the iterator is over the values in a particular document,\n"
58823 "it returns the number of each slot in turn. \n"
58824 ""},
58825 { (char *)"ValueIterator_skip_to", _wrap_ValueIterator_skip_to, 0x0001, (char *)"\n"
58826 "Advance the iterator to document id or value slot docid_or_slot.\n"
58827 "\n"
58828 "void Xapian::ValueIterator::skip_to(Xapian::docid docid_or_slot)\n"
58829 "\n"
58830 "If this iterator is over values in a document, then this method\n"
58831 "advances the iterator to value slot docid_or_slot, or the first slot\n"
58832 "after it if there is no value in slot slot.\n"
58833 "\n"
58834 "If this iterator is over values in a particular slot, then this method\n"
58835 "advances the iterator to document id docid_or_slot, or the first\n"
58836 "document id after it if there is no value in the slot we're iterating\n"
58837 "over for document docid_or_slot.\n"
58838 "\n"
58839 "Note: The \"two-faced\" nature of this method is due to how C++\n"
58840 "overloading works. Xapian::docid and Xapian::valueno are both typedefs\n"
58841 "for the same unsigned integer type, so overloading can't distinguish\n"
58842 "them. \n"
58843 ""},
58844 { (char *)"ValueIterator_check", _wrap_ValueIterator_check, 0x0001, (char *)"\n"
58845 "Check if the specified docid occurs.\n"
58846 "\n"
58847 "bool Xapian::ValueIterator::check(Xapian::docid docid)\n"
58848 "\n"
58849 "The caller is required to ensure that the specified document id did\n"
58850 "actually exists in the database.\n"
58851 "\n"
58852 "This method acts like skip_to() if that can be done at little extra\n"
58853 "cost, in which case it then returns true. This is how brass and chert\n"
58854 "databases behave because they store values in streams which allow for\n"
58855 "an efficient implementation of skip_to().\n"
58856 "\n"
58857 "Otherwise it simply checks if a particular docid is present. If it is,\n"
58858 "it returns true. If it isn't, it returns false, and leaves the\n"
58859 "position unspecified (and hence the result of calling methods which\n"
58860 "depends on the current position, such as get_docid(), are also\n"
58861 "unspecified). In this state, next() will advance to the first matching\n"
58862 "position after document did, and skip_to() will act as it would if the\n"
58863 "position was the first matching position after document did.\n"
58864 "\n"
58865 "Currently the inmemory, flint, and remote backends behave in the\n"
58866 "latter way because they don't support streamed values and so skip_to()\n"
58867 "must check each document it skips over which is significantly slower.\n"
58868 "\n"
58869 ""},
58870 { (char *)"ValueIterator___str__", (PyCFunction)_wrap_ValueIterator___str__, 0x0008, (char *)"\n"
58871 "Return a string describing this object.\n"
58872 "\n"
58873 "std::string Xapian::ValueIterator::get_description() const \n"
58874 ""},
58875 { (char *)"ValueIterator___eq__", _wrap_ValueIterator___eq__, 0x0001, __null},
58876 { (char *)"ValueIterator___ne__", _wrap_ValueIterator___ne__, 0x0001, __null},
58877 { (char *)"ValueIterator_swigregister", ValueIterator_swigregister, 0x0001, __null},
58878 { (char *)"ValueIterator_swiginit", ValueIterator_swiginit, 0x0001, __null},
58879 { (char *)"new_Document", _wrap_new_Document, 0x0001, (char *)"\n"
58880 "Make a new empty Document.\n"
58881 "\n"
58882 "Xapian::Document::Document() \n"
58883 ""},
58884 { (char *)"delete_Document", (PyCFunction)_wrap_delete_Document, 0x0008, (char *)"\n"
58885 "Destructor.\n"
58886 "\n"
58887 "Xapian::Document::~Document() \n"
58888 ""},
58889 { (char *)"Document_get_value", _wrap_Document_get_value, 0x0001, (char *)"\n"
58890 "Get value by number.\n"
58891 "\n"
58892 "std::string Xapian::Document::get_value(Xapian::valueno valueno) const\n"
58893 "\n"
58894 "Returns an empty string if no value with the given number is present\n"
58895 "in the document.\n"
58896 "\n"
58897 "Parameters:\n"
58898 "-----------\n"
58899 "\n"
58900 "valueno: The number of the value. \n"
58901 ""},
58902 { (char *)"Document_add_value", _wrap_Document_add_value, 0x0001, (char *)"\n"
58903 "Add a new value.\n"
58904 "\n"
58905 "void Xapian::Document::add_value(Xapian::valueno valueno, const\n"
58906 "std::string &value)\n"
58907 "\n"
58908 "The new value will replace any existing value with the same number (or\n"
58909 "if the new value is empty, it will remove any existing value with the\n"
58910 "same number). \n"
58911 ""},
58912 { (char *)"Document_remove_value", _wrap_Document_remove_value, 0x0001, (char *)"\n"
58913 "Remove any value with the given number.\n"
58914 "\n"
58915 "void Xapian::Document::remove_value(Xapian::valueno valueno) \n"
58916 ""},
58917 { (char *)"Document_clear_values", (PyCFunction)_wrap_Document_clear_values, 0x0008, (char *)"\n"
58918 "Remove all values associated with the document.\n"
58919 "\n"
58920 "void Xapian::Document::clear_values() \n"
58921 ""},
58922 { (char *)"Document_get_data", (PyCFunction)_wrap_Document_get_data, 0x0008, (char *)"\n"
58923 "Get data stored in the document.\n"
58924 "\n"
58925 "std::string Xapian::Document::get_data() const\n"
58926 "\n"
58927 "This is a potentially expensive operation, and shouldn't normally be\n"
58928 "used in a match decider functor. Put data for use by match deciders in\n"
58929 "a value instead. \n"
58930 ""},
58931 { (char *)"Document_set_data", _wrap_Document_set_data, 0x0001, (char *)"\n"
58932 "Set data stored in the document.\n"
58933 "\n"
58934 "void Xapian::Document::set_data(const std::string &data) \n"
58935 ""},
58936 { (char *)"Document_add_posting", _wrap_Document_add_posting, 0x0001, (char *)"\n"
58937 "Add an occurrence of a term at a particular position.\n"
58938 "\n"
58939 "void Xapian::Document::add_posting(const std::string &tname,\n"
58940 "Xapian::termpos tpos, Xapian::termcount wdfinc=1)\n"
58941 "\n"
58942 "Multiple occurrences of the term at the same position are represented\n"
58943 "only once in the positional information, but do increase the wdf.\n"
58944 "\n"
58945 "If the term is not already in the document, it will be added to it.\n"
58946 "\n"
58947 "Parameters:\n"
58948 "-----------\n"
58949 "\n"
58950 "tname: The name of the term.\n"
58951 "\n"
58952 "tpos: The position of the term.\n"
58953 "\n"
58954 "wdfinc: The increment that will be applied to the wdf for this term.\n"
58955 "\n"
58956 ""},
58957 { (char *)"Document_add_term", _wrap_Document_add_term, 0x0001, (char *)"\n"
58958 "Add a term to the document, without positional information.\n"
58959 "\n"
58960 "void Xapian::Document::add_term(const std::string &tname,\n"
58961 "Xapian::termcount wdfinc=1)\n"
58962 "\n"
58963 "Any existing positional information for the term will be left\n"
58964 "unmodified.\n"
58965 "\n"
58966 "Parameters:\n"
58967 "-----------\n"
58968 "\n"
58969 "tname: The name of the term.\n"
58970 "\n"
58971 "wdfinc: The increment that will be applied to the wdf for this term\n"
58972 "(default: 1). \n"
58973 ""},
58974 { (char *)"Document_add_boolean_term", _wrap_Document_add_boolean_term, 0x0001, (char *)"\n"
58975 "Add a boolean filter term to the document.\n"
58976 "\n"
58977 "void Xapian::Document::add_boolean_term(const std::string &term)\n"
58978 "\n"
58979 "This method adds term to the document with wdf of 0 - this is\n"
58980 "generally what you want for a term used for boolean filtering as the\n"
58981 "wdf of such terms is ignored, and it doesn't make sense for them to\n"
58982 "contribute to the document's length.\n"
58983 "\n"
58984 "If the specified term already indexes this document, this method has\n"
58985 "no effect.\n"
58986 "\n"
58987 "It is exactly the same as add_term(term, 0).\n"
58988 "\n"
58989 "This method was added in Xapian 1.0.18.\n"
58990 "\n"
58991 "Parameters:\n"
58992 "-----------\n"
58993 "\n"
58994 "term: The term to add. \n"
58995 ""},
58996 { (char *)"Document_remove_posting", _wrap_Document_remove_posting, 0x0001, (char *)"\n"
58997 "Remove a posting of a term from the document.\n"
58998 "\n"
58999 "void Xapian::Document::remove_posting(const std::string &tname,\n"
59000 "Xapian::termpos tpos, Xapian::termcount wdfdec=1)\n"
59001 "\n"
59002 "Note that the term will still index the document even if all\n"
59003 "occurrences are removed. To remove a term from a document completely,\n"
59004 "use remove_term().\n"
59005 "\n"
59006 "Parameters:\n"
59007 "-----------\n"
59008 "\n"
59009 "tname: The name of the term.\n"
59010 "\n"
59011 "tpos: The position of the term.\n"
59012 "\n"
59013 "wdfdec: The decrement that will be applied to the wdf when removing\n"
59014 "this posting. The wdf will not go below the value of 0.\n"
59015 "\n"
59016 "Parameters:\n"
59017 "-----------\n"
59018 "\n"
59019 "Xapian::InvalidArgumentError: will be thrown if the term is not at\n"
59020 "the position specified in the position list for this term in this\n"
59021 "document.\n"
59022 "\n"
59023 "Xapian::InvalidArgumentError: will be thrown if the term is not in\n"
59024 "the document \n"
59025 ""},
59026 { (char *)"Document_remove_term", _wrap_Document_remove_term, 0x0001, (char *)"\n"
59027 "Remove a term and all postings associated with it.\n"
59028 "\n"
59029 "void Xapian::Document::remove_term(const std::string &tname)\n"
59030 "\n"
59031 "Parameters:\n"
59032 "-----------\n"
59033 "\n"
59034 "tname: The name of the term.\n"
59035 "\n"
59036 "Parameters:\n"
59037 "-----------\n"
59038 "\n"
59039 "Xapian::InvalidArgumentError: will be thrown if the term is not in\n"
59040 "the document \n"
59041 ""},
59042 { (char *)"Document_clear_terms", (PyCFunction)_wrap_Document_clear_terms, 0x0008, (char *)"\n"
59043 "Remove all terms (and postings) from the document.\n"
59044 "\n"
59045 "void Xapian::Document::clear_terms() \n"
59046 ""},
59047 { (char *)"Document_termlist_count", (PyCFunction)_wrap_Document_termlist_count, 0x0008, (char *)"\n"
59048 "The length of the termlist - i.e.\n"
59049 "\n"
59050 "Xapian::termcount Xapian::Document::termlist_count() const\n"
59051 "\n"
59052 "the number of different terms which index this document. \n"
59053 ""},
59054 { (char *)"Document_termlist_begin", (PyCFunction)_wrap_Document_termlist_begin, 0x0008, (char *)"\n"
59055 "Iterator for the terms in this document.\n"
59056 "\n"
59057 "TermIterator Xapian::Document::termlist_begin() const \n"
59058 ""},
59059 { (char *)"Document_termlist_end", (PyCFunction)_wrap_Document_termlist_end, 0x0008, (char *)"\n"
59060 "Equivalent end iterator for termlist_begin().\n"
59061 "\n"
59062 "TermIterator Xapian::Document::termlist_end() const \n"
59063 ""},
59064 { (char *)"Document_values_count", (PyCFunction)_wrap_Document_values_count, 0x0008, (char *)"\n"
59065 "Count the values in this document.\n"
59066 "\n"
59067 "Xapian::termcount Xapian::Document::values_count() const \n"
59068 ""},
59069 { (char *)"Document_values_begin", (PyCFunction)_wrap_Document_values_begin, 0x0008, (char *)"\n"
59070 "Iterator for the values in this document.\n"
59071 "\n"
59072 "ValueIterator Xapian::Document::values_begin() const \n"
59073 ""},
59074 { (char *)"Document_values_end", (PyCFunction)_wrap_Document_values_end, 0x0008, (char *)"\n"
59075 "Equivalent end iterator for values_begin().\n"
59076 "\n"
59077 "ValueIteratorEnd_ Xapian::Document::values_end() const \n"
59078 ""},
59079 { (char *)"Document_get_docid", (PyCFunction)_wrap_Document_get_docid, 0x0008, (char *)"\n"
59080 "Get the document id which is associated with this document (if any).\n"
59081 "\n"
59082 "docid Xapian::Document::get_docid() const\n"
59083 "\n"
59084 "NB If multiple databases are being searched together, then this will\n"
59085 "be the document id in the individual database, not the merged\n"
59086 "database!\n"
59087 "\n"
59088 "If this document came from a database, return the document id in that\n"
59089 "database. Otherwise, return 0 (in Xapian 1.0.22/1.2.4 or later; prior\n"
59090 "to this the returned value was uninitialised). \n"
59091 ""},
59092 { (char *)"Document_serialise", (PyCFunction)_wrap_Document_serialise, 0x0008, (char *)"\n"
59093 "Serialise document into a string.\n"
59094 "\n"
59095 "std::string Xapian::Document::serialise() const\n"
59096 "\n"
59097 "The document representation may change between Xapian releases: even\n"
59098 "between minor versions. However, it is guaranteed not to change if the\n"
59099 "remote database protocol has not changed between releases. \n"
59100 ""},
59101 { (char *)"Document_unserialise", (PyCFunction)_wrap_Document_unserialise, 0x0008, __null},
59102 { (char *)"Document___str__", (PyCFunction)_wrap_Document___str__, 0x0008, (char *)"\n"
59103 "Return a string describing this object.\n"
59104 "\n"
59105 "std::string Xapian::Document::get_description() const \n"
59106 ""},
59107 { (char *)"Document_swigregister", Document_swigregister, 0x0001, __null},
59108 { (char *)"Document_swiginit", Document_swiginit, 0x0001, __null},
59109 { (char *)"new_PostingSource", (PyCFunction)_wrap_new_PostingSource, 0x0008, __null},
59110 { (char *)"delete_PostingSource", (PyCFunction)_wrap_delete_PostingSource, 0x0008, (char *)"\n"
59111 "virtual\n"
59112 "Xapian::PostingSource::~PostingSource() \n"
59113 ""},
59114 { (char *)"PostingSource_get_termfreq_min", (PyCFunction)_wrap_PostingSource_get_termfreq_min, 0x0008, (char *)"\n"
59115 "A lower bound on the number of documents this object can return.\n"
59116 "\n"
59117 "virtual Xapian::doccount Xapian::PostingSource::get_termfreq_min()\n"
59118 "const =0\n"
59119 "\n"
59120 "Xapian will always call init() on a PostingSource before calling this\n"
59121 "for the first time. \n"
59122 ""},
59123 { (char *)"PostingSource_get_termfreq_est", (PyCFunction)_wrap_PostingSource_get_termfreq_est, 0x0008, (char *)"\n"
59124 "An estimate of the number of documents this object can return.\n"
59125 "\n"
59126 "virtual Xapian::doccount Xapian::PostingSource::get_termfreq_est()\n"
59127 "const =0\n"
59128 "\n"
59129 "It must always be true that:\n"
59130 "\n"
59131 "get_termfreq_min() <= get_termfreq_est() <= get_termfreq_max()\n"
59132 "\n"
59133 "Xapian will always call init() on a PostingSource before calling this\n"
59134 "for the first time. \n"
59135 ""},
59136 { (char *)"PostingSource_get_termfreq_max", (PyCFunction)_wrap_PostingSource_get_termfreq_max, 0x0008, (char *)"\n"
59137 "An upper bound on the number of documents this object can return.\n"
59138 "\n"
59139 "virtual Xapian::doccount Xapian::PostingSource::get_termfreq_max()\n"
59140 "const =0\n"
59141 "\n"
59142 "Xapian will always call init() on a PostingSource before calling this\n"
59143 "for the first time. \n"
59144 ""},
59145 { (char *)"PostingSource_get_maxweight", (PyCFunction)_wrap_PostingSource_get_maxweight, 0x0008, (char *)"\n"
59146 "Return the currently set upper bound on what get_weight() can return.\n"
59147 "\n"
59148 "Xapian::weight Xapian::PostingSource::get_maxweight() const \n"
59149 ""},
59150 { (char *)"PostingSource_get_weight", (PyCFunction)_wrap_PostingSource_get_weight, 0x0008, (char *)"\n"
59151 "Return the weight contribution for the current document.\n"
59152 "\n"
59153 "virtual Xapian::weight Xapian::PostingSource::get_weight() const\n"
59154 "\n"
59155 "This default implementation always returns 0, for convenience when\n"
59156 "implementing \"weight-less\" PostingSource subclasses.\n"
59157 "\n"
59158 "This method may assume that it will only be called when there is a\n"
59159 "\"current document\". In detail: Xapian will always call init() on a\n"
59160 "PostingSource before calling this for the first time. It will also\n"
59161 "only call this if the PostingSource reports that it is pointing to a\n"
59162 "valid document (ie, it will not call it before calling at least one of\n"
59163 "next(), skip_to() or check(), and will ensure that the PostingSource\n"
59164 "is not at the end by calling at_end()). \n"
59165 ""},
59166 { (char *)"PostingSource_get_docid", (PyCFunction)_wrap_PostingSource_get_docid, 0x0008, (char *)"\n"
59167 "Return the current docid.\n"
59168 "\n"
59169 "virtual Xapian::docid Xapian::PostingSource::get_docid() const =0\n"
59170 "\n"
59171 "This method may assume that it will only be called when there is a\n"
59172 "\"current document\". See get_weight() for details.\n"
59173 "\n"
59174 "Note: in the case of a multi-database search, the returned docid\n"
59175 "should be in the single subdatabase relevant to this posting source.\n"
59176 "See the init() method for details. \n"
59177 ""},
59178 { (char *)"PostingSource_next", _wrap_PostingSource_next, 0x0001, (char *)"\n"
59179 "Advance the current position to the next matching document.\n"
59180 "\n"
59181 "virtual void Xapian::PostingSource::next(Xapian::weight min_wt)=0\n"
59182 "\n"
59183 "The PostingSource starts before the first entry in the list, so next()\n"
59184 "must be called before any methods which need the context of the\n"
59185 "current position.\n"
59186 "\n"
59187 "Xapian will always call init() on a PostingSource before calling this\n"
59188 "for the first time.\n"
59189 "\n"
59190 "Parameters:\n"
59191 "-----------\n"
59192 "\n"
59193 "min_wt: The minimum weight contribution that is needed (this is just\n"
59194 "a hint which subclasses may ignore). \n"
59195 ""},
59196 { (char *)"PostingSource_skip_to", _wrap_PostingSource_skip_to, 0x0001, (char *)"\n"
59197 "Advance to the specified docid.\n"
59198 "\n"
59199 "virtual void Xapian::PostingSource::skip_to(Xapian::docid did,\n"
59200 "Xapian::weight min_wt)\n"
59201 "\n"
59202 "If the specified docid isn't in the list, position ourselves on the\n"
59203 "first document after it (or at_end() if no greater docids are\n"
59204 "present).\n"
59205 "\n"
59206 "If the current position is already the specified docid, this method\n"
59207 "will leave the position unmodified.\n"
59208 "\n"
59209 "If the specified docid is earlier than the current position, the\n"
59210 "behaviour is unspecified. A sensible behaviour would be to leave the\n"
59211 "current position unmodified, but it is also reasonable to move to the\n"
59212 "specified docid.\n"
59213 "\n"
59214 "The default implementation calls next() repeatedly, which works but\n"
59215 "skip_to() can often be implemented much more efficiently.\n"
59216 "\n"
59217 "Xapian will always call init() on a PostingSource before calling this\n"
59218 "for the first time.\n"
59219 "\n"
59220 "Note: in the case of a multi-database search, the docid specified is\n"
59221 "the docid in the single subdatabase relevant to this posting source.\n"
59222 "See the init() method for details.\n"
59223 "\n"
59224 "Parameters:\n"
59225 "-----------\n"
59226 "\n"
59227 "min_wt: The minimum weight contribution that is needed (this is just\n"
59228 "a hint which subclasses may ignore). \n"
59229 ""},
59230 { (char *)"PostingSource_check", _wrap_PostingSource_check, 0x0001, (char *)"\n"
59231 "Check if the specified docid occurs.\n"
59232 "\n"
59233 "virtual bool Xapian::PostingSource::check(Xapian::docid did,\n"
59234 "Xapian::weight min_wt)\n"
59235 "\n"
59236 "The caller is required to ensure that the specified document id did\n"
59237 "actually exists in the database. If it does, it must move to that\n"
59238 "document id, and return true. If it does not, it may either:\n"
59239 "\n"
59240 "return true, having moved to a definite position (including\n"
59241 "\"at_end\"), which must be the same position as skip_to() would have\n"
59242 "moved to.\n"
59243 "\n"
59244 "or\n"
59245 "\n"
59246 "return false, having moved to an \"indeterminate\" position, such that\n"
59247 "a subsequent call to next() or skip_to() will move to the next\n"
59248 "matching position after did.\n"
59249 "\n"
59250 "Generally, this method should act like skip_to() and return true if\n"
59251 "that can be done at little extra cost.\n"
59252 "\n"
59253 "Otherwise it should simply check if a particular docid is present,\n"
59254 "returning true if it is, and false if it isn't.\n"
59255 "\n"
59256 "The default implementation calls skip_to() and always returns true.\n"
59257 "\n"
59258 "Xapian will always call init() on a PostingSource before calling this\n"
59259 "for the first time.\n"
59260 "\n"
59261 "Note: in the case of a multi-database search, the docid specified is\n"
59262 "the docid in the single subdatabase relevant to this posting source.\n"
59263 "See the init() method for details. \n"
59264 ""},
59265 { (char *)"PostingSource_at_end", (PyCFunction)_wrap_PostingSource_at_end, 0x0008, (char *)"\n"
59266 "Return true if the current position is past the last entry in this\n"
59267 "list.\n"
59268 "\n"
59269 "virtual bool Xapian::PostingSource::at_end() const =0\n"
59270 "\n"
59271 "At least one of next(), skip_to() or check() will be called before\n"
59272 "this method is first called. \n"
59273 ""},
59274 { (char *)"PostingSource_name", (PyCFunction)_wrap_PostingSource_name, 0x0008, (char *)"\n"
59275 "Name of the posting source class.\n"
59276 "\n"
59277 "virtual std::string Xapian::PostingSource::name() const\n"
59278 "\n"
59279 "This is used when serialising and unserialising posting sources; for\n"
59280 "example, for performing remote searches.\n"
59281 "\n"
59282 "If the subclass is in a C++ namespace, the namespace should be\n"
59283 "included in the name, using \"::\" as a separator. For example, for a\n"
59284 "PostingSource subclass called \"FooPostingSource\" in the \"Xapian\"\n"
59285 "namespace the result of this call should be\n"
59286 "\"Xapian::FooPostingSource\".\n"
59287 "\n"
59288 "This should only be implemented if serialise() and unserialise() are\n"
59289 "also implemented. The default implementation returns an empty string.\n"
59290 "\n"
59291 "If this returns an empty string, Xapian will assume that serialise()\n"
59292 "and unserialise() are not implemented. \n"
59293 ""},
59294 { (char *)"PostingSource_init", _wrap_PostingSource_init, 0x0001, (char *)"\n"
59295 "Set this PostingSource to the start of the list of postings.\n"
59296 "\n"
59297 "virtual void Xapian::PostingSource::init(const Database &db)=0\n"
59298 "\n"
59299 "This is called automatically by the matcher prior to each query being\n"
59300 "processed.\n"
59301 "\n"
59302 "If a PostingSource is used for multiple searches, init() will\n"
59303 "therefore be called multiple times, and must handle this by using the\n"
59304 "database passed in the most recent call.\n"
59305 "\n"
59306 "Parameters:\n"
59307 "-----------\n"
59308 "\n"
59309 "db: The database which the PostingSource should iterate through.\n"
59310 "\n"
59311 "Note: the database supplied to this method must not be modified: in\n"
59312 "particular, the reopen() method should not be called on it.\n"
59313 "\n"
59314 "Note: in the case of a multi-database search, a separate PostingSource\n"
59315 "will be used for each database (the separate PostingSources will be\n"
59316 "obtained using clone()), and each PostingSource will be passed one of\n"
59317 "the sub-databases as the db parameter here. The db parameter will\n"
59318 "therefore always refer to a single database. All docids passed to, or\n"
59319 "returned from, the PostingSource refer to docids in that single\n"
59320 "database, rather than in the multi- database. \n"
59321 ""},
59322 { (char *)"PostingSource___str__", (PyCFunction)_wrap_PostingSource___str__, 0x0008, (char *)"\n"
59323 "Return a string describing this object.\n"
59324 "\n"
59325 "virtual std::string Xapian::PostingSource::get_description() const\n"
59326 "\n"
59327 "This default implementation returns a generic answer. This default it\n"
59328 "provided to avoid forcing those deriving their own PostingSource\n"
59329 "subclass from having to implement this (they may not care what\n"
59330 "get_description() gives for their subclass). \n"
59331 ""},
59332 { (char *)"disown_PostingSource", (PyCFunction)_wrap_disown_PostingSource, 0x0008, __null},
59333 { (char *)"PostingSource_swigregister", PostingSource_swigregister, 0x0001, __null},
59334 { (char *)"PostingSource_swiginit", PostingSource_swiginit, 0x0001, __null},
59335 { (char *)"new_ValuePostingSource", (PyCFunction)_wrap_new_ValuePostingSource, 0x0008, (char *)"\n"
59336 "Construct a ValuePostingSource.\n"
59337 "\n"
59338 "Xapian::ValuePostingSource::ValuePostingSource(Xapian::valueno slot_)\n"
59339 "\n"
59340 "Parameters:\n"
59341 "-----------\n"
59342 "\n"
59343 "slot_: The value slot to read values from. \n"
59344 ""},
59345 { (char *)"delete_ValuePostingSource", (PyCFunction)_wrap_delete_ValuePostingSource, 0x0008, __null},
59346 { (char *)"ValuePostingSource_swigregister", ValuePostingSource_swigregister, 0x0001, __null},
59347 { (char *)"ValuePostingSource_swiginit", ValuePostingSource_swiginit, 0x0001, __null},
59348 { (char *)"new_ValueWeightPostingSource", (PyCFunction)_wrap_new_ValueWeightPostingSource, 0x0008, (char *)"\n"
59349 "Construct a ValueWeightPostingSource.\n"
59350 "\n"
59351 "Xapian::ValueWeightPostingSource::ValueWeightPostingSource(Xapian::valueno\n"
59352 "slot_)\n"
59353 "\n"
59354 "Parameters:\n"
59355 "-----------\n"
59356 "\n"
59357 "slot_: The value slot to read values from. \n"
59358 ""},
59359 { (char *)"delete_ValueWeightPostingSource", (PyCFunction)_wrap_delete_ValueWeightPostingSource, 0x0008, __null},
59360 { (char *)"ValueWeightPostingSource_swigregister", ValueWeightPostingSource_swigregister, 0x0001, __null},
59361 { (char *)"ValueWeightPostingSource_swiginit", ValueWeightPostingSource_swiginit, 0x0001, __null},
59362 { (char *)"new_DecreasingValueWeightPostingSource", _wrap_new_DecreasingValueWeightPostingSource, 0x0001, (char *)"\n"
59363 "Xapian::DecreasingValueWeightPostingSource::DecreasingValueWeightPostingSource(Xapian::valueno\n"
59364 "slot_, Xapian::docid range_start_=0, Xapian::docid range_end_=0) \n"
59365 ""},
59366 { (char *)"delete_DecreasingValueWeightPostingSource", (PyCFunction)_wrap_delete_DecreasingValueWeightPostingSource, 0x0008, __null},
59367 { (char *)"DecreasingValueWeightPostingSource_swigregister", DecreasingValueWeightPostingSource_swigregister, 0x0001, __null},
59368 { (char *)"DecreasingValueWeightPostingSource_swiginit", DecreasingValueWeightPostingSource_swiginit, 0x0001, __null},
59369 { (char *)"new_ValueMapPostingSource", (PyCFunction)_wrap_new_ValueMapPostingSource, 0x0008, (char *)"\n"
59370 "Construct a ValueWeightPostingSource.\n"
59371 "\n"
59372 "Xapian::ValueMapPostingSource::ValueMapPostingSource(Xapian::valueno\n"
59373 "slot_)\n"
59374 "\n"
59375 "Parameters:\n"
59376 "-----------\n"
59377 "\n"
59378 "slot_: The value slot to read values from. \n"
59379 ""},
59380 { (char *)"ValueMapPostingSource_add_mapping", _wrap_ValueMapPostingSource_add_mapping, 0x0001, (char *)"\n"
59381 "Add a mapping.\n"
59382 "\n"
59383 "void Xapian::ValueMapPostingSource::add_mapping(const std::string\n"
59384 "&key, double weight)\n"
59385 "\n"
59386 "Parameters:\n"
59387 "-----------\n"
59388 "\n"
59389 "key: The key looked up from the value slot.\n"
59390 "\n"
59391 "weight: The weight to give this key. \n"
59392 ""},
59393 { (char *)"ValueMapPostingSource_clear_mappings", (PyCFunction)_wrap_ValueMapPostingSource_clear_mappings, 0x0008, (char *)"\n"
59394 "Clear all mappings.\n"
59395 "\n"
59396 "void Xapian::ValueMapPostingSource::clear_mappings() \n"
59397 ""},
59398 { (char *)"ValueMapPostingSource_set_default_weight", _wrap_ValueMapPostingSource_set_default_weight, 0x0001, (char *)"\n"
59399 "Set a default weight for document values not in the map.\n"
59400 "\n"
59401 "void Xapian::ValueMapPostingSource::set_default_weight(double wt) \n"
59402 ""},
59403 { (char *)"delete_ValueMapPostingSource", (PyCFunction)_wrap_delete_ValueMapPostingSource, 0x0008, __null},
59404 { (char *)"ValueMapPostingSource_swigregister", ValueMapPostingSource_swigregister, 0x0001, __null},
59405 { (char *)"ValueMapPostingSource_swiginit", ValueMapPostingSource_swiginit, 0x0001, __null},
59406 { (char *)"new_FixedWeightPostingSource", (PyCFunction)_wrap_new_FixedWeightPostingSource, 0x0008, (char *)"\n"
59407 "Construct a FixedWeightPostingSource.\n"
59408 "\n"
59409 "Xapian::FixedWeightPostingSource::FixedWeightPostingSource(Xapian::weight\n"
59410 "wt)\n"
59411 "\n"
59412 "Parameters:\n"
59413 "-----------\n"
59414 "\n"
59415 "wt: The fixed weight to return. \n"
59416 ""},
59417 { (char *)"delete_FixedWeightPostingSource", (PyCFunction)_wrap_delete_FixedWeightPostingSource, 0x0008, __null},
59418 { (char *)"FixedWeightPostingSource_swigregister", FixedWeightPostingSource_swigregister, 0x0001, __null},
59419 { (char *)"FixedWeightPostingSource_swiginit", FixedWeightPostingSource_swiginit, 0x0001, __null},
59420 { (char *)"new_MSet", _wrap_new_MSet, 0x0001, (char *)"\n"
59421 "Copying is allowed (and is cheap).\n"
59422 "\n"
59423 "Xapian::MSet::MSet(const MSet &other) \n"
59424 ""},
59425 { (char *)"delete_MSet", (PyCFunction)_wrap_delete_MSet, 0x0008, (char *)"\n"
59426 "Destroy a Xapian::MSet.\n"
59427 "\n"
59428 "Xapian::MSet::~MSet() \n"
59429 ""},
59430 { (char *)"MSet_fetch", _wrap_MSet_fetch, 0x0001, (char *)"\n"
59431 "Fetch all the items in the MSet.\n"
59432 "\n"
59433 "void Xapian::MSet::fetch() const \n"
59434 ""},
59435 { (char *)"MSet_convert_to_percent", _wrap_MSet_convert_to_percent, 0x0001, (char *)"\n"
59436 "Return the percentage score for a particular item.\n"
59437 "\n"
59438 "Xapian::percent Xapian::MSet::convert_to_percent(const MSetIterator\n"
59439 "&it) const \n"
59440 ""},
59441 { (char *)"MSet_get_termfreq", _wrap_MSet_get_termfreq, 0x0001, (char *)"\n"
59442 "Return the term frequency of the given query term.\n"
59443 "\n"
59444 "Xapian::doccount Xapian::MSet::get_termfreq(const std::string &tname)\n"
59445 "const\n"
59446 "\n"
59447 "Parameters:\n"
59448 "-----------\n"
59449 "\n"
59450 "tname: The term to look for.\n"
59451 "\n"
59452 "This is sometimes more efficient than asking the database directly for\n"
59453 "the term frequency - in particular, if the term was in the query, its\n"
59454 "frequency will usually be cached in the MSet. \n"
59455 ""},
59456 { (char *)"MSet_get_termweight", _wrap_MSet_get_termweight, 0x0001, (char *)"\n"
59457 "Return the term weight of the given query term.\n"
59458 "\n"
59459 "Xapian::weight Xapian::MSet::get_termweight(const std::string &tname)\n"
59460 "const\n"
59461 "\n"
59462 "Parameters:\n"
59463 "-----------\n"
59464 "\n"
59465 "tname: The term to look for.\n"
59466 "\n"
59467 "Parameters:\n"
59468 "-----------\n"
59469 "\n"
59470 "Xapian::InvalidArgumentError: is thrown if the term was not in the\n"
59471 "query. \n"
59472 ""},
59473 { (char *)"MSet_get_firstitem", (PyCFunction)_wrap_MSet_get_firstitem, 0x0008, (char *)"\n"
59474 "The index of the first item in the result which was put into the MSet.\n"
59475 "\n"
59476 "Xapian::doccount Xapian::MSet::get_firstitem() const\n"
59477 "\n"
59478 "This corresponds to the parameter \"first\" specified in\n"
59479 "Xapian::Enquire::get_mset(). A value of 0 corresponds to the highest\n"
59480 "result being the first item in the MSet. \n"
59481 ""},
59482 { (char *)"MSet_get_matches_lower_bound", (PyCFunction)_wrap_MSet_get_matches_lower_bound, 0x0008, (char *)"\n"
59483 "A lower bound on the number of documents in the database which match\n"
59484 "the query.\n"
59485 "\n"
59486 "Xapian::doccount Xapian::MSet::get_matches_lower_bound() const\n"
59487 "\n"
59488 "This figure takes into account collapsing of duplicates, and weighting\n"
59489 "cutoff values.\n"
59490 "\n"
59491 "This number is usually considerably less than the actual number of\n"
59492 "documents which match the query. \n"
59493 ""},
59494 { (char *)"MSet_get_matches_estimated", (PyCFunction)_wrap_MSet_get_matches_estimated, 0x0008, (char *)"\n"
59495 "An estimate for the number of documents in the database which match\n"
59496 "the query.\n"
59497 "\n"
59498 "Xapian::doccount Xapian::MSet::get_matches_estimated() const\n"
59499 "\n"
59500 "This figure takes into account collapsing of duplicates, and weighting\n"
59501 "cutoff values.\n"
59502 "\n"
59503 "This value is returned because there is sometimes a request to display\n"
59504 "such information. However, our experience is that presenting this\n"
59505 "value to users causes them to worry about the large number of results,\n"
59506 "rather than how useful those at the top of the result set are, and is\n"
59507 "thus undesirable. \n"
59508 ""},
59509 { (char *)"MSet_get_matches_upper_bound", (PyCFunction)_wrap_MSet_get_matches_upper_bound, 0x0008, (char *)"\n"
59510 "An upper bound on the number of documents in the database which match\n"
59511 "the query.\n"
59512 "\n"
59513 "Xapian::doccount Xapian::MSet::get_matches_upper_bound() const\n"
59514 "\n"
59515 "This figure takes into account collapsing of duplicates, and weighting\n"
59516 "cutoff values.\n"
59517 "\n"
59518 "This number is usually considerably greater than the actual number of\n"
59519 "documents which match the query. \n"
59520 ""},
59521 { (char *)"MSet_get_uncollapsed_matches_lower_bound", (PyCFunction)_wrap_MSet_get_uncollapsed_matches_lower_bound, 0x0008, (char *)"\n"
59522 "A lower bound on the number of documents in the database which would\n"
59523 "match the query if collapsing wasn't used.\n"
59524 "\n"
59525 "Xapian::doccount Xapian::MSet::get_uncollapsed_matches_lower_bound()\n"
59526 "const \n"
59527 ""},
59528 { (char *)"MSet_get_uncollapsed_matches_estimated", (PyCFunction)_wrap_MSet_get_uncollapsed_matches_estimated, 0x0008, (char *)"\n"
59529 "A estimate of the number of documents in the database which would\n"
59530 "match the query if collapsing wasn't used.\n"
59531 "\n"
59532 "Xapian::doccount Xapian::MSet::get_uncollapsed_matches_estimated()\n"
59533 "const \n"
59534 ""},
59535 { (char *)"MSet_get_uncollapsed_matches_upper_bound", (PyCFunction)_wrap_MSet_get_uncollapsed_matches_upper_bound, 0x0008, (char *)"\n"
59536 "A upper bound on the number of documents in the database which would\n"
59537 "match the query if collapsing wasn't used.\n"
59538 "\n"
59539 "Xapian::doccount Xapian::MSet::get_uncollapsed_matches_upper_bound()\n"
59540 "const \n"
59541 ""},
59542 { (char *)"MSet_get_max_possible", (PyCFunction)_wrap_MSet_get_max_possible, 0x0008, (char *)"\n"
59543 "The maximum possible weight in the MSet.\n"
59544 "\n"
59545 "Xapian::weight Xapian::MSet::get_max_possible() const\n"
59546 "\n"
59547 "This weight is likely not to be attained in the set of results, but\n"
59548 "represents an upper bound on the weight which a document could attain\n"
59549 "for the given query. \n"
59550 ""},
59551 { (char *)"MSet_get_max_attained", (PyCFunction)_wrap_MSet_get_max_attained, 0x0008, (char *)"\n"
59552 "The greatest weight which is attained by any document in the database.\n"
59553 "\n"
59554 "Xapian::weight Xapian::MSet::get_max_attained() const\n"
59555 "\n"
59556 "If firstitem == 0 and the primary ordering is by relevance, this is\n"
59557 "the weight of the first entry in the MSet.\n"
59558 "\n"
59559 "If no documents are found by the query, this will be 0.\n"
59560 "\n"
59561 "Note that calculation of max_attained requires calculation of at least\n"
59562 "one result item - therefore, if no items were requested when the query\n"
59563 "was performed (by specifying maxitems = 0 in\n"
59564 "Xapian::Enquire::get_mset()), this value will be 0. \n"
59565 ""},
59566 { (char *)"MSet_size", (PyCFunction)_wrap_MSet_size, 0x0008, (char *)"\n"
59567 "The number of items in this MSet.\n"
59568 "\n"
59569 "Xapian::doccount Xapian::MSet::size() const \n"
59570 ""},
59571 { (char *)"MSet_empty", (PyCFunction)_wrap_MSet_empty, 0x0008, (char *)"\n"
59572 "Test if this MSet is empty.\n"
59573 "\n"
59574 "bool Xapian::MSet::empty() const \n"
59575 ""},
59576 { (char *)"MSet_begin", (PyCFunction)_wrap_MSet_begin, 0x0008, (char *)"\n"
59577 "Iterator for the items in this MSet.\n"
59578 "\n"
59579 "MSetIterator Xapian::MSet::begin() const \n"
59580 ""},
59581 { (char *)"MSet_end", (PyCFunction)_wrap_MSet_end, 0x0008, (char *)"\n"
59582 "End iterator corresponding to begin().\n"
59583 "\n"
59584 "MSetIterator Xapian::MSet::end() const \n"
59585 ""},
59586 { (char *)"MSet_back", (PyCFunction)_wrap_MSet_back, 0x0008, (char *)"\n"
59587 "Iterator pointing to the last element of this MSet.\n"
59588 "\n"
59589 "MSetIterator Xapian::MSet::back() const \n"
59590 ""},
59591 { (char *)"MSet__get_hit_internal", _wrap_MSet__get_hit_internal, 0x0001, (char *)"\n"
59592 "Get an item from the MSet.\n"
59593 "\n"
59594 "The supplied index is relative to the start of the MSet, not the absolute rank\n"
59595 "of the item. \n"
59596 ""},
59597 { (char *)"MSet_get_document_percentage", _wrap_MSet_get_document_percentage, 0x0001, __null},
59598 { (char *)"MSet_get_document", _wrap_MSet_get_document, 0x0001, __null},
59599 { (char *)"MSet_get_docid", _wrap_MSet_get_docid, 0x0001, __null},
59600 { (char *)"MSet___str__", (PyCFunction)_wrap_MSet___str__, 0x0008, (char *)"\n"
59601 "Return a string describing this object.\n"
59602 "\n"
59603 "std::string Xapian::MSet::get_description() const \n"
59604 ""},
59605 { (char *)"MSet_items_get", (PyCFunction)_wrap_MSet_items_get, 0x0008, __null},
59606 { (char *)"MSet___cmp__", _wrap_MSet___cmp__, 0x0001, __null},
59607 { (char *)"MSet_swigregister", MSet_swigregister, 0x0001, __null},
59608 { (char *)"MSet_swiginit", MSet_swiginit, 0x0001, __null},
59609 { (char *)"new_MSetIterator", _wrap_new_MSetIterator, 0x0001, (char *)"\n"
59610 "Copying is allowed (and is cheap).\n"
59611 "\n"
59612 "Xapian::MSetIterator::MSetIterator(const MSetIterator &other) \n"
59613 ""},
59614 { (char *)"delete_MSetIterator", (PyCFunction)_wrap_delete_MSetIterator, 0x0008, __null},
59615 { (char *)"MSetIterator_get_docid", (PyCFunction)_wrap_MSetIterator_get_docid, 0x0008, __null},
59616 { (char *)"MSetIterator_next", (PyCFunction)_wrap_MSetIterator_next, 0x0008, __null},
59617 { (char *)"MSetIterator_prev", (PyCFunction)_wrap_MSetIterator_prev, 0x0008, __null},
59618 { (char *)"MSetIterator_equals", _wrap_MSetIterator_equals, 0x0001, __null},
59619 { (char *)"MSetIterator_get_document", (PyCFunction)_wrap_MSetIterator_get_document, 0x0008, (char *)"\n"
59620 "Get a Xapian::Document object for the current position.\n"
59621 "\n"
59622 "Xapian::Document Xapian::MSetIterator::get_document() const\n"
59623 "\n"
59624 "This method returns a Xapian::Document object which provides the\n"
59625 "information about the document pointed to by the MSetIterator.\n"
59626 "\n"
59627 "If the underlying database has suitable support, using this call\n"
59628 "(rather than asking the database for a document based on its document\n"
59629 "ID) will enable the system to ensure that the correct data is\n"
59630 "returned, and that the document has not been deleted or changed since\n"
59631 "the query was performed.\n"
59632 "\n"
59633 "A Xapian::Document object containing the document data.\n"
59634 "\n"
59635 "Parameters:\n"
59636 "-----------\n"
59637 "\n"
59638 "Xapian::DocNotFoundError: The document specified could not be found\n"
59639 "in the database. \n"
59640 ""},
59641 { (char *)"MSetIterator_get_rank", (PyCFunction)_wrap_MSetIterator_get_rank, 0x0008, (char *)"\n"
59642 "Get the rank of the document at the current position.\n"
59643 "\n"
59644 "Xapian::doccount Xapian::MSetIterator::get_rank() const\n"
59645 "\n"
59646 "The rank is the position that this document is at in the ordered list\n"
59647 "of results of the query. The result is 0-based - i.e. the top-ranked\n"
59648 "document has a rank of 0. \n"
59649 ""},
59650 { (char *)"MSetIterator_get_weight", (PyCFunction)_wrap_MSetIterator_get_weight, 0x0008, (char *)"\n"
59651 "Get the weight of the document at the current position.\n"
59652 "\n"
59653 "Xapian::weight Xapian::MSetIterator::get_weight() const \n"
59654 ""},
59655 { (char *)"MSetIterator_get_collapse_key", (PyCFunction)_wrap_MSetIterator_get_collapse_key, 0x0008, (char *)"\n"
59656 "Get the collapse key for this document.\n"
59657 "\n"
59658 "std::string Xapian::MSetIterator::get_collapse_key() const \n"
59659 ""},
59660 { (char *)"MSetIterator_get_collapse_count", (PyCFunction)_wrap_MSetIterator_get_collapse_count, 0x0008, (char *)"\n"
59661 "Get an estimate of the number of documents that have been collapsed\n"
59662 "into this one.\n"
59663 "\n"
59664 "Xapian::doccount Xapian::MSetIterator::get_collapse_count() const\n"
59665 "\n"
59666 "The estimate will always be less than or equal to the actual number of\n"
59667 "other documents satisfying the match criteria with the same collapse\n"
59668 "key as this document.\n"
59669 "\n"
59670 "This method may return 0 even though there are other documents with\n"
59671 "the same collapse key which satisfying the match criteria. However if\n"
59672 "this method returns non-zero, there definitely are other such\n"
59673 "documents. So this method may be used to inform the user that there\n"
59674 "are \"at least N other matches in this group\", or to control whether\n"
59675 "to offer a \"show other documents in this group\" feature (but note\n"
59676 "that it may not offer it in every case where it would show other\n"
59677 "documents). \n"
59678 ""},
59679 { (char *)"MSetIterator_get_percent", (PyCFunction)_wrap_MSetIterator_get_percent, 0x0008, (char *)"\n"
59680 "This returns the weight of the document as a percentage score.\n"
59681 "\n"
59682 "Xapian::percent Xapian::MSetIterator::get_percent() const\n"
59683 "\n"
59684 "The return value will be an integer in the range 0 to 100: 0 meaning\n"
59685 "that the item did not match the query at all.\n"
59686 "\n"
59687 "The intention is that the highest weighted document will get 100 if it\n"
59688 "matches all the weight-contributing terms in the query. However,\n"
59689 "currently it may get a lower percentage score if you use a\n"
59690 "MatchDecider and the sorting is primarily by value. In this case, the\n"
59691 "percentage for a particular document may vary depending on the first,\n"
59692 "max_size, and checkatleast parameters passed to Enquire::get_mset()\n"
59693 "(this bug is hard to fix without having to apply the MatchDecider to\n"
59694 "potentially many more documents, which is potentially costly). \n"
59695 ""},
59696 { (char *)"MSetIterator___str__", (PyCFunction)_wrap_MSetIterator___str__, 0x0008, (char *)"\n"
59697 "Return a string describing this object.\n"
59698 "\n"
59699 "std::string Xapian::MSetIterator::get_description() const \n"
59700 ""},
59701 { (char *)"MSetIterator___eq__", _wrap_MSetIterator___eq__, 0x0001, __null},
59702 { (char *)"MSetIterator___ne__", _wrap_MSetIterator___ne__, 0x0001, __null},
59703 { (char *)"MSetIterator_swigregister", MSetIterator_swigregister, 0x0001, __null},
59704 { (char *)"MSetIterator_swiginit", MSetIterator_swiginit, 0x0001, __null},
59705 { (char *)"new_ESet", _wrap_new_ESet, 0x0001, (char *)"\n"
59706 "Copying is allowed (and is cheap).\n"
59707 "\n"
59708 "Xapian::ESet::ESet(const ESet &other) \n"
59709 ""},
59710 { (char *)"delete_ESet", (PyCFunction)_wrap_delete_ESet, 0x0008, (char *)"\n"
59711 "Destructor.\n"
59712 "\n"
59713 "Xapian::ESet::~ESet() \n"
59714 ""},
59715 { (char *)"ESet_get_ebound", (PyCFunction)_wrap_ESet_get_ebound, 0x0008, (char *)"\n"
59716 "A lower bound on the number of terms which are in the full set of\n"
59717 "results of the expand.\n"
59718 "\n"
59719 "Xapian::termcount Xapian::ESet::get_ebound() const\n"
59720 "\n"
59721 "This will be greater than or equal to size() \n"
59722 ""},
59723 { (char *)"ESet_size", (PyCFunction)_wrap_ESet_size, 0x0008, (char *)"\n"
59724 "The number of terms in this E-Set.\n"
59725 "\n"
59726 "Xapian::termcount Xapian::ESet::size() const \n"
59727 ""},
59728 { (char *)"ESet_empty", (PyCFunction)_wrap_ESet_empty, 0x0008, (char *)"\n"
59729 "Test if this E-Set is empty.\n"
59730 "\n"
59731 "bool Xapian::ESet::empty() const \n"
59732 ""},
59733 { (char *)"ESet_begin", (PyCFunction)_wrap_ESet_begin, 0x0008, (char *)"\n"
59734 "Iterator for the terms in this E-Set.\n"
59735 "\n"
59736 "ESetIterator Xapian::ESet::begin() const \n"
59737 ""},
59738 { (char *)"ESet_end", (PyCFunction)_wrap_ESet_end, 0x0008, (char *)"\n"
59739 "End iterator corresponding to begin().\n"
59740 "\n"
59741 "ESetIterator Xapian::ESet::end() const \n"
59742 ""},
59743 { (char *)"ESet_back", (PyCFunction)_wrap_ESet_back, 0x0008, (char *)"\n"
59744 "Iterator pointing to the last element of this E-Set.\n"
59745 "\n"
59746 "ESetIterator Xapian::ESet::back() const \n"
59747 ""},
59748 { (char *)"ESet___str__", (PyCFunction)_wrap_ESet___str__, 0x0008, (char *)"\n"
59749 "Return a string describing this object.\n"
59750 "\n"
59751 "std::string Xapian::ESet::get_description() const \n"
59752 ""},
59753 { (char *)"ESet_items_get", (PyCFunction)_wrap_ESet_items_get, 0x0008, __null},
59754 { (char *)"ESet_swigregister", ESet_swigregister, 0x0001, __null},
59755 { (char *)"ESet_swiginit", ESet_swiginit, 0x0001, __null},
59756 { (char *)"new_ESetIterator", _wrap_new_ESetIterator, 0x0001, (char *)"\n"
59757 "Copying is allowed (and is cheap).\n"
59758 "\n"
59759 "Xapian::ESetIterator::ESetIterator(const ESetIterator &other) \n"
59760 ""},
59761 { (char *)"delete_ESetIterator", (PyCFunction)_wrap_delete_ESetIterator, 0x0008, __null},
59762 { (char *)"ESetIterator_get_term", (PyCFunction)_wrap_ESetIterator_get_term, 0x0008, __null},
59763 { (char *)"ESetIterator_next", (PyCFunction)_wrap_ESetIterator_next, 0x0008, __null},
59764 { (char *)"ESetIterator_prev", (PyCFunction)_wrap_ESetIterator_prev, 0x0008, __null},
59765 { (char *)"ESetIterator_equals", _wrap_ESetIterator_equals, 0x0001, __null},
59766 { (char *)"ESetIterator_get_weight", (PyCFunction)_wrap_ESetIterator_get_weight, 0x0008, (char *)"\n"
59767 "Get the weight of the term at the current position.\n"
59768 "\n"
59769 "Xapian::weight Xapian::ESetIterator::get_weight() const \n"
59770 ""},
59771 { (char *)"ESetIterator___str__", (PyCFunction)_wrap_ESetIterator___str__, 0x0008, (char *)"\n"
59772 "Return a string describing this object.\n"
59773 "\n"
59774 "std::string Xapian::ESetIterator::get_description() const \n"
59775 ""},
59776 { (char *)"ESetIterator___eq__", _wrap_ESetIterator___eq__, 0x0001, __null},
59777 { (char *)"ESetIterator___ne__", _wrap_ESetIterator___ne__, 0x0001, __null},
59778 { (char *)"ESetIterator_swigregister", ESetIterator_swigregister, 0x0001, __null},
59779 { (char *)"ESetIterator_swiginit", ESetIterator_swiginit, 0x0001, __null},
59780 { (char *)"new_RSet", _wrap_new_RSet, 0x0001, (char *)"\n"
59781 "Default constructor.\n"
59782 "\n"
59783 "Xapian::RSet::RSet() \n"
59784 ""},
59785 { (char *)"delete_RSet", (PyCFunction)_wrap_delete_RSet, 0x0008, (char *)"\n"
59786 "Destructor.\n"
59787 "\n"
59788 "Xapian::RSet::~RSet() \n"
59789 ""},
59790 { (char *)"RSet_size", (PyCFunction)_wrap_RSet_size, 0x0008, (char *)"\n"
59791 "The number of documents in this R-Set.\n"
59792 "\n"
59793 "Xapian::doccount Xapian::RSet::size() const \n"
59794 ""},
59795 { (char *)"RSet_empty", (PyCFunction)_wrap_RSet_empty, 0x0008, (char *)"\n"
59796 "Test if this R-Set is empty.\n"
59797 "\n"
59798 "bool Xapian::RSet::empty() const \n"
59799 ""},
59800 { (char *)"RSet_add_document", _wrap_RSet_add_document, 0x0001, (char *)"\n"
59801 "Add a document to the relevance set.\n"
59802 "\n"
59803 "void Xapian::RSet::add_document(const Xapian::MSetIterator &i) \n"
59804 ""},
59805 { (char *)"RSet_remove_document", _wrap_RSet_remove_document, 0x0001, (char *)"\n"
59806 "Remove a document from the relevance set.\n"
59807 "\n"
59808 "void Xapian::RSet::remove_document(const Xapian::MSetIterator &i) \n"
59809 ""},
59810 { (char *)"RSet_contains", _wrap_RSet_contains, 0x0001, (char *)"\n"
59811 "Test if a given document in the relevance set.\n"
59812 "\n"
59813 "bool Xapian::RSet::contains(const Xapian::MSetIterator &i) const \n"
59814 ""},
59815 { (char *)"RSet___str__", (PyCFunction)_wrap_RSet___str__, 0x0008, (char *)"\n"
59816 "Return a string describing this object.\n"
59817 "\n"
59818 "std::string Xapian::RSet::get_description() const \n"
59819 ""},
59820 { (char *)"RSet_swigregister", RSet_swigregister, 0x0001, __null},
59821 { (char *)"RSet_swiginit", RSet_swiginit, 0x0001, __null},
59822 { (char *)"MatchDecider___call__", _wrap_MatchDecider___call__, 0x0001, __null},
59823 { (char *)"delete_MatchDecider", (PyCFunction)_wrap_delete_MatchDecider, 0x0008, (char *)"\n"
59824 "Destructor.\n"
59825 "\n"
59826 "virtual Xapian::MatchDecider::~MatchDecider() \n"
59827 ""},
59828 { (char *)"new_MatchDecider", (PyCFunction)_wrap_new_MatchDecider, 0x0008, __null},
59829 { (char *)"disown_MatchDecider", (PyCFunction)_wrap_disown_MatchDecider, 0x0008, __null},
59830 { (char *)"MatchDecider_swigregister", MatchDecider_swigregister, 0x0001, __null},
59831 { (char *)"MatchDecider_swiginit", MatchDecider_swiginit, 0x0001, __null},
59832 { (char *)"ExpandDecider___call__", _wrap_ExpandDecider___call__, 0x0001, __null},
59833 { (char *)"delete_ExpandDecider", (PyCFunction)_wrap_delete_ExpandDecider, 0x0008, (char *)"\n"
59834 "Virtual destructor, because we have virtual methods.\n"
59835 "\n"
59836 "virtual Xapian::ExpandDecider::~ExpandDecider() \n"
59837 ""},
59838 { (char *)"new_ExpandDecider", (PyCFunction)_wrap_new_ExpandDecider, 0x0008, __null},
59839 { (char *)"disown_ExpandDecider", (PyCFunction)_wrap_disown_ExpandDecider, 0x0008, __null},
59840 { (char *)"ExpandDecider_swigregister", ExpandDecider_swigregister, 0x0001, __null},
59841 { (char *)"ExpandDecider_swiginit", ExpandDecider_swiginit, 0x0001, __null},
59842 { (char *)"new_Enquire", (PyCFunction)_wrap_new_Enquire, 0x0008, (char *)"\n"
59843 "Create a Xapian::Enquire object.\n"
59844 "\n"
59845 "Xapian::Enquire::Enquire(const Database &database, ErrorHandler\n"
59846 "*errorhandler_=0)\n"
59847 "\n"
59848 "This specification cannot be changed once the Xapian::Enquire is\n"
59849 "opened: you must create a new Xapian::Enquire object to access a\n"
59850 "different database, or set of databases.\n"
59851 "\n"
59852 "The database supplied must have been initialised (ie, must not be the\n"
59853 "result of calling the Database::Database() constructor). If you need\n"
59854 "to handle a situation where you have no index gracefully, a database\n"
59855 "created with InMemory::open() can be passed here, which represents a\n"
59856 "completely empty database.\n"
59857 "\n"
59858 "Parameters:\n"
59859 "-----------\n"
59860 "\n"
59861 "database: Specification of the database or databases to use.\n"
59862 "\n"
59863 "errorhandler_: A pointer to the error handler to use. Ownership of\n"
59864 "the object pointed to is not assumed by the Xapian::Enquire object -\n"
59865 "the user should delete the Xapian::ErrorHandler object after the\n"
59866 "Xapian::Enquire object is deleted. To use no error handler, this\n"
59867 "parameter should be 0.\n"
59868 "\n"
59869 "Parameters:\n"
59870 "-----------\n"
59871 "\n"
59872 "Xapian::InvalidArgumentError: will be thrown if an initialised\n"
59873 "Database object is supplied. \n"
59874 ""},
59875 { (char *)"delete_Enquire", (PyCFunction)_wrap_delete_Enquire, 0x0008, (char *)"\n"
59876 "Close the Xapian::Enquire object.\n"
59877 "\n"
59878 "Xapian::Enquire::~Enquire() \n"
59879 ""},
59880 { (char *)"Enquire_set_query", _wrap_Enquire_set_query, 0x0001, (char *)"\n"
59881 "Set the query to run.\n"
59882 "\n"
59883 "void Xapian::Enquire::set_query(const Xapian::Query &query,\n"
59884 "Xapian::termcount qlen=0)\n"
59885 "\n"
59886 "Parameters:\n"
59887 "-----------\n"
59888 "\n"
59889 "query: the new query to run.\n"
59890 "\n"
59891 "qlen: the query length to use in weight calculations - by default the\n"
59892 "sum of the wqf of all terms is used. \n"
59893 ""},
59894 { (char *)"Enquire_get_query", (PyCFunction)_wrap_Enquire_get_query, 0x0008, (char *)"\n"
59895 "Get the query which has been set.\n"
59896 "\n"
59897 "const Xapian::Query& Xapian::Enquire::get_query() const\n"
59898 "\n"
59899 "This is only valid after set_query() has been called.\n"
59900 "\n"
59901 "Parameters:\n"
59902 "-----------\n"
59903 "\n"
59904 "Xapian::InvalidArgumentError: will be thrown if query has not yet\n"
59905 "been set. \n"
59906 ""},
59907 { (char *)"Enquire_add_matchspy", _wrap_Enquire_add_matchspy, 0x0001, (char *)"\n"
59908 "Add a matchspy.\n"
59909 "\n"
59910 "void Xapian::Enquire::add_matchspy(MatchSpy *spy)\n"
59911 "\n"
59912 "This matchspy will be called with some of the documents which match\n"
59913 "the query, during the match process. Exactly which of the matching\n"
59914 "documents are passed to it depends on exactly when certain\n"
59915 "optimisations occur during the match process, but it can be controlled\n"
59916 "to some extent by setting the checkatleast parameter to get_mset().\n"
59917 "\n"
59918 "In particular, if there are enough matching documents, at least the\n"
59919 "number specified by checkatleast will be passed to the matchspy. This\n"
59920 "means that you can force the matchspy to be shown all matching\n"
59921 "documents by setting checkatleast to the number of documents in the\n"
59922 "database.\n"
59923 "\n"
59924 "Parameters:\n"
59925 "-----------\n"
59926 "\n"
59927 "spy: The MatchSpy subclass to add. The caller must ensure that this\n"
59928 "remains valid while the Enquire object remains active, or until\n"
59929 "clear_matchspies() is called. \n"
59930 ""},
59931 { (char *)"Enquire_clear_matchspies", (PyCFunction)_wrap_Enquire_clear_matchspies, 0x0008, (char *)"\n"
59932 "Remove all the matchspies.\n"
59933 "\n"
59934 "void Xapian::Enquire::clear_matchspies() \n"
59935 ""},
59936 { (char *)"Enquire_set_weighting_scheme", _wrap_Enquire_set_weighting_scheme, 0x0001, (char *)"\n"
59937 "Set the weighting scheme to use for queries.\n"
59938 "\n"
59939 "void Xapian::Enquire::set_weighting_scheme(const Weight &weight_)\n"
59940 "\n"
59941 "Parameters:\n"
59942 "-----------\n"
59943 "\n"
59944 "weight_: the new weighting scheme. If no weighting scheme is\n"
59945 "specified, the default is BM25 with the default parameters. \n"
59946 ""},
59947 { (char *)"Enquire_set_collapse_key", _wrap_Enquire_set_collapse_key, 0x0001, (char *)"\n"
59948 "Set the collapse key to use for queries.\n"
59949 "\n"
59950 "void Xapian::Enquire::set_collapse_key(Xapian::valueno collapse_key,\n"
59951 "Xapian::doccount collapse_max=1)\n"
59952 "\n"
59953 "Parameters:\n"
59954 "-----------\n"
59955 "\n"
59956 "collapse_key: value number to collapse on - at most one MSet entry\n"
59957 "with each particular value will be returned (default is\n"
59958 "Xapian::BAD_VALUENO which means no collapsing).\n"
59959 "\n"
59960 "collapse_max: Max number of items with the same key to leave after\n"
59961 "collapsing (default 1).\n"
59962 "\n"
59963 "The MSet returned by get_mset() will have only the \"best\" (at most)\n"
59964 "collapse_max entries with each particular value of collapse_key\n"
59965 "(\"best\" being highest ranked - i.e. highest weight or highest\n"
59966 "sorting key).\n"
59967 "\n"
59968 "An example use might be to create a value for each document containing\n"
59969 "an MD5 hash of the document contents. Then duplicate documents from\n"
59970 "different sources can be eliminated at search time by collapsing with\n"
59971 "collapse_max = 1 (it's better to eliminate duplicates at index time,\n"
59972 "but this may not be always be possible - for example the search may be\n"
59973 "over more than one Xapian database).\n"
59974 "\n"
59975 "Another use is to group matches in a particular category (e.g. you\n"
59976 "might collapse a mailing list search on the Subject: so that there's\n"
59977 "only one result per discussion thread). In this case you can use\n"
59978 "get_collapse_count() to give the user some idea how many other results\n"
59979 "there are. And if you index the Subject: as a boolean term as well as\n"
59980 "putting it in a value, you can offer a link to a non-collapsed search\n"
59981 "restricted to that thread using a boolean filter. \n"
59982 ""},
59983 { (char *)"Enquire_set_docid_order", _wrap_Enquire_set_docid_order, 0x0001, (char *)"\n"
59984 "Set the direction in which documents are ordered by document id in the\n"
59985 "returned MSet.\n"
59986 "\n"
59987 "void Xapian::Enquire::set_docid_order(docid_order order)\n"
59988 "\n"
59989 "This order only has an effect on documents which would otherwise have\n"
59990 "equal rank. For a weighted probabilistic match with no sort value,\n"
59991 "this means documents with equal weight. For a boolean match, with no\n"
59992 "sort value, this means all documents. And if a sort value is used,\n"
59993 "this means documents with equal sort value (and also equal weight if\n"
59994 "ordering on relevance after the sort).\n"
59995 "\n"
59996 "Parameters:\n"
59997 "-----------\n"
59998 "\n"
59999 "order: This can be: Xapian::Enquire::ASCENDING docids sort in\n"
60000 "ascending order (default)\n"
60001 "\n"
60002 "Xapian::Enquire::DESCENDING docids sort in descending order\n"
60003 "\n"
60004 "Xapian::Enquire::DONT_CARE docids sort in whatever order is most\n"
60005 "efficient for the backend\n"
60006 "\n"
60007 "Note: If you add documents in strict date order, then a boolean search\n"
60008 "- i.e. set_weighting_scheme(Xapian::BoolWeight()) - with\n"
60009 "set_docid_order(Xapian::Enquire::DESCENDING) is a very efficient way\n"
60010 "to perform \"sort by date, newest first\". \n"
60011 ""},
60012 { (char *)"Enquire_set_cutoff", _wrap_Enquire_set_cutoff, 0x0001, (char *)"\n"
60013 "Set the percentage and/or weight cutoffs.\n"
60014 "\n"
60015 "void Xapian::Enquire::set_cutoff(Xapian::percent percent_cutoff,\n"
60016 "Xapian::weight weight_cutoff=0)\n"
60017 "\n"
60018 "Parameters:\n"
60019 "-----------\n"
60020 "\n"
60021 "percent_cutoff: Minimum percentage score for returned documents. If a\n"
60022 "document has a lower percentage score than this, it will not appear in\n"
60023 "the MSet. If your intention is to return only matches which contain\n"
60024 "all the terms in the query, then it's more efficient to use\n"
60025 "Xapian::Query::OP_AND instead of Xapian::Query::OP_OR in the query\n"
60026 "than to use set_cutoff(100). (default 0 => no percentage cut-off).\n"
60027 "\n"
60028 "weight_cutoff: Minimum weight for a document to be returned. If a\n"
60029 "document has a lower score that this, it will not appear in the MSet.\n"
60030 "It is usually only possible to choose an appropriate weight for cutoff\n"
60031 "based on the results of a previous run of the same query; this is thus\n"
60032 "mainly useful for alerting operations. The other potential use is with\n"
60033 "a user specified weighting scheme. (default 0 => no weight cut-off).\n"
60034 "\n"
60035 ""},
60036 { (char *)"Enquire_set_sort_by_relevance", (PyCFunction)_wrap_Enquire_set_sort_by_relevance, 0x0008, (char *)"\n"
60037 "Set the sorting to be by relevance only.\n"
60038 "\n"
60039 "void Xapian::Enquire::set_sort_by_relevance()\n"
60040 "\n"
60041 "This is the default. \n"
60042 ""},
60043 { (char *)"Enquire_set_sort_by_value", _wrap_Enquire_set_sort_by_value, 0x0001, (char *)"\n"
60044 "void\n"
60045 "Xapian::Enquire::set_sort_by_value(Xapian::valueno sort_key) \n"
60046 ""},
60047 { (char *)"Enquire_set_sort_by_value_then_relevance", _wrap_Enquire_set_sort_by_value_then_relevance, 0x0001, (char *)"\n"
60048 "void\n"
60049 "Xapian::Enquire::set_sort_by_value_then_relevance(Xapian::valueno\n"
60050 "sort_key) \n"
60051 ""},
60052 { (char *)"Enquire_set_sort_by_relevance_then_value", _wrap_Enquire_set_sort_by_relevance_then_value, 0x0001, (char *)"\n"
60053 "void\n"
60054 "Xapian::Enquire::set_sort_by_relevance_then_value(Xapian::valueno\n"
60055 "sort_key) \n"
60056 ""},
60057 { (char *)"Enquire_set_sort_by_key", _wrap_Enquire_set_sort_by_key, 0x0001, (char *)"\n"
60058 "void\n"
60059 "Xapian::Enquire::set_sort_by_key(Xapian::KeyMaker *sorter) \n"
60060 ""},
60061 { (char *)"Enquire_set_sort_by_key_then_relevance", _wrap_Enquire_set_sort_by_key_then_relevance, 0x0001, (char *)"\n"
60062 "void\n"
60063 "Xapian::Enquire::set_sort_by_key_then_relevance(Xapian::KeyMaker\n"
60064 "*sorter) \n"
60065 ""},
60066 { (char *)"Enquire_set_sort_by_relevance_then_key", _wrap_Enquire_set_sort_by_relevance_then_key, 0x0001, (char *)"\n"
60067 "void\n"
60068 "Xapian::Enquire::set_sort_by_relevance_then_key(Xapian::KeyMaker\n"
60069 "*sorter) \n"
60070 ""},
60071 { (char *)"Enquire_get_mset", _wrap_Enquire_get_mset, 0x0001, (char *)"\n"
60072 "MSet\n"
60073 "Xapian::Enquire::get_mset(Xapian::doccount first, Xapian::doccount\n"
60074 "maxitems, const RSet *omrset, const MatchDecider *mdecider=0) const \n"
60075 ""},
60076 { (char *)"Enquire_get_eset", _wrap_Enquire_get_eset, 0x0001, (char *)"\n"
60077 "Get the expand set for the given rset.\n"
60078 "\n"
60079 "ESet Xapian::Enquire::get_eset(Xapian::termcount maxitems, const RSet\n"
60080 "&omrset, const Xapian::ExpandDecider *edecider) const\n"
60081 "\n"
60082 "Parameters:\n"
60083 "-----------\n"
60084 "\n"
60085 "maxitems: the maximum number of items to return.\n"
60086 "\n"
60087 "omrset: the relevance set to use when performing the expand\n"
60088 "operation.\n"
60089 "\n"
60090 "edecider: a decision functor to use to decide whether a given term\n"
60091 "should be put in the ESet\n"
60092 "\n"
60093 "An ESet object containing the results of the expand.\n"
60094 "\n"
60095 "Parameters:\n"
60096 "-----------\n"
60097 "\n"
60098 "Xapian::InvalidArgumentError: See class documentation. \n"
60099 ""},
60100 { (char *)"Enquire_get_matching_terms_begin", _wrap_Enquire_get_matching_terms_begin, 0x0001, (char *)"\n"
60101 "Get terms which match a given document, by match set item.\n"
60102 "\n"
60103 "TermIterator Xapian::Enquire::get_matching_terms_begin(const\n"
60104 "MSetIterator &it) const\n"
60105 "\n"
60106 "This method returns the terms in the current query which match the\n"
60107 "given document.\n"
60108 "\n"
60109 "If the underlying database has suitable support, using this call\n"
60110 "(rather than passing a Xapian::docid) will enable the system to ensure\n"
60111 "that the correct data is returned, and that the document has not been\n"
60112 "deleted or changed since the query was performed.\n"
60113 "\n"
60114 "Parameters:\n"
60115 "-----------\n"
60116 "\n"
60117 "it: The iterator for which to retrieve the matching terms.\n"
60118 "\n"
60119 "An iterator returning the terms which match the document. The terms\n"
60120 "will be returned (as far as this makes any sense) in the same order as\n"
60121 "the terms in the query. Terms will not occur more than once, even if\n"
60122 "they do in the query.\n"
60123 "\n"
60124 "Parameters:\n"
60125 "-----------\n"
60126 "\n"
60127 "Xapian::InvalidArgumentError: See class documentation.\n"
60128 "\n"
60129 "Xapian::DocNotFoundError: The document specified could not be found\n"
60130 "in the database. \n"
60131 ""},
60132 { (char *)"Enquire_get_matching_terms_end", _wrap_Enquire_get_matching_terms_end, 0x0001, (char *)"\n"
60133 "End iterator corresponding to get_matching_terms_begin().\n"
60134 "\n"
60135 "TermIterator Xapian::Enquire::get_matching_terms_end(const\n"
60136 "MSetIterator &) const \n"
60137 ""},
60138 { (char *)"Enquire_get_matching_terms", _wrap_Enquire_get_matching_terms, 0x0001, __null},
60139 { (char *)"Enquire___str__", (PyCFunction)_wrap_Enquire___str__, 0x0008, (char *)"\n"
60140 "Return a string describing this object.\n"
60141 "\n"
60142 "std::string Xapian::Enquire::get_description() const \n"
60143 ""},
60144 { (char *)"Enquire_swigregister", Enquire_swigregister, 0x0001, __null},
60145 { (char *)"Enquire_swiginit", Enquire_swiginit, 0x0001, __null},
60146 { (char *)"new_Registry", _wrap_new_Registry, 0x0001, (char *)"\n"
60147 "Default constructor.\n"
60148 "\n"
60149 "Xapian::Registry::Registry()\n"
60150 "\n"
60151 "The registry will contain all standard subclasses of user-subclassable\n"
60152 "classes. \n"
60153 ""},
60154 { (char *)"delete_Registry", (PyCFunction)_wrap_delete_Registry, 0x0008, (char *)"Xapian::Registry::~Registry() "},
60155 { (char *)"Registry_register_weighting_scheme", _wrap_Registry_register_weighting_scheme, 0x0001, (char *)"\n"
60156 "Register a weighting scheme.\n"
60157 "\n"
60158 "void Xapian::Registry::register_weighting_scheme(const Xapian::Weight\n"
60159 "&wt) \n"
60160 ""},
60161 { (char *)"Registry_get_weighting_scheme", _wrap_Registry_get_weighting_scheme, 0x0001, (char *)"\n"
60162 "Get the weighting scheme given a name.\n"
60163 "\n"
60164 "const Xapian::Weight* Xapian::Registry::get_weighting_scheme(const\n"
60165 "std::string &name) const\n"
60166 "\n"
60167 "The returned weighting scheme is owned by the registry object.\n"
60168 "\n"
60169 "Returns NULL if the weighting scheme could not be found. \n"
60170 ""},
60171 { (char *)"Registry_register_posting_source", _wrap_Registry_register_posting_source, 0x0001, (char *)"\n"
60172 "Register a user-defined posting source class.\n"
60173 "\n"
60174 "void Xapian::Registry::register_posting_source(const\n"
60175 "Xapian::PostingSource &source) \n"
60176 ""},
60177 { (char *)"Registry_get_posting_source", _wrap_Registry_get_posting_source, 0x0001, (char *)"\n"
60178 "Get a posting source given a name.\n"
60179 "\n"
60180 "const Xapian::PostingSource*\n"
60181 "Xapian::Registry::get_posting_source(const std::string &name) const\n"
60182 "\n"
60183 "The returned posting source is owned by the registry object.\n"
60184 "\n"
60185 "Returns NULL if the posting source could not be found. \n"
60186 ""},
60187 { (char *)"Registry_register_match_spy", _wrap_Registry_register_match_spy, 0x0001, (char *)"\n"
60188 "Register a user-defined match spy class.\n"
60189 "\n"
60190 "void Xapian::Registry::register_match_spy(const Xapian::MatchSpy &spy)\n"
60191 "\n"
60192 ""},
60193 { (char *)"Registry_get_match_spy", _wrap_Registry_get_match_spy, 0x0001, (char *)"\n"
60194 "Get a match spy given a name.\n"
60195 "\n"
60196 "const Xapian::MatchSpy* Xapian::Registry::get_match_spy(const\n"
60197 "std::string &name) const\n"
60198 "\n"
60199 "The returned match spy is owned by the registry object.\n"
60200 "\n"
60201 "Returns NULL if the match spy could not be found. \n"
60202 ""},
60203 { (char *)"Registry_swigregister", Registry_swigregister, 0x0001, __null},
60204 { (char *)"Registry_swiginit", Registry_swiginit, 0x0001, __null},
60205 { (char *)"delete_Weight", (PyCFunction)_wrap_delete_Weight, 0x0008, (char *)"\n"
60206 "Virtual destructor, because we have virtual methods.\n"
60207 "\n"
60208 "virtual Xapian::Weight::~Weight() \n"
60209 ""},
60210 { (char *)"Weight_name", (PyCFunction)_wrap_Weight_name, 0x0008, (char *)"\n"
60211 "Return the name of this weighting scheme.\n"
60212 "\n"
60213 "virtual std::string Xapian::Weight::name() const\n"
60214 "\n"
60215 "This name is used by the remote backend. It is passed along with the\n"
60216 "serialised parameters to the remote server so that it knows which\n"
60217 "class to create.\n"
60218 "\n"
60219 "Return the full namespace-qualified name of your class here - if your\n"
60220 "class is called FooWeight, return \"FooWeight\" from this method (\n"
60221 "Xapian::BM25Weight returns \"Xapian::BM25Weight\" here).\n"
60222 "\n"
60223 "If you don't want to support the remote backend, you can use the\n"
60224 "default implementation which simply returns an empty string. \n"
60225 ""},
60226 { (char *)"Weight_get_sumpart", _wrap_Weight_get_sumpart, 0x0001, (char *)"\n"
60227 "Calculate the weight contribution for this object's term to a\n"
60228 "document.\n"
60229 "\n"
60230 "virtual Xapian::weight Xapian::Weight::get_sumpart(Xapian::termcount\n"
60231 "wdf, Xapian::termcount doclen) const =0\n"
60232 "\n"
60233 "The parameters give information about the document which may be used\n"
60234 "in the calculations:\n"
60235 "\n"
60236 "Parameters:\n"
60237 "-----------\n"
60238 "\n"
60239 "wdf: The within document frequency of the term in the document.\n"
60240 "\n"
60241 "doclen: The document's length (unnormalised). \n"
60242 ""},
60243 { (char *)"Weight_get_maxpart", (PyCFunction)_wrap_Weight_get_maxpart, 0x0008, (char *)"\n"
60244 "Return an upper bound on what get_sumpart() can return for any\n"
60245 "document.\n"
60246 "\n"
60247 "virtual Xapian::weight Xapian::Weight::get_maxpart() const =0\n"
60248 "\n"
60249 "This information is used by the matcher to perform various\n"
60250 "optimisations, so strive to make the bound as tight as possible. \n"
60251 ""},
60252 { (char *)"Weight_get_sumextra", _wrap_Weight_get_sumextra, 0x0001, (char *)"\n"
60253 "Calculate the term-independent weight component for a document.\n"
60254 "\n"
60255 "virtual Xapian::weight Xapian::Weight::get_sumextra(Xapian::termcount\n"
60256 "doclen) const =0\n"
60257 "\n"
60258 "The parameter gives information about the document which may be used\n"
60259 "in the calculations:\n"
60260 "\n"
60261 "Parameters:\n"
60262 "-----------\n"
60263 "\n"
60264 "doclen: The document's length (unnormalised). \n"
60265 ""},
60266 { (char *)"Weight_get_maxextra", (PyCFunction)_wrap_Weight_get_maxextra, 0x0008, (char *)"\n"
60267 "Return an upper bound on what get_sumextra() can return for any\n"
60268 "document.\n"
60269 "\n"
60270 "virtual Xapian::weight Xapian::Weight::get_maxextra() const =0\n"
60271 "\n"
60272 "This information is used by the matcher to perform various\n"
60273 "optimisations, so strive to make the bound as tight as possible. \n"
60274 ""},
60275 { (char *)"Weight_get_sumpart_needs_doclength_", (PyCFunction)_wrap_Weight_get_sumpart_needs_doclength_, 0x0008, __null},
60276 { (char *)"Weight_get_sumpart_needs_wdf_", (PyCFunction)_wrap_Weight_get_sumpart_needs_wdf_, 0x0008, __null},
60277 { (char *)"Weight_swigregister", Weight_swigregister, 0x0001, __null},
60278 { (char *)"new_BoolWeight", (PyCFunction)_wrap_new_BoolWeight, 0x0004, (char *)"\n"
60279 "Construct a BoolWeight.\n"
60280 "\n"
60281 "Xapian::BoolWeight::BoolWeight() \n"
60282 ""},
60283 { (char *)"delete_BoolWeight", (PyCFunction)_wrap_delete_BoolWeight, 0x0008, __null},
60284 { (char *)"BoolWeight_swigregister", BoolWeight_swigregister, 0x0001, __null},
60285 { (char *)"BoolWeight_swiginit", BoolWeight_swiginit, 0x0001, __null},
60286 { (char *)"new_BM25Weight", _wrap_new_BM25Weight, 0x0001, (char *)"Xapian::BM25Weight::BM25Weight() "},
60287 { (char *)"delete_BM25Weight", (PyCFunction)_wrap_delete_BM25Weight, 0x0008, __null},
60288 { (char *)"BM25Weight_swigregister", BM25Weight_swigregister, 0x0001, __null},
60289 { (char *)"BM25Weight_swiginit", BM25Weight_swiginit, 0x0001, __null},
60290 { (char *)"new_TradWeight", _wrap_new_TradWeight, 0x0001, (char *)"\n"
60291 "Construct a TradWeight.\n"
60292 "\n"
60293 "Xapian::TradWeight::TradWeight(double k=1.0)\n"
60294 "\n"
60295 "Parameters:\n"
60296 "-----------\n"
60297 "\n"
60298 "k: A non-negative parameter controlling how influential within-\n"
60299 "document- frequency (wdf) and document length are. k=0 means that wdf\n"
60300 "and document length don't affect the weights. The larger k1 is, the\n"
60301 "more they do. (default 1) \n"
60302 ""},
60303 { (char *)"delete_TradWeight", (PyCFunction)_wrap_delete_TradWeight, 0x0008, __null},
60304 { (char *)"TradWeight_swigregister", TradWeight_swigregister, 0x0001, __null},
60305 { (char *)"TradWeight_swiginit", TradWeight_swiginit, 0x0001, __null},
60306 { (char *)"new_MatchSpy", (PyCFunction)_wrap_new_MatchSpy, 0x0008, __null},
60307 { (char *)"delete_MatchSpy", (PyCFunction)_wrap_delete_MatchSpy, 0x0008, (char *)"\n"
60308 "Virtual destructor, because we have virtual methods.\n"
60309 "\n"
60310 "virtual Xapian::MatchSpy::~MatchSpy() \n"
60311 ""},
60312 { (char *)"MatchSpy___call__", _wrap_MatchSpy___call__, 0x0001, __null},
60313 { (char *)"MatchSpy_name", (PyCFunction)_wrap_MatchSpy_name, 0x0008, (char *)"\n"
60314 "Return the name of this match spy.\n"
60315 "\n"
60316 "virtual std::string Xapian::MatchSpy::name() const\n"
60317 "\n"
60318 "This name is used by the remote backend. It is passed with the\n"
60319 "serialised parameters to the remote server so that it knows which\n"
60320 "class to create.\n"
60321 "\n"
60322 "Return the full namespace-qualified name of your class here - if your\n"
60323 "class is called MyApp::FooMatchSpy, return \"MyApp::FooMatchSpy\" from\n"
60324 "this method.\n"
60325 "\n"
60326 "If you don't want to support the remote backend in your match spy, you\n"
60327 "can use the default implementation which simply throws\n"
60328 "Xapian::UnimplementedError. \n"
60329 ""},
60330 { (char *)"MatchSpy_merge_results", _wrap_MatchSpy_merge_results, 0x0001, (char *)"\n"
60331 "Unserialise some results, and merge them into this matchspy.\n"
60332 "\n"
60333 "virtual void Xapian::MatchSpy::merge_results(const std::string &s)\n"
60334 "\n"
60335 "The order in which results are merged should not be significant, since\n"
60336 "this order is not specified (and will vary depending on the speed of\n"
60337 "the search in each sub-database).\n"
60338 "\n"
60339 "If you don't want to support the remote backend in your match spy, you\n"
60340 "can use the default implementation which simply throws\n"
60341 "Xapian::UnimplementedError. \n"
60342 ""},
60343 { (char *)"MatchSpy___str__", (PyCFunction)_wrap_MatchSpy___str__, 0x0008, (char *)"\n"
60344 "Return a string describing this object.\n"
60345 "\n"
60346 "virtual std::string Xapian::MatchSpy::get_description() const\n"
60347 "\n"
60348 "This default implementation returns a generic answer, to avoid forcing\n"
60349 "those deriving their own MatchSpy subclasses from having to implement\n"
60350 "this (they may not care what get_description() gives for their\n"
60351 "subclass). \n"
60352 ""},
60353 { (char *)"disown_MatchSpy", (PyCFunction)_wrap_disown_MatchSpy, 0x0008, __null},
60354 { (char *)"MatchSpy_swigregister", MatchSpy_swigregister, 0x0001, __null},
60355 { (char *)"MatchSpy_swiginit", MatchSpy_swiginit, 0x0001, __null},
60356 { (char *)"new_ValueCountMatchSpy", _wrap_new_ValueCountMatchSpy, 0x0001, (char *)"\n"
60357 "Construct a MatchSpy which counts the values in a particular slot.\n"
60358 "\n"
60359 "Xapian::ValueCountMatchSpy::ValueCountMatchSpy(Xapian::valueno slot_)\n"
60360 "\n"
60361 ""},
60362 { (char *)"ValueCountMatchSpy_get_total", (PyCFunction)_wrap_ValueCountMatchSpy_get_total, 0x0008, (char *)"\n"
60363 "Return the total number of documents tallied.\n"
60364 "\n"
60365 "size_t Xapian::ValueCountMatchSpy::get_total() const \n"
60366 ""},
60367 { (char *)"ValueCountMatchSpy_values_begin", (PyCFunction)_wrap_ValueCountMatchSpy_values_begin, 0x0008, (char *)"\n"
60368 "Get an iterator over the values seen in the slot.\n"
60369 "\n"
60370 "TermIterator Xapian::ValueCountMatchSpy::values_begin() const\n"
60371 "\n"
60372 "Items will be returned in ascending alphabetical order.\n"
60373 "\n"
60374 "During the iteration, the frequency of the current value can be\n"
60375 "obtained with the get_termfreq() method on the iterator. \n"
60376 ""},
60377 { (char *)"ValueCountMatchSpy_values_end", (PyCFunction)_wrap_ValueCountMatchSpy_values_end, 0x0008, (char *)"\n"
60378 "End iterator corresponding to values_begin().\n"
60379 "\n"
60380 "TermIterator Xapian::ValueCountMatchSpy::values_end() const \n"
60381 ""},
60382 { (char *)"ValueCountMatchSpy_top_values_begin", _wrap_ValueCountMatchSpy_top_values_begin, 0x0001, (char *)"\n"
60383 "Get an iterator over the most frequent values seen in the slot.\n"
60384 "\n"
60385 "TermIterator Xapian::ValueCountMatchSpy::top_values_begin(size_t\n"
60386 "maxvalues) const\n"
60387 "\n"
60388 "Items will be returned in descending order of frequency. Values with\n"
60389 "the same frequency will be returned in ascending alphabetical order.\n"
60390 "\n"
60391 "During the iteration, the frequency of the current value can be\n"
60392 "obtained with the get_termfreq() method on the iterator.\n"
60393 "\n"
60394 "Parameters:\n"
60395 "-----------\n"
60396 "\n"
60397 "maxvalues: The maximum number of values to return. \n"
60398 ""},
60399 { (char *)"ValueCountMatchSpy_top_values_end", _wrap_ValueCountMatchSpy_top_values_end, 0x0001, (char *)"\n"
60400 "End iterator corresponding to top_values_begin().\n"
60401 "\n"
60402 "TermIterator Xapian::ValueCountMatchSpy::top_values_end(size_t) const\n"
60403 "\n"
60404 ""},
60405 { (char *)"delete_ValueCountMatchSpy", (PyCFunction)_wrap_delete_ValueCountMatchSpy, 0x0008, __null},
60406 { (char *)"ValueCountMatchSpy_swigregister", ValueCountMatchSpy_swigregister, 0x0001, __null},
60407 { (char *)"ValueCountMatchSpy_swiginit", ValueCountMatchSpy_swiginit, 0x0001, __null},
60408 { (char *)"Database_add_database", _wrap_Database_add_database, 0x0001, (char *)"\n"
60409 "Add an existing database (or group of databases) to those accessed by\n"
60410 "this object.\n"
60411 "\n"
60412 "void Xapian::Database::add_database(const Database &database)\n"
60413 "\n"
60414 "Parameters:\n"
60415 "-----------\n"
60416 "\n"
60417 "database: the database(s) to add. \n"
60418 ""},
60419 { (char *)"delete_Database", (PyCFunction)_wrap_delete_Database, 0x0008, (char *)"\n"
60420 "Destroy this handle on the database.\n"
60421 "\n"
60422 "virtual Xapian::Database::~Database()\n"
60423 "\n"
60424 "If there are no copies of this object remaining, the database(s) will\n"
60425 "be closed. \n"
60426 ""},
60427 { (char *)"new_Database", _wrap_new_Database, 0x0001, (char *)"\n"
60428 "Copying is allowed.\n"
60429 "\n"
60430 "Xapian::Database::Database(const Database &other)\n"
60431 "\n"
60432 "The internals are reference counted, so copying is cheap. \n"
60433 ""},
60434 { (char *)"Database_reopen", (PyCFunction)_wrap_Database_reopen, 0x0008, (char *)"\n"
60435 "Re-open the database.\n"
60436 "\n"
60437 "void Xapian::Database::reopen()\n"
60438 "\n"
60439 "This re-opens the database(s) to the latest available version(s). It\n"
60440 "can be used either to make sure the latest results are returned, or to\n"
60441 "recover from a Xapian::DatabaseModifiedError.\n"
60442 "\n"
60443 "Calling reopen() on a database which has been closed (with close())\n"
60444 "will always raise a Xapian::DatabaseError. \n"
60445 ""},
60446 { (char *)"Database_close", (PyCFunction)_wrap_Database_close, 0x0008, (char *)"\n"
60447 "Close the database.\n"
60448 "\n"
60449 "virtual void Xapian::Database::close()\n"
60450 "\n"
60451 "This closes the database and releases all file handles held by the\n"
60452 "database.\n"
60453 "\n"
60454 "This is a permanent close of the database: calling reopen() after\n"
60455 "closing a database will not reopen it, and will raise an exception.\n"
60456 "\n"
60457 "Calling close() on a database which is already closed has no effect\n"
60458 "(and doesn't raise an exception).\n"
60459 "\n"
60460 "After this call, calls made to methods of the database (other than\n"
60461 "close() or the destructor), or to objects associated with the database\n"
60462 "will behave in one of the following ways (but which behaviour happens\n"
60463 "may vary between releases, and between database backends):\n"
60464 "\n"
60465 "raise a Xapian::DatabaseError indicating that the database is closed.\n"
60466 "\n"
60467 "behave exactly as they would have done if the database had not been\n"
60468 "closed (by using cached data).\n"
60469 "\n"
60470 "To summarise - you should not rely on the exception being raised, or\n"
60471 "the normal result being available, but if you do get a result, it will\n"
60472 "be correct. \n"
60473 ""},
60474 { (char *)"Database___str__", (PyCFunction)_wrap_Database___str__, 0x0008, (char *)"\n"
60475 "Return a string describing this object.\n"
60476 "\n"
60477 "virtual std::string Xapian::Database::get_description() const \n"
60478 ""},
60479 { (char *)"Database_postlist_begin", _wrap_Database_postlist_begin, 0x0001, (char *)"\n"
60480 "An iterator pointing to the start of the postlist for a given term.\n"
60481 "\n"
60482 "PostingIterator Xapian::Database::postlist_begin(const std::string\n"
60483 "&tname) const\n"
60484 "\n"
60485 "If the term name is the empty string, the iterator returned will list\n"
60486 "all the documents in the database. Such an iterator will always return\n"
60487 "a WDF value of 1, since there is no obvious meaning for this quantity\n"
60488 "in this case. \n"
60489 ""},
60490 { (char *)"Database_postlist_end", _wrap_Database_postlist_end, 0x0001, (char *)"\n"
60491 "Corresponding end iterator to postlist_begin().\n"
60492 "\n"
60493 "PostingIterator Xapian::Database::postlist_end(const std::string &)\n"
60494 "const \n"
60495 ""},
60496 { (char *)"Database_termlist_begin", _wrap_Database_termlist_begin, 0x0001, (char *)"\n"
60497 "An iterator pointing to the start of the termlist for a given\n"
60498 "document.\n"
60499 "\n"
60500 "TermIterator Xapian::Database::termlist_begin(Xapian::docid did) const\n"
60501 "\n"
60502 ""},
60503 { (char *)"Database_termlist_end", _wrap_Database_termlist_end, 0x0001, (char *)"\n"
60504 "Corresponding end iterator to termlist_begin().\n"
60505 "\n"
60506 "TermIterator Xapian::Database::termlist_end(Xapian::docid) const \n"
60507 ""},
60508 { (char *)"Database_positionlist_begin", _wrap_Database_positionlist_begin, 0x0001, (char *)"\n"
60509 "An iterator pointing to the start of the position list for a given\n"
60510 "term in a given document.\n"
60511 "\n"
60512 "PositionIterator Xapian::Database::positionlist_begin(Xapian::docid\n"
60513 "did, const std::string &tname) const \n"
60514 ""},
60515 { (char *)"Database_positionlist_end", _wrap_Database_positionlist_end, 0x0001, (char *)"\n"
60516 "Corresponding end iterator to positionlist_begin().\n"
60517 "\n"
60518 "PositionIterator Xapian::Database::positionlist_end(Xapian::docid,\n"
60519 "const std::string &) const \n"
60520 ""},
60521 { (char *)"Database_allterms_begin", _wrap_Database_allterms_begin, 0x0001, (char *)"\n"
60522 "An iterator which runs across all terms with a given prefix.\n"
60523 "\n"
60524 "TermIterator Xapian::Database::allterms_begin(const std::string\n"
60525 "&prefix) const\n"
60526 "\n"
60527 "This is functionally similar to getting an iterator with\n"
60528 "allterms_begin() and then calling skip_to(prefix) on that iterator to\n"
60529 "move to the start of the prefix, but is more convenient (because it\n"
60530 "detects the end of the prefixed terms), and may be more efficient than\n"
60531 "simply calling skip_to() after opening the iterator, particularly for\n"
60532 "remote databases.\n"
60533 "\n"
60534 "Parameters:\n"
60535 "-----------\n"
60536 "\n"
60537 "prefix: The prefix to restrict the returned terms to. \n"
60538 ""},
60539 { (char *)"Database_allterms_end", _wrap_Database_allterms_end, 0x0001, (char *)"\n"
60540 "Corresponding end iterator to allterms_begin(prefix).\n"
60541 "\n"
60542 "TermIterator Xapian::Database::allterms_end(const std::string &) const\n"
60543 "\n"
60544 ""},
60545 { (char *)"Database_get_doccount", (PyCFunction)_wrap_Database_get_doccount, 0x0008, (char *)"\n"
60546 "Get the number of documents in the database.\n"
60547 "\n"
60548 "Xapian::doccount Xapian::Database::get_doccount() const \n"
60549 ""},
60550 { (char *)"Database_get_lastdocid", (PyCFunction)_wrap_Database_get_lastdocid, 0x0008, (char *)"\n"
60551 "Get the highest document id which has been used in the database.\n"
60552 "\n"
60553 "Xapian::docid Xapian::Database::get_lastdocid() const \n"
60554 ""},
60555 { (char *)"Database_get_avlength", (PyCFunction)_wrap_Database_get_avlength, 0x0008, (char *)"\n"
60556 "Get the average length of the documents in the database.\n"
60557 "\n"
60558 "Xapian::doclength Xapian::Database::get_avlength() const \n"
60559 ""},
60560 { (char *)"Database_get_termfreq", _wrap_Database_get_termfreq, 0x0001, (char *)"\n"
60561 "Get the number of documents in the database indexed by a given term.\n"
60562 "\n"
60563 "Xapian::doccount Xapian::Database::get_termfreq(const std::string\n"
60564 "&tname) const \n"
60565 ""},
60566 { (char *)"Database_term_exists", _wrap_Database_term_exists, 0x0001, (char *)"\n"
60567 "Check if a given term exists in the database.\n"
60568 "\n"
60569 "bool Xapian::Database::term_exists(const std::string &tname) const\n"
60570 "\n"
60571 "Return true if and only if the term exists in the database. This is\n"
60572 "the same as (get_termfreq(tname) != 0), but will often be more\n"
60573 "efficient. \n"
60574 ""},
60575 { (char *)"Database_get_collection_freq", _wrap_Database_get_collection_freq, 0x0001, (char *)"\n"
60576 "Return the total number of occurrences of the given term.\n"
60577 "\n"
60578 "Xapian::termcount Xapian::Database::get_collection_freq(const\n"
60579 "std::string &tname) const\n"
60580 "\n"
60581 "This is the sum of the number of occurrences of the term in each\n"
60582 "document it indexes: i.e., the sum of the within document frequencies\n"
60583 "of the term.\n"
60584 "\n"
60585 "Parameters:\n"
60586 "-----------\n"
60587 "\n"
60588 "tname: The term whose collection frequency is being requested. \n"
60589 ""},
60590 { (char *)"Database_get_value_freq", _wrap_Database_get_value_freq, 0x0001, (char *)"\n"
60591 "Return the frequency of a given value slot.\n"
60592 "\n"
60593 "Xapian::doccount Xapian::Database::get_value_freq(Xapian::valueno\n"
60594 "valno) const\n"
60595 "\n"
60596 "This is the number of documents which have a (non-empty) value stored\n"
60597 "in the slot.\n"
60598 "\n"
60599 "Parameters:\n"
60600 "-----------\n"
60601 "\n"
60602 "valno: The value slot to examine.\n"
60603 "\n"
60604 "Parameters:\n"
60605 "-----------\n"
60606 "\n"
60607 "UnimplementedError: The frequency of the value isn't available for\n"
60608 "this database type. \n"
60609 ""},
60610 { (char *)"Database_get_value_lower_bound", _wrap_Database_get_value_lower_bound, 0x0001, (char *)"\n"
60611 "Get a lower bound on the values stored in the given value slot.\n"
60612 "\n"
60613 "std::string Xapian::Database::get_value_lower_bound(Xapian::valueno\n"
60614 "valno) const\n"
60615 "\n"
60616 "If there are no values stored in the given value slot, this will\n"
60617 "return an empty string.\n"
60618 "\n"
60619 "If the lower bound isn't available for the given database type, this\n"
60620 "will return the lowest possible bound - the empty string.\n"
60621 "\n"
60622 "Parameters:\n"
60623 "-----------\n"
60624 "\n"
60625 "valno: The value slot to examine. \n"
60626 ""},
60627 { (char *)"Database_get_value_upper_bound", _wrap_Database_get_value_upper_bound, 0x0001, (char *)"\n"
60628 "Get an upper bound on the values stored in the given value slot.\n"
60629 "\n"
60630 "std::string Xapian::Database::get_value_upper_bound(Xapian::valueno\n"
60631 "valno) const\n"
60632 "\n"
60633 "If there are no values stored in the given value slot, this will\n"
60634 "return an empty string.\n"
60635 "\n"
60636 "Parameters:\n"
60637 "-----------\n"
60638 "\n"
60639 "valno: The value slot to examine.\n"
60640 "\n"
60641 "Parameters:\n"
60642 "-----------\n"
60643 "\n"
60644 "UnimplementedError: The upper bound of the values isn't available for\n"
60645 "this database type. \n"
60646 ""},
60647 { (char *)"Database_get_doclength_lower_bound", (PyCFunction)_wrap_Database_get_doclength_lower_bound, 0x0008, (char *)"\n"
60648 "Get a lower bound on the length of a document in this DB.\n"
60649 "\n"
60650 "Xapian::termcount Xapian::Database::get_doclength_lower_bound() const\n"
60651 "\n"
60652 "This bound does not include any zero-length documents. \n"
60653 ""},
60654 { (char *)"Database_get_doclength_upper_bound", (PyCFunction)_wrap_Database_get_doclength_upper_bound, 0x0008, (char *)"\n"
60655 "Get an upper bound on the length of a document in this DB.\n"
60656 "\n"
60657 "Xapian::termcount Xapian::Database::get_doclength_upper_bound() const\n"
60658 "\n"
60659 ""},
60660 { (char *)"Database_get_wdf_upper_bound", _wrap_Database_get_wdf_upper_bound, 0x0001, (char *)"\n"
60661 "Get an upper bound on the wdf of term term.\n"
60662 "\n"
60663 "Xapian::termcount Xapian::Database::get_wdf_upper_bound(const\n"
60664 "std::string &term) const \n"
60665 ""},
60666 { (char *)"Database_valuestream_begin", _wrap_Database_valuestream_begin, 0x0001, (char *)"\n"
60667 "Return an iterator over the value in slot slot for each document.\n"
60668 "\n"
60669 "ValueIterator Xapian::Database::valuestream_begin(Xapian::valueno\n"
60670 "slot) const \n"
60671 ""},
60672 { (char *)"Database_valuestream_end", _wrap_Database_valuestream_end, 0x0001, (char *)"\n"
60673 "Return end iterator corresponding to valuestream_begin().\n"
60674 "\n"
60675 "ValueIteratorEnd_ Xapian::Database::valuestream_end(Xapian::valueno)\n"
60676 "const \n"
60677 ""},
60678 { (char *)"Database_get_doclength", _wrap_Database_get_doclength, 0x0001, (char *)"\n"
60679 "Get the length of a document.\n"
60680 "\n"
60681 "Xapian::termcount Xapian::Database::get_doclength(Xapian::docid did)\n"
60682 "const \n"
60683 ""},
60684 { (char *)"Database_keep_alive", (PyCFunction)_wrap_Database_keep_alive, 0x0008, (char *)"\n"
60685 "Send a \"keep-alive\" to remote databases to stop them timing out.\n"
60686 "\n"
60687 "void Xapian::Database::keep_alive()\n"
60688 "\n"
60689 "Has no effect on non-remote databases. \n"
60690 ""},
60691 { (char *)"Database_get_document", _wrap_Database_get_document, 0x0001, (char *)"\n"
60692 "Get a document from the database, given its document id.\n"
60693 "\n"
60694 "Xapian::Document Xapian::Database::get_document(Xapian::docid did)\n"
60695 "const\n"
60696 "\n"
60697 "This method returns a Xapian::Document object which provides the\n"
60698 "information about a document.\n"
60699 "\n"
60700 "Parameters:\n"
60701 "-----------\n"
60702 "\n"
60703 "did: The document id of the document to retrieve.\n"
60704 "\n"
60705 "A Xapian::Document object containing the document data\n"
60706 "\n"
60707 "Parameters:\n"
60708 "-----------\n"
60709 "\n"
60710 "Xapian::DocNotFoundError: The document specified could not be found\n"
60711 "in the database. \n"
60712 ""},
60713 { (char *)"Database_get_spelling_suggestion", _wrap_Database_get_spelling_suggestion, 0x0001, (char *)"\n"
60714 "Suggest a spelling correction.\n"
60715 "\n"
60716 "std::string Xapian::Database::get_spelling_suggestion(const\n"
60717 "std::string &word, unsigned max_edit_distance=2) const\n"
60718 "\n"
60719 "Parameters:\n"
60720 "-----------\n"
60721 "\n"
60722 "word: The potentially misspelled word.\n"
60723 "\n"
60724 "max_edit_distance: Only consider words which are at most\n"
60725 "max_edit_distance edits from word. An edit is a character insertion,\n"
60726 "deletion, or the transposition of two adjacent characters (default is\n"
60727 "2). \n"
60728 ""},
60729 { (char *)"Database_spellings_begin", (PyCFunction)_wrap_Database_spellings_begin, 0x0008, (char *)"\n"
60730 "An iterator which returns all the spelling correction targets.\n"
60731 "\n"
60732 "Xapian::TermIterator Xapian::Database::spellings_begin() const\n"
60733 "\n"
60734 "This returns all the words which are considered as targets for the\n"
60735 "spelling correction algorithm. The frequency of each word is available\n"
60736 "as the term frequency of each entry in the returned iterator. \n"
60737 ""},
60738 { (char *)"Database_spellings_end", (PyCFunction)_wrap_Database_spellings_end, 0x0008, (char *)"\n"
60739 "Corresponding end iterator to spellings_begin().\n"
60740 "\n"
60741 "Xapian::TermIterator Xapian::Database::spellings_end() const \n"
60742 ""},
60743 { (char *)"Database_synonyms_begin", _wrap_Database_synonyms_begin, 0x0001, (char *)"\n"
60744 "An iterator which returns all the synonyms for a given term.\n"
60745 "\n"
60746 "Xapian::TermIterator Xapian::Database::synonyms_begin(const\n"
60747 "std::string &term) const\n"
60748 "\n"
60749 "Parameters:\n"
60750 "-----------\n"
60751 "\n"
60752 "term: The term to return synonyms for. \n"
60753 ""},
60754 { (char *)"Database_synonyms_end", _wrap_Database_synonyms_end, 0x0001, (char *)"\n"
60755 "Corresponding end iterator to synonyms_begin(term).\n"
60756 "\n"
60757 "Xapian::TermIterator Xapian::Database::synonyms_end(const std::string\n"
60758 "&) const \n"
60759 ""},
60760 { (char *)"Database_synonym_keys_begin", _wrap_Database_synonym_keys_begin, 0x0001, (char *)"\n"
60761 "An iterator which returns all terms which have synonyms.\n"
60762 "\n"
60763 "Xapian::TermIterator Xapian::Database::synonym_keys_begin(const\n"
60764 "std::string &prefix=std::string()) const\n"
60765 "\n"
60766 "Parameters:\n"
60767 "-----------\n"
60768 "\n"
60769 "prefix: If non-empty, only terms with this prefix are returned. \n"
60770 ""},
60771 { (char *)"Database_synonym_keys_end", _wrap_Database_synonym_keys_end, 0x0001, (char *)"\n"
60772 "Corresponding end iterator to synonym_keys_begin(prefix).\n"
60773 "\n"
60774 "Xapian::TermIterator Xapian::Database::synonym_keys_end(const\n"
60775 "std::string &=std::string()) const \n"
60776 ""},
60777 { (char *)"Database_get_metadata", _wrap_Database_get_metadata, 0x0001, (char *)"\n"
60778 "Get the user-specified metadata associated with a given key.\n"
60779 "\n"
60780 "std::string Xapian::Database::get_metadata(const std::string &key)\n"
60781 "const\n"
60782 "\n"
60783 "User-specified metadata allows you to store arbitrary information in\n"
60784 "the form of (key,tag) pairs. See WritableDatabase::set_metadata() for\n"
60785 "more information.\n"
60786 "\n"
60787 "When invoked on a Xapian::Database object representing multiple\n"
60788 "databases, currently only the metadata for the first is considered but\n"
60789 "this behaviour may change in the future.\n"
60790 "\n"
60791 "If there is no piece of metadata associated with the specified key, an\n"
60792 "empty string is returned (this applies even for backends which don't\n"
60793 "support metadata).\n"
60794 "\n"
60795 "Empty keys are not valid, and specifying one will cause an exception.\n"
60796 "\n"
60797 "Parameters:\n"
60798 "-----------\n"
60799 "\n"
60800 "key: The key of the metadata item to access.\n"
60801 "\n"
60802 "The retrieved metadata item's value.\n"
60803 "\n"
60804 "Parameters:\n"
60805 "-----------\n"
60806 "\n"
60807 "Xapian::InvalidArgumentError: will be thrown if the key supplied is\n"
60808 "empty. \n"
60809 ""},
60810 { (char *)"Database__metadata_keys_begin", _wrap_Database__metadata_keys_begin, 0x0001, (char *)"\n"
60811 "An iterator which returns all user-specified metadata keys.\n"
60812 "\n"
60813 "Xapian::TermIterator Xapian::Database::metadata_keys_begin(const\n"
60814 "std::string &prefix=std::string()) const\n"
60815 "\n"
60816 "When invoked on a Xapian::Database object representing multiple\n"
60817 "databases, currently only the metadata for the first is considered but\n"
60818 "this behaviour may change in the future.\n"
60819 "\n"
60820 "If the backend doesn't support metadata, then this method returns an\n"
60821 "iterator which compares equal to that returned by metadata_keys_end().\n"
60822 "\n"
60823 "Parameters:\n"
60824 "-----------\n"
60825 "\n"
60826 "prefix: If non-empty, only keys with this prefix are returned.\n"
60827 "\n"
60828 "Parameters:\n"
60829 "-----------\n"
60830 "\n"
60831 "Xapian::UnimplementedError: will be thrown if the backend implements\n"
60832 "user-specified metadata, but doesn't implement iterating its keys\n"
60833 "(currently this happens for the InMemory backend). \n"
60834 ""},
60835 { (char *)"Database__metadata_keys_end", _wrap_Database__metadata_keys_end, 0x0001, (char *)"\n"
60836 "Corresponding end iterator to metadata_keys_begin().\n"
60837 "\n"
60838 "Xapian::TermIterator Xapian::Database::metadata_keys_end(const\n"
60839 "std::string &=std::string()) const \n"
60840 ""},
60841 { (char *)"Database_get_uuid", (PyCFunction)_wrap_Database_get_uuid, 0x0008, (char *)"\n"
60842 "Get a UUID for the database.\n"
60843 "\n"
60844 "std::string Xapian::Database::get_uuid() const\n"
60845 "\n"
60846 "The UUID will persist for the lifetime of the database.\n"
60847 "\n"
60848 "Replicas (eg, made with the replication protocol, or by copying all\n"
60849 "the database files) will have the same UUID. However, copies (made\n"
60850 "with copydatabase, or xapian-compact) will have different UUIDs.\n"
60851 "\n"
60852 "If the backend does not support UUIDs or this database has no\n"
60853 "subdatabases, the UUID will be empty.\n"
60854 "\n"
60855 "If this database has multiple sub-databases, the UUID string will\n"
60856 "contain the UUIDs of all the sub-databases. \n"
60857 ""},
60858 { (char *)"Database_swigregister", Database_swigregister, 0x0001, __null},
60859 { (char *)"Database_swiginit", Database_swiginit, 0x0001, __null},
60860 { (char *)"delete_WritableDatabase", (PyCFunction)_wrap_delete_WritableDatabase, 0x0008, (char *)"\n"
60861 "Destroy this handle on the database.\n"
60862 "\n"
60863 "virtual Xapian::WritableDatabase::~WritableDatabase()\n"
60864 "\n"
60865 "If there are no copies of this object remaining, the database will be\n"
60866 "closed. If there are any transactions in progress these will be\n"
60867 "aborted as if cancel_transaction had been called. \n"
60868 ""},
60869 { (char *)"new_WritableDatabase", _wrap_new_WritableDatabase, 0x0001, (char *)"\n"
60870 "Copying is allowed.\n"
60871 "\n"
60872 "Xapian::WritableDatabase::WritableDatabase(const WritableDatabase\n"
60873 "&other)\n"
60874 "\n"
60875 "The internals are reference counted, so copying is cheap. \n"
60876 ""},
60877 { (char *)"WritableDatabase_commit", (PyCFunction)_wrap_WritableDatabase_commit, 0x0008, (char *)"\n"
60878 "Commit any pending modifications made to the database.\n"
60879 "\n"
60880 "void Xapian::WritableDatabase::commit()\n"
60881 "\n"
60882 "For efficiency reasons, when performing multiple updates to a database\n"
60883 "it is best (indeed, almost essential) to make as many modifications as\n"
60884 "memory will permit in a single pass through the database. To ensure\n"
60885 "this, Xapian batches up modifications.\n"
60886 "\n"
60887 "This method may be called at any time to commit any pending\n"
60888 "modifications to the database.\n"
60889 "\n"
60890 "If any of the modifications fail, an exception will be thrown and the\n"
60891 "database will be left in a state in which each separate addition,\n"
60892 "replacement or deletion operation has either been fully performed or\n"
60893 "not performed at all: it is then up to the application to work out\n"
60894 "which operations need to be repeated.\n"
60895 "\n"
60896 "It's not valid to call commit() within a transaction.\n"
60897 "\n"
60898 "Beware of calling commit() too frequently: this will make indexing\n"
60899 "take much longer.\n"
60900 "\n"
60901 "Note that commit() need not be called explicitly: it will be called\n"
60902 "automatically when the database is closed, or when a sufficient number\n"
60903 "of modifications have been made. By default, this is every 10000\n"
60904 "documents added, deleted, or modified. This value is rather\n"
60905 "conservative, and if you have a machine with plenty of memory, you can\n"
60906 "improve indexing throughput dramatically by setting\n"
60907 "XAPIAN_FLUSH_THRESHOLD in the environment to a larger value.\n"
60908 "\n"
60909 "Parameters:\n"
60910 "-----------\n"
60911 "\n"
60912 "Xapian::DatabaseError: will be thrown if a problem occurs while\n"
60913 "modifying the database.\n"
60914 "\n"
60915 "Xapian::DatabaseCorruptError: will be thrown if the database is in a\n"
60916 "corrupt state. \n"
60917 ""},
60918 { (char *)"WritableDatabase_flush", (PyCFunction)_wrap_WritableDatabase_flush, 0x0008, (char *)"\n"
60919 "Pre-1.1.0 name for commit().\n"
60920 "\n"
60921 "void Xapian::WritableDatabase::flush()\n"
60922 "\n"
60923 "Use commit() instead in new code. This alias may be deprecated in the\n"
60924 "future. \n"
60925 ""},
60926 { (char *)"WritableDatabase_begin_transaction", _wrap_WritableDatabase_begin_transaction, 0x0001, (char *)"\n"
60927 "Begin a transaction.\n"
60928 "\n"
60929 "void Xapian::WritableDatabase::begin_transaction(bool flushed=true)\n"
60930 "\n"
60931 "In Xapian a transaction is a group of modifications to the database\n"
60932 "which are linked such that either all will be applied simultaneously\n"
60933 "or none will be applied at all. Even in the case of a power failure,\n"
60934 "this characteristic should be preserved (as long as the filesystem\n"
60935 "isn't corrupted, etc).\n"
60936 "\n"
60937 "A transaction is started with begin_transaction() and can either be\n"
60938 "committed by calling commit_transaction() or aborted by calling\n"
60939 "cancel_transaction().\n"
60940 "\n"
60941 "By default, a transaction implicitly calls commit() before and after\n"
60942 "so that the modifications stand and fall without affecting\n"
60943 "modifications before or after.\n"
60944 "\n"
60945 "The downside of these implicit calls to commit() is that small\n"
60946 "transactions can harm indexing performance in the same way that\n"
60947 "explicitly calling commit() frequently can.\n"
60948 "\n"
60949 "If you're applying atomic groups of changes and only wish to ensure\n"
60950 "that each group is either applied or not applied, then you can prevent\n"
60951 "the automatic commit() before and after the transaction by starting\n"
60952 "the transaction with begin_transaction(false). However, if\n"
60953 "cancel_transaction is called (or if commit_transaction isn't called\n"
60954 "before the WritableDatabase object is destroyed) then any changes\n"
60955 "which were pending before the transaction began will also be\n"
60956 "discarded.\n"
60957 "\n"
60958 "Transactions aren't currently supported by the InMemory backend.\n"
60959 "\n"
60960 "Parameters:\n"
60961 "-----------\n"
60962 "\n"
60963 "Xapian::UnimplementedError: will be thrown if transactions are not\n"
60964 "available for this database type.\n"
60965 "\n"
60966 "Xapian::InvalidOperationError: will be thrown if this is called at an\n"
60967 "invalid time, such as when a transaction is already in progress. \n"
60968 ""},
60969 { (char *)"WritableDatabase_commit_transaction", (PyCFunction)_wrap_WritableDatabase_commit_transaction, 0x0008, (char *)"\n"
60970 "Complete the transaction currently in progress.\n"
60971 "\n"
60972 "void Xapian::WritableDatabase::commit_transaction()\n"
60973 "\n"
60974 "If this method completes successfully and this is a flushed\n"
60975 "transaction, all the database modifications made during the\n"
60976 "transaction will have been committed to the database.\n"
60977 "\n"
60978 "If an error occurs, an exception will be thrown, and none of the\n"
60979 "modifications made to the database during the transaction will have\n"
60980 "been applied to the database.\n"
60981 "\n"
60982 "In all cases the transaction will no longer be in progress.\n"
60983 "\n"
60984 "Parameters:\n"
60985 "-----------\n"
60986 "\n"
60987 "Xapian::DatabaseError: will be thrown if a problem occurs while\n"
60988 "modifying the database.\n"
60989 "\n"
60990 "Xapian::DatabaseCorruptError: will be thrown if the database is in a\n"
60991 "corrupt state.\n"
60992 "\n"
60993 "Xapian::InvalidOperationError: will be thrown if a transaction is not\n"
60994 "currently in progress.\n"
60995 "\n"
60996 "Xapian::UnimplementedError: will be thrown if transactions are not\n"
60997 "available for this database type. \n"
60998 ""},
60999 { (char *)"WritableDatabase_cancel_transaction", (PyCFunction)_wrap_WritableDatabase_cancel_transaction, 0x0008, (char *)"\n"
61000 "Abort the transaction currently in progress, discarding the pending\n"
61001 "modifications made to the database.\n"
61002 "\n"
61003 "void Xapian::WritableDatabase::cancel_transaction()\n"
61004 "\n"
61005 "If an error occurs in this method, an exception will be thrown, but\n"
61006 "the transaction will be cancelled anyway.\n"
61007 "\n"
61008 "Parameters:\n"
61009 "-----------\n"
61010 "\n"
61011 "Xapian::DatabaseError: will be thrown if a problem occurs while\n"
61012 "modifying the database.\n"
61013 "\n"
61014 "Xapian::DatabaseCorruptError: will be thrown if the database is in a\n"
61015 "corrupt state.\n"
61016 "\n"
61017 "Xapian::InvalidOperationError: will be thrown if a transaction is not\n"
61018 "currently in progress.\n"
61019 "\n"
61020 "Xapian::UnimplementedError: will be thrown if transactions are not\n"
61021 "available for this database type. \n"
61022 ""},
61023 { (char *)"WritableDatabase_add_document", _wrap_WritableDatabase_add_document, 0x0001, (char *)"\n"
61024 "Add a new document to the database.\n"
61025 "\n"
61026 "Xapian::docid Xapian::WritableDatabase::add_document(const\n"
61027 "Xapian::Document &document)\n"
61028 "\n"
61029 "This method adds the specified document to the database, returning a\n"
61030 "newly allocated document ID. Automatically allocated document IDs come\n"
61031 "from a per-database monotonically increasing counter, so IDs from\n"
61032 "deleted documents won't be reused.\n"
61033 "\n"
61034 "If you want to specify the document ID to be used, you should call\n"
61035 "replace_document() instead.\n"
61036 "\n"
61037 "Note that changes to the database won't be immediately committed to\n"
61038 "disk; see commit() for more details.\n"
61039 "\n"
61040 "As with all database modification operations, the effect is atomic:\n"
61041 "the document will either be fully added, or the document fails to be\n"
61042 "added and an exception is thrown (possibly at a later time when\n"
61043 "commit() is called or the database is closed).\n"
61044 "\n"
61045 "Parameters:\n"
61046 "-----------\n"
61047 "\n"
61048 "document: The new document to be added.\n"
61049 "\n"
61050 "The document ID of the newly added document.\n"
61051 "\n"
61052 "Parameters:\n"
61053 "-----------\n"
61054 "\n"
61055 "Xapian::DatabaseError: will be thrown if a problem occurs while\n"
61056 "writing to the database.\n"
61057 "\n"
61058 "Xapian::DatabaseCorruptError: will be thrown if the database is in a\n"
61059 "corrupt state. \n"
61060 ""},
61061 { (char *)"WritableDatabase_delete_document", _wrap_WritableDatabase_delete_document, 0x0001, (char *)"\n"
61062 "Delete any documents indexed by a term from the database.\n"
61063 "\n"
61064 "void Xapian::WritableDatabase::delete_document(const std::string\n"
61065 "&unique_term)\n"
61066 "\n"
61067 "This method removes any documents indexed by the specified term from\n"
61068 "the database.\n"
61069 "\n"
61070 "A major use is for convenience when UIDs from another system are\n"
61071 "mapped to terms in Xapian, although this method has other uses (for\n"
61072 "example, you could add a \"deletion date\" term to documents at index\n"
61073 "time and use this method to delete all documents due for deletion on a\n"
61074 "particular date).\n"
61075 "\n"
61076 "Parameters:\n"
61077 "-----------\n"
61078 "\n"
61079 "unique_term: The term to remove references to.\n"
61080 "\n"
61081 "Parameters:\n"
61082 "-----------\n"
61083 "\n"
61084 "Xapian::DatabaseError: will be thrown if a problem occurs while\n"
61085 "writing to the database.\n"
61086 "\n"
61087 "Xapian::DatabaseCorruptError: will be thrown if the database is in a\n"
61088 "corrupt state. \n"
61089 ""},
61090 { (char *)"WritableDatabase_replace_document", _wrap_WritableDatabase_replace_document, 0x0001, (char *)"\n"
61091 "Replace any documents matching a term.\n"
61092 "\n"
61093 "Xapian::docid Xapian::WritableDatabase::replace_document(const\n"
61094 "std::string &unique_term, const Xapian::Document &document)\n"
61095 "\n"
61096 "This method replaces any documents indexed by the specified term with\n"
61097 "the specified document. If any documents are indexed by the term, the\n"
61098 "lowest document ID will be used for the document, otherwise a new\n"
61099 "document ID will be generated as for add_document.\n"
61100 "\n"
61101 "One common use is to allow UIDs from another system to easily be\n"
61102 "mapped to terms in Xapian. Note that this method doesn't automatically\n"
61103 "add unique_term as a term, so you'll need to call\n"
61104 "document.add_term(unique_term) first when using replace_document() in\n"
61105 "this way.\n"
61106 "\n"
61107 "Another possible use is to allow groups of documents to be marked for\n"
61108 "later deletion - for example, you could add a \"deletion date\" term\n"
61109 "to documents at index time and use this method to easily and\n"
61110 "efficiently delete all documents due for deletion on a particular\n"
61111 "date.\n"
61112 "\n"
61113 "Note that changes to the database won't be immediately committed to\n"
61114 "disk; see commit() for more details.\n"
61115 "\n"
61116 "As with all database modification operations, the effect is atomic:\n"
61117 "the document(s) will either be fully replaced, or the document(s) fail\n"
61118 "to be replaced and an exception is thrown (possibly at a later time\n"
61119 "when commit() is called or the database is closed).\n"
61120 "\n"
61121 "Parameters:\n"
61122 "-----------\n"
61123 "\n"
61124 "unique_term: The \"unique\" term.\n"
61125 "\n"
61126 "document: The new document.\n"
61127 "\n"
61128 "The document ID that document was given.\n"
61129 "\n"
61130 "Parameters:\n"
61131 "-----------\n"
61132 "\n"
61133 "Xapian::DatabaseError: will be thrown if a problem occurs while\n"
61134 "writing to the database.\n"
61135 "\n"
61136 "Xapian::DatabaseCorruptError: will be thrown if the database is in a\n"
61137 "corrupt state. \n"
61138 ""},
61139 { (char *)"WritableDatabase_add_spelling", _wrap_WritableDatabase_add_spelling, 0x0001, (char *)"\n"
61140 "Add a word to the spelling dictionary.\n"
61141 "\n"
61142 "void Xapian::WritableDatabase::add_spelling(const std::string &word,\n"
61143 "Xapian::termcount freqinc=1) const\n"
61144 "\n"
61145 "If the word is already present, its frequency is increased.\n"
61146 "\n"
61147 "Parameters:\n"
61148 "-----------\n"
61149 "\n"
61150 "word: The word to add.\n"
61151 "\n"
61152 "freqinc: How much to increase its frequency by (default 1). \n"
61153 ""},
61154 { (char *)"WritableDatabase_remove_spelling", _wrap_WritableDatabase_remove_spelling, 0x0001, (char *)"\n"
61155 "Remove a word from the spelling dictionary.\n"
61156 "\n"
61157 "void Xapian::WritableDatabase::remove_spelling(const std::string\n"
61158 "&word, Xapian::termcount freqdec=1) const\n"
61159 "\n"
61160 "The word's frequency is decreased, and if would become zero or less\n"
61161 "then the word is removed completely.\n"
61162 "\n"
61163 "Parameters:\n"
61164 "-----------\n"
61165 "\n"
61166 "word: The word to remove.\n"
61167 "\n"
61168 "freqdec: How much to decrease its frequency by (default 1). \n"
61169 ""},
61170 { (char *)"WritableDatabase_add_synonym", _wrap_WritableDatabase_add_synonym, 0x0001, (char *)"\n"
61171 "Add a synonym for a term.\n"
61172 "\n"
61173 "void Xapian::WritableDatabase::add_synonym(const std::string &term,\n"
61174 "const std::string &synonym) const\n"
61175 "\n"
61176 "If synonym is already a synonym for term, then no action is taken. \n"
61177 ""},
61178 { (char *)"WritableDatabase_remove_synonym", _wrap_WritableDatabase_remove_synonym, 0x0001, (char *)"\n"
61179 "Remove a synonym for a term.\n"
61180 "\n"
61181 "void Xapian::WritableDatabase::remove_synonym(const std::string &term,\n"
61182 "const std::string &synonym) const\n"
61183 "\n"
61184 "If synonym isn't a synonym for term, then no action is taken. \n"
61185 ""},
61186 { (char *)"WritableDatabase_clear_synonyms", _wrap_WritableDatabase_clear_synonyms, 0x0001, (char *)"\n"
61187 "Remove all synonyms for a term.\n"
61188 "\n"
61189 "void Xapian::WritableDatabase::clear_synonyms(const std::string &term)\n"
61190 "const\n"
61191 "\n"
61192 "If term has no synonyms, no action is taken. \n"
61193 ""},
61194 { (char *)"WritableDatabase_set_metadata", _wrap_WritableDatabase_set_metadata, 0x0001, (char *)"\n"
61195 "Set the user-specified metadata associated with a given key.\n"
61196 "\n"
61197 "void Xapian::WritableDatabase::set_metadata(const std::string &key,\n"
61198 "const std::string &value)\n"
61199 "\n"
61200 "This method sets the metadata value associated with a given key. If\n"
61201 "there is already a metadata value stored in the database with the same\n"
61202 "key, the old value is replaced. If you want to delete an existing item\n"
61203 "of metadata, just set its value to the empty string.\n"
61204 "\n"
61205 "User-specified metadata allows you to store arbitrary information in\n"
61206 "the form of (key,tag) pairs.\n"
61207 "\n"
61208 "There's no hard limit on the number of metadata items, or the size of\n"
61209 "the metadata values. Metadata keys have a limited length, which\n"
61210 "depends on the backend. We recommend limiting them to 200 bytes. Empty\n"
61211 "keys are not valid, and specifying one will cause an exception.\n"
61212 "\n"
61213 "Metadata modifications are committed to disk in the same way as\n"
61214 "modifications to the documents in the database are: i.e.,\n"
61215 "modifications are atomic, and won't be committed to disk immediately\n"
61216 "(see commit() for more details). This allows metadata to be used to\n"
61217 "link databases with versioned external resources by storing the\n"
61218 "appropriate version number in a metadata item.\n"
61219 "\n"
61220 "You can also use the metadata to store arbitrary extra information\n"
61221 "associated with terms, documents, or postings by encoding the termname\n"
61222 "and/or document id into the metadata key.\n"
61223 "\n"
61224 "Parameters:\n"
61225 "-----------\n"
61226 "\n"
61227 "key: The key of the metadata item to set.\n"
61228 "\n"
61229 "value: The value of the metadata item to set.\n"
61230 "\n"
61231 "Parameters:\n"
61232 "-----------\n"
61233 "\n"
61234 "Xapian::DatabaseError: will be thrown if a problem occurs while\n"
61235 "writing to the database.\n"
61236 "\n"
61237 "Xapian::DatabaseCorruptError: will be thrown if the database is in a\n"
61238 "corrupt state.\n"
61239 "\n"
61240 "Xapian::InvalidArgumentError: will be thrown if the key supplied is\n"
61241 "empty.\n"
61242 "\n"
61243 "Xapian::UnimplementedError: will be thrown if the database backend in\n"
61244 "use doesn't support user- specified metadata. \n"
61245 ""},
61246 { (char *)"WritableDatabase___str__", (PyCFunction)_wrap_WritableDatabase___str__, 0x0008, (char *)"\n"
61247 "Return a string describing this object.\n"
61248 "\n"
61249 "std::string Xapian::WritableDatabase::get_description() const \n"
61250 ""},
61251 { (char *)"WritableDatabase_swigregister", WritableDatabase_swigregister, 0x0001, __null},
61252 { (char *)"WritableDatabase_swiginit", WritableDatabase_swiginit, 0x0001, __null},
61253 { (char *)"open_stub", (PyCFunction)_wrap_open_stub, 0x0008, (char *)"\n"
61254 "Construct a WritableDatabase object for a stub database file.\n"
61255 "\n"
61256 "WritableDatabase Xapian::Auto::open_stub(const std::string &file, int\n"
61257 "action)\n"
61258 "\n"
61259 "The stub database file must contain serialised parameters for exactly\n"
61260 "one database.\n"
61261 "\n"
61262 "Parameters:\n"
61263 "-----------\n"
61264 "\n"
61265 "file: pathname of the stub database file. \n"
61266 ""},
61267 { (char *)"brass_open", _wrap_brass_open, 0x0001, (char *)"\n"
61268 "Construct a Database object for update access to a Brass database.\n"
61269 "\n"
61270 "WritableDatabase Xapian::Brass::open(const std::string &dir, int\n"
61271 "action, int block_size=8192)\n"
61272 "\n"
61273 "Parameters:\n"
61274 "-----------\n"
61275 "\n"
61276 "dir: pathname of the directory containing the database.\n"
61277 "\n"
61278 "action: determines handling of existing/non-existing database:\n"
61279 "Xapian::DB_CREATE fail if database already exist, otherwise create new\n"
61280 "database.\n"
61281 "\n"
61282 "Xapian::DB_CREATE_OR_OPEN open existing database, or create new\n"
61283 "database if none exists.\n"
61284 "\n"
61285 "Xapian::DB_CREATE_OR_OVERWRITE overwrite existing database, or create\n"
61286 "new database if none exists.\n"
61287 "\n"
61288 "Xapian::DB_OPEN open existing database, failing if none exists.\n"
61289 "\n"
61290 "block_size: the Btree blocksize to use (in bytes), which must be a\n"
61291 "power of two between 2048 and 65536 (inclusive). The default (also\n"
61292 "used if an invalid value if passed) is 8192 bytes. This parameter is\n"
61293 "ignored when opening an existing database. \n"
61294 ""},
61295 { (char *)"chert_open", _wrap_chert_open, 0x0001, (char *)"\n"
61296 "Construct a Database object for update access to a Chert database.\n"
61297 "\n"
61298 "WritableDatabase Xapian::Chert::open(const std::string &dir, int\n"
61299 "action, int block_size=8192)\n"
61300 "\n"
61301 "Parameters:\n"
61302 "-----------\n"
61303 "\n"
61304 "dir: pathname of the directory containing the database.\n"
61305 "\n"
61306 "action: determines handling of existing/non-existing database:\n"
61307 "Xapian::DB_CREATE fail if database already exist, otherwise create new\n"
61308 "database.\n"
61309 "\n"
61310 "Xapian::DB_CREATE_OR_OPEN open existing database, or create new\n"
61311 "database if none exists.\n"
61312 "\n"
61313 "Xapian::DB_CREATE_OR_OVERWRITE overwrite existing database, or create\n"
61314 "new database if none exists.\n"
61315 "\n"
61316 "Xapian::DB_OPEN open existing database, failing if none exists.\n"
61317 "\n"
61318 "block_size: the Btree blocksize to use (in bytes), which must be a\n"
61319 "power of two between 2048 and 65536 (inclusive). The default (also\n"
61320 "used if an invalid value if passed) is 8192 bytes. This parameter is\n"
61321 "ignored when opening an existing database. \n"
61322 ""},
61323 { (char *)"flint_open", _wrap_flint_open, 0x0001, (char *)"\n"
61324 "Construct a Database object for update access to a Flint database.\n"
61325 "\n"
61326 "WritableDatabase Xapian::Flint::open(const std::string &dir, int\n"
61327 "action, int block_size=8192)\n"
61328 "\n"
61329 "Parameters:\n"
61330 "-----------\n"
61331 "\n"
61332 "dir: pathname of the directory containing the database.\n"
61333 "\n"
61334 "action: determines handling of existing/non-existing database:\n"
61335 "Xapian::DB_CREATE fail if database already exist, otherwise create new\n"
61336 "database.\n"
61337 "\n"
61338 "Xapian::DB_CREATE_OR_OPEN open existing database, or create new\n"
61339 "database if none exists.\n"
61340 "\n"
61341 "Xapian::DB_CREATE_OR_OVERWRITE overwrite existing database, or create\n"
61342 "new database if none exists.\n"
61343 "\n"
61344 "Xapian::DB_OPEN open existing database, failing if none exists.\n"
61345 "\n"
61346 "block_size: the Btree blocksize to use (in bytes), which must be a\n"
61347 "power of two between 2048 and 65536 (inclusive). The default (also\n"
61348 "used if an invalid value if passed) is 8192 bytes. This parameter is\n"
61349 "ignored when opening an existing database. \n"
61350 ""},
61351 { (char *)"inmemory_open", (PyCFunction)_wrap_inmemory_open, 0x0004, (char *)"\n"
61352 "Construct a WritableDatabase object for a new, empty InMemory\n"
61353 "database.\n"
61354 "\n"
61355 "WritableDatabase Xapian::InMemory::open()\n"
61356 "\n"
61357 "Only a writable InMemory database can be created, since a read-only\n"
61358 "one would always remain empty. \n"
61359 ""},
61360 { (char *)"remote_open", _wrap_remote_open, 0x0001, (char *)"\n"
61361 "Construct a Database object for read-only access to a remote database\n"
61362 "accessed via a program.\n"
61363 "\n"
61364 "Database Xapian::Remote::open(const std::string &program, const\n"
61365 "std::string &args, Xapian::timeout timeout=10000)\n"
61366 "\n"
61367 "Access to the remote database is done by running an external program\n"
61368 "and communicating with it on stdin/stdout.\n"
61369 "\n"
61370 "Parameters:\n"
61371 "-----------\n"
61372 "\n"
61373 "program: the external program to run.\n"
61374 "\n"
61375 "args: space-separated list of arguments to pass to program.\n"
61376 "\n"
61377 "timeout: timeout in milliseconds. If this timeout is exceeded for any\n"
61378 "individual operation on the remote database then\n"
61379 "Xapian::NetworkTimeoutError is thrown. A timeout of 0 means don't\n"
61380 "timeout. (Default is 10000ms, which is 10 seconds). \n"
61381 ""},
61382 { (char *)"remote_open_writable", _wrap_remote_open_writable, 0x0001, (char *)"\n"
61383 "Construct a WritableDatabase object for update access to a remote\n"
61384 "database accessed via a program.\n"
61385 "\n"
61386 "WritableDatabase Xapian::Remote::open_writable(const std::string\n"
61387 "&program, const std::string &args, Xapian::timeout timeout=0)\n"
61388 "\n"
61389 "Access to the remote database is done by running an external program\n"
61390 "and communicating with it on stdin/stdout.\n"
61391 "\n"
61392 "Parameters:\n"
61393 "-----------\n"
61394 "\n"
61395 "program: the external program to run.\n"
61396 "\n"
61397 "args: space-separated list of arguments to pass to program.\n"
61398 "\n"
61399 "timeout: timeout in milliseconds. If this timeout is exceeded for any\n"
61400 "individual operation on the remote database then\n"
61401 "Xapian::NetworkTimeoutError is thrown. (Default is 0, which means\n"
61402 "don't timeout). \n"
61403 ""},
61404 { (char *)"delete_Query", (PyCFunction)_wrap_delete_Query, 0x0008, (char *)"\n"
61405 "Destructor.\n"
61406 "\n"
61407 "Xapian::Query::~Query() \n"
61408 ""},
61409 { (char *)"Query_get_length", (PyCFunction)_wrap_Query_get_length, 0x0008, (char *)"\n"
61410 "Get the length of the query, used by some ranking formulae.\n"
61411 "\n"
61412 "Xapian::termcount Xapian::Query::get_length() const\n"
61413 "\n"
61414 "This value is calculated automatically - if you want to override it\n"
61415 "you can pass a different value to Enquire::set_query(). \n"
61416 ""},
61417 { (char *)"Query_get_terms_begin", (PyCFunction)_wrap_Query_get_terms_begin, 0x0008, (char *)"\n"
61418 "Return a Xapian::TermIterator returning all the terms in the query, in\n"
61419 "order of termpos.\n"
61420 "\n"
61421 "TermIterator Xapian::Query::get_terms_begin() const\n"
61422 "\n"
61423 "If multiple terms have the same term position, their order is\n"
61424 "unspecified. Duplicates (same term and termpos) will be removed. \n"
61425 ""},
61426 { (char *)"Query_get_terms_end", (PyCFunction)_wrap_Query_get_terms_end, 0x0008, (char *)"\n"
61427 "Return a Xapian::TermIterator to the end of the list of terms in the\n"
61428 "query.\n"
61429 "\n"
61430 "TermIterator Xapian::Query::get_terms_end() const \n"
61431 ""},
61432 { (char *)"Query_empty", (PyCFunction)_wrap_Query_empty, 0x0008, (char *)"\n"
61433 "Test if the query is empty (i.e.\n"
61434 "\n"
61435 "bool Xapian::Query::empty() const\n"
61436 "\n"
61437 "was constructed using the default ctor or with an empty iterator\n"
61438 "ctor). \n"
61439 ""},
61440 { (char *)"Query_serialise", (PyCFunction)_wrap_Query_serialise, 0x0008, (char *)"\n"
61441 "Serialise query into a string.\n"
61442 "\n"
61443 "std::string Xapian::Query::serialise() const\n"
61444 "\n"
61445 "The query representation may change between Xapian releases: even\n"
61446 "between minor versions. However, it is guaranteed not to change unless\n"
61447 "the remote database protocol has also changed between releases. \n"
61448 ""},
61449 { (char *)"Query_unserialise", _wrap_Query_unserialise, 0x0001, __null},
61450 { (char *)"Query___str__", (PyCFunction)_wrap_Query___str__, 0x0008, (char *)"\n"
61451 "Return a string describing this object.\n"
61452 "\n"
61453 "std::string Xapian::Query::get_description() const \n"
61454 ""},
61455 { (char *)"new_Query", _wrap_new_Query, 0x0001, (char *)"\n"
61456 "Construct an external source query.\n"
61457 "\n"
61458 "Xapian::Query::Query(Xapian::PostingSource *external_source)\n"
61459 "\n"
61460 "An attempt to clone the posting source will be made immediately, so if\n"
61461 "the posting source supports clone(), the source supplied may be safely\n"
61462 "deallocated after this call. If the source does not support clone(),\n"
61463 "the caller must ensure that the posting source remains valid until the\n"
61464 "Query is deallocated.\n"
61465 "\n"
61466 "Parameters:\n"
61467 "-----------\n"
61468 "\n"
61469 "external_source: The source to use in the query. \n"
61470 ""},
61471 { (char *)"Query_swigregister", Query_swigregister, 0x0001, __null},
61472 { (char *)"Query_swiginit", Query_swiginit, 0x0001, __null},
61473 { (char *)"Stopper___call__", _wrap_Stopper___call__, 0x0001, __null},
61474 { (char *)"delete_Stopper", (PyCFunction)_wrap_delete_Stopper, 0x0008, (char *)"\n"
61475 "Class has virtual methods, so provide a virtual destructor.\n"
61476 "\n"
61477 "virtual Xapian::Stopper::~Stopper() \n"
61478 ""},
61479 { (char *)"Stopper___str__", (PyCFunction)_wrap_Stopper___str__, 0x0008, (char *)"\n"
61480 "Return a string describing this object.\n"
61481 "\n"
61482 "virtual std::string Xapian::Stopper::get_description() const \n"
61483 ""},
61484 { (char *)"new_Stopper", (PyCFunction)_wrap_new_Stopper, 0x0008, __null},
61485 { (char *)"disown_Stopper", (PyCFunction)_wrap_disown_Stopper, 0x0008, __null},
61486 { (char *)"Stopper_swigregister", Stopper_swigregister, 0x0001, __null},
61487 { (char *)"Stopper_swiginit", Stopper_swiginit, 0x0001, __null},
61488 { (char *)"new_SimpleStopper", (PyCFunction)_wrap_new_SimpleStopper, 0x0004, (char *)"\n"
61489 "Initialise from a pair of iterators.\n"
61490 "\n"
61491 "Xapian::SimpleStopper::SimpleStopper(Iterator begin, Iterator end) \n"
61492 ""},
61493 { (char *)"SimpleStopper_add", _wrap_SimpleStopper_add, 0x0001, (char *)"\n"
61494 "Add a single stop word.\n"
61495 "\n"
61496 "void Xapian::SimpleStopper::add(const std::string &word) \n"
61497 ""},
61498 { (char *)"delete_SimpleStopper", (PyCFunction)_wrap_delete_SimpleStopper, 0x0008, __null},
61499 { (char *)"SimpleStopper_swigregister", SimpleStopper_swigregister, 0x0001, __null},
61500 { (char *)"SimpleStopper_swiginit", SimpleStopper_swiginit, 0x0001, __null},
61501 { (char *)"delete_ValueRangeProcessor", (PyCFunction)_wrap_delete_ValueRangeProcessor, 0x0008, (char *)"\n"
61502 "Destructor.\n"
61503 "\n"
61504 "virtual Xapian::ValueRangeProcessor::~ValueRangeProcessor() \n"
61505 ""},
61506 { (char *)"ValueRangeProcessor___call__", _wrap_ValueRangeProcessor___call__, 0x0001, __null},
61507 { (char *)"new_ValueRangeProcessor", (PyCFunction)_wrap_new_ValueRangeProcessor, 0x0008, __null},
61508 { (char *)"disown_ValueRangeProcessor", (PyCFunction)_wrap_disown_ValueRangeProcessor, 0x0008, __null},
61509 { (char *)"ValueRangeProcessor_swigregister", ValueRangeProcessor_swigregister, 0x0001, __null},
61510 { (char *)"ValueRangeProcessor_swiginit", ValueRangeProcessor_swiginit, 0x0001, __null},
61511 { (char *)"new_StringValueRangeProcessor", _wrap_new_StringValueRangeProcessor, 0x0001, (char *)"\n"
61512 "Constructor.\n"
61513 "\n"
61514 "Xapian::StringValueRangeProcessor::StringValueRangeProcessor(Xapian::valueno\n"
61515 "valno_, const std::string &str_, bool prefix_=true)\n"
61516 "\n"
61517 "Parameters:\n"
61518 "-----------\n"
61519 "\n"
61520 "valno_: The value number to return from operator().\n"
61521 "\n"
61522 "str_: A string to look for to recognise values as belonging to this\n"
61523 "range.\n"
61524 "\n"
61525 "prefix_: Flag specifying whether to check for str_ as a prefix or a\n"
61526 "suffix. \n"
61527 ""},
61528 { (char *)"delete_StringValueRangeProcessor", (PyCFunction)_wrap_delete_StringValueRangeProcessor, 0x0008, __null},
61529 { (char *)"StringValueRangeProcessor_swigregister", StringValueRangeProcessor_swigregister, 0x0001, __null},
61530 { (char *)"StringValueRangeProcessor_swiginit", StringValueRangeProcessor_swiginit, 0x0001, __null},
61531 { (char *)"new_DateValueRangeProcessor", _wrap_new_DateValueRangeProcessor, 0x0001, (char *)"\n"
61532 "Constructor.\n"
61533 "\n"
61534 "Xapian::DateValueRangeProcessor::DateValueRangeProcessor(Xapian::valueno\n"
61535 "valno_, const std::string &str_, bool prefix_=true, bool\n"
61536 "prefer_mdy_=false, int epoch_year_=1970)\n"
61537 "\n"
61538 "Parameters:\n"
61539 "-----------\n"
61540 "\n"
61541 "valno_: The value number to return from operator().\n"
61542 "\n"
61543 "str_: A string to look for to recognise values as belonging to this\n"
61544 "date range.\n"
61545 "\n"
61546 "prefix_: Whether to look for the string at the start or end of the\n"
61547 "values. If true, the string is a prefix; if false, the string is a\n"
61548 "suffix (default: true).\n"
61549 "\n"
61550 "prefer_mdy_: Should ambiguous dates be interpreted as month/day/year\n"
61551 "rather than day/month/year? (default: false)\n"
61552 "\n"
61553 "epoch_year_: Year to use as the epoch for dates with 2 digit years\n"
61554 "(default: 1970, so 1/1/69 is 2069 while 1/1/70 is 1970).\n"
61555 "\n"
61556 "The string supplied in str_ is used by operator() to decide whether\n"
61557 "the pair of strings supplied to it constitute a valid range. If\n"
61558 "prefix_ is true, the first value in a range must begin with str_ (and\n"
61559 "the second value may optionally begin with str_); if prefix_ is false,\n"
61560 "the second value in a range must end with str_ (and the first value\n"
61561 "may optionally end with str_).\n"
61562 "\n"
61563 "If str_ is empty, the setting of prefix_ is irrelevant, and no special\n"
61564 "strings are required at the start or end of the strings defining the\n"
61565 "range.\n"
61566 "\n"
61567 "The remainder of both strings defining the endpoints must be valid\n"
61568 "dates.\n"
61569 "\n"
61570 "For example, if str_ is \"created:\" and prefix_ is true, and the\n"
61571 "range processor has been added to the queryparser, the queryparser\n"
61572 "will accept \"created:1/1/2000..31/12/2001\". \n"
61573 ""},
61574 { (char *)"delete_DateValueRangeProcessor", (PyCFunction)_wrap_delete_DateValueRangeProcessor, 0x0008, __null},
61575 { (char *)"DateValueRangeProcessor_swigregister", DateValueRangeProcessor_swigregister, 0x0001, __null},
61576 { (char *)"DateValueRangeProcessor_swiginit", DateValueRangeProcessor_swiginit, 0x0001, __null},
61577 { (char *)"new_NumberValueRangeProcessor", _wrap_new_NumberValueRangeProcessor, 0x0001, (char *)"\n"
61578 "Constructor.\n"
61579 "\n"
61580 "Xapian::NumberValueRangeProcessor::NumberValueRangeProcessor(Xapian::valueno\n"
61581 "valno_, const std::string &str_, bool prefix_=true)\n"
61582 "\n"
61583 "Parameters:\n"
61584 "-----------\n"
61585 "\n"
61586 "valno_: The value number to return from operator().\n"
61587 "\n"
61588 "str_: A string to look for to recognise values as belonging to this\n"
61589 "numeric range.\n"
61590 "\n"
61591 "prefix_: Whether to look for the string at the start or end of the\n"
61592 "values. If true, the string is a prefix; if false, the string is a\n"
61593 "suffix (default: true).\n"
61594 "\n"
61595 "The string supplied in str_ is used by operator() to decide whether\n"
61596 "the pair of strings supplied to it constitute a valid range. If\n"
61597 "prefix_ is true, the first value in a range must begin with str_ (and\n"
61598 "the second value may optionally begin with str_); if prefix_ is false,\n"
61599 "the second value in a range must end with str_ (and the first value\n"
61600 "may optionally end with str_).\n"
61601 "\n"
61602 "If str_ is empty, the setting of prefix_ is irrelevant, and no special\n"
61603 "strings are required at the start or end of the strings defining the\n"
61604 "range.\n"
61605 "\n"
61606 "The remainder of both strings defining the endpoints must be valid\n"
61607 "floating point numbers. (FIXME: define format recognised).\n"
61608 "\n"
61609 "For example, if str_ is \"$\" and prefix_ is true, and the range\n"
61610 "processor has been added to the queryparser, the queryparser will\n"
61611 "accept \"$10..50\" or \"$10..$50\", but not \"10..50\" or \"10..$50\"\n"
61612 "as valid ranges. If str_ is \"kg\" and prefix_ is false, the\n"
61613 "queryparser will accept \"10..50kg\" or \"10kg..50kg\", but not\n"
61614 "\"10..50\" or \"10kg..50\" as valid ranges. \n"
61615 ""},
61616 { (char *)"delete_NumberValueRangeProcessor", (PyCFunction)_wrap_delete_NumberValueRangeProcessor, 0x0008, __null},
61617 { (char *)"NumberValueRangeProcessor_swigregister", NumberValueRangeProcessor_swigregister, 0x0001, __null},
61618 { (char *)"NumberValueRangeProcessor_swiginit", NumberValueRangeProcessor_swiginit, 0x0001, __null},
61619 { (char *)"new_QueryParser", (PyCFunction)_wrap_new_QueryParser, 0x0004, (char *)"\n"
61620 "Default constructor.\n"
61621 "\n"
61622 "Xapian::QueryParser::QueryParser() \n"
61623 ""},
61624 { (char *)"delete_QueryParser", (PyCFunction)_wrap_delete_QueryParser, 0x0008, (char *)"\n"
61625 "Destructor.\n"
61626 "\n"
61627 "Xapian::QueryParser::~QueryParser() \n"
61628 ""},
61629 { (char *)"QueryParser_set_stemmer", _wrap_QueryParser_set_stemmer, 0x0001, (char *)"\n"
61630 "Set the stemmer.\n"
61631 "\n"
61632 "void Xapian::QueryParser::set_stemmer(const Xapian::Stem &stemmer)\n"
61633 "\n"
61634 "This sets the stemming algorithm which will be used by the query\n"
61635 "parser. Note that the stemming algorithm will only be used according\n"
61636 "to the stemming strategy set by set_stemming_strategy(), which\n"
61637 "defaults to STEM_NONE. Therefore, to use a stemming algorithm, you\n"
61638 "will also need to call set_stemming_strategy() with a value other than\n"
61639 "STEM_NONE. \n"
61640 ""},
61641 { (char *)"QueryParser_set_stemming_strategy", _wrap_QueryParser_set_stemming_strategy, 0x0001, (char *)"\n"
61642 "Set the stemming strategy.\n"
61643 "\n"
61644 "void Xapian::QueryParser::set_stemming_strategy(stem_strategy\n"
61645 "strategy)\n"
61646 "\n"
61647 "This controls how the query parser will apply the stemming algorithm.\n"
61648 "The default value is STEM_NONE. The possible values are:\n"
61649 "\n"
61650 "STEM_NONE: Don't perform any stemming.\n"
61651 "\n"
61652 "STEM_SOME: Search for stemmed forms of terms except for those which\n"
61653 "start with a capital letter, or are followed by certain characters\n"
61654 "(currently: (/@<>=*[{\" ), or are used with operators which need\n"
61655 "positional information. Stemmed terms are prefixed with 'Z'.\n"
61656 "\n"
61657 "STEM_ALL: Search for stemmed forms of all words (note: no 'Z' prefix\n"
61658 "is added).\n"
61659 "\n"
61660 "Note that the stemming algorithm is only applied to words in\n"
61661 "probabilistic fields - boolean filter terms are never stemmed. \n"
61662 ""},
61663 { (char *)"QueryParser_set_stopper", _wrap_QueryParser_set_stopper, 0x0001, (char *)"\n"
61664 "Set the stopper.\n"
61665 "\n"
61666 "void Xapian::QueryParser::set_stopper(const Stopper *stop=NULL) \n"
61667 ""},
61668 { (char *)"QueryParser_set_default_op", _wrap_QueryParser_set_default_op, 0x0001, (char *)"\n"
61669 "Set the default operator.\n"
61670 "\n"
61671 "void Xapian::QueryParser::set_default_op(Query::op default_op)\n"
61672 "\n"
61673 "This operator is used to combine non-filter query items when no\n"
61674 "explicit operator is used.\n"
61675 "\n"
61676 "The most useful values for this are OP_OR (the default) and OP_AND.\n"
61677 "OP_NEAR and OP_PHRASE can also be useful.\n"
61678 "\n"
61679 "So for example, 'weather forecast' is parsed as if it were 'weather OR\n"
61680 "forecast' by default. \n"
61681 ""},
61682 { (char *)"QueryParser_get_default_op", (PyCFunction)_wrap_QueryParser_get_default_op, 0x0008, (char *)"\n"
61683 "Get the current default operator.\n"
61684 "\n"
61685 "Query::op Xapian::QueryParser::get_default_op() const \n"
61686 ""},
61687 { (char *)"QueryParser_set_database", _wrap_QueryParser_set_database, 0x0001, (char *)"\n"
61688 "Specify the database being searched.\n"
61689 "\n"
61690 "void Xapian::QueryParser::set_database(const Database &db)\n"
61691 "\n"
61692 "The database is used for wildcard expansion (FLAG_WILDCARD and\n"
61693 "FLAG_PARTIAL), spelling correction (FLAG_SPELLING_CORRECTION), and\n"
61694 "synonyms (FLAG_SYNONYM, FLAG_AUTO_SYNONYMS, and\n"
61695 "FLAG_AUTO_MULTIWORD_SYNONYMS). \n"
61696 ""},
61697 { (char *)"QueryParser_parse_query", _wrap_QueryParser_parse_query, 0x0001, (char *)"\n"
61698 "Parse a query.\n"
61699 "\n"
61700 "Query Xapian::QueryParser::parse_query(const std::string\n"
61701 "&query_string, unsigned flags=FLAG_DEFAULT, const std::string\n"
61702 "&default_prefix=std::string())\n"
61703 "\n"
61704 "Parameters:\n"
61705 "-----------\n"
61706 "\n"
61707 "query_string: A free-text query as entered by a user\n"
61708 "\n"
61709 "flags: Zero or more Query::feature_flag specifying what features the\n"
61710 "QueryParser should support. Combine multiple values with bitwise-or\n"
61711 "(|) (default FLAG_DEFAULT).\n"
61712 "\n"
61713 "default_prefix: The default term prefix to use (default none). For\n"
61714 "example, you can pass \"A\" when parsing an \"Author\" field.\n"
61715 "\n"
61716 "Parameters:\n"
61717 "-----------\n"
61718 "\n"
61719 "If: the query string can't be parsed, then Xapian::QueryParserError\n"
61720 "is thrown. You can get an English error message to report to the user\n"
61721 "by catching it and calling get_msg() on the caught exception. The\n"
61722 "current possible values (in case you want to translate them) are:\n"
61723 "\n"
61724 "Unknown range operation\n"
61725 "\n"
61726 "parse error\n"
61727 "\n"
61728 "Syntax: <expression> AND <expression>\n"
61729 "\n"
61730 "Syntax: <expression> AND NOT <expression>\n"
61731 "\n"
61732 "Syntax: <expression> NOT <expression>\n"
61733 "\n"
61734 "Syntax: <expression> OR <expression>\n"
61735 "\n"
61736 "Syntax: <expression> XOR <expression> \n"
61737 ""},
61738 { (char *)"QueryParser_add_prefix", _wrap_QueryParser_add_prefix, 0x0001, (char *)"\n"
61739 "Add a probabilistic term prefix.\n"
61740 "\n"
61741 "void Xapian::QueryParser::add_prefix(const std::string &field, const\n"
61742 "std::string &prefix)\n"
61743 "\n"
61744 "For example:\n"
61745 "\n"
61746 "This allows the user to search for author:Orwell which will be\n"
61747 "converted to a search for the term \"Aorwell\".\n"
61748 "\n"
61749 "Multiple fields can be mapped to the same prefix. For example, you can\n"
61750 "make title: and subject: aliases for each other.\n"
61751 "\n"
61752 "As of 1.0.4, you can call this method multiple times with the same\n"
61753 "value of field to allow a single field to be mapped to multiple\n"
61754 "prefixes. Multiple terms being generated for such a field, and\n"
61755 "combined with Xapian::Query::OP_OR.\n"
61756 "\n"
61757 "If any prefixes are specified for the empty field name (i.e. you call\n"
61758 "this method with an empty string as the first parameter) these\n"
61759 "prefixes will be used for terms without a field specifier. If you do\n"
61760 "this and also specify the default_prefix parameter to parse_query(),\n"
61761 "then the default_prefix parameter will override.\n"
61762 "\n"
61763 "If the prefix parameter is empty, then \"field:word\" will produce the\n"
61764 "term \"word\" (and this can be one of several prefixes for a\n"
61765 "particular field, or for terms without a field specifier).\n"
61766 "\n"
61767 "If you call add_prefix() and add_boolean_prefix() for the same value\n"
61768 "of field, a Xapian::InvalidOperationError exception will be thrown.\n"
61769 "\n"
61770 "In 1.0.3 and earlier, subsequent calls to this method with the same\n"
61771 "value of field had no effect.\n"
61772 "\n"
61773 "Parameters:\n"
61774 "-----------\n"
61775 "\n"
61776 "field: The user visible field name\n"
61777 "\n"
61778 "prefix: The term prefix to map this to \n"
61779 ""},
61780 { (char *)"QueryParser_add_boolean_prefix", _wrap_QueryParser_add_boolean_prefix, 0x0001, (char *)"\n"
61781 "void\n"
61782 "Xapian::QueryParser::add_boolean_prefix(const std::string &field,\n"
61783 "const std::string &prefix) \n"
61784 ""},
61785 { (char *)"QueryParser_stoplist_begin", (PyCFunction)_wrap_QueryParser_stoplist_begin, 0x0008, (char *)"\n"
61786 "Iterate over terms omitted from the query as stopwords.\n"
61787 "\n"
61788 "TermIterator Xapian::QueryParser::stoplist_begin() const \n"
61789 ""},
61790 { (char *)"QueryParser_stoplist_end", (PyCFunction)_wrap_QueryParser_stoplist_end, 0x0008, (char *)"TermIterator Xapian::QueryParser::stoplist_end() const "},
61791 { (char *)"QueryParser_unstem_begin", _wrap_QueryParser_unstem_begin, 0x0001, (char *)"\n"
61792 "Iterate over unstemmed forms of the given (stemmed) term used in the\n"
61793 "query.\n"
61794 "\n"
61795 "TermIterator Xapian::QueryParser::unstem_begin(const std::string\n"
61796 "&term) const \n"
61797 ""},
61798 { (char *)"QueryParser_unstem_end", _wrap_QueryParser_unstem_end, 0x0001, (char *)"\n"
61799 "TermIterator\n"
61800 "Xapian::QueryParser::unstem_end(const std::string &) const \n"
61801 ""},
61802 { (char *)"QueryParser_add_valuerangeprocessor", _wrap_QueryParser_add_valuerangeprocessor, 0x0001, (char *)"\n"
61803 "Register a ValueRangeProcessor.\n"
61804 "\n"
61805 "void\n"
61806 "Xapian::QueryParser::add_valuerangeprocessor(Xapian::ValueRangeProcessor\n"
61807 "*vrproc) \n"
61808 ""},
61809 { (char *)"QueryParser_get_corrected_query_string", (PyCFunction)_wrap_QueryParser_get_corrected_query_string, 0x0008, (char *)"\n"
61810 "Get the spelling-corrected query string.\n"
61811 "\n"
61812 "std::string Xapian::QueryParser::get_corrected_query_string() const\n"
61813 "\n"
61814 "This will only be set if FLAG_SPELLING_CORRECTION is specified when\n"
61815 "QueryParser::parse_query() was last called.\n"
61816 "\n"
61817 "If there were no corrections, an empty string is returned. \n"
61818 ""},
61819 { (char *)"QueryParser___str__", (PyCFunction)_wrap_QueryParser___str__, 0x0008, (char *)"\n"
61820 "Return a string describing this object.\n"
61821 "\n"
61822 "std::string Xapian::QueryParser::get_description() const \n"
61823 ""},
61824 { (char *)"QueryParser_swigregister", QueryParser_swigregister, 0x0001, __null},
61825 { (char *)"QueryParser_swiginit", QueryParser_swiginit, 0x0001, __null},
61826 { (char *)"sortable_serialise", (PyCFunction)_wrap_sortable_serialise, 0x0008, __null},
61827 { (char *)"sortable_unserialise", (PyCFunction)_wrap_sortable_unserialise, 0x0008, __null},
61828 { (char *)"delete_StemImplementation", (PyCFunction)_wrap_delete_StemImplementation, 0x0008, (char *)"\n"
61829 "Virtual destructor.\n"
61830 "\n"
61831 "virtual Xapian::StemImplementation::~StemImplementation() \n"
61832 ""},
61833 { (char *)"StemImplementation___call__", _wrap_StemImplementation___call__, 0x0001, __null},
61834 { (char *)"StemImplementation___str__", (PyCFunction)_wrap_StemImplementation___str__, 0x0008, (char *)"\n"
61835 "Return a string describing this object.\n"
61836 "\n"
61837 "virtual std::string Xapian::StemImplementation::get_description()\n"
61838 "const =0 \n"
61839 ""},
61840 { (char *)"new_StemImplementation", (PyCFunction)_wrap_new_StemImplementation, 0x0008, __null},
61841 { (char *)"disown_StemImplementation", (PyCFunction)_wrap_disown_StemImplementation, 0x0008, __null},
61842 { (char *)"StemImplementation_swigregister", StemImplementation_swigregister, 0x0001, __null},
61843 { (char *)"StemImplementation_swiginit", StemImplementation_swiginit, 0x0001, __null},
61844 { (char *)"new_Stem", _wrap_new_Stem, 0x0001, (char *)"\n"
61845 "Construct a Xapian::Stem object with a user-provided stemming\n"
61846 "algorithm.\n"
61847 "\n"
61848 "Xapian::Stem::Stem(StemImplementation *p)\n"
61849 "\n"
61850 "You can subclass Xapian::StemImplementation to implement your own\n"
61851 "stemming algorithm (or to wrap a third-party algorithm) and then wrap\n"
61852 "your implementation in a Xapian::Stem object to pass to the Xapian\n"
61853 "API.\n"
61854 "\n"
61855 "The StemImplementation object is reference counted, and so will be\n"
61856 "automatically deleted by the Xapian::Stem wrapper when no longer\n"
61857 "required. \n"
61858 ""},
61859 { (char *)"delete_Stem", (PyCFunction)_wrap_delete_Stem, 0x0008, (char *)"\n"
61860 "Destructor.\n"
61861 "\n"
61862 "Xapian::Stem::~Stem() \n"
61863 ""},
61864 { (char *)"Stem___call__", _wrap_Stem___call__, 0x0001, __null},
61865 { (char *)"Stem___str__", (PyCFunction)_wrap_Stem___str__, 0x0008, (char *)"\n"
61866 "Return a string describing this object.\n"
61867 "\n"
61868 "std::string Xapian::Stem::get_description() const \n"
61869 ""},
61870 { (char *)"Stem_get_available_languages", (PyCFunction)_wrap_Stem_get_available_languages, 0x0004, __null},
61871 { (char *)"Stem_swigregister", Stem_swigregister, 0x0001, __null},
61872 { (char *)"Stem_swiginit", Stem_swiginit, 0x0001, __null},
61873 { (char *)"new_TermGenerator", (PyCFunction)_wrap_new_TermGenerator, 0x0004, (char *)"\n"
61874 "Default constructor.\n"
61875 "\n"
61876 "Xapian::TermGenerator::TermGenerator() \n"
61877 ""},
61878 { (char *)"delete_TermGenerator", (PyCFunction)_wrap_delete_TermGenerator, 0x0008, (char *)"\n"
61879 "Destructor.\n"
61880 "\n"
61881 "Xapian::TermGenerator::~TermGenerator() \n"
61882 ""},
61883 { (char *)"TermGenerator_set_stemmer", _wrap_TermGenerator_set_stemmer, 0x0001, (char *)"\n"
61884 "Set the Xapian::Stem object to be used for generating stemmed terms.\n"
61885 "\n"
61886 "void Xapian::TermGenerator::set_stemmer(const Xapian::Stem &stemmer)\n"
61887 "\n"
61888 ""},
61889 { (char *)"TermGenerator_set_stopper", _wrap_TermGenerator_set_stopper, 0x0001, (char *)"\n"
61890 "Set the Xapian::Stopper object to be used for identifying stopwords.\n"
61891 "\n"
61892 "void Xapian::TermGenerator::set_stopper(const Xapian::Stopper\n"
61893 "*stop=NULL)\n"
61894 "\n"
61895 "Stemmed forms of stopwords aren't indexed, but unstemmed forms still\n"
61896 "are so that searches for phrases including stop words still work. \n"
61897 ""},
61898 { (char *)"TermGenerator_set_document", _wrap_TermGenerator_set_document, 0x0001, (char *)"\n"
61899 "Set the current document.\n"
61900 "\n"
61901 "void Xapian::TermGenerator::set_document(const Xapian::Document &doc)\n"
61902 "\n"
61903 ""},
61904 { (char *)"TermGenerator_get_document", (PyCFunction)_wrap_TermGenerator_get_document, 0x0008, (char *)"\n"
61905 "Get the current document.\n"
61906 "\n"
61907 "const Xapian::Document& Xapian::TermGenerator::get_document() const \n"
61908 ""},
61909 { (char *)"TermGenerator_set_database", _wrap_TermGenerator_set_database, 0x0001, (char *)"\n"
61910 "Set the database to index spelling data to.\n"
61911 "\n"
61912 "void Xapian::TermGenerator::set_database(const\n"
61913 "Xapian::WritableDatabase &db) \n"
61914 ""},
61915 { (char *)"TermGenerator_set_flags", _wrap_TermGenerator_set_flags, 0x0001, (char *)"\n"
61916 "Set flags.\n"
61917 "\n"
61918 "flags Xapian::TermGenerator::set_flags(flags toggle, flags\n"
61919 "mask=flags(0))\n"
61920 "\n"
61921 "The new value of flags is: (flags & mask) ^ toggle\n"
61922 "\n"
61923 "To just set the flags, pass the new flags in toggle and the default\n"
61924 "value for mask.\n"
61925 "\n"
61926 "Parameters:\n"
61927 "-----------\n"
61928 "\n"
61929 "toggle: Flags to XOR.\n"
61930 "\n"
61931 "mask: Flags to AND with first.\n"
61932 "\n"
61933 "The old flags setting. \n"
61934 ""},
61935 { (char *)"TermGenerator_index_text", _wrap_TermGenerator_index_text, 0x0001, (char *)"\n"
61936 "Index some text in a std::string.\n"
61937 "\n"
61938 "void Xapian::TermGenerator::index_text(const std::string &text,\n"
61939 "Xapian::termcount weight=1, const std::string &prefix=std::string())\n"
61940 "\n"
61941 "Parameters:\n"
61942 "-----------\n"
61943 "\n"
61944 "weight: The wdf increment (default 1).\n"
61945 "\n"
61946 "prefix: The term prefix to use (default is no prefix). \n"
61947 ""},
61948 { (char *)"TermGenerator_index_text_without_positions", _wrap_TermGenerator_index_text_without_positions, 0x0001, (char *)"\n"
61949 "Index some text in a std::string without positional information.\n"
61950 "\n"
61951 "void Xapian::TermGenerator::index_text_without_positions(const\n"
61952 "std::string &text, Xapian::termcount weight=1, const std::string\n"
61953 "&prefix=std::string())\n"
61954 "\n"
61955 "Just like index_text, but no positional information is generated. This\n"
61956 "means that the database will be significantly smaller, but that phrase\n"
61957 "searching and NEAR won't be supported. \n"
61958 ""},
61959 { (char *)"TermGenerator_increase_termpos", _wrap_TermGenerator_increase_termpos, 0x0001, (char *)"\n"
61960 "Increase the termpos used by index_text by delta.\n"
61961 "\n"
61962 "void Xapian::TermGenerator::increase_termpos(Xapian::termcount\n"
61963 "delta=100)\n"
61964 "\n"
61965 "This can be used to prevent phrase searches from spanning two\n"
61966 "unconnected blocks of text (e.g. the title and body text). \n"
61967 ""},
61968 { (char *)"TermGenerator_get_termpos", (PyCFunction)_wrap_TermGenerator_get_termpos, 0x0008, (char *)"\n"
61969 "Get the current term position.\n"
61970 "\n"
61971 "Xapian::termcount Xapian::TermGenerator::get_termpos() const \n"
61972 ""},
61973 { (char *)"TermGenerator_set_termpos", _wrap_TermGenerator_set_termpos, 0x0001, (char *)"\n"
61974 "Set the current term position.\n"
61975 "\n"
61976 "void Xapian::TermGenerator::set_termpos(Xapian::termcount termpos) \n"
61977 ""},
61978 { (char *)"TermGenerator___str__", (PyCFunction)_wrap_TermGenerator___str__, 0x0008, (char *)"\n"
61979 "Return a string describing this object.\n"
61980 "\n"
61981 "std::string Xapian::TermGenerator::get_description() const \n"
61982 ""},
61983 { (char *)"TermGenerator_swigregister", TermGenerator_swigregister, 0x0001, __null},
61984 { (char *)"TermGenerator_swiginit", TermGenerator_swiginit, 0x0001, __null},
61985 { (char *)"KeyMaker___call__", _wrap_KeyMaker___call__, 0x0001, __null},
61986 { (char *)"delete_KeyMaker", (PyCFunction)_wrap_delete_KeyMaker, 0x0008, (char *)"\n"
61987 "Virtual destructor, because we have virtual methods.\n"
61988 "\n"
61989 "virtual Xapian::KeyMaker::~KeyMaker() \n"
61990 ""},
61991 { (char *)"new_KeyMaker", (PyCFunction)_wrap_new_KeyMaker, 0x0008, __null},
61992 { (char *)"disown_KeyMaker", (PyCFunction)_wrap_disown_KeyMaker, 0x0008, __null},
61993 { (char *)"KeyMaker_swigregister", KeyMaker_swigregister, 0x0001, __null},
61994 { (char *)"KeyMaker_swiginit", KeyMaker_swiginit, 0x0001, __null},
61995 { (char *)"new_MultiValueKeyMaker", (PyCFunction)_wrap_new_MultiValueKeyMaker, 0x0004, (char *)"\n"
61996 "Xapian::MultiValueKeyMaker::MultiValueKeyMaker(Iterator begin,\n"
61997 "Iterator end) \n"
61998 ""},
61999 { (char *)"MultiValueKeyMaker_add_value", _wrap_MultiValueKeyMaker_add_value, 0x0001, (char *)"\n"
62000 "void\n"
62001 "Xapian::MultiValueKeyMaker::add_value(Xapian::valueno valno, bool\n"
62002 "reverse=false) \n"
62003 ""},
62004 { (char *)"delete_MultiValueKeyMaker", (PyCFunction)_wrap_delete_MultiValueKeyMaker, 0x0008, __null},
62005 { (char *)"MultiValueKeyMaker_swigregister", MultiValueKeyMaker_swigregister, 0x0001, __null},
62006 { (char *)"MultiValueKeyMaker_swiginit", MultiValueKeyMaker_swiginit, 0x0001, __null},
62007 { (char *)"delete_Sorter", (PyCFunction)_wrap_delete_Sorter, 0x0008, __null},
62008 { (char *)"Sorter_swigregister", Sorter_swigregister, 0x0001, __null},
62009 { (char *)"new_MultiValueSorter", (PyCFunction)_wrap_new_MultiValueSorter, 0x0004, (char *)"\n"
62010 "Xapian::MultiValueSorter::MultiValueSorter(Iterator begin, Iterator\n"
62011 "end) \n"
62012 ""},
62013 { (char *)"MultiValueSorter_add", _wrap_MultiValueSorter_add, 0x0001, (char *)"\n"
62014 "void\n"
62015 "Xapian::MultiValueSorter::add(Xapian::valueno valno, bool\n"
62016 "forward=true) \n"
62017 ""},
62018 { (char *)"delete_MultiValueSorter", (PyCFunction)_wrap_delete_MultiValueSorter, 0x0008, __null},
62019 { (char *)"MultiValueSorter_swigregister", MultiValueSorter_swigregister, 0x0001, __null},
62020 { (char *)"MultiValueSorter_swiginit", MultiValueSorter_swiginit, 0x0001, __null},
62021 { (char *)"new_ValueSetMatchDecider", _wrap_new_ValueSetMatchDecider, 0x0001, (char *)"\n"
62022 "Construct a ValueSetMatchDecider.\n"
62023 "\n"
62024 "Xapian::ValueSetMatchDecider::ValueSetMatchDecider(Xapian::valueno\n"
62025 "slot, bool inclusive_)\n"
62026 "\n"
62027 "Parameters:\n"
62028 "-----------\n"
62029 "\n"
62030 "slot: The value slot number to look in.\n"
62031 "\n"
62032 "inclusive_: If true, match decider accepts documents which have a\n"
62033 "value in the specified slot which is a member of the test set; if\n"
62034 "false, match decider accepts documents which do not have a value in\n"
62035 "the specified slot. \n"
62036 ""},
62037 { (char *)"ValueSetMatchDecider_add_value", _wrap_ValueSetMatchDecider_add_value, 0x0001, (char *)"\n"
62038 "Add a value to the test set.\n"
62039 "\n"
62040 "void Xapian::ValueSetMatchDecider::add_value(const std::string &value)\n"
62041 "\n"
62042 "Parameters:\n"
62043 "-----------\n"
62044 "\n"
62045 "value: The value to add to the test set. \n"
62046 ""},
62047 { (char *)"ValueSetMatchDecider_remove_value", _wrap_ValueSetMatchDecider_remove_value, 0x0001, (char *)"\n"
62048 "Remove a value from the test set.\n"
62049 "\n"
62050 "void Xapian::ValueSetMatchDecider::remove_value(const std::string\n"
62051 "&value)\n"
62052 "\n"
62053 "Parameters:\n"
62054 "-----------\n"
62055 "\n"
62056 "value: The value to remove from the test set. \n"
62057 ""},
62058 { (char *)"delete_ValueSetMatchDecider", (PyCFunction)_wrap_delete_ValueSetMatchDecider, 0x0008, __null},
62059 { (char *)"ValueSetMatchDecider_swigregister", ValueSetMatchDecider_swigregister, 0x0001, __null},
62060 { (char *)"ValueSetMatchDecider_swiginit", ValueSetMatchDecider_swiginit, 0x0001, __null},
62061 { (char *)"new_Compactor", (PyCFunction)_wrap_new_Compactor, 0x0008, (char *)"Xapian::Compactor::Compactor() "},
62062 { (char *)"delete_Compactor", (PyCFunction)_wrap_delete_Compactor, 0x0008, (char *)"\n"
62063 "virtual\n"
62064 "Xapian::Compactor::~Compactor() \n"
62065 ""},
62066 { (char *)"Compactor_set_block_size", _wrap_Compactor_set_block_size, 0x0001, (char *)"\n"
62067 "Set the block size to use for tables in the output database.\n"
62068 "\n"
62069 "void Xapian::Compactor::set_block_size(size_t block_size)\n"
62070 "\n"
62071 "Valid block sizes are currently powers of two between 2048 and 65536,\n"
62072 "with the default being 8192, but the valid sizes and default may\n"
62073 "change in the future. \n"
62074 ""},
62075 { (char *)"Compactor_set_renumber", _wrap_Compactor_set_renumber, 0x0001, (char *)"\n"
62076 "Set whether to preserve existing document id values.\n"
62077 "\n"
62078 "void Xapian::Compactor::set_renumber(bool renumber)\n"
62079 "\n"
62080 "The default is true, which means that document ids will be renumbered\n"
62081 "- currently by applying the same offset to all the document ids in a\n"
62082 "particular source database.\n"
62083 "\n"
62084 "If false, then the document ids must be unique over all source\n"
62085 "databases. Currently the ranges of document ids in each source must\n"
62086 "not overlap either, though this restriction may be removed in the\n"
62087 "future. \n"
62088 ""},
62089 { (char *)"Compactor_set_multipass", _wrap_Compactor_set_multipass, 0x0001, (char *)"\n"
62090 "Set whether to merge postlists in multiple passes.\n"
62091 "\n"
62092 "void Xapian::Compactor::set_multipass(bool multipass)\n"
62093 "\n"
62094 "Default is false. If set to true and merging more than 3 databases,\n"
62095 "merge the postlists in multiple passes, which is generally faster but\n"
62096 "requires more disk space for temporary files. \n"
62097 ""},
62098 { (char *)"Compactor_set_compaction_level", _wrap_Compactor_set_compaction_level, 0x0001, (char *)"\n"
62099 "Set the compaction level.\n"
62100 "\n"
62101 "void Xapian::Compactor::set_compaction_level(compaction_level\n"
62102 "compaction)\n"
62103 "\n"
62104 "Values are: Xapian::Compactor::STANDARD - Don't split items\n"
62105 "unnecessarily.\n"
62106 "\n"
62107 "Xapian::Compactor::FULL - Split items whenever it saves space (the\n"
62108 "default).\n"
62109 "\n"
62110 "Xapian::Compactor::FULLER - Allow oversize items to save more space.\n"
62111 "\n"
62112 "FULLER isn't recommended if you ever plan to update the compacted\n"
62113 "database. \n"
62114 ""},
62115 { (char *)"Compactor_set_destdir", _wrap_Compactor_set_destdir, 0x0001, (char *)"\n"
62116 "Set where to write the output.\n"
62117 "\n"
62118 "void Xapian::Compactor::set_destdir(const std::string &destdir)\n"
62119 "\n"
62120 "This can be the same as an input if that input is a stub database (in\n"
62121 "which case it will be updated atomically). \n"
62122 ""},
62123 { (char *)"Compactor_add_source", _wrap_Compactor_add_source, 0x0001, (char *)"\n"
62124 "Add a source database.\n"
62125 "\n"
62126 "void Xapian::Compactor::add_source(const std::string &srcdir) \n"
62127 ""},
62128 { (char *)"Compactor_compact", (PyCFunction)_wrap_Compactor_compact, 0x0008, (char *)"\n"
62129 "Perform the actual compaction/merging operation.\n"
62130 "\n"
62131 "void Xapian::Compactor::compact() \n"
62132 ""},
62133 { (char *)"Compactor_set_status", _wrap_Compactor_set_status, 0x0001, (char *)"\n"
62134 "Update progress.\n"
62135 "\n"
62136 "virtual void Xapian::Compactor::set_status(const std::string &table,\n"
62137 "const std::string &status)\n"
62138 "\n"
62139 "Subclass this method if you want to get progress updates during\n"
62140 "compaction. This is called for each table first with empty status, And\n"
62141 "then one or more times with non-empty status.\n"
62142 "\n"
62143 "The default implementation does nothing. \n"
62144 ""},
62145 { (char *)"Compactor_resolve_duplicate_metadata", _wrap_Compactor_resolve_duplicate_metadata, 0x0001, (char *)"\n"
62146 "Resolve multiple user metadata entries with the same key.\n"
62147 "\n"
62148 "virtual std::string\n"
62149 "Xapian::Compactor::resolve_duplicate_metadata(const std::string &key,\n"
62150 "size_t num_tags, const std::string tags[])\n"
62151 "\n"
62152 "When merging, if the same user metadata key is set in more than one\n"
62153 "input, then this method is called to allow this to be resolving in an\n"
62154 "appropriate way.\n"
62155 "\n"
62156 "The default implementation just returns tags[0].\n"
62157 "\n"
62158 "For multipass this will currently get called multiple times for the\n"
62159 "same key if there are duplicates to resolve in each pass, but this may\n"
62160 "change in the future. \n"
62161 ""},
62162 { (char *)"disown_Compactor", (PyCFunction)_wrap_disown_Compactor, 0x0008, __null},
62163 { (char *)"Compactor_swigregister", Compactor_swigregister, 0x0001, __null},
62164 { (char *)"Compactor_swiginit", Compactor_swiginit, 0x0001, __null},
62165 { __null, __null, 0, __null }
62166};
62167static void *_p_Xapian__WritableDatabaseTo_p_Xapian__Database(void *x, int *) {
62168 return (void *)((Xapian::Database *) ((Xapian::WritableDatabase *) x));
62169}
62170static void *_p_Xapian__ValueSetMatchDeciderTo_p_Xapian__MatchDecider(void *x, int *) {
62171 return (void *)((Xapian::MatchDecider *) ((Xapian::ValueSetMatchDecider *) x));
62172}
62173static void *_p_Xapian__NetworkTimeoutErrorTo_p_Xapian__NetworkError(void *x, int *) {
62174 return (void *)((Xapian::NetworkError *) ((Xapian::NetworkTimeoutError *) x));
62175}
62176static void *_p_Xapian__MultiValueSorterTo_p_Xapian__Sorter(void *x, int *) {
62177 return (void *)((Xapian::Sorter *) ((Xapian::MultiValueSorter *) x));
62178}
62179static void *_p_Xapian__SorterTo_p_Xapian__KeyMaker(void *x, int *) {
62180 return (void *)((Xapian::KeyMaker *) ((Xapian::Sorter *) x));
62181}
62182static void *_p_Xapian__MultiValueSorterTo_p_Xapian__KeyMaker(void *x, int *) {
62183 return (void *)((Xapian::KeyMaker *) (Xapian::Sorter *) ((Xapian::MultiValueSorter *) x));
62184}
62185static void *_p_Xapian__MultiValueKeyMakerTo_p_Xapian__KeyMaker(void *x, int *) {
62186 return (void *)((Xapian::KeyMaker *) ((Xapian::MultiValueKeyMaker *) x));
62187}
62188static void *_p_Xapian__AssertionErrorTo_p_Xapian__LogicError(void *x, int *) {
62189 return (void *)((Xapian::LogicError *) ((Xapian::AssertionError *) x));
62190}
62191static void *_p_Xapian__InvalidOperationErrorTo_p_Xapian__LogicError(void *x, int *) {
62192 return (void *)((Xapian::LogicError *) ((Xapian::InvalidOperationError *) x));
62193}
62194static void *_p_Xapian__UnimplementedErrorTo_p_Xapian__LogicError(void *x, int *) {
62195 return (void *)((Xapian::LogicError *) ((Xapian::UnimplementedError *) x));
62196}
62197static void *_p_Xapian__InvalidArgumentErrorTo_p_Xapian__LogicError(void *x, int *) {
62198 return (void *)((Xapian::LogicError *) ((Xapian::InvalidArgumentError *) x));
62199}
62200static void *_p_Xapian__DecreasingValueWeightPostingSourceTo_p_Xapian__ValueWeightPostingSource(void *x, int *) {
62201 return (void *)((Xapian::ValueWeightPostingSource *) ((Xapian::DecreasingValueWeightPostingSource *) x));
62202}
62203static void *_p_Xapian__ValueWeightPostingSourceTo_p_Xapian__ValuePostingSource(void *x, int *) {
62204 return (void *)((Xapian::ValuePostingSource *) ((Xapian::ValueWeightPostingSource *) x));
62205}
62206static void *_p_Xapian__DecreasingValueWeightPostingSourceTo_p_Xapian__ValuePostingSource(void *x, int *) {
62207 return (void *)((Xapian::ValuePostingSource *) (Xapian::ValueWeightPostingSource *) ((Xapian::DecreasingValueWeightPostingSource *) x));
62208}
62209static void *_p_Xapian__ValueMapPostingSourceTo_p_Xapian__ValuePostingSource(void *x, int *) {
62210 return (void *)((Xapian::ValuePostingSource *) ((Xapian::ValueMapPostingSource *) x));
62211}
62212static void *_p_Xapian__ValuePostingSourceTo_p_Xapian__PostingSource(void *x, int *) {
62213 return (void *)((Xapian::PostingSource *) ((Xapian::ValuePostingSource *) x));
62214}
62215static void *_p_Xapian__ValueWeightPostingSourceTo_p_Xapian__PostingSource(void *x, int *) {
62216 return (void *)((Xapian::PostingSource *) (Xapian::ValuePostingSource *) ((Xapian::ValueWeightPostingSource *) x));
62217}
62218static void *_p_Xapian__DecreasingValueWeightPostingSourceTo_p_Xapian__PostingSource(void *x, int *) {
62219 return (void *)((Xapian::PostingSource *) (Xapian::ValuePostingSource *)(Xapian::ValueWeightPostingSource *) ((Xapian::DecreasingValueWeightPostingSource *) x));
62220}
62221static void *_p_Xapian__ValueMapPostingSourceTo_p_Xapian__PostingSource(void *x, int *) {
62222 return (void *)((Xapian::PostingSource *) (Xapian::ValuePostingSource *) ((Xapian::ValueMapPostingSource *) x));
62223}
62224static void *_p_Xapian__FixedWeightPostingSourceTo_p_Xapian__PostingSource(void *x, int *) {
62225 return (void *)((Xapian::PostingSource *) ((Xapian::FixedWeightPostingSource *) x));
62226}
62227static void *_p_Xapian__BoolWeightTo_p_Xapian__Weight(void *x, int *) {
62228 return (void *)((Xapian::Weight *) ((Xapian::BoolWeight *) x));
62229}
62230static void *_p_Xapian__TradWeightTo_p_Xapian__Weight(void *x, int *) {
62231 return (void *)((Xapian::Weight *) ((Xapian::TradWeight *) x));
62232}
62233static void *_p_Xapian__BM25WeightTo_p_Xapian__Weight(void *x, int *) {
62234 return (void *)((Xapian::Weight *) ((Xapian::BM25Weight *) x));
62235}
62236static void *_p_Xapian__ValueCountMatchSpyTo_p_Xapian__MatchSpy(void *x, int *) {
62237 return (void *)((Xapian::MatchSpy *) ((Xapian::ValueCountMatchSpy *) x));
62238}
62239static void *_p_Xapian__SimpleStopperTo_p_Xapian__Stopper(void *x, int *) {
62240 return (void *)((Xapian::Stopper *) ((Xapian::SimpleStopper *) x));
62241}
62242static void *_p_Xapian__DatabaseVersionErrorTo_p_Xapian__DatabaseOpeningError(void *x, int *) {
62243 return (void *)((Xapian::DatabaseOpeningError *) ((Xapian::DatabaseVersionError *) x));
62244}
62245static void *_p_Xapian__DatabaseVersionErrorTo_p_Xapian__DatabaseError(void *x, int *) {
62246 return (void *)((Xapian::DatabaseError *) (Xapian::DatabaseOpeningError *) ((Xapian::DatabaseVersionError *) x));
62247}
62248static void *_p_Xapian__DatabaseLockErrorTo_p_Xapian__DatabaseError(void *x, int *) {
62249 return (void *)((Xapian::DatabaseError *) ((Xapian::DatabaseLockError *) x));
62250}
62251static void *_p_Xapian__DatabaseModifiedErrorTo_p_Xapian__DatabaseError(void *x, int *) {
62252 return (void *)((Xapian::DatabaseError *) ((Xapian::DatabaseModifiedError *) x));
62253}
62254static void *_p_Xapian__DatabaseOpeningErrorTo_p_Xapian__DatabaseError(void *x, int *) {
62255 return (void *)((Xapian::DatabaseError *) ((Xapian::DatabaseOpeningError *) x));
62256}
62257static void *_p_Xapian__DatabaseCreateErrorTo_p_Xapian__DatabaseError(void *x, int *) {
62258 return (void *)((Xapian::DatabaseError *) ((Xapian::DatabaseCreateError *) x));
62259}
62260static void *_p_Xapian__DatabaseCorruptErrorTo_p_Xapian__DatabaseError(void *x, int *) {
62261 return (void *)((Xapian::DatabaseError *) ((Xapian::DatabaseCorruptError *) x));
62262}
62263static void *_p_Xapian__DocNotFoundErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62264 return (void *)((Xapian::RuntimeError *) ((Xapian::DocNotFoundError *) x));
62265}
62266static void *_p_Xapian__DatabaseLockErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62267 return (void *)((Xapian::RuntimeError *) (Xapian::DatabaseError *) ((Xapian::DatabaseLockError *) x));
62268}
62269static void *_p_Xapian__NetworkTimeoutErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62270 return (void *)((Xapian::RuntimeError *) (Xapian::NetworkError *) ((Xapian::NetworkTimeoutError *) x));
62271}
62272static void *_p_Xapian__FeatureUnavailableErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62273 return (void *)((Xapian::RuntimeError *) ((Xapian::FeatureUnavailableError *) x));
62274}
62275static void *_p_Xapian__DatabaseCreateErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62276 return (void *)((Xapian::RuntimeError *) (Xapian::DatabaseError *) ((Xapian::DatabaseCreateError *) x));
62277}
62278static void *_p_Xapian__InternalErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62279 return (void *)((Xapian::RuntimeError *) ((Xapian::InternalError *) x));
62280}
62281static void *_p_Xapian__DatabaseModifiedErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62282 return (void *)((Xapian::RuntimeError *) (Xapian::DatabaseError *) ((Xapian::DatabaseModifiedError *) x));
62283}
62284static void *_p_Xapian__DatabaseErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62285 return (void *)((Xapian::RuntimeError *) ((Xapian::DatabaseError *) x));
62286}
62287static void *_p_Xapian__DatabaseOpeningErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62288 return (void *)((Xapian::RuntimeError *) (Xapian::DatabaseError *) ((Xapian::DatabaseOpeningError *) x));
62289}
62290static void *_p_Xapian__RangeErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62291 return (void *)((Xapian::RuntimeError *) ((Xapian::RangeError *) x));
62292}
62293static void *_p_Xapian__SerialisationErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62294 return (void *)((Xapian::RuntimeError *) ((Xapian::SerialisationError *) x));
62295}
62296static void *_p_Xapian__DatabaseVersionErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62297 return (void *)((Xapian::RuntimeError *) (Xapian::DatabaseError *)(Xapian::DatabaseOpeningError *) ((Xapian::DatabaseVersionError *) x));
62298}
62299static void *_p_Xapian__NetworkErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62300 return (void *)((Xapian::RuntimeError *) ((Xapian::NetworkError *) x));
62301}
62302static void *_p_Xapian__DatabaseCorruptErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62303 return (void *)((Xapian::RuntimeError *) (Xapian::DatabaseError *) ((Xapian::DatabaseCorruptError *) x));
62304}
62305static void *_p_Xapian__QueryParserErrorTo_p_Xapian__RuntimeError(void *x, int *) {
62306 return (void *)((Xapian::RuntimeError *) ((Xapian::QueryParserError *) x));
62307}
62308static void *_p_Xapian__StringValueRangeProcessorTo_p_Xapian__ValueRangeProcessor(void *x, int *) {
62309 return (void *)((Xapian::ValueRangeProcessor *) ((Xapian::StringValueRangeProcessor *) x));
62310}
62311static void *_p_Xapian__DateValueRangeProcessorTo_p_Xapian__ValueRangeProcessor(void *x, int *) {
62312 return (void *)((Xapian::ValueRangeProcessor *) (Xapian::StringValueRangeProcessor *) ((Xapian::DateValueRangeProcessor *) x));
62313}
62314static void *_p_Xapian__NumberValueRangeProcessorTo_p_Xapian__ValueRangeProcessor(void *x, int *) {
62315 return (void *)((Xapian::ValueRangeProcessor *) (Xapian::StringValueRangeProcessor *) ((Xapian::NumberValueRangeProcessor *) x));
62316}
62317static void *_p_Xapian__DateValueRangeProcessorTo_p_Xapian__StringValueRangeProcessor(void *x, int *) {
62318 return (void *)((Xapian::StringValueRangeProcessor *) ((Xapian::DateValueRangeProcessor *) x));
62319}
62320static void *_p_Xapian__NumberValueRangeProcessorTo_p_Xapian__StringValueRangeProcessor(void *x, int *) {
62321 return (void *)((Xapian::StringValueRangeProcessor *) ((Xapian::NumberValueRangeProcessor *) x));
62322}
62323static void *_p_Xapian__DocNotFoundErrorTo_p_Xapian__Error(void *x, int *) {
62324 return (void *)((Xapian::Error *) (Xapian::RuntimeError *) ((Xapian::DocNotFoundError *) x));
62325}
62326static void *_p_Xapian__DatabaseLockErrorTo_p_Xapian__Error(void *x, int *) {
62327 return (void *)((Xapian::Error *) (Xapian::RuntimeError *)(Xapian::DatabaseError *) ((Xapian::DatabaseLockError *) x));
62328}
62329static void *_p_Xapian__LogicErrorTo_p_Xapian__Error(void *x, int *) {
62330 return (void *)((Xapian::Error *) ((Xapian::LogicError *) x));
62331}
62332static void *_p_Xapian__DatabaseCreateErrorTo_p_Xapian__Error(void *x, int *) {
62333 return (void *)((Xapian::Error *) (Xapian::RuntimeError *)(Xapian::DatabaseError *) ((Xapian::DatabaseCreateError *) x));
62334}
62335static void *_p_Xapian__FeatureUnavailableErrorTo_p_Xapian__Error(void *x, int *) {
62336 return (void *)((Xapian::Error *) (Xapian::RuntimeError *) ((Xapian::FeatureUnavailableError *) x));
62337}
62338static void *_p_Xapian__NetworkTimeoutErrorTo_p_Xapian__Error(void *x, int *) {
62339 return (void *)((Xapian::Error *) (Xapian::RuntimeError *)(Xapian::NetworkError *) ((Xapian::NetworkTimeoutError *) x));
62340}
62341static void *_p_Xapian__InternalErrorTo_p_Xapian__Error(void *x, int *) {
62342 return (void *)((Xapian::Error *) (Xapian::RuntimeError *) ((Xapian::InternalError *) x));
62343}
62344static void *_p_Xapian__DatabaseModifiedErrorTo_p_Xapian__Error(void *x, int *) {
62345 return (void *)((Xapian::Error *) (Xapian::RuntimeError *)(Xapian::DatabaseError *) ((Xapian::DatabaseModifiedError *) x));
62346}
62347static void *_p_Xapian__UnimplementedErrorTo_p_Xapian__Error(void *x, int *) {
62348 return (void *)((Xapian::Error *) (Xapian::LogicError *) ((Xapian::UnimplementedError *) x));
62349}
62350static void *_p_Xapian__DatabaseErrorTo_p_Xapian__Error(void *x, int *) {
62351 return (void *)((Xapian::Error *) (Xapian::RuntimeError *) ((Xapian::DatabaseError *) x));
62352}
62353static void *_p_Xapian__RuntimeErrorTo_p_Xapian__Error(void *x, int *) {
62354 return (void *)((Xapian::Error *) ((Xapian::RuntimeError *) x));
62355}
62356static void *_p_Xapian__DatabaseOpeningErrorTo_p_Xapian__Error(void *x, int *) {
62357 return (void *)((Xapian::Error *) (Xapian::RuntimeError *)(Xapian::DatabaseError *) ((Xapian::DatabaseOpeningError *) x));
62358}
62359static void *_p_Xapian__RangeErrorTo_p_Xapian__Error(void *x, int *) {
62360 return (void *)((Xapian::Error *) (Xapian::RuntimeError *) ((Xapian::RangeError *) x));
62361}
62362static void *_p_Xapian__DatabaseVersionErrorTo_p_Xapian__Error(void *x, int *) {
62363 return (void *)((Xapian::Error *) (Xapian::RuntimeError *)(Xapian::DatabaseError *)(Xapian::DatabaseOpeningError *) ((Xapian::DatabaseVersionError *) x));
62364}
62365static void *_p_Xapian__InvalidOperationErrorTo_p_Xapian__Error(void *x, int *) {
62366 return (void *)((Xapian::Error *) (Xapian::LogicError *) ((Xapian::InvalidOperationError *) x));
62367}
62368static void *_p_Xapian__AssertionErrorTo_p_Xapian__Error(void *x, int *) {
62369 return (void *)((Xapian::Error *) (Xapian::LogicError *) ((Xapian::AssertionError *) x));
62370}
62371static void *_p_Xapian__SerialisationErrorTo_p_Xapian__Error(void *x, int *) {
62372 return (void *)((Xapian::Error *) (Xapian::RuntimeError *) ((Xapian::SerialisationError *) x));
62373}
62374static void *_p_Xapian__NetworkErrorTo_p_Xapian__Error(void *x, int *) {
62375 return (void *)((Xapian::Error *) (Xapian::RuntimeError *) ((Xapian::NetworkError *) x));
62376}
62377static void *_p_Xapian__DatabaseCorruptErrorTo_p_Xapian__Error(void *x, int *) {
62378 return (void *)((Xapian::Error *) (Xapian::RuntimeError *)(Xapian::DatabaseError *) ((Xapian::DatabaseCorruptError *) x));
62379}
62380static void *_p_Xapian__InvalidArgumentErrorTo_p_Xapian__Error(void *x, int *) {
62381 return (void *)((Xapian::Error *) (Xapian::LogicError *) ((Xapian::InvalidArgumentError *) x));
62382}
62383static void *_p_Xapian__QueryParserErrorTo_p_Xapian__Error(void *x, int *) {
62384 return (void *)((Xapian::Error *) (Xapian::RuntimeError *) ((Xapian::QueryParserError *) x));
62385}
62386static swig_type_info _swigt__p_Xapian__AssertionError = {"_p_Xapian__AssertionError", "Xapian::AssertionError *", 0, 0, (void*)0, 0};
62387static swig_type_info _swigt__p_Xapian__BM25Weight = {"_p_Xapian__BM25Weight", "Xapian::BM25Weight *", 0, 0, (void*)0, 0};
62388static swig_type_info _swigt__p_Xapian__BoolWeight = {"_p_Xapian__BoolWeight", "Xapian::BoolWeight *", 0, 0, (void*)0, 0};
62389static swig_type_info _swigt__p_Xapian__Compactor = {"_p_Xapian__Compactor", "Xapian::Compactor *", 0, 0, (void*)0, 0};
62390static swig_type_info _swigt__p_Xapian__Database = {"_p_Xapian__Database", "Xapian::Database *", 0, 0, (void*)0, 0};
62391static swig_type_info _swigt__p_Xapian__DatabaseCorruptError = {"_p_Xapian__DatabaseCorruptError", "Xapian::DatabaseCorruptError *", 0, 0, (void*)0, 0};
62392static swig_type_info _swigt__p_Xapian__DatabaseCreateError = {"_p_Xapian__DatabaseCreateError", "Xapian::DatabaseCreateError *", 0, 0, (void*)0, 0};
62393static swig_type_info _swigt__p_Xapian__DatabaseError = {"_p_Xapian__DatabaseError", "Xapian::DatabaseError *", 0, 0, (void*)0, 0};
62394static swig_type_info _swigt__p_Xapian__DatabaseLockError = {"_p_Xapian__DatabaseLockError", "Xapian::DatabaseLockError *", 0, 0, (void*)0, 0};
62395static swig_type_info _swigt__p_Xapian__DatabaseModifiedError = {"_p_Xapian__DatabaseModifiedError", "Xapian::DatabaseModifiedError *", 0, 0, (void*)0, 0};
62396static swig_type_info _swigt__p_Xapian__DatabaseOpeningError = {"_p_Xapian__DatabaseOpeningError", "Xapian::DatabaseOpeningError *", 0, 0, (void*)0, 0};
62397static swig_type_info _swigt__p_Xapian__DatabaseVersionError = {"_p_Xapian__DatabaseVersionError", "Xapian::DatabaseVersionError *", 0, 0, (void*)0, 0};
62398static swig_type_info _swigt__p_Xapian__DateValueRangeProcessor = {"_p_Xapian__DateValueRangeProcessor", "Xapian::DateValueRangeProcessor *", 0, 0, (void*)0, 0};
62399static swig_type_info _swigt__p_Xapian__DecreasingValueWeightPostingSource = {"_p_Xapian__DecreasingValueWeightPostingSource", "Xapian::DecreasingValueWeightPostingSource *", 0, 0, (void*)0, 0};
62400static swig_type_info _swigt__p_Xapian__DocNotFoundError = {"_p_Xapian__DocNotFoundError", "Xapian::DocNotFoundError *", 0, 0, (void*)0, 0};
62401static swig_type_info _swigt__p_Xapian__Document = {"_p_Xapian__Document", "Xapian::Document *", 0, 0, (void*)0, 0};
62402static swig_type_info _swigt__p_Xapian__ESet = {"_p_Xapian__ESet", "Xapian::ESet *", 0, 0, (void*)0, 0};
62403static swig_type_info _swigt__p_Xapian__ESetIterator = {"_p_Xapian__ESetIterator", "Xapian::ESetIterator *", 0, 0, (void*)0, 0};
62404static swig_type_info _swigt__p_Xapian__Enquire = {"_p_Xapian__Enquire", "Xapian::Enquire *", 0, 0, (void*)0, 0};
62405static swig_type_info _swigt__p_Xapian__Error = {"_p_Xapian__Error", "Xapian::Error *", 0, 0, (void*)0, 0};
62406static swig_type_info _swigt__p_Xapian__ExpandDecider = {"_p_Xapian__ExpandDecider", "Xapian::ExpandDecider *", 0, 0, (void*)0, 0};
62407static swig_type_info _swigt__p_Xapian__FeatureUnavailableError = {"_p_Xapian__FeatureUnavailableError", "Xapian::FeatureUnavailableError *", 0, 0, (void*)0, 0};
62408static swig_type_info _swigt__p_Xapian__FixedWeightPostingSource = {"_p_Xapian__FixedWeightPostingSource", "Xapian::FixedWeightPostingSource *", 0, 0, (void*)0, 0};
62409static swig_type_info _swigt__p_Xapian__InternalError = {"_p_Xapian__InternalError", "Xapian::InternalError *", 0, 0, (void*)0, 0};
62410static swig_type_info _swigt__p_Xapian__InvalidArgumentError = {"_p_Xapian__InvalidArgumentError", "Xapian::InvalidArgumentError *", 0, 0, (void*)0, 0};
62411static swig_type_info _swigt__p_Xapian__InvalidOperationError = {"_p_Xapian__InvalidOperationError", "Xapian::InvalidOperationError *", 0, 0, (void*)0, 0};
62412static swig_type_info _swigt__p_Xapian__KeyMaker = {"_p_Xapian__KeyMaker", "Xapian::KeyMaker *", 0, 0, (void*)0, 0};
62413static swig_type_info _swigt__p_Xapian__LogicError = {"_p_Xapian__LogicError", "Xapian::LogicError *", 0, 0, (void*)0, 0};
62414static swig_type_info _swigt__p_Xapian__MSet = {"_p_Xapian__MSet", "Xapian::MSet *", 0, 0, (void*)0, 0};
62415static swig_type_info _swigt__p_Xapian__MSetIterator = {"_p_Xapian__MSetIterator", "Xapian::MSetIterator *", 0, 0, (void*)0, 0};
62416static swig_type_info _swigt__p_Xapian__MatchDecider = {"_p_Xapian__MatchDecider", "Xapian::MatchDecider *", 0, 0, (void*)0, 0};
62417static swig_type_info _swigt__p_Xapian__MatchSpy = {"_p_Xapian__MatchSpy", "Xapian::MatchSpy *", 0, 0, (void*)0, 0};
62418static swig_type_info _swigt__p_Xapian__MultiValueKeyMaker = {"_p_Xapian__MultiValueKeyMaker", "Xapian::MultiValueKeyMaker *", 0, 0, (void*)0, 0};
62419static swig_type_info _swigt__p_Xapian__MultiValueSorter = {"_p_Xapian__MultiValueSorter", "Xapian::MultiValueSorter *", 0, 0, (void*)0, 0};
62420static swig_type_info _swigt__p_Xapian__NetworkError = {"_p_Xapian__NetworkError", "Xapian::NetworkError *", 0, 0, (void*)0, 0};
62421static swig_type_info _swigt__p_Xapian__NetworkTimeoutError = {"_p_Xapian__NetworkTimeoutError", "Xapian::NetworkTimeoutError *", 0, 0, (void*)0, 0};
62422static swig_type_info _swigt__p_Xapian__NumberValueRangeProcessor = {"_p_Xapian__NumberValueRangeProcessor", "Xapian::NumberValueRangeProcessor *", 0, 0, (void*)0, 0};
62423static swig_type_info _swigt__p_Xapian__PositionIterator = {"_p_Xapian__PositionIterator", "Xapian::PositionIterator *", 0, 0, (void*)0, 0};
62424static swig_type_info _swigt__p_Xapian__PostingIterator = {"_p_Xapian__PostingIterator", "Xapian::PostingIterator *", 0, 0, (void*)0, 0};
62425static swig_type_info _swigt__p_Xapian__PostingSource = {"_p_Xapian__PostingSource", "Xapian::PostingSource *", 0, 0, (void*)0, 0};
62426static swig_type_info _swigt__p_Xapian__Query = {"_p_Xapian__Query", "Xapian::Query *", 0, 0, (void*)0, 0};
62427static swig_type_info _swigt__p_Xapian__QueryParser = {"_p_Xapian__QueryParser", "Xapian::QueryParser *", 0, 0, (void*)0, 0};
62428static swig_type_info _swigt__p_Xapian__QueryParserError = {"_p_Xapian__QueryParserError", "Xapian::QueryParserError *", 0, 0, (void*)0, 0};
62429static swig_type_info _swigt__p_Xapian__RSet = {"_p_Xapian__RSet", "Xapian::RSet *", 0, 0, (void*)0, 0};
62430static swig_type_info _swigt__p_Xapian__RangeError = {"_p_Xapian__RangeError", "Xapian::RangeError *", 0, 0, (void*)0, 0};
62431static swig_type_info _swigt__p_Xapian__Registry = {"_p_Xapian__Registry", "Xapian::Registry *", 0, 0, (void*)0, 0};
62432static swig_type_info _swigt__p_Xapian__RuntimeError = {"_p_Xapian__RuntimeError", "Xapian::RuntimeError *", 0, 0, (void*)0, 0};
62433static swig_type_info _swigt__p_Xapian__SerialisationError = {"_p_Xapian__SerialisationError", "Xapian::SerialisationError *", 0, 0, (void*)0, 0};
62434static swig_type_info _swigt__p_Xapian__SimpleStopper = {"_p_Xapian__SimpleStopper", "Xapian::SimpleStopper *", 0, 0, (void*)0, 0};
62435static swig_type_info _swigt__p_Xapian__Sorter = {"_p_Xapian__Sorter", "Xapian::Sorter *", 0, 0, (void*)0, 0};
62436static swig_type_info _swigt__p_Xapian__Stem = {"_p_Xapian__Stem", "Xapian::Stem *", 0, 0, (void*)0, 0};
62437static swig_type_info _swigt__p_Xapian__StemImplementation = {"_p_Xapian__StemImplementation", "Xapian::StemImplementation *", 0, 0, (void*)0, 0};
62438static swig_type_info _swigt__p_Xapian__Stopper = {"_p_Xapian__Stopper", "Xapian::Stopper *", 0, 0, (void*)0, 0};
62439static swig_type_info _swigt__p_Xapian__StringValueRangeProcessor = {"_p_Xapian__StringValueRangeProcessor", "Xapian::StringValueRangeProcessor *", 0, 0, (void*)0, 0};
62440static swig_type_info _swigt__p_Xapian__TermGenerator = {"_p_Xapian__TermGenerator", "Xapian::TermGenerator *", 0, 0, (void*)0, 0};
62441static swig_type_info _swigt__p_Xapian__TermIterator = {"_p_Xapian__TermIterator", "Xapian::TermIterator *", 0, 0, (void*)0, 0};
62442static swig_type_info _swigt__p_Xapian__TradWeight = {"_p_Xapian__TradWeight", "Xapian::TradWeight *", 0, 0, (void*)0, 0};
62443static swig_type_info _swigt__p_Xapian__UnimplementedError = {"_p_Xapian__UnimplementedError", "Xapian::UnimplementedError *", 0, 0, (void*)0, 0};
62444static swig_type_info _swigt__p_Xapian__ValueCountMatchSpy = {"_p_Xapian__ValueCountMatchSpy", "Xapian::ValueCountMatchSpy *", 0, 0, (void*)0, 0};
62445static swig_type_info _swigt__p_Xapian__ValueIterator = {"_p_Xapian__ValueIterator", "Xapian::ValueIterator *", 0, 0, (void*)0, 0};
62446static swig_type_info _swigt__p_Xapian__ValueMapPostingSource = {"_p_Xapian__ValueMapPostingSource", "Xapian::ValueMapPostingSource *", 0, 0, (void*)0, 0};
62447static swig_type_info _swigt__p_Xapian__ValuePostingSource = {"_p_Xapian__ValuePostingSource", "Xapian::ValuePostingSource *", 0, 0, (void*)0, 0};
62448static swig_type_info _swigt__p_Xapian__ValueRangeProcessor = {"_p_Xapian__ValueRangeProcessor", "Xapian::ValueRangeProcessor *", 0, 0, (void*)0, 0};
62449static swig_type_info _swigt__p_Xapian__ValueSetMatchDecider = {"_p_Xapian__ValueSetMatchDecider", "Xapian::ValueSetMatchDecider *", 0, 0, (void*)0, 0};
62450static swig_type_info _swigt__p_Xapian__ValueWeightPostingSource = {"_p_Xapian__ValueWeightPostingSource", "Xapian::ValueWeightPostingSource *", 0, 0, (void*)0, 0};
62451static swig_type_info _swigt__p_Xapian__Weight = {"_p_Xapian__Weight", "Xapian::Weight *", 0, 0, (void*)0, 0};
62452static swig_type_info _swigt__p_Xapian__WritableDatabase = {"_p_Xapian__WritableDatabase", "Xapian::WritableDatabase *", 0, 0, (void*)0, 0};
62453static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
62454static swig_type_info _swigt__p_compaction_level = {"_p_compaction_level", "compaction_level *", 0, 0, (void*)0, 0};
62455static swig_type_info _swigt__p_docid_order = {"_p_docid_order", "docid_order *", 0, 0, (void*)0, 0};
62456static swig_type_info _swigt__p_double = {"_p_double", "Xapian::doclength *|double *|Xapian::weight *", 0, 0, (void*)0, 0};
62457static swig_type_info _swigt__p_feature_flag = {"_p_feature_flag", "feature_flag *", 0, 0, (void*)0, 0};
62458static swig_type_info _swigt__p_first_type = {"_p_first_type", "first_type *", 0, 0, (void*)0, 0};
62459static swig_type_info _swigt__p_int = {"_p_int", "int *|Xapian::doccount_diff *|Xapian::termcount_diff *|Xapian::termpos_diff *|Xapian::valueno_diff *|Xapian::percent *", 0, 0, (void*)0, 0};
62460static swig_type_info _swigt__p_op = {"_p_op", "op *", 0, 0, (void*)0, 0};
62461static swig_type_info _swigt__p_second_type = {"_p_second_type", "second_type *", 0, 0, (void*)0, 0};
62462static swig_type_info _swigt__p_std__invalid_argument = {"_p_std__invalid_argument", "std::invalid_argument *", 0, 0, (void*)0, 0};
62463static swig_type_info _swigt__p_std__string = {"_p_std__string", "std::string *", 0, 0, (void*)0, 0};
62464static swig_type_info _swigt__p_stem_strategy = {"_p_stem_strategy", "stem_strategy *", 0, 0, (void*)0, 0};
62465static swig_type_info _swigt__p_swig__SwigPyIterator = {"_p_swig__SwigPyIterator", "swig::SwigPyIterator *", 0, 0, (void*)0, 0};
62466static swig_type_info _swigt__p_unsigned_int = {"_p_unsigned_int", "Xapian::timeout *|unsigned int *|Xapian::doccount *|Xapian::termcount *|Xapian::valueno *|Xapian::docid *|Xapian::termpos *", 0, 0, (void*)0, 0};
62467static swig_type_info *swig_type_initial[] = {
62468 &_swigt__p_Xapian__AssertionError,
62469 &_swigt__p_Xapian__BM25Weight,
62470 &_swigt__p_Xapian__BoolWeight,
62471 &_swigt__p_Xapian__Compactor,
62472 &_swigt__p_Xapian__Database,
62473 &_swigt__p_Xapian__DatabaseCorruptError,
62474 &_swigt__p_Xapian__DatabaseCreateError,
62475 &_swigt__p_Xapian__DatabaseError,
62476 &_swigt__p_Xapian__DatabaseLockError,
62477 &_swigt__p_Xapian__DatabaseModifiedError,
62478 &_swigt__p_Xapian__DatabaseOpeningError,
62479 &_swigt__p_Xapian__DatabaseVersionError,
62480 &_swigt__p_Xapian__DateValueRangeProcessor,
62481 &_swigt__p_Xapian__DecreasingValueWeightPostingSource,
62482 &_swigt__p_Xapian__DocNotFoundError,
62483 &_swigt__p_Xapian__Document,
62484 &_swigt__p_Xapian__ESet,
62485 &_swigt__p_Xapian__ESetIterator,
62486 &_swigt__p_Xapian__Enquire,
62487 &_swigt__p_Xapian__Error,
62488 &_swigt__p_Xapian__ExpandDecider,
62489 &_swigt__p_Xapian__FeatureUnavailableError,
62490 &_swigt__p_Xapian__FixedWeightPostingSource,
62491 &_swigt__p_Xapian__InternalError,
62492 &_swigt__p_Xapian__InvalidArgumentError,
62493 &_swigt__p_Xapian__InvalidOperationError,
62494 &_swigt__p_Xapian__KeyMaker,
62495 &_swigt__p_Xapian__LogicError,
62496 &_swigt__p_Xapian__MSet,
62497 &_swigt__p_Xapian__MSetIterator,
62498 &_swigt__p_Xapian__MatchDecider,
62499 &_swigt__p_Xapian__MatchSpy,
62500 &_swigt__p_Xapian__MultiValueKeyMaker,
62501 &_swigt__p_Xapian__MultiValueSorter,
62502 &_swigt__p_Xapian__NetworkError,
62503 &_swigt__p_Xapian__NetworkTimeoutError,
62504 &_swigt__p_Xapian__NumberValueRangeProcessor,
62505 &_swigt__p_Xapian__PositionIterator,
62506 &_swigt__p_Xapian__PostingIterator,
62507 &_swigt__p_Xapian__PostingSource,
62508 &_swigt__p_Xapian__Query,
62509 &_swigt__p_Xapian__QueryParser,
62510 &_swigt__p_Xapian__QueryParserError,
62511 &_swigt__p_Xapian__RSet,
62512 &_swigt__p_Xapian__RangeError,
62513 &_swigt__p_Xapian__Registry,
62514 &_swigt__p_Xapian__RuntimeError,
62515 &_swigt__p_Xapian__SerialisationError,
62516 &_swigt__p_Xapian__SimpleStopper,
62517 &_swigt__p_Xapian__Sorter,
62518 &_swigt__p_Xapian__Stem,
62519 &_swigt__p_Xapian__StemImplementation,
62520 &_swigt__p_Xapian__Stopper,
62521 &_swigt__p_Xapian__StringValueRangeProcessor,
62522 &_swigt__p_Xapian__TermGenerator,
62523 &_swigt__p_Xapian__TermIterator,
62524 &_swigt__p_Xapian__TradWeight,
62525 &_swigt__p_Xapian__UnimplementedError,
62526 &_swigt__p_Xapian__ValueCountMatchSpy,
62527 &_swigt__p_Xapian__ValueIterator,
62528 &_swigt__p_Xapian__ValueMapPostingSource,
62529 &_swigt__p_Xapian__ValuePostingSource,
62530 &_swigt__p_Xapian__ValueRangeProcessor,
62531 &_swigt__p_Xapian__ValueSetMatchDecider,
62532 &_swigt__p_Xapian__ValueWeightPostingSource,
62533 &_swigt__p_Xapian__Weight,
62534 &_swigt__p_Xapian__WritableDatabase,
62535 &_swigt__p_char,
62536 &_swigt__p_compaction_level,
62537 &_swigt__p_docid_order,
62538 &_swigt__p_double,
62539 &_swigt__p_feature_flag,
62540 &_swigt__p_first_type,
62541 &_swigt__p_int,
62542 &_swigt__p_op,
62543 &_swigt__p_second_type,
62544 &_swigt__p_std__invalid_argument,
62545 &_swigt__p_std__string,
62546 &_swigt__p_stem_strategy,
62547 &_swigt__p_swig__SwigPyIterator,
62548 &_swigt__p_unsigned_int,
62549};
62550static swig_cast_info _swigc__p_Xapian__AssertionError[] = { {&_swigt__p_Xapian__AssertionError, 0, 0, 0},{0, 0, 0, 0}};
62551static swig_cast_info _swigc__p_Xapian__BM25Weight[] = { {&_swigt__p_Xapian__BM25Weight, 0, 0, 0},{0, 0, 0, 0}};
62552static swig_cast_info _swigc__p_Xapian__BoolWeight[] = { {&_swigt__p_Xapian__BoolWeight, 0, 0, 0},{0, 0, 0, 0}};
62553static swig_cast_info _swigc__p_Xapian__Compactor[] = { {&_swigt__p_Xapian__Compactor, 0, 0, 0},{0, 0, 0, 0}};
62554static swig_cast_info _swigc__p_Xapian__Database[] = { {&_swigt__p_Xapian__Database, 0, 0, 0}, {&_swigt__p_Xapian__WritableDatabase, _p_Xapian__WritableDatabaseTo_p_Xapian__Database, 0, 0},{0, 0, 0, 0}};
62555static swig_cast_info _swigc__p_Xapian__DatabaseCorruptError[] = { {&_swigt__p_Xapian__DatabaseCorruptError, 0, 0, 0},{0, 0, 0, 0}};
62556static swig_cast_info _swigc__p_Xapian__DatabaseCreateError[] = { {&_swigt__p_Xapian__DatabaseCreateError, 0, 0, 0},{0, 0, 0, 0}};
62557static swig_cast_info _swigc__p_Xapian__DatabaseError[] = { {&_swigt__p_Xapian__DatabaseVersionError, _p_Xapian__DatabaseVersionErrorTo_p_Xapian__DatabaseError, 0, 0}, {&_swigt__p_Xapian__DatabaseLockError, _p_Xapian__DatabaseLockErrorTo_p_Xapian__DatabaseError, 0, 0}, {&_swigt__p_Xapian__DatabaseModifiedError, _p_Xapian__DatabaseModifiedErrorTo_p_Xapian__DatabaseError, 0, 0}, {&_swigt__p_Xapian__DatabaseOpeningError, _p_Xapian__DatabaseOpeningErrorTo_p_Xapian__DatabaseError, 0, 0}, {&_swigt__p_Xapian__DatabaseError, 0, 0, 0}, {&_swigt__p_Xapian__DatabaseCreateError, _p_Xapian__DatabaseCreateErrorTo_p_Xapian__DatabaseError, 0, 0}, {&_swigt__p_Xapian__DatabaseCorruptError, _p_Xapian__DatabaseCorruptErrorTo_p_Xapian__DatabaseError, 0, 0},{0, 0, 0, 0}};
62558static swig_cast_info _swigc__p_Xapian__DatabaseLockError[] = { {&_swigt__p_Xapian__DatabaseLockError, 0, 0, 0},{0, 0, 0, 0}};
62559static swig_cast_info _swigc__p_Xapian__DatabaseModifiedError[] = { {&_swigt__p_Xapian__DatabaseModifiedError, 0, 0, 0},{0, 0, 0, 0}};
62560static swig_cast_info _swigc__p_Xapian__DatabaseOpeningError[] = { {&_swigt__p_Xapian__DatabaseVersionError, _p_Xapian__DatabaseVersionErrorTo_p_Xapian__DatabaseOpeningError, 0, 0}, {&_swigt__p_Xapian__DatabaseOpeningError, 0, 0, 0},{0, 0, 0, 0}};
62561static swig_cast_info _swigc__p_Xapian__DatabaseVersionError[] = { {&_swigt__p_Xapian__DatabaseVersionError, 0, 0, 0},{0, 0, 0, 0}};
62562static swig_cast_info _swigc__p_Xapian__DateValueRangeProcessor[] = { {&_swigt__p_Xapian__DateValueRangeProcessor, 0, 0, 0},{0, 0, 0, 0}};
62563static swig_cast_info _swigc__p_Xapian__DecreasingValueWeightPostingSource[] = { {&_swigt__p_Xapian__DecreasingValueWeightPostingSource, 0, 0, 0},{0, 0, 0, 0}};
62564static swig_cast_info _swigc__p_Xapian__DocNotFoundError[] = { {&_swigt__p_Xapian__DocNotFoundError, 0, 0, 0},{0, 0, 0, 0}};
62565static swig_cast_info _swigc__p_Xapian__Document[] = { {&_swigt__p_Xapian__Document, 0, 0, 0},{0, 0, 0, 0}};
62566static swig_cast_info _swigc__p_Xapian__ESet[] = { {&_swigt__p_Xapian__ESet, 0, 0, 0},{0, 0, 0, 0}};
62567static swig_cast_info _swigc__p_Xapian__ESetIterator[] = { {&_swigt__p_Xapian__ESetIterator, 0, 0, 0},{0, 0, 0, 0}};
62568static swig_cast_info _swigc__p_Xapian__Enquire[] = { {&_swigt__p_Xapian__Enquire, 0, 0, 0},{0, 0, 0, 0}};
62569static swig_cast_info _swigc__p_Xapian__Error[] = { {&_swigt__p_Xapian__DocNotFoundError, _p_Xapian__DocNotFoundErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__DatabaseLockError, _p_Xapian__DatabaseLockErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__LogicError, _p_Xapian__LogicErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__NetworkTimeoutError, _p_Xapian__NetworkTimeoutErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__DatabaseCreateError, _p_Xapian__DatabaseCreateErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__FeatureUnavailableError, _p_Xapian__FeatureUnavailableErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__InternalError, _p_Xapian__InternalErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__DatabaseModifiedError, _p_Xapian__DatabaseModifiedErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__UnimplementedError, _p_Xapian__UnimplementedErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__RangeError, _p_Xapian__RangeErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__RuntimeError, _p_Xapian__RuntimeErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__DatabaseError, _p_Xapian__DatabaseErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__DatabaseOpeningError, _p_Xapian__DatabaseOpeningErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__InvalidOperationError, _p_Xapian__InvalidOperationErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__AssertionError, _p_Xapian__AssertionErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__DatabaseVersionError, _p_Xapian__DatabaseVersionErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__SerialisationError, _p_Xapian__SerialisationErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__Error, 0, 0, 0}, {&_swigt__p_Xapian__NetworkError, _p_Xapian__NetworkErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__InvalidArgumentError, _p_Xapian__InvalidArgumentErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__DatabaseCorruptError, _p_Xapian__DatabaseCorruptErrorTo_p_Xapian__Error, 0, 0}, {&_swigt__p_Xapian__QueryParserError, _p_Xapian__QueryParserErrorTo_p_Xapian__Error, 0, 0},{0, 0, 0, 0}};
62570static swig_cast_info _swigc__p_Xapian__ExpandDecider[] = { {&_swigt__p_Xapian__ExpandDecider, 0, 0, 0},{0, 0, 0, 0}};
62571static swig_cast_info _swigc__p_Xapian__FeatureUnavailableError[] = { {&_swigt__p_Xapian__FeatureUnavailableError, 0, 0, 0},{0, 0, 0, 0}};
62572static swig_cast_info _swigc__p_Xapian__FixedWeightPostingSource[] = { {&_swigt__p_Xapian__FixedWeightPostingSource, 0, 0, 0},{0, 0, 0, 0}};
62573static swig_cast_info _swigc__p_Xapian__InternalError[] = { {&_swigt__p_Xapian__InternalError, 0, 0, 0},{0, 0, 0, 0}};
62574static swig_cast_info _swigc__p_Xapian__InvalidArgumentError[] = { {&_swigt__p_Xapian__InvalidArgumentError, 0, 0, 0},{0, 0, 0, 0}};
62575static swig_cast_info _swigc__p_Xapian__InvalidOperationError[] = { {&_swigt__p_Xapian__InvalidOperationError, 0, 0, 0},{0, 0, 0, 0}};
62576static swig_cast_info _swigc__p_Xapian__KeyMaker[] = { {&_swigt__p_Xapian__Sorter, _p_Xapian__SorterTo_p_Xapian__KeyMaker, 0, 0}, {&_swigt__p_Xapian__MultiValueSorter, _p_Xapian__MultiValueSorterTo_p_Xapian__KeyMaker, 0, 0}, {&_swigt__p_Xapian__KeyMaker, 0, 0, 0}, {&_swigt__p_Xapian__MultiValueKeyMaker, _p_Xapian__MultiValueKeyMakerTo_p_Xapian__KeyMaker, 0, 0},{0, 0, 0, 0}};
62577static swig_cast_info _swigc__p_Xapian__LogicError[] = { {&_swigt__p_Xapian__AssertionError, _p_Xapian__AssertionErrorTo_p_Xapian__LogicError, 0, 0}, {&_swigt__p_Xapian__InvalidOperationError, _p_Xapian__InvalidOperationErrorTo_p_Xapian__LogicError, 0, 0}, {&_swigt__p_Xapian__UnimplementedError, _p_Xapian__UnimplementedErrorTo_p_Xapian__LogicError, 0, 0}, {&_swigt__p_Xapian__LogicError, 0, 0, 0}, {&_swigt__p_Xapian__InvalidArgumentError, _p_Xapian__InvalidArgumentErrorTo_p_Xapian__LogicError, 0, 0},{0, 0, 0, 0}};
62578static swig_cast_info _swigc__p_Xapian__MSet[] = { {&_swigt__p_Xapian__MSet, 0, 0, 0},{0, 0, 0, 0}};
62579static swig_cast_info _swigc__p_Xapian__MSetIterator[] = { {&_swigt__p_Xapian__MSetIterator, 0, 0, 0},{0, 0, 0, 0}};
62580static swig_cast_info _swigc__p_Xapian__MatchDecider[] = { {&_swigt__p_Xapian__MatchDecider, 0, 0, 0}, {&_swigt__p_Xapian__ValueSetMatchDecider, _p_Xapian__ValueSetMatchDeciderTo_p_Xapian__MatchDecider, 0, 0},{0, 0, 0, 0}};
62581static swig_cast_info _swigc__p_Xapian__MatchSpy[] = { {&_swigt__p_Xapian__MatchSpy, 0, 0, 0}, {&_swigt__p_Xapian__ValueCountMatchSpy, _p_Xapian__ValueCountMatchSpyTo_p_Xapian__MatchSpy, 0, 0},{0, 0, 0, 0}};
62582static swig_cast_info _swigc__p_Xapian__MultiValueKeyMaker[] = { {&_swigt__p_Xapian__MultiValueKeyMaker, 0, 0, 0},{0, 0, 0, 0}};
62583static swig_cast_info _swigc__p_Xapian__MultiValueSorter[] = { {&_swigt__p_Xapian__MultiValueSorter, 0, 0, 0},{0, 0, 0, 0}};
62584static swig_cast_info _swigc__p_Xapian__NetworkError[] = { {&_swigt__p_Xapian__NetworkError, 0, 0, 0}, {&_swigt__p_Xapian__NetworkTimeoutError, _p_Xapian__NetworkTimeoutErrorTo_p_Xapian__NetworkError, 0, 0},{0, 0, 0, 0}};
62585static swig_cast_info _swigc__p_Xapian__NetworkTimeoutError[] = { {&_swigt__p_Xapian__NetworkTimeoutError, 0, 0, 0},{0, 0, 0, 0}};
62586static swig_cast_info _swigc__p_Xapian__NumberValueRangeProcessor[] = { {&_swigt__p_Xapian__NumberValueRangeProcessor, 0, 0, 0},{0, 0, 0, 0}};
62587static swig_cast_info _swigc__p_Xapian__PositionIterator[] = { {&_swigt__p_Xapian__PositionIterator, 0, 0, 0},{0, 0, 0, 0}};
62588static swig_cast_info _swigc__p_Xapian__PostingIterator[] = { {&_swigt__p_Xapian__PostingIterator, 0, 0, 0},{0, 0, 0, 0}};
62589static swig_cast_info _swigc__p_Xapian__PostingSource[] = { {&_swigt__p_Xapian__PostingSource, 0, 0, 0}, {&_swigt__p_Xapian__ValuePostingSource, _p_Xapian__ValuePostingSourceTo_p_Xapian__PostingSource, 0, 0}, {&_swigt__p_Xapian__ValueWeightPostingSource, _p_Xapian__ValueWeightPostingSourceTo_p_Xapian__PostingSource, 0, 0}, {&_swigt__p_Xapian__DecreasingValueWeightPostingSource, _p_Xapian__DecreasingValueWeightPostingSourceTo_p_Xapian__PostingSource, 0, 0}, {&_swigt__p_Xapian__ValueMapPostingSource, _p_Xapian__ValueMapPostingSourceTo_p_Xapian__PostingSource, 0, 0}, {&_swigt__p_Xapian__FixedWeightPostingSource, _p_Xapian__FixedWeightPostingSourceTo_p_Xapian__PostingSource, 0, 0},{0, 0, 0, 0}};
62590static swig_cast_info _swigc__p_Xapian__Query[] = { {&_swigt__p_Xapian__Query, 0, 0, 0},{0, 0, 0, 0}};
62591static swig_cast_info _swigc__p_Xapian__QueryParser[] = { {&_swigt__p_Xapian__QueryParser, 0, 0, 0},{0, 0, 0, 0}};
62592static swig_cast_info _swigc__p_Xapian__QueryParserError[] = { {&_swigt__p_Xapian__QueryParserError, 0, 0, 0},{0, 0, 0, 0}};
62593static swig_cast_info _swigc__p_Xapian__RSet[] = { {&_swigt__p_Xapian__RSet, 0, 0, 0},{0, 0, 0, 0}};
62594static swig_cast_info _swigc__p_Xapian__RangeError[] = { {&_swigt__p_Xapian__RangeError, 0, 0, 0},{0, 0, 0, 0}};
62595static swig_cast_info _swigc__p_Xapian__Registry[] = { {&_swigt__p_Xapian__Registry, 0, 0, 0},{0, 0, 0, 0}};
62596static swig_cast_info _swigc__p_Xapian__RuntimeError[] = { {&_swigt__p_Xapian__DocNotFoundError, _p_Xapian__DocNotFoundErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__DatabaseLockError, _p_Xapian__DatabaseLockErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__NetworkTimeoutError, _p_Xapian__NetworkTimeoutErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__FeatureUnavailableError, _p_Xapian__FeatureUnavailableErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__DatabaseCreateError, _p_Xapian__DatabaseCreateErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__InternalError, _p_Xapian__InternalErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__DatabaseModifiedError, _p_Xapian__DatabaseModifiedErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__DatabaseError, _p_Xapian__DatabaseErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__RangeError, _p_Xapian__RangeErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__RuntimeError, 0, 0, 0}, {&_swigt__p_Xapian__DatabaseOpeningError, _p_Xapian__DatabaseOpeningErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__SerialisationError, _p_Xapian__SerialisationErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__DatabaseVersionError, _p_Xapian__DatabaseVersionErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__NetworkError, _p_Xapian__NetworkErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__DatabaseCorruptError, _p_Xapian__DatabaseCorruptErrorTo_p_Xapian__RuntimeError, 0, 0}, {&_swigt__p_Xapian__QueryParserError, _p_Xapian__QueryParserErrorTo_p_Xapian__RuntimeError, 0, 0},{0, 0, 0, 0}};
62597static swig_cast_info _swigc__p_Xapian__SerialisationError[] = { {&_swigt__p_Xapian__SerialisationError, 0, 0, 0},{0, 0, 0, 0}};
62598static swig_cast_info _swigc__p_Xapian__SimpleStopper[] = { {&_swigt__p_Xapian__SimpleStopper, 0, 0, 0},{0, 0, 0, 0}};
62599static swig_cast_info _swigc__p_Xapian__Sorter[] = { {&_swigt__p_Xapian__Sorter, 0, 0, 0}, {&_swigt__p_Xapian__MultiValueSorter, _p_Xapian__MultiValueSorterTo_p_Xapian__Sorter, 0, 0},{0, 0, 0, 0}};
62600static swig_cast_info _swigc__p_Xapian__Stem[] = { {&_swigt__p_Xapian__Stem, 0, 0, 0},{0, 0, 0, 0}};
62601static swig_cast_info _swigc__p_Xapian__StemImplementation[] = { {&_swigt__p_Xapian__StemImplementation, 0, 0, 0},{0, 0, 0, 0}};
62602static swig_cast_info _swigc__p_Xapian__Stopper[] = { {&_swigt__p_Xapian__Stopper, 0, 0, 0}, {&_swigt__p_Xapian__SimpleStopper, _p_Xapian__SimpleStopperTo_p_Xapian__Stopper, 0, 0},{0, 0, 0, 0}};
62603static swig_cast_info _swigc__p_Xapian__StringValueRangeProcessor[] = { {&_swigt__p_Xapian__StringValueRangeProcessor, 0, 0, 0}, {&_swigt__p_Xapian__DateValueRangeProcessor, _p_Xapian__DateValueRangeProcessorTo_p_Xapian__StringValueRangeProcessor, 0, 0}, {&_swigt__p_Xapian__NumberValueRangeProcessor, _p_Xapian__NumberValueRangeProcessorTo_p_Xapian__StringValueRangeProcessor, 0, 0},{0, 0, 0, 0}};
62604static swig_cast_info _swigc__p_Xapian__TermGenerator[] = { {&_swigt__p_Xapian__TermGenerator, 0, 0, 0},{0, 0, 0, 0}};
62605static swig_cast_info _swigc__p_Xapian__TermIterator[] = { {&_swigt__p_Xapian__TermIterator, 0, 0, 0},{0, 0, 0, 0}};
62606static swig_cast_info _swigc__p_Xapian__TradWeight[] = { {&_swigt__p_Xapian__TradWeight, 0, 0, 0},{0, 0, 0, 0}};
62607static swig_cast_info _swigc__p_Xapian__UnimplementedError[] = { {&_swigt__p_Xapian__UnimplementedError, 0, 0, 0},{0, 0, 0, 0}};
62608static swig_cast_info _swigc__p_Xapian__ValueCountMatchSpy[] = { {&_swigt__p_Xapian__ValueCountMatchSpy, 0, 0, 0},{0, 0, 0, 0}};
62609static swig_cast_info _swigc__p_Xapian__ValueIterator[] = { {&_swigt__p_Xapian__ValueIterator, 0, 0, 0},{0, 0, 0, 0}};
62610static swig_cast_info _swigc__p_Xapian__ValueMapPostingSource[] = { {&_swigt__p_Xapian__ValueMapPostingSource, 0, 0, 0},{0, 0, 0, 0}};
62611static swig_cast_info _swigc__p_Xapian__ValuePostingSource[] = { {&_swigt__p_Xapian__ValuePostingSource, 0, 0, 0}, {&_swigt__p_Xapian__ValueWeightPostingSource, _p_Xapian__ValueWeightPostingSourceTo_p_Xapian__ValuePostingSource, 0, 0}, {&_swigt__p_Xapian__DecreasingValueWeightPostingSource, _p_Xapian__DecreasingValueWeightPostingSourceTo_p_Xapian__ValuePostingSource, 0, 0}, {&_swigt__p_Xapian__ValueMapPostingSource, _p_Xapian__ValueMapPostingSourceTo_p_Xapian__ValuePostingSource, 0, 0},{0, 0, 0, 0}};
62612static swig_cast_info _swigc__p_Xapian__ValueRangeProcessor[] = { {&_swigt__p_Xapian__ValueRangeProcessor, 0, 0, 0}, {&_swigt__p_Xapian__StringValueRangeProcessor, _p_Xapian__StringValueRangeProcessorTo_p_Xapian__ValueRangeProcessor, 0, 0}, {&_swigt__p_Xapian__DateValueRangeProcessor, _p_Xapian__DateValueRangeProcessorTo_p_Xapian__ValueRangeProcessor, 0, 0}, {&_swigt__p_Xapian__NumberValueRangeProcessor, _p_Xapian__NumberValueRangeProcessorTo_p_Xapian__ValueRangeProcessor, 0, 0},{0, 0, 0, 0}};
62613static swig_cast_info _swigc__p_Xapian__ValueSetMatchDecider[] = { {&_swigt__p_Xapian__ValueSetMatchDecider, 0, 0, 0},{0, 0, 0, 0}};
62614static swig_cast_info _swigc__p_Xapian__ValueWeightPostingSource[] = { {&_swigt__p_Xapian__ValueWeightPostingSource, 0, 0, 0}, {&_swigt__p_Xapian__DecreasingValueWeightPostingSource, _p_Xapian__DecreasingValueWeightPostingSourceTo_p_Xapian__ValueWeightPostingSource, 0, 0},{0, 0, 0, 0}};
62615static swig_cast_info _swigc__p_Xapian__Weight[] = { {&_swigt__p_Xapian__BoolWeight, _p_Xapian__BoolWeightTo_p_Xapian__Weight, 0, 0}, {&_swigt__p_Xapian__TradWeight, _p_Xapian__TradWeightTo_p_Xapian__Weight, 0, 0}, {&_swigt__p_Xapian__Weight, 0, 0, 0}, {&_swigt__p_Xapian__BM25Weight, _p_Xapian__BM25WeightTo_p_Xapian__Weight, 0, 0},{0, 0, 0, 0}};
62616static swig_cast_info _swigc__p_Xapian__WritableDatabase[] = { {&_swigt__p_Xapian__WritableDatabase, 0, 0, 0},{0, 0, 0, 0}};
62617static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
62618static swig_cast_info _swigc__p_compaction_level[] = { {&_swigt__p_compaction_level, 0, 0, 0},{0, 0, 0, 0}};
62619static swig_cast_info _swigc__p_docid_order[] = { {&_swigt__p_docid_order, 0, 0, 0},{0, 0, 0, 0}};
62620static swig_cast_info _swigc__p_double[] = { {&_swigt__p_double, 0, 0, 0},{0, 0, 0, 0}};
62621static swig_cast_info _swigc__p_feature_flag[] = { {&_swigt__p_feature_flag, 0, 0, 0},{0, 0, 0, 0}};
62622static swig_cast_info _swigc__p_first_type[] = { {&_swigt__p_first_type, 0, 0, 0},{0, 0, 0, 0}};
62623static swig_cast_info _swigc__p_int[] = { {&_swigt__p_int, 0, 0, 0},{0, 0, 0, 0}};
62624static swig_cast_info _swigc__p_op[] = { {&_swigt__p_op, 0, 0, 0},{0, 0, 0, 0}};
62625static swig_cast_info _swigc__p_second_type[] = { {&_swigt__p_second_type, 0, 0, 0},{0, 0, 0, 0}};
62626static swig_cast_info _swigc__p_std__invalid_argument[] = { {&_swigt__p_std__invalid_argument, 0, 0, 0},{0, 0, 0, 0}};
62627static swig_cast_info _swigc__p_std__string[] = { {&_swigt__p_std__string, 0, 0, 0},{0, 0, 0, 0}};
62628static swig_cast_info _swigc__p_stem_strategy[] = { {&_swigt__p_stem_strategy, 0, 0, 0},{0, 0, 0, 0}};
62629static swig_cast_info _swigc__p_swig__SwigPyIterator[] = { {&_swigt__p_swig__SwigPyIterator, 0, 0, 0},{0, 0, 0, 0}};
62630static swig_cast_info _swigc__p_unsigned_int[] = { {&_swigt__p_unsigned_int, 0, 0, 0},{0, 0, 0, 0}};
62631static swig_cast_info *swig_cast_initial[] = {
62632 _swigc__p_Xapian__AssertionError,
62633 _swigc__p_Xapian__BM25Weight,
62634 _swigc__p_Xapian__BoolWeight,
62635 _swigc__p_Xapian__Compactor,
62636 _swigc__p_Xapian__Database,
62637 _swigc__p_Xapian__DatabaseCorruptError,
62638 _swigc__p_Xapian__DatabaseCreateError,
62639 _swigc__p_Xapian__DatabaseError,
62640 _swigc__p_Xapian__DatabaseLockError,
62641 _swigc__p_Xapian__DatabaseModifiedError,
62642 _swigc__p_Xapian__DatabaseOpeningError,
62643 _swigc__p_Xapian__DatabaseVersionError,
62644 _swigc__p_Xapian__DateValueRangeProcessor,
62645 _swigc__p_Xapian__DecreasingValueWeightPostingSource,
62646 _swigc__p_Xapian__DocNotFoundError,
62647 _swigc__p_Xapian__Document,
62648 _swigc__p_Xapian__ESet,
62649 _swigc__p_Xapian__ESetIterator,
62650 _swigc__p_Xapian__Enquire,
62651 _swigc__p_Xapian__Error,
62652 _swigc__p_Xapian__ExpandDecider,
62653 _swigc__p_Xapian__FeatureUnavailableError,
62654 _swigc__p_Xapian__FixedWeightPostingSource,
62655 _swigc__p_Xapian__InternalError,
62656 _swigc__p_Xapian__InvalidArgumentError,
62657 _swigc__p_Xapian__InvalidOperationError,
62658 _swigc__p_Xapian__KeyMaker,
62659 _swigc__p_Xapian__LogicError,
62660 _swigc__p_Xapian__MSet,
62661 _swigc__p_Xapian__MSetIterator,
62662 _swigc__p_Xapian__MatchDecider,
62663 _swigc__p_Xapian__MatchSpy,
62664 _swigc__p_Xapian__MultiValueKeyMaker,
62665 _swigc__p_Xapian__MultiValueSorter,
62666 _swigc__p_Xapian__NetworkError,
62667 _swigc__p_Xapian__NetworkTimeoutError,
62668 _swigc__p_Xapian__NumberValueRangeProcessor,
62669 _swigc__p_Xapian__PositionIterator,
62670 _swigc__p_Xapian__PostingIterator,
62671 _swigc__p_Xapian__PostingSource,
62672 _swigc__p_Xapian__Query,
62673 _swigc__p_Xapian__QueryParser,
62674 _swigc__p_Xapian__QueryParserError,
62675 _swigc__p_Xapian__RSet,
62676 _swigc__p_Xapian__RangeError,
62677 _swigc__p_Xapian__Registry,
62678 _swigc__p_Xapian__RuntimeError,
62679 _swigc__p_Xapian__SerialisationError,
62680 _swigc__p_Xapian__SimpleStopper,
62681 _swigc__p_Xapian__Sorter,
62682 _swigc__p_Xapian__Stem,
62683 _swigc__p_Xapian__StemImplementation,
62684 _swigc__p_Xapian__Stopper,
62685 _swigc__p_Xapian__StringValueRangeProcessor,
62686 _swigc__p_Xapian__TermGenerator,
62687 _swigc__p_Xapian__TermIterator,
62688 _swigc__p_Xapian__TradWeight,
62689 _swigc__p_Xapian__UnimplementedError,
62690 _swigc__p_Xapian__ValueCountMatchSpy,
62691 _swigc__p_Xapian__ValueIterator,
62692 _swigc__p_Xapian__ValueMapPostingSource,
62693 _swigc__p_Xapian__ValuePostingSource,
62694 _swigc__p_Xapian__ValueRangeProcessor,
62695 _swigc__p_Xapian__ValueSetMatchDecider,
62696 _swigc__p_Xapian__ValueWeightPostingSource,
62697 _swigc__p_Xapian__Weight,
62698 _swigc__p_Xapian__WritableDatabase,
62699 _swigc__p_char,
62700 _swigc__p_compaction_level,
62701 _swigc__p_docid_order,
62702 _swigc__p_double,
62703 _swigc__p_feature_flag,
62704 _swigc__p_first_type,
62705 _swigc__p_int,
62706 _swigc__p_op,
62707 _swigc__p_second_type,
62708 _swigc__p_std__invalid_argument,
62709 _swigc__p_std__string,
62710 _swigc__p_stem_strategy,
62711 _swigc__p_swig__SwigPyIterator,
62712 _swigc__p_unsigned_int,
62713};
62714static swig_const_info swig_const_table[] = {
62715{0, 0, 0, 0.0, 0, 0}};
62716}
62717extern "C" {
62718static __attribute__ ((__unused__)) void
62719SWIG_InitializeModule(void *clientdata) {
62720 size_t i;
62721 swig_module_info *module_head, *iter;
62722 int found, init;
62723 clientdata = clientdata;
62724 if (swig_module.next==0) {
62725 swig_module.type_initial = swig_type_initial;
62726 swig_module.cast_initial = swig_cast_initial;
62727 swig_module.next = &swig_module;
62728 init = 1;
62729 } else {
62730 init = 0;
62731 }
62732 module_head = SWIG_Python_GetModule();
62733 if (!module_head) {
62734 SWIG_Python_SetModule(&swig_module);
62735 module_head = &swig_module;
62736 } else {
62737 found=0;
62738 iter=module_head;
62739 do {
62740 if (iter==&swig_module) {
62741 found=1;
62742 break;
62743 }
62744 iter=iter->next;
62745 } while (iter!= module_head);
62746 if (found) return;
62747 swig_module.next = module_head->next;
62748 module_head->next = &swig_module;
62749 }
62750 if (init == 0) return;
62751 for (i = 0; i < swig_module.size; ++i) {
62752 swig_type_info *type = 0;
62753 swig_type_info *ret;
62754 swig_cast_info *cast;
62755 if (swig_module.next != &swig_module) {
62756 type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
62757 }
62758 if (type) {
62759 if (swig_module.type_initial[i]->clientdata) {
62760 type->clientdata = swig_module.type_initial[i]->clientdata;
62761 }
62762 } else {
62763 type = swig_module.type_initial[i];
62764 }
62765 cast = swig_module.cast_initial[i];
62766 while (cast->type) {
62767 ret = 0;
62768 if (swig_module.next != &swig_module) {
62769 ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
62770 }
62771 if (ret) {
62772 if (type == swig_module.type_initial[i]) {
62773 cast->type = ret;
62774 ret = 0;
62775 } else {
62776 swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
62777 if (!ocast) ret = 0;
62778 }
62779 }
62780 if (!ret) {
62781 if (type->cast) {
62782 type->cast->prev = cast;
62783 cast->next = type->cast;
62784 }
62785 type->cast = cast;
62786 }
62787 cast++;
62788 }
62789 swig_module.types[i] = type;
62790 }
62791 swig_module.types[i] = 0;
62792}
62793static __attribute__ ((__unused__)) void
62794SWIG_PropagateClientData(void) {
62795 size_t i;
62796 swig_cast_info *equiv;
62797 static int init_run = 0;
62798 if (init_run) return;
62799 init_run = 1;
62800 for (i = 0; i < swig_module.size; i++) {
62801 if (swig_module.types[i]->clientdata) {
62802 equiv = swig_module.types[i]->cast;
62803 while (equiv) {
62804 if (!equiv->converter) {
62805 if (equiv->type && !equiv->type->clientdata)
62806 SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
62807 }
62808 equiv = equiv->next;
62809 }
62810 }
62811 }
62812}
62813}
62814extern "C" {
62815 typedef struct swig_globalvar {
62816 char *name;
62817 PyObject *(*get_attr)(void);
62818 int (*set_attr)(PyObject *);
62819 struct swig_globalvar *next;
62820 } swig_globalvar;
62821 typedef struct swig_varlinkobject {
62822 Py_ssize_t ob_refcnt; struct _typeobject *ob_type;
62823 swig_globalvar *vars;
62824 } swig_varlinkobject;
62825 static __attribute__ ((__unused__)) PyObject *
62826 swig_varlink_repr(swig_varlinkobject *) {
62827 return PyString_FromString("<Swig global variables>");
62828 }
62829 static __attribute__ ((__unused__)) PyObject *
62830 swig_varlink_str(swig_varlinkobject *v) {
62831 PyObject *str = PyString_FromString("(");
62832 swig_globalvar *var;
62833 for (var = v->vars; var; var=var->next) {
62834 PyString_ConcatAndDel(&str,PyString_FromString(var->name));
62835 if (var->next) PyString_ConcatAndDel(&str,PyString_FromString(", "));
62836 }
62837 PyString_ConcatAndDel(&str,PyString_FromString(")"));
62838 return str;
62839 }
62840 static __attribute__ ((__unused__)) int
62841 swig_varlink_print(swig_varlinkobject *v, FILE *fp, int ) {
62842 char *tmp;
62843 PyObject *str = swig_varlink_str(v);
62844 fprintf(fp,"Swig global variables ");
62845 fprintf(fp,"%s\n", tmp = SWIG_Python_str_AsChar(str));
62846 ;
62847 if ( --((PyObject*)(str))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(str)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(str))));
62848 return 0;
62849 }
62850 static __attribute__ ((__unused__)) void
62851 swig_varlink_dealloc(swig_varlinkobject *v) {
62852 swig_globalvar *var = v->vars;
62853 while (var) {
62854 swig_globalvar *n = var->next;
62855 free(var->name);
62856 free(var);
62857 var = n;
62858 }
62859 }
62860 static __attribute__ ((__unused__)) PyObject *
62861 swig_varlink_getattr(swig_varlinkobject *v, char *n) {
62862 PyObject *res = __null;
62863 swig_globalvar *var = v->vars;
62864 while (var) {
62865 if (strcmp(var->name,n) == 0) {
62866 res = (*var->get_attr)();
62867 break;
62868 }
62869 var = var->next;
62870 }
62871 if (res == __null && !PyErr_Occurred()) {
62872 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
62873 }
62874 return res;
62875 }
62876 static __attribute__ ((__unused__)) int
62877 swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) {
62878 int res = 1;
62879 swig_globalvar *var = v->vars;
62880 while (var) {
62881 if (strcmp(var->name,n) == 0) {
62882 res = (*var->set_attr)(p);
62883 break;
62884 }
62885 var = var->next;
62886 }
62887 if (res == 1 && !PyErr_Occurred()) {
62888 PyErr_SetString(PyExc_NameError,"Unknown C global variable");
62889 }
62890 return res;
62891 }
62892 static __attribute__ ((__unused__)) PyTypeObject*
62893 swig_varlink_type(void) {
62894 static char varlink__doc__[] = "Swig var link object";
62895 static PyTypeObject varlink_type;
62896 static int type_init = 0;
62897 if (!type_init) {
62898 const PyTypeObject tmp
62899 = {
62900 1, __null,
62901 0,
62902 (char *)"swigvarlink",
62903 sizeof(swig_varlinkobject),
62904 0,
62905 (destructor) swig_varlink_dealloc,
62906 (printfunc) swig_varlink_print,
62907 (getattrfunc) swig_varlink_getattr,
62908 (setattrfunc) swig_varlink_setattr,
62909 0,
62910 (reprfunc) swig_varlink_repr,
62911 0,
62912 0,
62913 0,
62914 0,
62915 0,
62916 (reprfunc) swig_varlink_str,
62917 0,
62918 0,
62919 0,
62920 0,
62921 varlink__doc__,
62922 0,
62923 0,
62924 0,
62925 0,
62926 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
62927 0,
62928 };
62929 varlink_type = tmp;
62930 varlink_type.ob_type = &PyType_Type;
62931 type_init = 1;
62932 }
62933 return &varlink_type;
62934 }
62935 static __attribute__ ((__unused__)) PyObject *
62936 SWIG_Python_newvarlink(void) {
62937 swig_varlinkobject *result = ( (swig_varlinkobject *) PyObject_Init( (PyObject *) PyObject_Malloc( ( (swig_varlink_type())->tp_basicsize ) ), (swig_varlink_type())) );
62938 if (result) {
62939 result->vars = 0;
62940 }
62941 return ((PyObject*) result);
62942 }
62943 static __attribute__ ((__unused__)) void
62944 SWIG_Python_addvarlink(PyObject *p, char *name, PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) {
62945 swig_varlinkobject *v = (swig_varlinkobject *) p;
62946 swig_globalvar *gv = (swig_globalvar *) malloc(sizeof(swig_globalvar));
62947 if (gv) {
62948 size_t size = strlen(name)+1;
62949 gv->name = (char *)malloc(size);
62950 if (gv->name) {
62951 strncpy(gv->name,name,size);
62952 gv->get_attr = get_attr;
62953 gv->set_attr = set_attr;
62954 gv->next = v->vars;
62955 }
62956 }
62957 v->vars = gv;
62958 }
62959 static __attribute__ ((__unused__)) PyObject *
62960 SWIG_globals(void) {
62961 static PyObject *_SWIG_globals = 0;
62962 if (!_SWIG_globals) _SWIG_globals = SWIG_Python_newvarlink();
62963 return _SWIG_globals;
62964 }
62965 static __attribute__ ((__unused__)) void
62966 SWIG_Python_InstallConstants(PyObject *d, swig_const_info constants[]) {
62967 PyObject *obj = 0;
62968 size_t i;
62969 for (i = 0; constants[i].type; ++i) {
62970 switch(constants[i].type) {
62971 case 4:
62972 obj = SWIG_Python_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype, 0);
62973 break;
62974 case 5:
62975 obj = SWIG_Python_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype));
62976 break;
62977 default:
62978 obj = 0;
62979 break;
62980 }
62981 if (obj) {
62982 PyDict_SetItemString(d, constants[i].name, obj);
62983 if ( --((PyObject*)(obj))->ob_refcnt != 0) ; else ( (*(((PyObject*)((PyObject *)(obj)))->ob_type)->tp_dealloc)((PyObject *)((PyObject *)(obj))));
62984 }
62985 }
62986 }
62987 static __attribute__ ((__unused__)) void
62988 SWIG_Python_FixMethods(PyMethodDef *methods,
62989 swig_const_info *const_table,
62990 swig_type_info **types,
62991 swig_type_info **types_initial) {
62992 size_t i;
62993 for (i = 0; methods[i].ml_name; ++i) {
62994 const char *c = methods[i].ml_doc;
62995 if (c && (c = strstr(c, "swig_ptr: "))) {
62996 int j;
62997 swig_const_info *ci = 0;
62998 const char *name = c + 10;
62999 for (j = 0; const_table[j].type; ++j) {
63000 if (strncmp(const_table[j].name, name,
63001 strlen(const_table[j].name)) == 0) {
63002 ci = &(const_table[j]);
63003 break;
63004 }
63005 }
63006 if (ci) {
63007 size_t shift = (ci->ptype) - types;
63008 swig_type_info *ty = types_initial[shift];
63009 size_t ldoc = (c - methods[i].ml_doc);
63010 size_t lptr = strlen(ty->name)+2*sizeof(void*)+2;
63011 char *ndoc = (char*)malloc(ldoc + lptr + 10);
63012 if (ndoc) {
63013 char *buff = ndoc;
63014 void *ptr = (ci->type == 4) ? ci->pvalue : 0;
63015 if (ptr) {
63016 strncpy(buff, methods[i].ml_doc, ldoc);
63017 buff += ldoc;
63018 strncpy(buff, "swig_ptr: ", 10);
63019 buff += 10;
63020 SWIG_PackVoidPtr(buff, ptr, ty->name, lptr);
63021 methods[i].ml_doc = ndoc;
63022 }
63023 }
63024 }
63025 }
63026 }
63027 }
63028}
63029extern "C"
63030__attribute__ ((visibility("default")))
63031void
63032init_xapian(void) {
63033 PyObject *m, *d;
63034 SWIG_Python_FixMethods(SwigMethods, swig_const_table, swig_types, swig_type_initial);
63035 m = Py_InitModule4_64((char *) "_xapian", SwigMethods, (char *)__null, (PyObject *)__null, 1013);
63036 d = PyModule_GetDict(m);
63037 SWIG_InitializeModule(0);
63038 SWIG_Python_InstallConstants(d, swig_const_table);
63039 SWIG_Python_SetConstant(d, "BAD_VALUENO",SWIG_From_unsigned_SS_int(static_cast< unsigned int >(Xapian::BAD_VALUENO)));
63040 SWIG_Python_SetConstant(d, "MSET_DID",SWIG_From_int(static_cast< int >(0)));
63041 SWIG_Python_SetConstant(d, "MSET_WT",SWIG_From_int(static_cast< int >(1)));
63042 SWIG_Python_SetConstant(d, "MSET_RANK",SWIG_From_int(static_cast< int >(2)));
63043 SWIG_Python_SetConstant(d, "MSET_PERCENT",SWIG_From_int(static_cast< int >(3)));
63044 SWIG_Python_SetConstant(d, "MSET_DOCUMENT",SWIG_From_int(static_cast< int >(4)));
63045 SWIG_Python_SetConstant(d, "ESET_TNAME",SWIG_From_int(static_cast< int >(0)));
63046 SWIG_Python_SetConstant(d, "ESET_WT",SWIG_From_int(static_cast< int >(1)));
63047 SWIG_Python_SetConstant(d, "Enquire_ASCENDING",SWIG_From_int(static_cast< int >(Xapian::Enquire::ASCENDING)));
63048 SWIG_Python_SetConstant(d, "Enquire_DESCENDING",SWIG_From_int(static_cast< int >(Xapian::Enquire::DESCENDING)));
63049 SWIG_Python_SetConstant(d, "Enquire_DONT_CARE",SWIG_From_int(static_cast< int >(Xapian::Enquire::DONT_CARE)));
63050 SWIG_Python_SetConstant(d, "Enquire_INCLUDE_QUERY_TERMS",SWIG_From_int(static_cast< int >(Xapian::Enquire::INCLUDE_QUERY_TERMS)));
63051 SWIG_Python_SetConstant(d, "Enquire_USE_EXACT_TERMFREQ",SWIG_From_int(static_cast< int >(Xapian::Enquire::USE_EXACT_TERMFREQ)));
63052 SWIG_Python_SetConstant(d, "DB_CREATE_OR_OPEN",SWIG_From_int(static_cast< int >(Xapian::DB_CREATE_OR_OPEN)));
63053 SWIG_Python_SetConstant(d, "DB_CREATE",SWIG_From_int(static_cast< int >(Xapian::DB_CREATE)));
63054 SWIG_Python_SetConstant(d, "DB_CREATE_OR_OVERWRITE",SWIG_From_int(static_cast< int >(Xapian::DB_CREATE_OR_OVERWRITE)));
63055 SWIG_Python_SetConstant(d, "DB_OPEN",SWIG_From_int(static_cast< int >(Xapian::DB_OPEN)));
63056 SWIG_Python_SetConstant(d, "Query_OP_AND",SWIG_From_int(static_cast< int >(Xapian::Query::OP_AND)));
63057 SWIG_Python_SetConstant(d, "Query_OP_OR",SWIG_From_int(static_cast< int >(Xapian::Query::OP_OR)));
63058 SWIG_Python_SetConstant(d, "Query_OP_AND_NOT",SWIG_From_int(static_cast< int >(Xapian::Query::OP_AND_NOT)));
63059 SWIG_Python_SetConstant(d, "Query_OP_XOR",SWIG_From_int(static_cast< int >(Xapian::Query::OP_XOR)));
63060 SWIG_Python_SetConstant(d, "Query_OP_AND_MAYBE",SWIG_From_int(static_cast< int >(Xapian::Query::OP_AND_MAYBE)));
63061 SWIG_Python_SetConstant(d, "Query_OP_FILTER",SWIG_From_int(static_cast< int >(Xapian::Query::OP_FILTER)));
63062 SWIG_Python_SetConstant(d, "Query_OP_NEAR",SWIG_From_int(static_cast< int >(Xapian::Query::OP_NEAR)));
63063 SWIG_Python_SetConstant(d, "Query_OP_PHRASE",SWIG_From_int(static_cast< int >(Xapian::Query::OP_PHRASE)));
63064 SWIG_Python_SetConstant(d, "Query_OP_VALUE_RANGE",SWIG_From_int(static_cast< int >(Xapian::Query::OP_VALUE_RANGE)));
63065 SWIG_Python_SetConstant(d, "Query_OP_SCALE_WEIGHT",SWIG_From_int(static_cast< int >(Xapian::Query::OP_SCALE_WEIGHT)));
63066 SWIG_Python_SetConstant(d, "Query_OP_ELITE_SET",SWIG_From_int(static_cast< int >(Xapian::Query::OP_ELITE_SET)));
63067 SWIG_Python_SetConstant(d, "Query_OP_VALUE_GE",SWIG_From_int(static_cast< int >(Xapian::Query::OP_VALUE_GE)));
63068 SWIG_Python_SetConstant(d, "Query_OP_VALUE_LE",SWIG_From_int(static_cast< int >(Xapian::Query::OP_VALUE_LE)));
63069 SWIG_Python_SetConstant(d, "Query_OP_SYNONYM",SWIG_From_int(static_cast< int >(Xapian::Query::OP_SYNONYM)));
63070 SWIG_Python_SetConstant(d, "QueryParser_FLAG_BOOLEAN",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_BOOLEAN)));
63071 SWIG_Python_SetConstant(d, "QueryParser_FLAG_PHRASE",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_PHRASE)));
63072 SWIG_Python_SetConstant(d, "QueryParser_FLAG_LOVEHATE",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_LOVEHATE)));
63073 SWIG_Python_SetConstant(d, "QueryParser_FLAG_BOOLEAN_ANY_CASE",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_BOOLEAN_ANY_CASE)));
63074 SWIG_Python_SetConstant(d, "QueryParser_FLAG_WILDCARD",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_WILDCARD)));
63075 SWIG_Python_SetConstant(d, "QueryParser_FLAG_PURE_NOT",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_PURE_NOT)));
63076 SWIG_Python_SetConstant(d, "QueryParser_FLAG_PARTIAL",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_PARTIAL)));
63077 SWIG_Python_SetConstant(d, "QueryParser_FLAG_SPELLING_CORRECTION",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_SPELLING_CORRECTION)));
63078 SWIG_Python_SetConstant(d, "QueryParser_FLAG_SYNONYM",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_SYNONYM)));
63079 SWIG_Python_SetConstant(d, "QueryParser_FLAG_AUTO_SYNONYMS",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_AUTO_SYNONYMS)));
63080 SWIG_Python_SetConstant(d, "QueryParser_FLAG_AUTO_MULTIWORD_SYNONYMS",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_AUTO_MULTIWORD_SYNONYMS)));
63081 SWIG_Python_SetConstant(d, "QueryParser_FLAG_DEFAULT",SWIG_From_int(static_cast< int >(Xapian::QueryParser::FLAG_DEFAULT)));
63082 SWIG_Python_SetConstant(d, "QueryParser_STEM_NONE",SWIG_From_int(static_cast< int >(Xapian::QueryParser::STEM_NONE)));
63083 SWIG_Python_SetConstant(d, "QueryParser_STEM_SOME",SWIG_From_int(static_cast< int >(Xapian::QueryParser::STEM_SOME)));
63084 SWIG_Python_SetConstant(d, "QueryParser_STEM_ALL",SWIG_From_int(static_cast< int >(Xapian::QueryParser::STEM_ALL)));
63085 SWIG_Python_SetConstant(d, "TermGenerator_FLAG_SPELLING",SWIG_From_int(static_cast< int >(Xapian::TermGenerator::FLAG_SPELLING)));
63086 SWIG_Python_SetConstant(d, "Compactor_STANDARD",SWIG_From_int(static_cast< int >(Xapian::Compactor::STANDARD)));
63087 SWIG_Python_SetConstant(d, "Compactor_FULL",SWIG_From_int(static_cast< int >(Xapian::Compactor::FULL)));
63088 SWIG_Python_SetConstant(d, "Compactor_FULLER",SWIG_From_int(static_cast< int >(Xapian::Compactor::FULLER)));
63089 PyEval_InitThreads();
63090 return;
63091}