dep_selector 1.0.0.alpha.0 → 1.0.0.alpha.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,2839 +0,0 @@
1
- /* ----------------------------------------------------------------------------
2
- * This file was automatically generated by SWIG (http://www.swig.org).
3
- * Version 2.0.9
4
- *
5
- * This file is not intended to be easily readable and contains a number of
6
- * coding conventions designed to improve portability and efficiency. Do not make
7
- * changes to this file unless you know what you are doing--modify the SWIG
8
- * interface file instead.
9
- * ----------------------------------------------------------------------------- */
10
-
11
- #define SWIGRUBY
12
-
13
-
14
- #ifdef __cplusplus
15
- /* SwigValueWrapper is described in swig.swg */
16
- template<typename T> class SwigValueWrapper {
17
- struct SwigMovePointer {
18
- T *ptr;
19
- SwigMovePointer(T *p) : ptr(p) { }
20
- ~SwigMovePointer() { delete ptr; }
21
- SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
22
- } pointer;
23
- SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
24
- SwigValueWrapper(const SwigValueWrapper<T>& rhs);
25
- public:
26
- SwigValueWrapper() : pointer(0) { }
27
- SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
28
- operator T&() const { return *pointer.ptr; }
29
- T *operator&() { return pointer.ptr; }
30
- };
31
-
32
- template <typename T> T SwigValueInit() {
33
- return T();
34
- }
35
- #endif
36
-
37
- /* -----------------------------------------------------------------------------
38
- * This section contains generic SWIG labels for method/variable
39
- * declarations/attributes, and other compiler dependent labels.
40
- * ----------------------------------------------------------------------------- */
41
-
42
- /* template workaround for compilers that cannot correctly implement the C++ standard */
43
- #ifndef SWIGTEMPLATEDISAMBIGUATOR
44
- # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
45
- # define SWIGTEMPLATEDISAMBIGUATOR template
46
- # elif defined(__HP_aCC)
47
- /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
48
- /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
49
- # define SWIGTEMPLATEDISAMBIGUATOR template
50
- # else
51
- # define SWIGTEMPLATEDISAMBIGUATOR
52
- # endif
53
- #endif
54
-
55
- /* inline attribute */
56
- #ifndef SWIGINLINE
57
- # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
58
- # define SWIGINLINE inline
59
- # else
60
- # define SWIGINLINE
61
- # endif
62
- #endif
63
-
64
- /* attribute recognised by some compilers to avoid 'unused' warnings */
65
- #ifndef SWIGUNUSED
66
- # if defined(__GNUC__)
67
- # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
68
- # define SWIGUNUSED __attribute__ ((__unused__))
69
- # else
70
- # define SWIGUNUSED
71
- # endif
72
- # elif defined(__ICC)
73
- # define SWIGUNUSED __attribute__ ((__unused__))
74
- # else
75
- # define SWIGUNUSED
76
- # endif
77
- #endif
78
-
79
- #ifndef SWIG_MSC_UNSUPPRESS_4505
80
- # if defined(_MSC_VER)
81
- # pragma warning(disable : 4505) /* unreferenced local function has been removed */
82
- # endif
83
- #endif
84
-
85
- #ifndef SWIGUNUSEDPARM
86
- # ifdef __cplusplus
87
- # define SWIGUNUSEDPARM(p)
88
- # else
89
- # define SWIGUNUSEDPARM(p) p SWIGUNUSED
90
- # endif
91
- #endif
92
-
93
- /* internal SWIG method */
94
- #ifndef SWIGINTERN
95
- # define SWIGINTERN static SWIGUNUSED
96
- #endif
97
-
98
- /* internal inline SWIG method */
99
- #ifndef SWIGINTERNINLINE
100
- # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
101
- #endif
102
-
103
- /* exporting methods */
104
- #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
105
- # ifndef GCC_HASCLASSVISIBILITY
106
- # define GCC_HASCLASSVISIBILITY
107
- # endif
108
- #endif
109
-
110
- #ifndef SWIGEXPORT
111
- # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
112
- # if defined(STATIC_LINKED)
113
- # define SWIGEXPORT
114
- # else
115
- # define SWIGEXPORT __declspec(dllexport)
116
- # endif
117
- # else
118
- # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
119
- # define SWIGEXPORT __attribute__ ((visibility("default")))
120
- # else
121
- # define SWIGEXPORT
122
- # endif
123
- # endif
124
- #endif
125
-
126
- /* calling conventions for Windows */
127
- #ifndef SWIGSTDCALL
128
- # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
129
- # define SWIGSTDCALL __stdcall
130
- # else
131
- # define SWIGSTDCALL
132
- # endif
133
- #endif
134
-
135
- /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
136
- #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
137
- # define _CRT_SECURE_NO_DEPRECATE
138
- #endif
139
-
140
- /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
141
- #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
142
- # define _SCL_SECURE_NO_DEPRECATE
143
- #endif
144
-
145
-
146
- /* -----------------------------------------------------------------------------
147
- * This section contains generic SWIG labels for method/variable
148
- * declarations/attributes, and other compiler dependent labels.
149
- * ----------------------------------------------------------------------------- */
150
-
151
- /* template workaround for compilers that cannot correctly implement the C++ standard */
152
- #ifndef SWIGTEMPLATEDISAMBIGUATOR
153
- # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
154
- # define SWIGTEMPLATEDISAMBIGUATOR template
155
- # elif defined(__HP_aCC)
156
- /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
157
- /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
158
- # define SWIGTEMPLATEDISAMBIGUATOR template
159
- # else
160
- # define SWIGTEMPLATEDISAMBIGUATOR
161
- # endif
162
- #endif
163
-
164
- /* inline attribute */
165
- #ifndef SWIGINLINE
166
- # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
167
- # define SWIGINLINE inline
168
- # else
169
- # define SWIGINLINE
170
- # endif
171
- #endif
172
-
173
- /* attribute recognised by some compilers to avoid 'unused' warnings */
174
- #ifndef SWIGUNUSED
175
- # if defined(__GNUC__)
176
- # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
177
- # define SWIGUNUSED __attribute__ ((__unused__))
178
- # else
179
- # define SWIGUNUSED
180
- # endif
181
- # elif defined(__ICC)
182
- # define SWIGUNUSED __attribute__ ((__unused__))
183
- # else
184
- # define SWIGUNUSED
185
- # endif
186
- #endif
187
-
188
- #ifndef SWIG_MSC_UNSUPPRESS_4505
189
- # if defined(_MSC_VER)
190
- # pragma warning(disable : 4505) /* unreferenced local function has been removed */
191
- # endif
192
- #endif
193
-
194
- #ifndef SWIGUNUSEDPARM
195
- # ifdef __cplusplus
196
- # define SWIGUNUSEDPARM(p)
197
- # else
198
- # define SWIGUNUSEDPARM(p) p SWIGUNUSED
199
- # endif
200
- #endif
201
-
202
- /* internal SWIG method */
203
- #ifndef SWIGINTERN
204
- # define SWIGINTERN static SWIGUNUSED
205
- #endif
206
-
207
- /* internal inline SWIG method */
208
- #ifndef SWIGINTERNINLINE
209
- # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
210
- #endif
211
-
212
- /* exporting methods */
213
- #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
214
- # ifndef GCC_HASCLASSVISIBILITY
215
- # define GCC_HASCLASSVISIBILITY
216
- # endif
217
- #endif
218
-
219
- #ifndef SWIGEXPORT
220
- # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
221
- # if defined(STATIC_LINKED)
222
- # define SWIGEXPORT
223
- # else
224
- # define SWIGEXPORT __declspec(dllexport)
225
- # endif
226
- # else
227
- # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
228
- # define SWIGEXPORT __attribute__ ((visibility("default")))
229
- # else
230
- # define SWIGEXPORT
231
- # endif
232
- # endif
233
- #endif
234
-
235
- /* calling conventions for Windows */
236
- #ifndef SWIGSTDCALL
237
- # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
238
- # define SWIGSTDCALL __stdcall
239
- # else
240
- # define SWIGSTDCALL
241
- # endif
242
- #endif
243
-
244
- /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
245
- #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
246
- # define _CRT_SECURE_NO_DEPRECATE
247
- #endif
248
-
249
- /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
250
- #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
251
- # define _SCL_SECURE_NO_DEPRECATE
252
- #endif
253
-
254
-
255
- /* -----------------------------------------------------------------------------
256
- * swigrun.swg
257
- *
258
- * This file contains generic C API SWIG runtime support for pointer
259
- * type checking.
260
- * ----------------------------------------------------------------------------- */
261
-
262
- /* This should only be incremented when either the layout of swig_type_info changes,
263
- or for whatever reason, the runtime changes incompatibly */
264
- #define SWIG_RUNTIME_VERSION "4"
265
-
266
- /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
267
- #ifdef SWIG_TYPE_TABLE
268
- # define SWIG_QUOTE_STRING(x) #x
269
- # define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
270
- # define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
271
- #else
272
- # define SWIG_TYPE_TABLE_NAME
273
- #endif
274
-
275
- /*
276
- You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
277
- creating a static or dynamic library from the SWIG runtime code.
278
- In 99.9% of the cases, SWIG just needs to declare them as 'static'.
279
-
280
- But only do this if strictly necessary, ie, if you have problems
281
- with your compiler or suchlike.
282
- */
283
-
284
- #ifndef SWIGRUNTIME
285
- # define SWIGRUNTIME SWIGINTERN
286
- #endif
287
-
288
- #ifndef SWIGRUNTIMEINLINE
289
- # define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
290
- #endif
291
-
292
- /* Generic buffer size */
293
- #ifndef SWIG_BUFFER_SIZE
294
- # define SWIG_BUFFER_SIZE 1024
295
- #endif
296
-
297
- /* Flags for pointer conversions */
298
- #define SWIG_POINTER_DISOWN 0x1
299
- #define SWIG_CAST_NEW_MEMORY 0x2
300
-
301
- /* Flags for new pointer objects */
302
- #define SWIG_POINTER_OWN 0x1
303
-
304
-
305
- /*
306
- Flags/methods for returning states.
307
-
308
- The SWIG conversion methods, as ConvertPtr, return an integer
309
- that tells if the conversion was successful or not. And if not,
310
- an error code can be returned (see swigerrors.swg for the codes).
311
-
312
- Use the following macros/flags to set or process the returning
313
- states.
314
-
315
- In old versions of SWIG, code such as the following was usually written:
316
-
317
- if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
318
- // success code
319
- } else {
320
- //fail code
321
- }
322
-
323
- Now you can be more explicit:
324
-
325
- int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
326
- if (SWIG_IsOK(res)) {
327
- // success code
328
- } else {
329
- // fail code
330
- }
331
-
332
- which is the same really, but now you can also do
333
-
334
- Type *ptr;
335
- int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
336
- if (SWIG_IsOK(res)) {
337
- // success code
338
- if (SWIG_IsNewObj(res) {
339
- ...
340
- delete *ptr;
341
- } else {
342
- ...
343
- }
344
- } else {
345
- // fail code
346
- }
347
-
348
- I.e., now SWIG_ConvertPtr can return new objects and you can
349
- identify the case and take care of the deallocation. Of course that
350
- also requires SWIG_ConvertPtr to return new result values, such as
351
-
352
- int SWIG_ConvertPtr(obj, ptr,...) {
353
- if (<obj is ok>) {
354
- if (<need new object>) {
355
- *ptr = <ptr to new allocated object>;
356
- return SWIG_NEWOBJ;
357
- } else {
358
- *ptr = <ptr to old object>;
359
- return SWIG_OLDOBJ;
360
- }
361
- } else {
362
- return SWIG_BADOBJ;
363
- }
364
- }
365
-
366
- Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
367
- more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
368
- SWIG errors code.
369
-
370
- Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
371
- allows to return the 'cast rank', for example, if you have this
372
-
373
- int food(double)
374
- int fooi(int);
375
-
376
- and you call
377
-
378
- food(1) // cast rank '1' (1 -> 1.0)
379
- fooi(1) // cast rank '0'
380
-
381
- just use the SWIG_AddCast()/SWIG_CheckState()
382
- */
383
-
384
- #define SWIG_OK (0)
385
- #define SWIG_ERROR (-1)
386
- #define SWIG_IsOK(r) (r >= 0)
387
- #define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
388
-
389
- /* The CastRankLimit says how many bits are used for the cast rank */
390
- #define SWIG_CASTRANKLIMIT (1 << 8)
391
- /* The NewMask denotes the object was created (using new/malloc) */
392
- #define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
393
- /* The TmpMask is for in/out typemaps that use temporal objects */
394
- #define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
395
- /* Simple returning values */
396
- #define SWIG_BADOBJ (SWIG_ERROR)
397
- #define SWIG_OLDOBJ (SWIG_OK)
398
- #define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
399
- #define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
400
- /* Check, add and del mask methods */
401
- #define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
402
- #define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
403
- #define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
404
- #define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
405
- #define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
406
- #define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
407
-
408
- /* Cast-Rank Mode */
409
- #if defined(SWIG_CASTRANK_MODE)
410
- # ifndef SWIG_TypeRank
411
- # define SWIG_TypeRank unsigned long
412
- # endif
413
- # ifndef SWIG_MAXCASTRANK /* Default cast allowed */
414
- # define SWIG_MAXCASTRANK (2)
415
- # endif
416
- # define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
417
- # define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
418
- SWIGINTERNINLINE int SWIG_AddCast(int r) {
419
- return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
420
- }
421
- SWIGINTERNINLINE int SWIG_CheckState(int r) {
422
- return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
423
- }
424
- #else /* no cast-rank mode */
425
- # define SWIG_AddCast
426
- # define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
427
- #endif
428
-
429
-
430
- #include <string.h>
431
-
432
- #ifdef __cplusplus
433
- extern "C" {
434
- #endif
435
-
436
- typedef void *(*swig_converter_func)(void *, int *);
437
- typedef struct swig_type_info *(*swig_dycast_func)(void **);
438
-
439
- /* Structure to store information on one type */
440
- typedef struct swig_type_info {
441
- const char *name; /* mangled name of this type */
442
- const char *str; /* human readable name of this type */
443
- swig_dycast_func dcast; /* dynamic cast function down a hierarchy */
444
- struct swig_cast_info *cast; /* linked list of types that can cast into this type */
445
- void *clientdata; /* language specific type data */
446
- int owndata; /* flag if the structure owns the clientdata */
447
- } swig_type_info;
448
-
449
- /* Structure to store a type and conversion function used for casting */
450
- typedef struct swig_cast_info {
451
- swig_type_info *type; /* pointer to type that is equivalent to this type */
452
- swig_converter_func converter; /* function to cast the void pointers */
453
- struct swig_cast_info *next; /* pointer to next cast in linked list */
454
- struct swig_cast_info *prev; /* pointer to the previous cast */
455
- } swig_cast_info;
456
-
457
- /* Structure used to store module information
458
- * Each module generates one structure like this, and the runtime collects
459
- * all of these structures and stores them in a circularly linked list.*/
460
- typedef struct swig_module_info {
461
- swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */
462
- size_t size; /* Number of types in this module */
463
- struct swig_module_info *next; /* Pointer to next element in circularly linked list */
464
- swig_type_info **type_initial; /* Array of initially generated type structures */
465
- swig_cast_info **cast_initial; /* Array of initially generated casting structures */
466
- void *clientdata; /* Language specific module data */
467
- } swig_module_info;
468
-
469
- /*
470
- Compare two type names skipping the space characters, therefore
471
- "char*" == "char *" and "Class<int>" == "Class<int >", etc.
472
-
473
- Return 0 when the two name types are equivalent, as in
474
- strncmp, but skipping ' '.
475
- */
476
- SWIGRUNTIME int
477
- SWIG_TypeNameComp(const char *f1, const char *l1,
478
- const char *f2, const char *l2) {
479
- for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
480
- while ((*f1 == ' ') && (f1 != l1)) ++f1;
481
- while ((*f2 == ' ') && (f2 != l2)) ++f2;
482
- if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
483
- }
484
- return (int)((l1 - f1) - (l2 - f2));
485
- }
486
-
487
- /*
488
- Check type equivalence in a name list like <name1>|<name2>|...
489
- Return 0 if not equal, 1 if equal
490
- */
491
- SWIGRUNTIME int
492
- SWIG_TypeEquiv(const char *nb, const char *tb) {
493
- int equiv = 0;
494
- const char* te = tb + strlen(tb);
495
- const char* ne = nb;
496
- while (!equiv && *ne) {
497
- for (nb = ne; *ne; ++ne) {
498
- if (*ne == '|') break;
499
- }
500
- equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
501
- if (*ne) ++ne;
502
- }
503
- return equiv;
504
- }
505
-
506
- /*
507
- Check type equivalence in a name list like <name1>|<name2>|...
508
- Return 0 if equal, -1 if nb < tb, 1 if nb > tb
509
- */
510
- SWIGRUNTIME int
511
- SWIG_TypeCompare(const char *nb, const char *tb) {
512
- int equiv = 0;
513
- const char* te = tb + strlen(tb);
514
- const char* ne = nb;
515
- while (!equiv && *ne) {
516
- for (nb = ne; *ne; ++ne) {
517
- if (*ne == '|') break;
518
- }
519
- equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
520
- if (*ne) ++ne;
521
- }
522
- return equiv;
523
- }
524
-
525
-
526
- /*
527
- Check the typename
528
- */
529
- SWIGRUNTIME swig_cast_info *
530
- SWIG_TypeCheck(const char *c, swig_type_info *ty) {
531
- if (ty) {
532
- swig_cast_info *iter = ty->cast;
533
- while (iter) {
534
- if (strcmp(iter->type->name, c) == 0) {
535
- if (iter == ty->cast)
536
- return iter;
537
- /* Move iter to the top of the linked list */
538
- iter->prev->next = iter->next;
539
- if (iter->next)
540
- iter->next->prev = iter->prev;
541
- iter->next = ty->cast;
542
- iter->prev = 0;
543
- if (ty->cast) ty->cast->prev = iter;
544
- ty->cast = iter;
545
- return iter;
546
- }
547
- iter = iter->next;
548
- }
549
- }
550
- return 0;
551
- }
552
-
553
- /*
554
- Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
555
- */
556
- SWIGRUNTIME swig_cast_info *
557
- SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty) {
558
- if (ty) {
559
- swig_cast_info *iter = ty->cast;
560
- while (iter) {
561
- if (iter->type == from) {
562
- if (iter == ty->cast)
563
- return iter;
564
- /* Move iter to the top of the linked list */
565
- iter->prev->next = iter->next;
566
- if (iter->next)
567
- iter->next->prev = iter->prev;
568
- iter->next = ty->cast;
569
- iter->prev = 0;
570
- if (ty->cast) ty->cast->prev = iter;
571
- ty->cast = iter;
572
- return iter;
573
- }
574
- iter = iter->next;
575
- }
576
- }
577
- return 0;
578
- }
579
-
580
- /*
581
- Cast a pointer up an inheritance hierarchy
582
- */
583
- SWIGRUNTIMEINLINE void *
584
- SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
585
- return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
586
- }
587
-
588
- /*
589
- Dynamic pointer casting. Down an inheritance hierarchy
590
- */
591
- SWIGRUNTIME swig_type_info *
592
- SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) {
593
- swig_type_info *lastty = ty;
594
- if (!ty || !ty->dcast) return ty;
595
- while (ty && (ty->dcast)) {
596
- ty = (*ty->dcast)(ptr);
597
- if (ty) lastty = ty;
598
- }
599
- return lastty;
600
- }
601
-
602
- /*
603
- Return the name associated with this type
604
- */
605
- SWIGRUNTIMEINLINE const char *
606
- SWIG_TypeName(const swig_type_info *ty) {
607
- return ty->name;
608
- }
609
-
610
- /*
611
- Return the pretty name associated with this type,
612
- that is an unmangled type name in a form presentable to the user.
613
- */
614
- SWIGRUNTIME const char *
615
- SWIG_TypePrettyName(const swig_type_info *type) {
616
- /* The "str" field contains the equivalent pretty names of the
617
- type, separated by vertical-bar characters. We choose
618
- to print the last name, as it is often (?) the most
619
- specific. */
620
- if (!type) return NULL;
621
- if (type->str != NULL) {
622
- const char *last_name = type->str;
623
- const char *s;
624
- for (s = type->str; *s; s++)
625
- if (*s == '|') last_name = s+1;
626
- return last_name;
627
- }
628
- else
629
- return type->name;
630
- }
631
-
632
- /*
633
- Set the clientdata field for a type
634
- */
635
- SWIGRUNTIME void
636
- SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
637
- swig_cast_info *cast = ti->cast;
638
- /* if (ti->clientdata == clientdata) return; */
639
- ti->clientdata = clientdata;
640
-
641
- while (cast) {
642
- if (!cast->converter) {
643
- swig_type_info *tc = cast->type;
644
- if (!tc->clientdata) {
645
- SWIG_TypeClientData(tc, clientdata);
646
- }
647
- }
648
- cast = cast->next;
649
- }
650
- }
651
- SWIGRUNTIME void
652
- SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) {
653
- SWIG_TypeClientData(ti, clientdata);
654
- ti->owndata = 1;
655
- }
656
-
657
- /*
658
- Search for a swig_type_info structure only by mangled name
659
- Search is a O(log #types)
660
-
661
- We start searching at module start, and finish searching when start == end.
662
- Note: if start == end at the beginning of the function, we go all the way around
663
- the circular list.
664
- */
665
- SWIGRUNTIME swig_type_info *
666
- SWIG_MangledTypeQueryModule(swig_module_info *start,
667
- swig_module_info *end,
668
- const char *name) {
669
- swig_module_info *iter = start;
670
- do {
671
- if (iter->size) {
672
- register size_t l = 0;
673
- register size_t r = iter->size - 1;
674
- do {
675
- /* since l+r >= 0, we can (>> 1) instead (/ 2) */
676
- register size_t i = (l + r) >> 1;
677
- const char *iname = iter->types[i]->name;
678
- if (iname) {
679
- register int compare = strcmp(name, iname);
680
- if (compare == 0) {
681
- return iter->types[i];
682
- } else if (compare < 0) {
683
- if (i) {
684
- r = i - 1;
685
- } else {
686
- break;
687
- }
688
- } else if (compare > 0) {
689
- l = i + 1;
690
- }
691
- } else {
692
- break; /* should never happen */
693
- }
694
- } while (l <= r);
695
- }
696
- iter = iter->next;
697
- } while (iter != end);
698
- return 0;
699
- }
700
-
701
- /*
702
- Search for a swig_type_info structure for either a mangled name or a human readable name.
703
- It first searches the mangled names of the types, which is a O(log #types)
704
- If a type is not found it then searches the human readable names, which is O(#types).
705
-
706
- We start searching at module start, and finish searching when start == end.
707
- Note: if start == end at the beginning of the function, we go all the way around
708
- the circular list.
709
- */
710
- SWIGRUNTIME swig_type_info *
711
- SWIG_TypeQueryModule(swig_module_info *start,
712
- swig_module_info *end,
713
- const char *name) {
714
- /* STEP 1: Search the name field using binary search */
715
- swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
716
- if (ret) {
717
- return ret;
718
- } else {
719
- /* STEP 2: If the type hasn't been found, do a complete search
720
- of the str field (the human readable name) */
721
- swig_module_info *iter = start;
722
- do {
723
- register size_t i = 0;
724
- for (; i < iter->size; ++i) {
725
- if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
726
- return iter->types[i];
727
- }
728
- iter = iter->next;
729
- } while (iter != end);
730
- }
731
-
732
- /* neither found a match */
733
- return 0;
734
- }
735
-
736
- /*
737
- Pack binary data into a string
738
- */
739
- SWIGRUNTIME char *
740
- SWIG_PackData(char *c, void *ptr, size_t sz) {
741
- static const char hex[17] = "0123456789abcdef";
742
- register const unsigned char *u = (unsigned char *) ptr;
743
- register const unsigned char *eu = u + sz;
744
- for (; u != eu; ++u) {
745
- register unsigned char uu = *u;
746
- *(c++) = hex[(uu & 0xf0) >> 4];
747
- *(c++) = hex[uu & 0xf];
748
- }
749
- return c;
750
- }
751
-
752
- /*
753
- Unpack binary data from a string
754
- */
755
- SWIGRUNTIME const char *
756
- SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
757
- register unsigned char *u = (unsigned char *) ptr;
758
- register const unsigned char *eu = u + sz;
759
- for (; u != eu; ++u) {
760
- register char d = *(c++);
761
- register unsigned char uu;
762
- if ((d >= '0') && (d <= '9'))
763
- uu = ((d - '0') << 4);
764
- else if ((d >= 'a') && (d <= 'f'))
765
- uu = ((d - ('a'-10)) << 4);
766
- else
767
- return (char *) 0;
768
- d = *(c++);
769
- if ((d >= '0') && (d <= '9'))
770
- uu |= (d - '0');
771
- else if ((d >= 'a') && (d <= 'f'))
772
- uu |= (d - ('a'-10));
773
- else
774
- return (char *) 0;
775
- *u = uu;
776
- }
777
- return c;
778
- }
779
-
780
- /*
781
- Pack 'void *' into a string buffer.
782
- */
783
- SWIGRUNTIME char *
784
- SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
785
- char *r = buff;
786
- if ((2*sizeof(void *) + 2) > bsz) return 0;
787
- *(r++) = '_';
788
- r = SWIG_PackData(r,&ptr,sizeof(void *));
789
- if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
790
- strcpy(r,name);
791
- return buff;
792
- }
793
-
794
- SWIGRUNTIME const char *
795
- SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
796
- if (*c != '_') {
797
- if (strcmp(c,"NULL") == 0) {
798
- *ptr = (void *) 0;
799
- return name;
800
- } else {
801
- return 0;
802
- }
803
- }
804
- return SWIG_UnpackData(++c,ptr,sizeof(void *));
805
- }
806
-
807
- SWIGRUNTIME char *
808
- SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
809
- char *r = buff;
810
- size_t lname = (name ? strlen(name) : 0);
811
- if ((2*sz + 2 + lname) > bsz) return 0;
812
- *(r++) = '_';
813
- r = SWIG_PackData(r,ptr,sz);
814
- if (lname) {
815
- strncpy(r,name,lname+1);
816
- } else {
817
- *r = 0;
818
- }
819
- return buff;
820
- }
821
-
822
- SWIGRUNTIME const char *
823
- SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
824
- if (*c != '_') {
825
- if (strcmp(c,"NULL") == 0) {
826
- memset(ptr,0,sz);
827
- return name;
828
- } else {
829
- return 0;
830
- }
831
- }
832
- return SWIG_UnpackData(++c,ptr,sz);
833
- }
834
-
835
- #ifdef __cplusplus
836
- }
837
- #endif
838
-
839
- /* Errors in SWIG */
840
- #define SWIG_UnknownError -1
841
- #define SWIG_IOError -2
842
- #define SWIG_RuntimeError -3
843
- #define SWIG_IndexError -4
844
- #define SWIG_TypeError -5
845
- #define SWIG_DivisionByZero -6
846
- #define SWIG_OverflowError -7
847
- #define SWIG_SyntaxError -8
848
- #define SWIG_ValueError -9
849
- #define SWIG_SystemError -10
850
- #define SWIG_AttributeError -11
851
- #define SWIG_MemoryError -12
852
- #define SWIG_NullReferenceError -13
853
-
854
-
855
-
856
- #include <ruby.h>
857
-
858
- /* Ruby 1.9.1 has a "memoisation optimisation" when compiling with GCC which
859
- * breaks using rb_intern as an lvalue, as SWIG does. We work around this
860
- * issue for now by disabling this.
861
- * https://sourceforge.net/tracker/?func=detail&aid=2859614&group_id=1645&atid=101645
862
- */
863
- #ifdef rb_intern
864
- # undef rb_intern
865
- #endif
866
-
867
- /* Remove global macros defined in Ruby's win32.h */
868
- #ifdef write
869
- # undef write
870
- #endif
871
- #ifdef read
872
- # undef read
873
- #endif
874
- #ifdef bind
875
- # undef bind
876
- #endif
877
- #ifdef close
878
- # undef close
879
- #endif
880
- #ifdef connect
881
- # undef connect
882
- #endif
883
-
884
-
885
- /* Ruby 1.7 defines NUM2LL(), LL2NUM() and ULL2NUM() macros */
886
- #ifndef NUM2LL
887
- #define NUM2LL(x) NUM2LONG((x))
888
- #endif
889
- #ifndef LL2NUM
890
- #define LL2NUM(x) INT2NUM((long) (x))
891
- #endif
892
- #ifndef ULL2NUM
893
- #define ULL2NUM(x) UINT2NUM((unsigned long) (x))
894
- #endif
895
-
896
- /* Ruby 1.7 doesn't (yet) define NUM2ULL() */
897
- #ifndef NUM2ULL
898
- #ifdef HAVE_LONG_LONG
899
- #define NUM2ULL(x) rb_num2ull((x))
900
- #else
901
- #define NUM2ULL(x) NUM2ULONG(x)
902
- #endif
903
- #endif
904
-
905
- /* RSTRING_LEN, etc are new in Ruby 1.9, but ->ptr and ->len no longer work */
906
- /* Define these for older versions so we can just write code the new way */
907
- #ifndef RSTRING_LEN
908
- # define RSTRING_LEN(x) RSTRING(x)->len
909
- #endif
910
- #ifndef RSTRING_PTR
911
- # define RSTRING_PTR(x) RSTRING(x)->ptr
912
- #endif
913
- #ifndef RSTRING_END
914
- # define RSTRING_END(x) (RSTRING_PTR(x) + RSTRING_LEN(x))
915
- #endif
916
- #ifndef RARRAY_LEN
917
- # define RARRAY_LEN(x) RARRAY(x)->len
918
- #endif
919
- #ifndef RARRAY_PTR
920
- # define RARRAY_PTR(x) RARRAY(x)->ptr
921
- #endif
922
- #ifndef RFLOAT_VALUE
923
- # define RFLOAT_VALUE(x) RFLOAT(x)->value
924
- #endif
925
- #ifndef DOUBLE2NUM
926
- # define DOUBLE2NUM(x) rb_float_new(x)
927
- #endif
928
- #ifndef RHASH_TBL
929
- # define RHASH_TBL(x) (RHASH(x)->tbl)
930
- #endif
931
- #ifndef RHASH_ITER_LEV
932
- # define RHASH_ITER_LEV(x) (RHASH(x)->iter_lev)
933
- #endif
934
- #ifndef RHASH_IFNONE
935
- # define RHASH_IFNONE(x) (RHASH(x)->ifnone)
936
- #endif
937
- #ifndef RHASH_SIZE
938
- # define RHASH_SIZE(x) (RHASH(x)->tbl->num_entries)
939
- #endif
940
- #ifndef RHASH_EMPTY_P
941
- # define RHASH_EMPTY_P(x) (RHASH_SIZE(x) == 0)
942
- #endif
943
- #ifndef RSTRUCT_LEN
944
- # define RSTRUCT_LEN(x) RSTRUCT(x)->len
945
- #endif
946
- #ifndef RSTRUCT_PTR
947
- # define RSTRUCT_PTR(x) RSTRUCT(x)->ptr
948
- #endif
949
-
950
-
951
-
952
- /*
953
- * Need to be very careful about how these macros are defined, especially
954
- * when compiling C++ code or C code with an ANSI C compiler.
955
- *
956
- * VALUEFUNC(f) is a macro used to typecast a C function that implements
957
- * a Ruby method so that it can be passed as an argument to API functions
958
- * like rb_define_method() and rb_define_singleton_method().
959
- *
960
- * VOIDFUNC(f) is a macro used to typecast a C function that implements
961
- * either the "mark" or "free" stuff for a Ruby Data object, so that it
962
- * can be passed as an argument to API functions like Data_Wrap_Struct()
963
- * and Data_Make_Struct().
964
- */
965
-
966
- #ifdef __cplusplus
967
- # ifndef RUBY_METHOD_FUNC /* These definitions should work for Ruby 1.4.6 */
968
- # define PROTECTFUNC(f) ((VALUE (*)()) f)
969
- # define VALUEFUNC(f) ((VALUE (*)()) f)
970
- # define VOIDFUNC(f) ((void (*)()) f)
971
- # else
972
- # ifndef ANYARGS /* These definitions should work for Ruby 1.6 */
973
- # define PROTECTFUNC(f) ((VALUE (*)()) f)
974
- # define VALUEFUNC(f) ((VALUE (*)()) f)
975
- # define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
976
- # else /* These definitions should work for Ruby 1.7+ */
977
- # define PROTECTFUNC(f) ((VALUE (*)(VALUE)) f)
978
- # define VALUEFUNC(f) ((VALUE (*)(ANYARGS)) f)
979
- # define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
980
- # endif
981
- # endif
982
- #else
983
- # define VALUEFUNC(f) (f)
984
- # define VOIDFUNC(f) (f)
985
- #endif
986
-
987
- /* Don't use for expressions have side effect */
988
- #ifndef RB_STRING_VALUE
989
- #define RB_STRING_VALUE(s) (TYPE(s) == T_STRING ? (s) : (*(volatile VALUE *)&(s) = rb_str_to_str(s)))
990
- #endif
991
- #ifndef StringValue
992
- #define StringValue(s) RB_STRING_VALUE(s)
993
- #endif
994
- #ifndef StringValuePtr
995
- #define StringValuePtr(s) RSTRING_PTR(RB_STRING_VALUE(s))
996
- #endif
997
- #ifndef StringValueLen
998
- #define StringValueLen(s) RSTRING_LEN(RB_STRING_VALUE(s))
999
- #endif
1000
- #ifndef SafeStringValue
1001
- #define SafeStringValue(v) do {\
1002
- StringValue(v);\
1003
- rb_check_safe_str(v);\
1004
- } while (0)
1005
- #endif
1006
-
1007
- #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
1008
- #define rb_define_alloc_func(klass, func) rb_define_singleton_method((klass), "new", VALUEFUNC((func)), -1)
1009
- #define rb_undef_alloc_func(klass) rb_undef_method(CLASS_OF((klass)), "new")
1010
- #endif
1011
-
1012
- static VALUE _mSWIG = Qnil;
1013
-
1014
- /* -----------------------------------------------------------------------------
1015
- * error manipulation
1016
- * ----------------------------------------------------------------------------- */
1017
-
1018
-
1019
- /* Define some additional error types */
1020
- #define SWIG_ObjectPreviouslyDeletedError -100
1021
-
1022
-
1023
- /* Define custom exceptions for errors that do not map to existing Ruby
1024
- exceptions. Note this only works for C++ since a global cannot be
1025
- initialized by a function in C. For C, fallback to rb_eRuntimeError.*/
1026
-
1027
- SWIGINTERN VALUE
1028
- getNullReferenceError(void) {
1029
- static int init = 0;
1030
- static VALUE rb_eNullReferenceError ;
1031
- if (!init) {
1032
- init = 1;
1033
- rb_eNullReferenceError = rb_define_class("NullReferenceError", rb_eRuntimeError);
1034
- }
1035
- return rb_eNullReferenceError;
1036
- }
1037
-
1038
- SWIGINTERN VALUE
1039
- getObjectPreviouslyDeletedError(void) {
1040
- static int init = 0;
1041
- static VALUE rb_eObjectPreviouslyDeleted ;
1042
- if (!init) {
1043
- init = 1;
1044
- rb_eObjectPreviouslyDeleted = rb_define_class("ObjectPreviouslyDeleted", rb_eRuntimeError);
1045
- }
1046
- return rb_eObjectPreviouslyDeleted;
1047
- }
1048
-
1049
-
1050
- SWIGINTERN VALUE
1051
- SWIG_Ruby_ErrorType(int SWIG_code) {
1052
- VALUE type;
1053
- switch (SWIG_code) {
1054
- case SWIG_MemoryError:
1055
- type = rb_eNoMemError;
1056
- break;
1057
- case SWIG_IOError:
1058
- type = rb_eIOError;
1059
- break;
1060
- case SWIG_RuntimeError:
1061
- type = rb_eRuntimeError;
1062
- break;
1063
- case SWIG_IndexError:
1064
- type = rb_eIndexError;
1065
- break;
1066
- case SWIG_TypeError:
1067
- type = rb_eTypeError;
1068
- break;
1069
- case SWIG_DivisionByZero:
1070
- type = rb_eZeroDivError;
1071
- break;
1072
- case SWIG_OverflowError:
1073
- type = rb_eRangeError;
1074
- break;
1075
- case SWIG_SyntaxError:
1076
- type = rb_eSyntaxError;
1077
- break;
1078
- case SWIG_ValueError:
1079
- type = rb_eArgError;
1080
- break;
1081
- case SWIG_SystemError:
1082
- type = rb_eFatal;
1083
- break;
1084
- case SWIG_AttributeError:
1085
- type = rb_eRuntimeError;
1086
- break;
1087
- case SWIG_NullReferenceError:
1088
- type = getNullReferenceError();
1089
- break;
1090
- case SWIG_ObjectPreviouslyDeletedError:
1091
- type = getObjectPreviouslyDeletedError();
1092
- break;
1093
- case SWIG_UnknownError:
1094
- type = rb_eRuntimeError;
1095
- break;
1096
- default:
1097
- type = rb_eRuntimeError;
1098
- }
1099
- return type;
1100
- }
1101
-
1102
-
1103
- /* This function is called when a user inputs a wrong argument to
1104
- a method.
1105
- */
1106
- SWIGINTERN
1107
- const char* Ruby_Format_TypeError( const char* msg,
1108
- const char* type,
1109
- const char* name,
1110
- const int argn,
1111
- VALUE input )
1112
- {
1113
- char buf[128];
1114
- VALUE str;
1115
- VALUE asStr;
1116
- if ( msg && *msg )
1117
- {
1118
- str = rb_str_new2(msg);
1119
- }
1120
- else
1121
- {
1122
- str = rb_str_new(NULL, 0);
1123
- }
1124
-
1125
- str = rb_str_cat2( str, "Expected argument " );
1126
- sprintf( buf, "%d of type ", argn-1 );
1127
- str = rb_str_cat2( str, buf );
1128
- str = rb_str_cat2( str, type );
1129
- str = rb_str_cat2( str, ", but got " );
1130
- str = rb_str_cat2( str, rb_obj_classname(input) );
1131
- str = rb_str_cat2( str, " " );
1132
- asStr = rb_inspect(input);
1133
- if ( RSTRING_LEN(asStr) > 30 )
1134
- {
1135
- str = rb_str_cat( str, StringValuePtr(asStr), 30 );
1136
- str = rb_str_cat2( str, "..." );
1137
- }
1138
- else
1139
- {
1140
- str = rb_str_append( str, asStr );
1141
- }
1142
-
1143
- if ( name )
1144
- {
1145
- str = rb_str_cat2( str, "\n\tin SWIG method '" );
1146
- str = rb_str_cat2( str, name );
1147
- str = rb_str_cat2( str, "'" );
1148
- }
1149
-
1150
- return StringValuePtr( str );
1151
- }
1152
-
1153
- /* This function is called when an overloaded method fails */
1154
- SWIGINTERN
1155
- void Ruby_Format_OverloadedError(
1156
- const int argc,
1157
- const int maxargs,
1158
- const char* method,
1159
- const char* prototypes
1160
- )
1161
- {
1162
- const char* msg = "Wrong # of arguments";
1163
- if ( argc <= maxargs ) msg = "Wrong arguments";
1164
- rb_raise(rb_eArgError,"%s for overloaded method '%s'.\n"
1165
- "Possible C/C++ prototypes are:\n%s",
1166
- msg, method, prototypes);
1167
- }
1168
-
1169
- /* -----------------------------------------------------------------------------
1170
- * rubytracking.swg
1171
- *
1172
- * This file contains support for tracking mappings from
1173
- * Ruby objects to C++ objects. This functionality is needed
1174
- * to implement mark functions for Ruby's mark and sweep
1175
- * garbage collector.
1176
- * ----------------------------------------------------------------------------- */
1177
-
1178
- #ifdef __cplusplus
1179
- extern "C" {
1180
- #endif
1181
-
1182
- /* Ruby 1.8 actually assumes the first case. */
1183
- #if SIZEOF_VOIDP == SIZEOF_LONG
1184
- # define SWIG2NUM(v) LONG2NUM((unsigned long)v)
1185
- # define NUM2SWIG(x) (unsigned long)NUM2LONG(x)
1186
- #elif SIZEOF_VOIDP == SIZEOF_LONG_LONG
1187
- # define SWIG2NUM(v) LL2NUM((unsigned long long)v)
1188
- # define NUM2SWIG(x) (unsigned long long)NUM2LL(x)
1189
- #else
1190
- # error sizeof(void*) is not the same as long or long long
1191
- #endif
1192
-
1193
-
1194
- /* Global Ruby hash table to store Trackings from C/C++
1195
- structs to Ruby Objects.
1196
- */
1197
- static VALUE swig_ruby_trackings = Qnil;
1198
-
1199
- /* Global variable that stores a reference to the ruby
1200
- hash table delete function. */
1201
- static ID swig_ruby_hash_delete;
1202
-
1203
- /* Setup a Ruby hash table to store Trackings */
1204
- SWIGRUNTIME void SWIG_RubyInitializeTrackings(void) {
1205
- /* Create a ruby hash table to store Trackings from C++
1206
- objects to Ruby objects. */
1207
-
1208
- /* Try to see if some other .so has already created a
1209
- tracking hash table, which we keep hidden in an instance var
1210
- in the SWIG module.
1211
- This is done to allow multiple DSOs to share the same
1212
- tracking table.
1213
- */
1214
- ID trackings_id = rb_intern( "@__trackings__" );
1215
- VALUE verbose = rb_gv_get("VERBOSE");
1216
- rb_gv_set("VERBOSE", Qfalse);
1217
- swig_ruby_trackings = rb_ivar_get( _mSWIG, trackings_id );
1218
- rb_gv_set("VERBOSE", verbose);
1219
-
1220
- /* No, it hasn't. Create one ourselves */
1221
- if ( swig_ruby_trackings == Qnil )
1222
- {
1223
- swig_ruby_trackings = rb_hash_new();
1224
- rb_ivar_set( _mSWIG, trackings_id, swig_ruby_trackings );
1225
- }
1226
-
1227
- /* Now store a reference to the hash table delete function
1228
- so that we only have to look it up once.*/
1229
- swig_ruby_hash_delete = rb_intern("delete");
1230
- }
1231
-
1232
- /* Get a Ruby number to reference a pointer */
1233
- SWIGRUNTIME VALUE SWIG_RubyPtrToReference(void* ptr) {
1234
- /* We cast the pointer to an unsigned long
1235
- and then store a reference to it using
1236
- a Ruby number object. */
1237
-
1238
- /* Convert the pointer to a Ruby number */
1239
- return SWIG2NUM(ptr);
1240
- }
1241
-
1242
- /* Get a Ruby number to reference an object */
1243
- SWIGRUNTIME VALUE SWIG_RubyObjectToReference(VALUE object) {
1244
- /* We cast the object to an unsigned long
1245
- and then store a reference to it using
1246
- a Ruby number object. */
1247
-
1248
- /* Convert the Object to a Ruby number */
1249
- return SWIG2NUM(object);
1250
- }
1251
-
1252
- /* Get a Ruby object from a previously stored reference */
1253
- SWIGRUNTIME VALUE SWIG_RubyReferenceToObject(VALUE reference) {
1254
- /* The provided Ruby number object is a reference
1255
- to the Ruby object we want.*/
1256
-
1257
- /* Convert the Ruby number to a Ruby object */
1258
- return NUM2SWIG(reference);
1259
- }
1260
-
1261
- /* Add a Tracking from a C/C++ struct to a Ruby object */
1262
- SWIGRUNTIME void SWIG_RubyAddTracking(void* ptr, VALUE object) {
1263
- /* In a Ruby hash table we store the pointer and
1264
- the associated Ruby object. The trick here is
1265
- that we cannot store the Ruby object directly - if
1266
- we do then it cannot be garbage collected. So
1267
- instead we typecast it as a unsigned long and
1268
- convert it to a Ruby number object.*/
1269
-
1270
- /* Get a reference to the pointer as a Ruby number */
1271
- VALUE key = SWIG_RubyPtrToReference(ptr);
1272
-
1273
- /* Get a reference to the Ruby object as a Ruby number */
1274
- VALUE value = SWIG_RubyObjectToReference(object);
1275
-
1276
- /* Store the mapping to the global hash table. */
1277
- rb_hash_aset(swig_ruby_trackings, key, value);
1278
- }
1279
-
1280
- /* Get the Ruby object that owns the specified C/C++ struct */
1281
- SWIGRUNTIME VALUE SWIG_RubyInstanceFor(void* ptr) {
1282
- /* Get a reference to the pointer as a Ruby number */
1283
- VALUE key = SWIG_RubyPtrToReference(ptr);
1284
-
1285
- /* Now lookup the value stored in the global hash table */
1286
- VALUE value = rb_hash_aref(swig_ruby_trackings, key);
1287
-
1288
- if (value == Qnil) {
1289
- /* No object exists - return nil. */
1290
- return Qnil;
1291
- }
1292
- else {
1293
- /* Convert this value to Ruby object */
1294
- return SWIG_RubyReferenceToObject(value);
1295
- }
1296
- }
1297
-
1298
- /* Remove a Tracking from a C/C++ struct to a Ruby object. It
1299
- is very important to remove objects once they are destroyed
1300
- since the same memory address may be reused later to create
1301
- a new object. */
1302
- SWIGRUNTIME void SWIG_RubyRemoveTracking(void* ptr) {
1303
- /* Get a reference to the pointer as a Ruby number */
1304
- VALUE key = SWIG_RubyPtrToReference(ptr);
1305
-
1306
- /* Delete the object from the hash table by calling Ruby's
1307
- do this we need to call the Hash.delete method.*/
1308
- rb_funcall(swig_ruby_trackings, swig_ruby_hash_delete, 1, key);
1309
- }
1310
-
1311
- /* This is a helper method that unlinks a Ruby object from its
1312
- underlying C++ object. This is needed if the lifetime of the
1313
- Ruby object is longer than the C++ object */
1314
- SWIGRUNTIME void SWIG_RubyUnlinkObjects(void* ptr) {
1315
- VALUE object = SWIG_RubyInstanceFor(ptr);
1316
-
1317
- if (object != Qnil) {
1318
- DATA_PTR(object) = 0;
1319
- }
1320
- }
1321
-
1322
-
1323
- #ifdef __cplusplus
1324
- }
1325
- #endif
1326
-
1327
- /* -----------------------------------------------------------------------------
1328
- * Ruby API portion that goes into the runtime
1329
- * ----------------------------------------------------------------------------- */
1330
-
1331
- #ifdef __cplusplus
1332
- extern "C" {
1333
- #endif
1334
-
1335
- SWIGINTERN VALUE
1336
- SWIG_Ruby_AppendOutput(VALUE target, VALUE o) {
1337
- if (NIL_P(target)) {
1338
- target = o;
1339
- } else {
1340
- if (TYPE(target) != T_ARRAY) {
1341
- VALUE o2 = target;
1342
- target = rb_ary_new();
1343
- rb_ary_push(target, o2);
1344
- }
1345
- rb_ary_push(target, o);
1346
- }
1347
- return target;
1348
- }
1349
-
1350
- /* For ruby1.8.4 and earlier. */
1351
- #ifndef RUBY_INIT_STACK
1352
- RUBY_EXTERN void Init_stack(VALUE* addr);
1353
- # define RUBY_INIT_STACK \
1354
- VALUE variable_in_this_stack_frame; \
1355
- Init_stack(&variable_in_this_stack_frame);
1356
- #endif
1357
-
1358
-
1359
- #ifdef __cplusplus
1360
- }
1361
- #endif
1362
-
1363
-
1364
- /* -----------------------------------------------------------------------------
1365
- * rubyrun.swg
1366
- *
1367
- * This file contains the runtime support for Ruby modules
1368
- * and includes code for managing global variables and pointer
1369
- * type checking.
1370
- * ----------------------------------------------------------------------------- */
1371
-
1372
- /* For backward compatibility only */
1373
- #define SWIG_POINTER_EXCEPTION 0
1374
-
1375
- /* for raw pointers */
1376
- #define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Ruby_ConvertPtrAndOwn(obj, pptr, type, flags, 0)
1377
- #define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_Ruby_ConvertPtrAndOwn(obj, pptr, type, flags, own)
1378
- #define SWIG_NewPointerObj(ptr, type, flags) SWIG_Ruby_NewPointerObj(ptr, type, flags)
1379
- #define SWIG_AcquirePtr(ptr, own) SWIG_Ruby_AcquirePtr(ptr, own)
1380
- #define swig_owntype ruby_owntype
1381
-
1382
- /* for raw packed data */
1383
- #define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Ruby_ConvertPacked(obj, ptr, sz, ty, flags)
1384
- #define SWIG_NewPackedObj(ptr, sz, type) SWIG_Ruby_NewPackedObj(ptr, sz, type)
1385
-
1386
- /* for class or struct pointers */
1387
- #define SWIG_ConvertInstance(obj, pptr, type, flags) SWIG_ConvertPtr(obj, pptr, type, flags)
1388
- #define SWIG_NewInstanceObj(ptr, type, flags) SWIG_NewPointerObj(ptr, type, flags)
1389
-
1390
- /* for C or C++ function pointers */
1391
- #define SWIG_ConvertFunctionPtr(obj, pptr, type) SWIG_ConvertPtr(obj, pptr, type, 0)
1392
- #define SWIG_NewFunctionPtrObj(ptr, type) SWIG_NewPointerObj(ptr, type, 0)
1393
-
1394
- /* for C++ member pointers, ie, member methods */
1395
- #define SWIG_ConvertMember(obj, ptr, sz, ty) SWIG_Ruby_ConvertPacked(obj, ptr, sz, ty)
1396
- #define SWIG_NewMemberObj(ptr, sz, type) SWIG_Ruby_NewPackedObj(ptr, sz, type)
1397
-
1398
-
1399
- /* Runtime API */
1400
-
1401
- #define SWIG_GetModule(clientdata) SWIG_Ruby_GetModule(clientdata)
1402
- #define SWIG_SetModule(clientdata, pointer) SWIG_Ruby_SetModule(pointer)
1403
-
1404
-
1405
- /* Error manipulation */
1406
-
1407
- #define SWIG_ErrorType(code) SWIG_Ruby_ErrorType(code)
1408
- #define SWIG_Error(code, msg) rb_raise(SWIG_Ruby_ErrorType(code), "%s", msg)
1409
- #define SWIG_fail goto fail
1410
-
1411
-
1412
- /* Ruby-specific SWIG API */
1413
-
1414
- #define SWIG_InitRuntime() SWIG_Ruby_InitRuntime()
1415
- #define SWIG_define_class(ty) SWIG_Ruby_define_class(ty)
1416
- #define SWIG_NewClassInstance(value, ty) SWIG_Ruby_NewClassInstance(value, ty)
1417
- #define SWIG_MangleStr(value) SWIG_Ruby_MangleStr(value)
1418
- #define SWIG_CheckConvert(value, ty) SWIG_Ruby_CheckConvert(value, ty)
1419
-
1420
- #include "assert.h"
1421
-
1422
- /* -----------------------------------------------------------------------------
1423
- * pointers/data manipulation
1424
- * ----------------------------------------------------------------------------- */
1425
-
1426
- #ifdef __cplusplus
1427
- extern "C" {
1428
- #endif
1429
-
1430
- typedef struct {
1431
- VALUE klass;
1432
- VALUE mImpl;
1433
- void (*mark)(void *);
1434
- void (*destroy)(void *);
1435
- int trackObjects;
1436
- } swig_class;
1437
-
1438
-
1439
- /* Global pointer used to keep some internal SWIG stuff */
1440
- static VALUE _cSWIG_Pointer = Qnil;
1441
- static VALUE swig_runtime_data_type_pointer = Qnil;
1442
-
1443
- /* Global IDs used to keep some internal SWIG stuff */
1444
- static ID swig_arity_id = 0;
1445
- static ID swig_call_id = 0;
1446
-
1447
- /*
1448
- If your swig extension is to be run within an embedded ruby and has
1449
- director callbacks, you should set -DRUBY_EMBEDDED during compilation.
1450
- This will reset ruby's stack frame on each entry point from the main
1451
- program the first time a virtual director function is invoked (in a
1452
- non-recursive way).
1453
- If this is not done, you run the risk of Ruby trashing the stack.
1454
- */
1455
-
1456
- #ifdef RUBY_EMBEDDED
1457
-
1458
- # define SWIG_INIT_STACK \
1459
- if ( !swig_virtual_calls ) { RUBY_INIT_STACK } \
1460
- ++swig_virtual_calls;
1461
- # define SWIG_RELEASE_STACK --swig_virtual_calls;
1462
- # define Ruby_DirectorTypeMismatchException(x) \
1463
- rb_raise( rb_eTypeError, "%s", x ); return c_result;
1464
-
1465
- static unsigned int swig_virtual_calls = 0;
1466
-
1467
- #else /* normal non-embedded extension */
1468
-
1469
- # define SWIG_INIT_STACK
1470
- # define SWIG_RELEASE_STACK
1471
- # define Ruby_DirectorTypeMismatchException(x) \
1472
- throw Swig::DirectorTypeMismatchException( x );
1473
-
1474
- #endif /* RUBY_EMBEDDED */
1475
-
1476
-
1477
- SWIGRUNTIME VALUE
1478
- getExceptionClass(void) {
1479
- static int init = 0;
1480
- static VALUE rubyExceptionClass ;
1481
- if (!init) {
1482
- init = 1;
1483
- rubyExceptionClass = rb_const_get(_mSWIG, rb_intern("Exception"));
1484
- }
1485
- return rubyExceptionClass;
1486
- }
1487
-
1488
- /* This code checks to see if the Ruby object being raised as part
1489
- of an exception inherits from the Ruby class Exception. If so,
1490
- the object is simply returned. If not, then a new Ruby exception
1491
- object is created and that will be returned to Ruby.*/
1492
- SWIGRUNTIME VALUE
1493
- SWIG_Ruby_ExceptionType(swig_type_info *desc, VALUE obj) {
1494
- VALUE exceptionClass = getExceptionClass();
1495
- if (rb_obj_is_kind_of(obj, exceptionClass)) {
1496
- return obj;
1497
- } else {
1498
- return rb_exc_new3(rb_eRuntimeError, rb_obj_as_string(obj));
1499
- }
1500
- }
1501
-
1502
- /* Initialize Ruby runtime support */
1503
- SWIGRUNTIME void
1504
- SWIG_Ruby_InitRuntime(void)
1505
- {
1506
- if (_mSWIG == Qnil) {
1507
- _mSWIG = rb_define_module("SWIG");
1508
- swig_call_id = rb_intern("call");
1509
- swig_arity_id = rb_intern("arity");
1510
- }
1511
- }
1512
-
1513
- /* Define Ruby class for C type */
1514
- SWIGRUNTIME void
1515
- SWIG_Ruby_define_class(swig_type_info *type)
1516
- {
1517
- VALUE klass;
1518
- char *klass_name = (char *) malloc(4 + strlen(type->name) + 1);
1519
- sprintf(klass_name, "TYPE%s", type->name);
1520
- if (NIL_P(_cSWIG_Pointer)) {
1521
- _cSWIG_Pointer = rb_define_class_under(_mSWIG, "Pointer", rb_cObject);
1522
- rb_undef_method(CLASS_OF(_cSWIG_Pointer), "new");
1523
- }
1524
- klass = rb_define_class_under(_mSWIG, klass_name, _cSWIG_Pointer);
1525
- free((void *) klass_name);
1526
- }
1527
-
1528
- /* Create a new pointer object */
1529
- SWIGRUNTIME VALUE
1530
- SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
1531
- {
1532
- int own = flags & SWIG_POINTER_OWN;
1533
- int track;
1534
- char *klass_name;
1535
- swig_class *sklass;
1536
- VALUE klass;
1537
- VALUE obj;
1538
-
1539
- if (!ptr)
1540
- return Qnil;
1541
-
1542
- if (type->clientdata) {
1543
- sklass = (swig_class *) type->clientdata;
1544
-
1545
- /* Are we tracking this class and have we already returned this Ruby object? */
1546
- track = sklass->trackObjects;
1547
- if (track) {
1548
- obj = SWIG_RubyInstanceFor(ptr);
1549
-
1550
- /* Check the object's type and make sure it has the correct type.
1551
- It might not in cases where methods do things like
1552
- downcast methods. */
1553
- if (obj != Qnil) {
1554
- VALUE value = rb_iv_get(obj, "@__swigtype__");
1555
- const char* type_name = RSTRING_PTR(value);
1556
-
1557
- if (strcmp(type->name, type_name) == 0) {
1558
- return obj;
1559
- }
1560
- }
1561
- }
1562
-
1563
- /* Create a new Ruby object */
1564
- obj = Data_Wrap_Struct(sklass->klass, VOIDFUNC(sklass->mark),
1565
- ( own ? VOIDFUNC(sklass->destroy) :
1566
- (track ? VOIDFUNC(SWIG_RubyRemoveTracking) : 0 )
1567
- ), ptr);
1568
-
1569
- /* If tracking is on for this class then track this object. */
1570
- if (track) {
1571
- SWIG_RubyAddTracking(ptr, obj);
1572
- }
1573
- } else {
1574
- klass_name = (char *) malloc(4 + strlen(type->name) + 1);
1575
- sprintf(klass_name, "TYPE%s", type->name);
1576
- klass = rb_const_get(_mSWIG, rb_intern(klass_name));
1577
- free((void *) klass_name);
1578
- obj = Data_Wrap_Struct(klass, 0, 0, ptr);
1579
- }
1580
- rb_iv_set(obj, "@__swigtype__", rb_str_new2(type->name));
1581
-
1582
- return obj;
1583
- }
1584
-
1585
- /* Create a new class instance (always owned) */
1586
- SWIGRUNTIME VALUE
1587
- SWIG_Ruby_NewClassInstance(VALUE klass, swig_type_info *type)
1588
- {
1589
- VALUE obj;
1590
- swig_class *sklass = (swig_class *) type->clientdata;
1591
- obj = Data_Wrap_Struct(klass, VOIDFUNC(sklass->mark), VOIDFUNC(sklass->destroy), 0);
1592
- rb_iv_set(obj, "@__swigtype__", rb_str_new2(type->name));
1593
- return obj;
1594
- }
1595
-
1596
- /* Get type mangle from class name */
1597
- SWIGRUNTIMEINLINE char *
1598
- SWIG_Ruby_MangleStr(VALUE obj)
1599
- {
1600
- VALUE stype = rb_iv_get(obj, "@__swigtype__");
1601
- return StringValuePtr(stype);
1602
- }
1603
-
1604
- /* Acquire a pointer value */
1605
- typedef void (*ruby_owntype)(void*);
1606
-
1607
- SWIGRUNTIME ruby_owntype
1608
- SWIG_Ruby_AcquirePtr(VALUE obj, ruby_owntype own) {
1609
- if (obj) {
1610
- ruby_owntype oldown = RDATA(obj)->dfree;
1611
- RDATA(obj)->dfree = own;
1612
- return oldown;
1613
- } else {
1614
- return 0;
1615
- }
1616
- }
1617
-
1618
- /* Convert a pointer value */
1619
- SWIGRUNTIME int
1620
- SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags, ruby_owntype *own)
1621
- {
1622
- char *c;
1623
- swig_cast_info *tc;
1624
- void *vptr = 0;
1625
-
1626
- /* Grab the pointer */
1627
- if (NIL_P(obj)) {
1628
- *ptr = 0;
1629
- return SWIG_OK;
1630
- } else {
1631
- if (TYPE(obj) != T_DATA) {
1632
- return SWIG_ERROR;
1633
- }
1634
- Data_Get_Struct(obj, void, vptr);
1635
- }
1636
-
1637
- if (own) *own = RDATA(obj)->dfree;
1638
-
1639
- /* Check to see if the input object is giving up ownership
1640
- of the underlying C struct or C++ object. If so then we
1641
- need to reset the destructor since the Ruby object no
1642
- longer owns the underlying C++ object.*/
1643
- if (flags & SWIG_POINTER_DISOWN) {
1644
- /* Is tracking on for this class? */
1645
- int track = 0;
1646
- if (ty && ty->clientdata) {
1647
- swig_class *sklass = (swig_class *) ty->clientdata;
1648
- track = sklass->trackObjects;
1649
- }
1650
-
1651
- if (track) {
1652
- /* We are tracking objects for this class. Thus we change the destructor
1653
- * to SWIG_RubyRemoveTracking. This allows us to
1654
- * remove the mapping from the C++ to Ruby object
1655
- * when the Ruby object is garbage collected. If we don't
1656
- * do this, then it is possible we will return a reference
1657
- * to a Ruby object that no longer exists thereby crashing Ruby. */
1658
- RDATA(obj)->dfree = SWIG_RubyRemoveTracking;
1659
- } else {
1660
- RDATA(obj)->dfree = 0;
1661
- }
1662
- }
1663
-
1664
- /* Do type-checking if type info was provided */
1665
- if (ty) {
1666
- if (ty->clientdata) {
1667
- if (rb_obj_is_kind_of(obj, ((swig_class *) (ty->clientdata))->klass)) {
1668
- if (vptr == 0) {
1669
- /* The object has already been deleted */
1670
- return SWIG_ObjectPreviouslyDeletedError;
1671
- }
1672
- *ptr = vptr;
1673
- return SWIG_OK;
1674
- }
1675
- }
1676
- if ((c = SWIG_MangleStr(obj)) == NULL) {
1677
- return SWIG_ERROR;
1678
- }
1679
- tc = SWIG_TypeCheck(c, ty);
1680
- if (!tc) {
1681
- return SWIG_ERROR;
1682
- } else {
1683
- int newmemory = 0;
1684
- *ptr = SWIG_TypeCast(tc, vptr, &newmemory);
1685
- assert(!newmemory); /* newmemory handling not yet implemented */
1686
- }
1687
- } else {
1688
- *ptr = vptr;
1689
- }
1690
-
1691
- return SWIG_OK;
1692
- }
1693
-
1694
- /* Check convert */
1695
- SWIGRUNTIMEINLINE int
1696
- SWIG_Ruby_CheckConvert(VALUE obj, swig_type_info *ty)
1697
- {
1698
- char *c = SWIG_MangleStr(obj);
1699
- if (!c) return 0;
1700
- return SWIG_TypeCheck(c,ty) != 0;
1701
- }
1702
-
1703
- SWIGRUNTIME VALUE
1704
- SWIG_Ruby_NewPackedObj(void *ptr, int sz, swig_type_info *type) {
1705
- char result[1024];
1706
- char *r = result;
1707
- if ((2*sz + 1 + strlen(type->name)) > 1000) return 0;
1708
- *(r++) = '_';
1709
- r = SWIG_PackData(r, ptr, sz);
1710
- strcpy(r, type->name);
1711
- return rb_str_new2(result);
1712
- }
1713
-
1714
- /* Convert a packed value value */
1715
- SWIGRUNTIME int
1716
- SWIG_Ruby_ConvertPacked(VALUE obj, void *ptr, int sz, swig_type_info *ty) {
1717
- swig_cast_info *tc;
1718
- const char *c;
1719
-
1720
- if (TYPE(obj) != T_STRING) goto type_error;
1721
- c = StringValuePtr(obj);
1722
- /* Pointer values must start with leading underscore */
1723
- if (*c != '_') goto type_error;
1724
- c++;
1725
- c = SWIG_UnpackData(c, ptr, sz);
1726
- if (ty) {
1727
- tc = SWIG_TypeCheck(c, ty);
1728
- if (!tc) goto type_error;
1729
- }
1730
- return SWIG_OK;
1731
-
1732
- type_error:
1733
- return SWIG_ERROR;
1734
- }
1735
-
1736
- SWIGRUNTIME swig_module_info *
1737
- SWIG_Ruby_GetModule(void *SWIGUNUSEDPARM(clientdata))
1738
- {
1739
- VALUE pointer;
1740
- swig_module_info *ret = 0;
1741
- VALUE verbose = rb_gv_get("VERBOSE");
1742
-
1743
- /* temporarily disable warnings, since the pointer check causes warnings with 'ruby -w' */
1744
- rb_gv_set("VERBOSE", Qfalse);
1745
-
1746
- /* first check if pointer already created */
1747
- pointer = rb_gv_get("$swig_runtime_data_type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME);
1748
- if (pointer != Qnil) {
1749
- Data_Get_Struct(pointer, swig_module_info, ret);
1750
- }
1751
-
1752
- /* reinstate warnings */
1753
- rb_gv_set("VERBOSE", verbose);
1754
- return ret;
1755
- }
1756
-
1757
- SWIGRUNTIME void
1758
- SWIG_Ruby_SetModule(swig_module_info *pointer)
1759
- {
1760
- /* register a new class */
1761
- VALUE cl = rb_define_class("swig_runtime_data", rb_cObject);
1762
- /* create and store the structure pointer to a global variable */
1763
- swig_runtime_data_type_pointer = Data_Wrap_Struct(cl, 0, 0, pointer);
1764
- rb_define_readonly_variable("$swig_runtime_data_type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, &swig_runtime_data_type_pointer);
1765
- }
1766
-
1767
- /* This function can be used to check whether a proc or method or similarly
1768
- callable function has been passed. Usually used in a %typecheck, like:
1769
-
1770
- %typecheck(c_callback_t, precedence=SWIG_TYPECHECK_POINTER) {
1771
- $result = SWIG_Ruby_isCallable( $input );
1772
- }
1773
- */
1774
- SWIGINTERN
1775
- int SWIG_Ruby_isCallable( VALUE proc )
1776
- {
1777
- if ( rb_respond_to( proc, swig_call_id ) == Qtrue )
1778
- return 1;
1779
- return 0;
1780
- }
1781
-
1782
- /* This function can be used to check the arity (number of arguments)
1783
- a proc or method can take. Usually used in a %typecheck.
1784
- Valid arities will be that equal to minimal or those < 0
1785
- which indicate a variable number of parameters at the end.
1786
- */
1787
- SWIGINTERN
1788
- int SWIG_Ruby_arity( VALUE proc, int minimal )
1789
- {
1790
- if ( rb_respond_to( proc, swig_arity_id ) == Qtrue )
1791
- {
1792
- VALUE num = rb_funcall( proc, swig_arity_id, 0 );
1793
- int arity = NUM2INT(num);
1794
- if ( arity < 0 && (arity+1) < -minimal ) return 1;
1795
- if ( arity == minimal ) return 1;
1796
- return 1;
1797
- }
1798
- return 0;
1799
- }
1800
-
1801
-
1802
- #ifdef __cplusplus
1803
- }
1804
- #endif
1805
-
1806
-
1807
-
1808
- #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
1809
-
1810
- #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
1811
-
1812
-
1813
-
1814
- /* -------- TYPES TABLE (BEGIN) -------- */
1815
-
1816
- #define SWIGTYPE_p_VersionProblem swig_types[0]
1817
- #define SWIGTYPE_p_char swig_types[1]
1818
- static swig_type_info *swig_types[3];
1819
- static swig_module_info swig_module = {swig_types, 2, 0, 0, 0, 0};
1820
- #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
1821
- #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
1822
-
1823
- /* -------- TYPES TABLE (END) -------- */
1824
-
1825
- #define SWIG_init Init_dep_gecode
1826
- #define SWIG_name "Dep_gecode"
1827
-
1828
- static VALUE mDep_gecode;
1829
-
1830
- #define SWIG_RUBY_THREAD_BEGIN_BLOCK
1831
- #define SWIG_RUBY_THREAD_END_BLOCK
1832
-
1833
-
1834
- #define SWIGVERSION 0x020009
1835
- #define SWIG_VERSION SWIGVERSION
1836
-
1837
-
1838
- #define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
1839
- #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))
1840
-
1841
-
1842
- #include <stdexcept>
1843
-
1844
-
1845
- #include "dep_selector_to_gecode_interface.h"
1846
-
1847
-
1848
- #include <limits.h>
1849
- #if !defined(SWIG_NO_LLONG_MAX)
1850
- # if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
1851
- # define LLONG_MAX __LONG_LONG_MAX__
1852
- # define LLONG_MIN (-LLONG_MAX - 1LL)
1853
- # define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
1854
- # endif
1855
- #endif
1856
-
1857
-
1858
- SWIGINTERN VALUE
1859
- SWIG_ruby_failed(void)
1860
- {
1861
- return Qnil;
1862
- }
1863
-
1864
-
1865
- /*@SWIG:/usr/local/Cellar/swig/2.0.9/share/swig/2.0.9/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
1866
- SWIGINTERN VALUE SWIG_AUX_NUM2LONG(VALUE *args)
1867
- {
1868
- VALUE obj = args[0];
1869
- VALUE type = TYPE(obj);
1870
- long *res = (long *)(args[1]);
1871
- *res = type == T_FIXNUM ? NUM2LONG(obj) : rb_big2long(obj);
1872
- return obj;
1873
- }
1874
- /*@SWIG@*/
1875
-
1876
- SWIGINTERN int
1877
- SWIG_AsVal_long (VALUE obj, long* val)
1878
- {
1879
- VALUE type = TYPE(obj);
1880
- if ((type == T_FIXNUM) || (type == T_BIGNUM)) {
1881
- long v;
1882
- VALUE a[2];
1883
- a[0] = obj;
1884
- a[1] = (VALUE)(&v);
1885
- if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2LONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {
1886
- if (val) *val = v;
1887
- return SWIG_OK;
1888
- }
1889
- }
1890
- return SWIG_TypeError;
1891
- }
1892
-
1893
-
1894
- SWIGINTERN int
1895
- SWIG_AsVal_int (VALUE obj, int *val)
1896
- {
1897
- long v;
1898
- int res = SWIG_AsVal_long (obj, &v);
1899
- if (SWIG_IsOK(res)) {
1900
- if ((v < INT_MIN || v > INT_MAX)) {
1901
- return SWIG_OverflowError;
1902
- } else {
1903
- if (val) *val = static_cast< int >(v);
1904
- }
1905
- }
1906
- return res;
1907
- }
1908
-
1909
-
1910
- SWIGINTERN int
1911
- SWIG_AsVal_bool (VALUE obj, bool *val)
1912
- {
1913
- if (obj == Qtrue) {
1914
- if (val) *val = true;
1915
- return SWIG_OK;
1916
- } else if (obj == Qfalse) {
1917
- if (val) *val = false;
1918
- return SWIG_OK;
1919
- } else {
1920
- int res = 0;
1921
- if (SWIG_AsVal_int (obj, &res) == SWIG_OK) {
1922
- if (val) *val = res ? true : false;
1923
- return SWIG_OK;
1924
- }
1925
- }
1926
- return SWIG_TypeError;
1927
- }
1928
-
1929
-
1930
- SWIGINTERN swig_type_info*
1931
- SWIG_pchar_descriptor(void)
1932
- {
1933
- static int init = 0;
1934
- static swig_type_info* info = 0;
1935
- if (!init) {
1936
- info = SWIG_TypeQuery("_p_char");
1937
- init = 1;
1938
- }
1939
- return info;
1940
- }
1941
-
1942
-
1943
- SWIGINTERN int
1944
- SWIG_AsCharPtrAndSize(VALUE obj, char** cptr, size_t* psize, int *alloc)
1945
- {
1946
- if (TYPE(obj) == T_STRING) {
1947
- char *cstr = StringValuePtr(obj);
1948
- size_t size = RSTRING_LEN(obj) + 1;
1949
- if (cptr) {
1950
- if (alloc) {
1951
- if (*alloc == SWIG_NEWOBJ) {
1952
- *cptr = reinterpret_cast< char* >(memcpy((new char[size]), cstr, sizeof(char)*(size)));
1953
- } else {
1954
- *cptr = cstr;
1955
- *alloc = SWIG_OLDOBJ;
1956
- }
1957
- }
1958
- }
1959
- if (psize) *psize = size;
1960
- return SWIG_OK;
1961
- } else {
1962
- swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
1963
- if (pchar_descriptor) {
1964
- void* vptr = 0;
1965
- if (SWIG_ConvertPtr(obj, &vptr, pchar_descriptor, 0) == SWIG_OK) {
1966
- if (cptr) *cptr = (char *)vptr;
1967
- if (psize) *psize = vptr ? (strlen((char*)vptr) + 1) : 0;
1968
- if (alloc) *alloc = SWIG_OLDOBJ;
1969
- return SWIG_OK;
1970
- }
1971
- }
1972
- }
1973
- return SWIG_TypeError;
1974
- }
1975
-
1976
-
1977
-
1978
-
1979
-
1980
- #define SWIG_From_long LONG2NUM
1981
-
1982
-
1983
- SWIGINTERNINLINE VALUE
1984
- SWIG_From_int (int value)
1985
- {
1986
- return SWIG_From_long (value);
1987
- }
1988
-
1989
-
1990
- SWIGINTERNINLINE VALUE
1991
- SWIG_From_bool (bool value)
1992
- {
1993
- return value ? Qtrue : Qfalse;
1994
- }
1995
-
1996
- SWIGINTERN VALUE
1997
- _wrap_VersionProblemCreate(int argc, VALUE *argv, VALUE self) {
1998
- int arg1 ;
1999
- bool arg2 ;
2000
- bool arg3 ;
2001
- char *arg4 = (char *) 0 ;
2002
- int val1 ;
2003
- int ecode1 = 0 ;
2004
- bool val2 ;
2005
- int ecode2 = 0 ;
2006
- bool val3 ;
2007
- int ecode3 = 0 ;
2008
- int res4 ;
2009
- char *buf4 = 0 ;
2010
- int alloc4 = 0 ;
2011
- VersionProblem *result = 0 ;
2012
- VALUE vresult = Qnil;
2013
-
2014
- if ((argc < 4) || (argc > 4)) {
2015
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc); SWIG_fail;
2016
- }
2017
- ecode1 = SWIG_AsVal_int(argv[0], &val1);
2018
- if (!SWIG_IsOK(ecode1)) {
2019
- SWIG_exception_fail(SWIG_ArgError(ecode1), Ruby_Format_TypeError( "", "int","VersionProblemCreate", 1, argv[0] ));
2020
- }
2021
- arg1 = static_cast< int >(val1);
2022
- ecode2 = SWIG_AsVal_bool(argv[1], &val2);
2023
- if (!SWIG_IsOK(ecode2)) {
2024
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "bool","VersionProblemCreate", 2, argv[1] ));
2025
- }
2026
- arg2 = static_cast< bool >(val2);
2027
- ecode3 = SWIG_AsVal_bool(argv[2], &val3);
2028
- if (!SWIG_IsOK(ecode3)) {
2029
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "bool","VersionProblemCreate", 3, argv[2] ));
2030
- }
2031
- arg3 = static_cast< bool >(val3);
2032
- res4 = SWIG_AsCharPtrAndSize(argv[3], &buf4, NULL, &alloc4);
2033
- if (!SWIG_IsOK(res4)) {
2034
- SWIG_exception_fail(SWIG_ArgError(res4), Ruby_Format_TypeError( "", "char const *","VersionProblemCreate", 4, argv[3] ));
2035
- }
2036
- arg4 = reinterpret_cast< char * >(buf4);
2037
- result = (VersionProblem *)VersionProblemCreate(arg1,arg2,arg3,(char const *)arg4);
2038
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_VersionProblem, 0 | 0 );
2039
- if (alloc4 == SWIG_NEWOBJ) delete[] buf4;
2040
- return vresult;
2041
- fail:
2042
- if (alloc4 == SWIG_NEWOBJ) delete[] buf4;
2043
- return Qnil;
2044
- }
2045
-
2046
-
2047
- SWIGINTERN VALUE
2048
- _wrap_VersionProblemDestroy(int argc, VALUE *argv, VALUE self) {
2049
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2050
- void *argp1 = 0 ;
2051
- int res1 = 0 ;
2052
-
2053
- if ((argc < 1) || (argc > 1)) {
2054
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
2055
- }
2056
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2057
- if (!SWIG_IsOK(res1)) {
2058
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","VersionProblemDestroy", 1, argv[0] ));
2059
- }
2060
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2061
- VersionProblemDestroy(arg1);
2062
- return Qnil;
2063
- fail:
2064
- return Qnil;
2065
- }
2066
-
2067
-
2068
- SWIGINTERN VALUE
2069
- _wrap_VersionProblemSize(int argc, VALUE *argv, VALUE self) {
2070
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2071
- void *argp1 = 0 ;
2072
- int res1 = 0 ;
2073
- int result;
2074
- VALUE vresult = Qnil;
2075
-
2076
- if ((argc < 1) || (argc > 1)) {
2077
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
2078
- }
2079
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2080
- if (!SWIG_IsOK(res1)) {
2081
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","VersionProblemSize", 1, argv[0] ));
2082
- }
2083
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2084
- result = (int)VersionProblemSize(arg1);
2085
- vresult = SWIG_From_int(static_cast< int >(result));
2086
- return vresult;
2087
- fail:
2088
- return Qnil;
2089
- }
2090
-
2091
-
2092
- SWIGINTERN VALUE
2093
- _wrap_VersionProblemPackageCount(int argc, VALUE *argv, VALUE self) {
2094
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2095
- void *argp1 = 0 ;
2096
- int res1 = 0 ;
2097
- int result;
2098
- VALUE vresult = Qnil;
2099
-
2100
- if ((argc < 1) || (argc > 1)) {
2101
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
2102
- }
2103
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2104
- if (!SWIG_IsOK(res1)) {
2105
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","VersionProblemPackageCount", 1, argv[0] ));
2106
- }
2107
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2108
- result = (int)VersionProblemPackageCount(arg1);
2109
- vresult = SWIG_From_int(static_cast< int >(result));
2110
- return vresult;
2111
- fail:
2112
- return Qnil;
2113
- }
2114
-
2115
-
2116
- SWIGINTERN VALUE
2117
- _wrap_AddPackage(int argc, VALUE *argv, VALUE self) {
2118
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2119
- int arg2 ;
2120
- int arg3 ;
2121
- int arg4 ;
2122
- void *argp1 = 0 ;
2123
- int res1 = 0 ;
2124
- int val2 ;
2125
- int ecode2 = 0 ;
2126
- int val3 ;
2127
- int ecode3 = 0 ;
2128
- int val4 ;
2129
- int ecode4 = 0 ;
2130
- int result;
2131
- VALUE vresult = Qnil;
2132
-
2133
- if ((argc < 4) || (argc > 4)) {
2134
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc); SWIG_fail;
2135
- }
2136
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2137
- if (!SWIG_IsOK(res1)) {
2138
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","AddPackage", 1, argv[0] ));
2139
- }
2140
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2141
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2142
- if (!SWIG_IsOK(ecode2)) {
2143
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","AddPackage", 2, argv[1] ));
2144
- }
2145
- arg2 = static_cast< int >(val2);
2146
- ecode3 = SWIG_AsVal_int(argv[2], &val3);
2147
- if (!SWIG_IsOK(ecode3)) {
2148
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","AddPackage", 3, argv[2] ));
2149
- }
2150
- arg3 = static_cast< int >(val3);
2151
- ecode4 = SWIG_AsVal_int(argv[3], &val4);
2152
- if (!SWIG_IsOK(ecode4)) {
2153
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "int","AddPackage", 4, argv[3] ));
2154
- }
2155
- arg4 = static_cast< int >(val4);
2156
- result = (int)AddPackage(arg1,arg2,arg3,arg4);
2157
- vresult = SWIG_From_int(static_cast< int >(result));
2158
- return vresult;
2159
- fail:
2160
- return Qnil;
2161
- }
2162
-
2163
-
2164
- SWIGINTERN VALUE
2165
- _wrap_AddVersionConstraint(int argc, VALUE *argv, VALUE self) {
2166
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2167
- int arg2 ;
2168
- int arg3 ;
2169
- int arg4 ;
2170
- int arg5 ;
2171
- int arg6 ;
2172
- void *argp1 = 0 ;
2173
- int res1 = 0 ;
2174
- int val2 ;
2175
- int ecode2 = 0 ;
2176
- int val3 ;
2177
- int ecode3 = 0 ;
2178
- int val4 ;
2179
- int ecode4 = 0 ;
2180
- int val5 ;
2181
- int ecode5 = 0 ;
2182
- int val6 ;
2183
- int ecode6 = 0 ;
2184
-
2185
- if ((argc < 6) || (argc > 6)) {
2186
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 6)",argc); SWIG_fail;
2187
- }
2188
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2189
- if (!SWIG_IsOK(res1)) {
2190
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","AddVersionConstraint", 1, argv[0] ));
2191
- }
2192
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2193
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2194
- if (!SWIG_IsOK(ecode2)) {
2195
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","AddVersionConstraint", 2, argv[1] ));
2196
- }
2197
- arg2 = static_cast< int >(val2);
2198
- ecode3 = SWIG_AsVal_int(argv[2], &val3);
2199
- if (!SWIG_IsOK(ecode3)) {
2200
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","AddVersionConstraint", 3, argv[2] ));
2201
- }
2202
- arg3 = static_cast< int >(val3);
2203
- ecode4 = SWIG_AsVal_int(argv[3], &val4);
2204
- if (!SWIG_IsOK(ecode4)) {
2205
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "int","AddVersionConstraint", 4, argv[3] ));
2206
- }
2207
- arg4 = static_cast< int >(val4);
2208
- ecode5 = SWIG_AsVal_int(argv[4], &val5);
2209
- if (!SWIG_IsOK(ecode5)) {
2210
- SWIG_exception_fail(SWIG_ArgError(ecode5), Ruby_Format_TypeError( "", "int","AddVersionConstraint", 5, argv[4] ));
2211
- }
2212
- arg5 = static_cast< int >(val5);
2213
- ecode6 = SWIG_AsVal_int(argv[5], &val6);
2214
- if (!SWIG_IsOK(ecode6)) {
2215
- SWIG_exception_fail(SWIG_ArgError(ecode6), Ruby_Format_TypeError( "", "int","AddVersionConstraint", 6, argv[5] ));
2216
- }
2217
- arg6 = static_cast< int >(val6);
2218
- AddVersionConstraint(arg1,arg2,arg3,arg4,arg5,arg6);
2219
- return Qnil;
2220
- fail:
2221
- return Qnil;
2222
- }
2223
-
2224
-
2225
- SWIGINTERN VALUE
2226
- _wrap_MarkPackageSuspicious(int argc, VALUE *argv, VALUE self) {
2227
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2228
- int arg2 ;
2229
- void *argp1 = 0 ;
2230
- int res1 = 0 ;
2231
- int val2 ;
2232
- int ecode2 = 0 ;
2233
-
2234
- if ((argc < 2) || (argc > 2)) {
2235
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2236
- }
2237
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2238
- if (!SWIG_IsOK(res1)) {
2239
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","MarkPackageSuspicious", 1, argv[0] ));
2240
- }
2241
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2242
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2243
- if (!SWIG_IsOK(ecode2)) {
2244
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","MarkPackageSuspicious", 2, argv[1] ));
2245
- }
2246
- arg2 = static_cast< int >(val2);
2247
- MarkPackageSuspicious(arg1,arg2);
2248
- return Qnil;
2249
- fail:
2250
- return Qnil;
2251
- }
2252
-
2253
-
2254
- SWIGINTERN VALUE
2255
- _wrap_MarkPackageRequired(int argc, VALUE *argv, VALUE self) {
2256
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2257
- int arg2 ;
2258
- void *argp1 = 0 ;
2259
- int res1 = 0 ;
2260
- int val2 ;
2261
- int ecode2 = 0 ;
2262
-
2263
- if ((argc < 2) || (argc > 2)) {
2264
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2265
- }
2266
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2267
- if (!SWIG_IsOK(res1)) {
2268
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","MarkPackageRequired", 1, argv[0] ));
2269
- }
2270
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2271
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2272
- if (!SWIG_IsOK(ecode2)) {
2273
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","MarkPackageRequired", 2, argv[1] ));
2274
- }
2275
- arg2 = static_cast< int >(val2);
2276
- MarkPackageRequired(arg1,arg2);
2277
- return Qnil;
2278
- fail:
2279
- return Qnil;
2280
- }
2281
-
2282
-
2283
- SWIGINTERN VALUE
2284
- _wrap_MarkPackagePreferredToBeAtLatest(int argc, VALUE *argv, VALUE self) {
2285
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2286
- int arg2 ;
2287
- int arg3 ;
2288
- void *argp1 = 0 ;
2289
- int res1 = 0 ;
2290
- int val2 ;
2291
- int ecode2 = 0 ;
2292
- int val3 ;
2293
- int ecode3 = 0 ;
2294
-
2295
- if ((argc < 3) || (argc > 3)) {
2296
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
2297
- }
2298
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2299
- if (!SWIG_IsOK(res1)) {
2300
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","MarkPackagePreferredToBeAtLatest", 1, argv[0] ));
2301
- }
2302
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2303
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2304
- if (!SWIG_IsOK(ecode2)) {
2305
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","MarkPackagePreferredToBeAtLatest", 2, argv[1] ));
2306
- }
2307
- arg2 = static_cast< int >(val2);
2308
- ecode3 = SWIG_AsVal_int(argv[2], &val3);
2309
- if (!SWIG_IsOK(ecode3)) {
2310
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","MarkPackagePreferredToBeAtLatest", 3, argv[2] ));
2311
- }
2312
- arg3 = static_cast< int >(val3);
2313
- MarkPackagePreferredToBeAtLatest(arg1,arg2,arg3);
2314
- return Qnil;
2315
- fail:
2316
- return Qnil;
2317
- }
2318
-
2319
-
2320
- SWIGINTERN VALUE
2321
- _wrap_GetPackageVersion(int argc, VALUE *argv, VALUE self) {
2322
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2323
- int arg2 ;
2324
- void *argp1 = 0 ;
2325
- int res1 = 0 ;
2326
- int val2 ;
2327
- int ecode2 = 0 ;
2328
- int result;
2329
- VALUE vresult = Qnil;
2330
-
2331
- if ((argc < 2) || (argc > 2)) {
2332
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2333
- }
2334
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2335
- if (!SWIG_IsOK(res1)) {
2336
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","GetPackageVersion", 1, argv[0] ));
2337
- }
2338
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2339
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2340
- if (!SWIG_IsOK(ecode2)) {
2341
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","GetPackageVersion", 2, argv[1] ));
2342
- }
2343
- arg2 = static_cast< int >(val2);
2344
- result = (int)GetPackageVersion(arg1,arg2);
2345
- vresult = SWIG_From_int(static_cast< int >(result));
2346
- return vresult;
2347
- fail:
2348
- return Qnil;
2349
- }
2350
-
2351
-
2352
- SWIGINTERN VALUE
2353
- _wrap_GetPackageDisabledState(int argc, VALUE *argv, VALUE self) {
2354
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2355
- int arg2 ;
2356
- void *argp1 = 0 ;
2357
- int res1 = 0 ;
2358
- int val2 ;
2359
- int ecode2 = 0 ;
2360
- bool result;
2361
- VALUE vresult = Qnil;
2362
-
2363
- if ((argc < 2) || (argc > 2)) {
2364
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2365
- }
2366
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2367
- if (!SWIG_IsOK(res1)) {
2368
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","GetPackageDisabledState", 1, argv[0] ));
2369
- }
2370
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2371
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2372
- if (!SWIG_IsOK(ecode2)) {
2373
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","GetPackageDisabledState", 2, argv[1] ));
2374
- }
2375
- arg2 = static_cast< int >(val2);
2376
- result = (bool)GetPackageDisabledState(arg1,arg2);
2377
- vresult = SWIG_From_bool(static_cast< bool >(result));
2378
- return vresult;
2379
- fail:
2380
- return Qnil;
2381
- }
2382
-
2383
-
2384
- SWIGINTERN VALUE
2385
- _wrap_GetPackageMax(int argc, VALUE *argv, VALUE self) {
2386
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2387
- int arg2 ;
2388
- void *argp1 = 0 ;
2389
- int res1 = 0 ;
2390
- int val2 ;
2391
- int ecode2 = 0 ;
2392
- int result;
2393
- VALUE vresult = Qnil;
2394
-
2395
- if ((argc < 2) || (argc > 2)) {
2396
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2397
- }
2398
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2399
- if (!SWIG_IsOK(res1)) {
2400
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","GetPackageMax", 1, argv[0] ));
2401
- }
2402
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2403
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2404
- if (!SWIG_IsOK(ecode2)) {
2405
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","GetPackageMax", 2, argv[1] ));
2406
- }
2407
- arg2 = static_cast< int >(val2);
2408
- result = (int)GetPackageMax(arg1,arg2);
2409
- vresult = SWIG_From_int(static_cast< int >(result));
2410
- return vresult;
2411
- fail:
2412
- return Qnil;
2413
- }
2414
-
2415
-
2416
- SWIGINTERN VALUE
2417
- _wrap_GetPackageMin(int argc, VALUE *argv, VALUE self) {
2418
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2419
- int arg2 ;
2420
- void *argp1 = 0 ;
2421
- int res1 = 0 ;
2422
- int val2 ;
2423
- int ecode2 = 0 ;
2424
- int result;
2425
- VALUE vresult = Qnil;
2426
-
2427
- if ((argc < 2) || (argc > 2)) {
2428
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2429
- }
2430
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2431
- if (!SWIG_IsOK(res1)) {
2432
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","GetPackageMin", 1, argv[0] ));
2433
- }
2434
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2435
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2436
- if (!SWIG_IsOK(ecode2)) {
2437
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","GetPackageMin", 2, argv[1] ));
2438
- }
2439
- arg2 = static_cast< int >(val2);
2440
- result = (int)GetPackageMin(arg1,arg2);
2441
- vresult = SWIG_From_int(static_cast< int >(result));
2442
- return vresult;
2443
- fail:
2444
- return Qnil;
2445
- }
2446
-
2447
-
2448
- SWIGINTERN VALUE
2449
- _wrap_GetDisabledVariableCount(int argc, VALUE *argv, VALUE self) {
2450
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2451
- void *argp1 = 0 ;
2452
- int res1 = 0 ;
2453
- int result;
2454
- VALUE vresult = Qnil;
2455
-
2456
- if ((argc < 1) || (argc > 1)) {
2457
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
2458
- }
2459
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2460
- if (!SWIG_IsOK(res1)) {
2461
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","GetDisabledVariableCount", 1, argv[0] ));
2462
- }
2463
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2464
- result = (int)GetDisabledVariableCount(arg1);
2465
- vresult = SWIG_From_int(static_cast< int >(result));
2466
- return vresult;
2467
- fail:
2468
- return Qnil;
2469
- }
2470
-
2471
-
2472
- SWIGINTERN VALUE
2473
- _wrap_VersionProblemDump(int argc, VALUE *argv, VALUE self) {
2474
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2475
- void *argp1 = 0 ;
2476
- int res1 = 0 ;
2477
-
2478
- if ((argc < 1) || (argc > 1)) {
2479
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
2480
- }
2481
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2482
- if (!SWIG_IsOK(res1)) {
2483
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","VersionProblemDump", 1, argv[0] ));
2484
- }
2485
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2486
- VersionProblemDump(arg1);
2487
- return Qnil;
2488
- fail:
2489
- return Qnil;
2490
- }
2491
-
2492
-
2493
- SWIGINTERN VALUE
2494
- _wrap_VersionProblemPrintPackageVar(int argc, VALUE *argv, VALUE self) {
2495
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2496
- int arg2 ;
2497
- void *argp1 = 0 ;
2498
- int res1 = 0 ;
2499
- int val2 ;
2500
- int ecode2 = 0 ;
2501
-
2502
- if ((argc < 2) || (argc > 2)) {
2503
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
2504
- }
2505
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2506
- if (!SWIG_IsOK(res1)) {
2507
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","VersionProblemPrintPackageVar", 1, argv[0] ));
2508
- }
2509
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2510
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
2511
- if (!SWIG_IsOK(ecode2)) {
2512
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","VersionProblemPrintPackageVar", 2, argv[1] ));
2513
- }
2514
- arg2 = static_cast< int >(val2);
2515
- VersionProblemPrintPackageVar(arg1,arg2);
2516
- return Qnil;
2517
- fail:
2518
- return Qnil;
2519
- }
2520
-
2521
-
2522
- SWIGINTERN VALUE
2523
- _wrap_Solve(int argc, VALUE *argv, VALUE self) {
2524
- VersionProblem *arg1 = (VersionProblem *) 0 ;
2525
- void *argp1 = 0 ;
2526
- int res1 = 0 ;
2527
- VersionProblem *result = 0 ;
2528
- VALUE vresult = Qnil;
2529
-
2530
- if ((argc < 1) || (argc > 1)) {
2531
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
2532
- }
2533
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_VersionProblem, 0 | 0 );
2534
- if (!SWIG_IsOK(res1)) {
2535
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "VersionProblem *","Solve", 1, argv[0] ));
2536
- }
2537
- arg1 = reinterpret_cast< VersionProblem * >(argp1);
2538
- result = (VersionProblem *)Solve(arg1);
2539
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_VersionProblem, 0 | 0 );
2540
- return vresult;
2541
- fail:
2542
- return Qnil;
2543
- }
2544
-
2545
-
2546
-
2547
- /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
2548
-
2549
- static swig_type_info _swigt__p_VersionProblem = {"_p_VersionProblem", "VersionProblem *", 0, 0, (void*)0, 0};
2550
- static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
2551
-
2552
- static swig_type_info *swig_type_initial[] = {
2553
- &_swigt__p_VersionProblem,
2554
- &_swigt__p_char,
2555
- };
2556
-
2557
- static swig_cast_info _swigc__p_VersionProblem[] = { {&_swigt__p_VersionProblem, 0, 0, 0},{0, 0, 0, 0}};
2558
- static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
2559
-
2560
- static swig_cast_info *swig_cast_initial[] = {
2561
- _swigc__p_VersionProblem,
2562
- _swigc__p_char,
2563
- };
2564
-
2565
-
2566
- /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
2567
-
2568
- /* -----------------------------------------------------------------------------
2569
- * Type initialization:
2570
- * This problem is tough by the requirement that no dynamic
2571
- * memory is used. Also, since swig_type_info structures store pointers to
2572
- * swig_cast_info structures and swig_cast_info structures store pointers back
2573
- * to swig_type_info structures, we need some lookup code at initialization.
2574
- * The idea is that swig generates all the structures that are needed.
2575
- * The runtime then collects these partially filled structures.
2576
- * The SWIG_InitializeModule function takes these initial arrays out of
2577
- * swig_module, and does all the lookup, filling in the swig_module.types
2578
- * array with the correct data and linking the correct swig_cast_info
2579
- * structures together.
2580
- *
2581
- * The generated swig_type_info structures are assigned staticly to an initial
2582
- * array. We just loop through that array, and handle each type individually.
2583
- * First we lookup if this type has been already loaded, and if so, use the
2584
- * loaded structure instead of the generated one. Then we have to fill in the
2585
- * cast linked list. The cast data is initially stored in something like a
2586
- * two-dimensional array. Each row corresponds to a type (there are the same
2587
- * number of rows as there are in the swig_type_initial array). Each entry in
2588
- * a column is one of the swig_cast_info structures for that type.
2589
- * The cast_initial array is actually an array of arrays, because each row has
2590
- * a variable number of columns. So to actually build the cast linked list,
2591
- * we find the array of casts associated with the type, and loop through it
2592
- * adding the casts to the list. The one last trick we need to do is making
2593
- * sure the type pointer in the swig_cast_info struct is correct.
2594
- *
2595
- * First off, we lookup the cast->type name to see if it is already loaded.
2596
- * There are three cases to handle:
2597
- * 1) If the cast->type has already been loaded AND the type we are adding
2598
- * casting info to has not been loaded (it is in this module), THEN we
2599
- * replace the cast->type pointer with the type pointer that has already
2600
- * been loaded.
2601
- * 2) If BOTH types (the one we are adding casting info to, and the
2602
- * cast->type) are loaded, THEN the cast info has already been loaded by
2603
- * the previous module so we just ignore it.
2604
- * 3) Finally, if cast->type has not already been loaded, then we add that
2605
- * swig_cast_info to the linked list (because the cast->type) pointer will
2606
- * be correct.
2607
- * ----------------------------------------------------------------------------- */
2608
-
2609
- #ifdef __cplusplus
2610
- extern "C" {
2611
- #if 0
2612
- } /* c-mode */
2613
- #endif
2614
- #endif
2615
-
2616
- #if 0
2617
- #define SWIGRUNTIME_DEBUG
2618
- #endif
2619
-
2620
-
2621
- SWIGRUNTIME void
2622
- SWIG_InitializeModule(void *clientdata) {
2623
- size_t i;
2624
- swig_module_info *module_head, *iter;
2625
- int found, init;
2626
-
2627
- /* check to see if the circular list has been setup, if not, set it up */
2628
- if (swig_module.next==0) {
2629
- /* Initialize the swig_module */
2630
- swig_module.type_initial = swig_type_initial;
2631
- swig_module.cast_initial = swig_cast_initial;
2632
- swig_module.next = &swig_module;
2633
- init = 1;
2634
- } else {
2635
- init = 0;
2636
- }
2637
-
2638
- /* Try and load any already created modules */
2639
- module_head = SWIG_GetModule(clientdata);
2640
- if (!module_head) {
2641
- /* This is the first module loaded for this interpreter */
2642
- /* so set the swig module into the interpreter */
2643
- SWIG_SetModule(clientdata, &swig_module);
2644
- module_head = &swig_module;
2645
- } else {
2646
- /* the interpreter has loaded a SWIG module, but has it loaded this one? */
2647
- found=0;
2648
- iter=module_head;
2649
- do {
2650
- if (iter==&swig_module) {
2651
- found=1;
2652
- break;
2653
- }
2654
- iter=iter->next;
2655
- } while (iter!= module_head);
2656
-
2657
- /* if the is found in the list, then all is done and we may leave */
2658
- if (found) return;
2659
- /* otherwise we must add out module into the list */
2660
- swig_module.next = module_head->next;
2661
- module_head->next = &swig_module;
2662
- }
2663
-
2664
- /* When multiple interpeters are used, a module could have already been initialized in
2665
- a different interpreter, but not yet have a pointer in this interpreter.
2666
- In this case, we do not want to continue adding types... everything should be
2667
- set up already */
2668
- if (init == 0) return;
2669
-
2670
- /* Now work on filling in swig_module.types */
2671
- #ifdef SWIGRUNTIME_DEBUG
2672
- printf("SWIG_InitializeModule: size %d\n", swig_module.size);
2673
- #endif
2674
- for (i = 0; i < swig_module.size; ++i) {
2675
- swig_type_info *type = 0;
2676
- swig_type_info *ret;
2677
- swig_cast_info *cast;
2678
-
2679
- #ifdef SWIGRUNTIME_DEBUG
2680
- printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
2681
- #endif
2682
-
2683
- /* if there is another module already loaded */
2684
- if (swig_module.next != &swig_module) {
2685
- type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
2686
- }
2687
- if (type) {
2688
- /* Overwrite clientdata field */
2689
- #ifdef SWIGRUNTIME_DEBUG
2690
- printf("SWIG_InitializeModule: found type %s\n", type->name);
2691
- #endif
2692
- if (swig_module.type_initial[i]->clientdata) {
2693
- type->clientdata = swig_module.type_initial[i]->clientdata;
2694
- #ifdef SWIGRUNTIME_DEBUG
2695
- printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
2696
- #endif
2697
- }
2698
- } else {
2699
- type = swig_module.type_initial[i];
2700
- }
2701
-
2702
- /* Insert casting types */
2703
- cast = swig_module.cast_initial[i];
2704
- while (cast->type) {
2705
-
2706
- /* Don't need to add information already in the list */
2707
- ret = 0;
2708
- #ifdef SWIGRUNTIME_DEBUG
2709
- printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
2710
- #endif
2711
- if (swig_module.next != &swig_module) {
2712
- ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
2713
- #ifdef SWIGRUNTIME_DEBUG
2714
- if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
2715
- #endif
2716
- }
2717
- if (ret) {
2718
- if (type == swig_module.type_initial[i]) {
2719
- #ifdef SWIGRUNTIME_DEBUG
2720
- printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
2721
- #endif
2722
- cast->type = ret;
2723
- ret = 0;
2724
- } else {
2725
- /* Check for casting already in the list */
2726
- swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
2727
- #ifdef SWIGRUNTIME_DEBUG
2728
- if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
2729
- #endif
2730
- if (!ocast) ret = 0;
2731
- }
2732
- }
2733
-
2734
- if (!ret) {
2735
- #ifdef SWIGRUNTIME_DEBUG
2736
- printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
2737
- #endif
2738
- if (type->cast) {
2739
- type->cast->prev = cast;
2740
- cast->next = type->cast;
2741
- }
2742
- type->cast = cast;
2743
- }
2744
- cast++;
2745
- }
2746
- /* Set entry in modules->types array equal to the type */
2747
- swig_module.types[i] = type;
2748
- }
2749
- swig_module.types[i] = 0;
2750
-
2751
- #ifdef SWIGRUNTIME_DEBUG
2752
- printf("**** SWIG_InitializeModule: Cast List ******\n");
2753
- for (i = 0; i < swig_module.size; ++i) {
2754
- int j = 0;
2755
- swig_cast_info *cast = swig_module.cast_initial[i];
2756
- printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
2757
- while (cast->type) {
2758
- printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
2759
- cast++;
2760
- ++j;
2761
- }
2762
- printf("---- Total casts: %d\n",j);
2763
- }
2764
- printf("**** SWIG_InitializeModule: Cast List ******\n");
2765
- #endif
2766
- }
2767
-
2768
- /* This function will propagate the clientdata field of type to
2769
- * any new swig_type_info structures that have been added into the list
2770
- * of equivalent types. It is like calling
2771
- * SWIG_TypeClientData(type, clientdata) a second time.
2772
- */
2773
- SWIGRUNTIME void
2774
- SWIG_PropagateClientData(void) {
2775
- size_t i;
2776
- swig_cast_info *equiv;
2777
- static int init_run = 0;
2778
-
2779
- if (init_run) return;
2780
- init_run = 1;
2781
-
2782
- for (i = 0; i < swig_module.size; i++) {
2783
- if (swig_module.types[i]->clientdata) {
2784
- equiv = swig_module.types[i]->cast;
2785
- while (equiv) {
2786
- if (!equiv->converter) {
2787
- if (equiv->type && !equiv->type->clientdata)
2788
- SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
2789
- }
2790
- equiv = equiv->next;
2791
- }
2792
- }
2793
- }
2794
- }
2795
-
2796
- #ifdef __cplusplus
2797
- #if 0
2798
- { /* c-mode */
2799
- #endif
2800
- }
2801
- #endif
2802
-
2803
- /*
2804
-
2805
- */
2806
- #ifdef __cplusplus
2807
- extern "C"
2808
- #endif
2809
- SWIGEXPORT void Init_dep_gecode(void) {
2810
- size_t i;
2811
-
2812
- SWIG_InitRuntime();
2813
- mDep_gecode = rb_define_module("Dep_gecode");
2814
-
2815
- SWIG_InitializeModule(0);
2816
- for (i = 0; i < swig_module.size; i++) {
2817
- SWIG_define_class(swig_module.types[i]);
2818
- }
2819
-
2820
- SWIG_RubyInitializeTrackings();
2821
- rb_define_module_function(mDep_gecode, "VersionProblemCreate", VALUEFUNC(_wrap_VersionProblemCreate), -1);
2822
- rb_define_module_function(mDep_gecode, "VersionProblemDestroy", VALUEFUNC(_wrap_VersionProblemDestroy), -1);
2823
- rb_define_module_function(mDep_gecode, "VersionProblemSize", VALUEFUNC(_wrap_VersionProblemSize), -1);
2824
- rb_define_module_function(mDep_gecode, "VersionProblemPackageCount", VALUEFUNC(_wrap_VersionProblemPackageCount), -1);
2825
- rb_define_module_function(mDep_gecode, "AddPackage", VALUEFUNC(_wrap_AddPackage), -1);
2826
- rb_define_module_function(mDep_gecode, "AddVersionConstraint", VALUEFUNC(_wrap_AddVersionConstraint), -1);
2827
- rb_define_module_function(mDep_gecode, "MarkPackageSuspicious", VALUEFUNC(_wrap_MarkPackageSuspicious), -1);
2828
- rb_define_module_function(mDep_gecode, "MarkPackageRequired", VALUEFUNC(_wrap_MarkPackageRequired), -1);
2829
- rb_define_module_function(mDep_gecode, "MarkPackagePreferredToBeAtLatest", VALUEFUNC(_wrap_MarkPackagePreferredToBeAtLatest), -1);
2830
- rb_define_module_function(mDep_gecode, "GetPackageVersion", VALUEFUNC(_wrap_GetPackageVersion), -1);
2831
- rb_define_module_function(mDep_gecode, "GetPackageDisabledState", VALUEFUNC(_wrap_GetPackageDisabledState), -1);
2832
- rb_define_module_function(mDep_gecode, "GetPackageMax", VALUEFUNC(_wrap_GetPackageMax), -1);
2833
- rb_define_module_function(mDep_gecode, "GetPackageMin", VALUEFUNC(_wrap_GetPackageMin), -1);
2834
- rb_define_module_function(mDep_gecode, "GetDisabledVariableCount", VALUEFUNC(_wrap_GetDisabledVariableCount), -1);
2835
- rb_define_module_function(mDep_gecode, "VersionProblemDump", VALUEFUNC(_wrap_VersionProblemDump), -1);
2836
- rb_define_module_function(mDep_gecode, "VersionProblemPrintPackageVar", VALUEFUNC(_wrap_VersionProblemPrintPackageVar), -1);
2837
- rb_define_module_function(mDep_gecode, "Solve", VALUEFUNC(_wrap_Solve), -1);
2838
- }
2839
-