Graphviz 12.1.0~dev.20240716.0947
Loading...
Searching...
No Matches
runtime.h
Go to the documentation of this file.
1/* ----------------------------------------------------------------------------
2 * This file was automatically generated by SWIG (https://www.swig.org).
3 * Version 4.2.0
4 *
5 * Do not make changes to this file unless you know what you are doing - modify
6 * the SWIG interface file instead.
7 * ----------------------------------------------------------------------------- */
8
9/* -----------------------------------------------------------------------------
10 * This section contains generic SWIG labels for method/variable
11 * declarations/attributes, and other compiler dependent labels.
12 * ----------------------------------------------------------------------------- */
13
14/* template workaround for compilers that cannot correctly implement the C++ standard */
15#ifndef SWIGTEMPLATEDISAMBIGUATOR
16# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
17# define SWIGTEMPLATEDISAMBIGUATOR template
18# elif defined(__HP_aCC)
19/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
20/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
21# define SWIGTEMPLATEDISAMBIGUATOR template
22# else
23# define SWIGTEMPLATEDISAMBIGUATOR
24# endif
25#endif
26
27/* inline attribute */
28#ifndef SWIGINLINE
29# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
30# define SWIGINLINE inline
31# else
32# define SWIGINLINE
33# endif
34#endif
35
36/* attribute recognised by some compilers to avoid 'unused' warnings */
37#ifndef SWIGUNUSED
38# if defined(__GNUC__)
39# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
40# define SWIGUNUSED __attribute__ ((__unused__))
41# else
42# define SWIGUNUSED
43# endif
44# elif defined(__ICC)
45# define SWIGUNUSED __attribute__ ((__unused__))
46# else
47# define SWIGUNUSED
48# endif
49#endif
50
51#ifndef SWIG_MSC_UNSUPPRESS_4505
52# if defined(_MSC_VER)
53# pragma warning(disable : 4505) /* unreferenced local function has been removed */
54# endif
55#endif
56
57#ifndef SWIGUNUSEDPARM
58# ifdef __cplusplus
59# define SWIGUNUSEDPARM(p)
60# else
61# define SWIGUNUSEDPARM(p) p SWIGUNUSED
62# endif
63#endif
64
65/* internal SWIG method */
66#ifndef SWIGINTERN
67# define SWIGINTERN static SWIGUNUSED
68#endif
69
70/* internal inline SWIG method */
71#ifndef SWIGINTERNINLINE
72# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
73#endif
74
75/* exporting methods */
76#if defined(__GNUC__)
77# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
78# ifndef GCC_HASCLASSVISIBILITY
79# define GCC_HASCLASSVISIBILITY
80# endif
81# endif
82#endif
83
84#ifndef SWIGEXPORT
85# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
86# if defined(STATIC_LINKED)
87# define SWIGEXPORT
88# else
89# define SWIGEXPORT __declspec(dllexport)
90# endif
91# else
92# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
93# define SWIGEXPORT __attribute__ ((visibility("default")))
94# else
95# define SWIGEXPORT
96# endif
97# endif
98#endif
99
100/* calling conventions for Windows */
101#ifndef SWIGSTDCALL
102# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
103# define SWIGSTDCALL __stdcall
104# else
105# define SWIGSTDCALL
106# endif
107#endif
108
109/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
110#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
111# define _CRT_SECURE_NO_DEPRECATE
112#endif
113
114/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
115#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
116# define _SCL_SECURE_NO_DEPRECATE
117#endif
118
119/* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */
120#if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES)
121# define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0
122#endif
123
124/* Intel's compiler complains if a variable which was never initialised is
125 * cast to void, which is a common idiom which we use to indicate that we
126 * are aware a variable isn't used. So we just silence that warning.
127 * See: https://github.com/swig/swig/issues/192 for more discussion.
128 */
129#ifdef __INTEL_COMPILER
130# pragma warning disable 592
131#endif
132
133#if __cplusplus >=201103L
134# define SWIG_NULLPTR nullptr
135#else
136# define SWIG_NULLPTR NULL
137#endif
138/* SWIG Errors applicable to all language modules, values are reserved from -1 to -99 */
139#define SWIG_UnknownError -1
140#define SWIG_IOError -2
141#define SWIG_RuntimeError -3
142#define SWIG_IndexError -4
143#define SWIG_TypeError -5
144#define SWIG_DivisionByZero -6
145#define SWIG_OverflowError -7
146#define SWIG_SyntaxError -8
147#define SWIG_ValueError -9
148#define SWIG_SystemError -10
149#define SWIG_AttributeError -11
150#define SWIG_MemoryError -12
151#define SWIG_NullReferenceError -13
152
153/* -----------------------------------------------------------------------------
154 * swigrun.swg
155 *
156 * This file contains generic C API SWIG runtime support for pointer
157 * type checking.
158 * ----------------------------------------------------------------------------- */
159
160/* This should only be incremented when either the layout of swig_type_info changes,
161 or for whatever reason, the runtime changes incompatibly */
162#define SWIG_RUNTIME_VERSION "4"
163
164/* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
165#ifdef SWIG_TYPE_TABLE
166# define SWIG_QUOTE_STRING(x) #x
167# define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
168# define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
169#else
170# define SWIG_TYPE_TABLE_NAME
171#endif
172
173/*
174 You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
175 creating a static or dynamic library from the SWIG runtime code.
176 In 99.9% of the cases, SWIG just needs to declare them as 'static'.
177
178 But only do this if strictly necessary, ie, if you have problems
179 with your compiler or suchlike.
180*/
181
182#ifndef SWIGRUNTIME
183# define SWIGRUNTIME SWIGINTERN
184#endif
185
186#ifndef SWIGRUNTIMEINLINE
187# define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
188#endif
189
190/* Generic buffer size */
191#ifndef SWIG_BUFFER_SIZE
192# define SWIG_BUFFER_SIZE 1024
193#endif
194
195/* Flags for pointer conversions */
196#define SWIG_POINTER_DISOWN 0x1
197#define SWIG_CAST_NEW_MEMORY 0x2
198#define SWIG_POINTER_NO_NULL 0x4
199#define SWIG_POINTER_CLEAR 0x8
200#define SWIG_POINTER_RELEASE (SWIG_POINTER_CLEAR | SWIG_POINTER_DISOWN)
201
202/* Flags for new pointer objects */
203#define SWIG_POINTER_OWN 0x1
204
205
206/*
207 Flags/methods for returning states.
208
209 The SWIG conversion methods, as ConvertPtr, return an integer
210 that tells if the conversion was successful or not. And if not,
211 an error code can be returned (see swigerrors.swg for the codes).
212
213 Use the following macros/flags to set or process the returning
214 states.
215
216 In old versions of SWIG, code such as the following was usually written:
217
218 if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
219 // success code
220 } else {
221 //fail code
222 }
223
224 Now you can be more explicit:
225
226 int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
227 if (SWIG_IsOK(res)) {
228 // success code
229 } else {
230 // fail code
231 }
232
233 which is the same really, but now you can also do
234
235 Type *ptr;
236 int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
237 if (SWIG_IsOK(res)) {
238 // success code
239 if (SWIG_IsNewObj(res) {
240 ...
241 delete *ptr;
242 } else {
243 ...
244 }
245 } else {
246 // fail code
247 }
248
249 I.e., now SWIG_ConvertPtr can return new objects and you can
250 identify the case and take care of the deallocation. Of course that
251 also requires SWIG_ConvertPtr to return new result values, such as
252
253 int SWIG_ConvertPtr(obj, ptr,...) {
254 if (<obj is ok>) {
255 if (<need new object>) {
256 *ptr = <ptr to new allocated object>;
257 return SWIG_NEWOBJ;
258 } else {
259 *ptr = <ptr to old object>;
260 return SWIG_OLDOBJ;
261 }
262 } else {
263 return SWIG_BADOBJ;
264 }
265 }
266
267 Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
268 more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
269 SWIG errors code.
270
271 Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
272 allows returning the 'cast rank', for example, if you have this
273
274 int food(double)
275 int fooi(int);
276
277 and you call
278
279 food(1) // cast rank '1' (1 -> 1.0)
280 fooi(1) // cast rank '0'
281
282 just use the SWIG_AddCast()/SWIG_CheckState()
283*/
284
285#define SWIG_OK (0)
286/* Runtime errors are < 0 */
287#define SWIG_ERROR (-1)
288/* Errors in range -1 to -99 are in swigerrors.swg (errors for all languages including those not using the runtime) */
289/* Errors in range -100 to -199 are language specific errors defined in *errors.swg */
290/* Errors < -200 are generic runtime specific errors */
291#define SWIG_ERROR_RELEASE_NOT_OWNED (-200)
292
293#define SWIG_IsOK(r) (r >= 0)
294#define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
295
296/* The CastRankLimit says how many bits are used for the cast rank */
297#define SWIG_CASTRANKLIMIT (1 << 8)
298/* The NewMask denotes the object was created (using new/malloc) */
299#define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
300/* The TmpMask is for in/out typemaps that use temporary objects */
301#define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
302/* Simple returning values */
303#define SWIG_BADOBJ (SWIG_ERROR)
304#define SWIG_OLDOBJ (SWIG_OK)
305#define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
306#define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
307/* Check, add and del object mask methods */
308#define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
309#define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
310#define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
311#define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
312#define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
313#define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
314
315/* Cast-Rank Mode */
316#if defined(SWIG_CASTRANK_MODE)
317# ifndef SWIG_TypeRank
318# define SWIG_TypeRank unsigned long
319# endif
320# ifndef SWIG_MAXCASTRANK /* Default cast allowed */
321# define SWIG_MAXCASTRANK (2)
322# endif
323# define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
324# define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
326 return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
327}
329 return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
330}
331#else /* no cast-rank mode */
332# define SWIG_AddCast(r) (r)
333# define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
334#endif
335
336/* C99 and C++11 should provide snprintf, but define SWIG_NO_SNPRINTF
337 * if you're missing it.
338 */
339#if ((defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L) || \
340 (defined __cplusplus && __cplusplus >= 201103L) || \
341 defined SWIG_HAVE_SNPRINTF) && \
342 !defined SWIG_NO_SNPRINTF
343# define SWIG_snprintf(O,S,F,A) snprintf(O,S,F,A)
344# define SWIG_snprintf2(O,S,F,A,B) snprintf(O,S,F,A,B)
345#else
346/* Fallback versions ignore the buffer size, but most of our uses either have a
347 * fixed maximum possible size or dynamically allocate a buffer that's large
348 * enough.
349 */
350# define SWIG_snprintf(O,S,F,A) sprintf(O,F,A)
351# define SWIG_snprintf2(O,S,F,A,B) sprintf(O,F,A,B)
352#endif
353
354#include <string.h>
355
356#ifdef __cplusplus
357extern "C" {
358#endif
359
360typedef void *(*swig_converter_func)(void *, int *);
361typedef struct swig_type_info *(*swig_dycast_func)(void **);
362
363/* Structure to store information on one type */
364typedef struct swig_type_info {
365 const char *name; /* mangled name of this type */
366 const char *str; /* human readable name of this type */
367 swig_dycast_func dcast; /* dynamic cast function down a hierarchy */
368 struct swig_cast_info *cast; /* linked list of types that can cast into this type */
369 void *clientdata; /* language specific type data */
370 int owndata; /* flag if the structure owns the clientdata */
372
373/* Structure to store a type and conversion function used for casting */
374typedef struct swig_cast_info {
375 swig_type_info *type; /* pointer to type that is equivalent to this type */
376 swig_converter_func converter; /* function to cast the void pointers */
377 struct swig_cast_info *next; /* pointer to next cast in linked list */
378 struct swig_cast_info *prev; /* pointer to the previous cast */
380
381/* Structure used to store module information
382 * Each module generates one structure like this, and the runtime collects
383 * all of these structures and stores them in a circularly linked list.*/
384typedef struct swig_module_info {
385 swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */
386 size_t size; /* Number of types in this module */
387 struct swig_module_info *next; /* Pointer to next element in circularly linked list */
388 swig_type_info **type_initial; /* Array of initially generated type structures */
389 swig_cast_info **cast_initial; /* Array of initially generated casting structures */
390 void *clientdata; /* Language specific module data */
392
393/*
394 Compare two type names skipping the space characters, therefore
395 "char*" == "char *" and "Class<int>" == "Class<int >", etc.
396
397 Return 0 when the two name types are equivalent, as in
398 strncmp, but skipping ' '.
399*/
400SWIGRUNTIME int
401SWIG_TypeNameComp(const char *f1, const char *l1,
402 const char *f2, const char *l2) {
403 for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
404 while ((*f1 == ' ') && (f1 != l1)) ++f1;
405 while ((*f2 == ' ') && (f2 != l2)) ++f2;
406 if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
407 }
408 return (int)((l1 - f1) - (l2 - f2));
409}
410
411/*
412 Check type equivalence in a name list like <name1>|<name2>|...
413 Return 0 if equal, -1 if nb < tb, 1 if nb > tb
414*/
415SWIGRUNTIME int
416SWIG_TypeCmp(const char *nb, const char *tb) {
417 int equiv = 1;
418 const char* te = tb + strlen(tb);
419 const char* ne = nb;
420 while (equiv != 0 && *ne) {
421 for (nb = ne; *ne; ++ne) {
422 if (*ne == '|') break;
423 }
424 equiv = SWIG_TypeNameComp(nb, ne, tb, te);
425 if (*ne) ++ne;
426 }
427 return equiv;
428}
429
430/*
431 Check type equivalence in a name list like <name1>|<name2>|...
432 Return 0 if not equal, 1 if equal
433*/
434SWIGRUNTIME int
435SWIG_TypeEquiv(const char *nb, const char *tb) {
436 return SWIG_TypeCmp(nb, tb) == 0 ? 1 : 0;
437}
438
439/*
440 Check the typename
441*/
443SWIG_TypeCheck(const char *c, swig_type_info *ty) {
444 if (ty) {
445 swig_cast_info *iter = ty->cast;
446 while (iter) {
447 if (strcmp(iter->type->name, c) == 0) {
448 if (iter == ty->cast)
449 return iter;
450 /* Move iter to the top of the linked list */
451 iter->prev->next = iter->next;
452 if (iter->next)
453 iter->next->prev = iter->prev;
454 iter->next = ty->cast;
455 iter->prev = 0;
456 if (ty->cast) ty->cast->prev = iter;
457 ty->cast = iter;
458 return iter;
459 }
460 iter = iter->next;
461 }
462 }
463 return 0;
464}
465
466/*
467 Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
468*/
471 if (ty) {
472 swig_cast_info *iter = ty->cast;
473 while (iter) {
474 if (iter->type == from) {
475 if (iter == ty->cast)
476 return iter;
477 /* Move iter to the top of the linked list */
478 iter->prev->next = iter->next;
479 if (iter->next)
480 iter->next->prev = iter->prev;
481 iter->next = ty->cast;
482 iter->prev = 0;
483 if (ty->cast) ty->cast->prev = iter;
484 ty->cast = iter;
485 return iter;
486 }
487 iter = iter->next;
488 }
489 }
490 return 0;
491}
492
493/*
494 Cast a pointer up an inheritance hierarchy
495*/
497SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
498 return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
499}
500
501/*
502 Dynamic pointer casting. Down an inheritance hierarchy
503*/
506 swig_type_info *lastty = ty;
507 if (!ty || !ty->dcast) return ty;
508 while (ty && (ty->dcast)) {
509 ty = (*ty->dcast)(ptr);
510 if (ty) lastty = ty;
511 }
512 return lastty;
513}
514
515/*
516 Return the name associated with this type
517*/
518SWIGRUNTIMEINLINE const char *
520 return ty->name;
521}
522
523/*
524 Return the pretty name associated with this type,
525 that is an unmangled type name in a form presentable to the user.
526*/
527SWIGRUNTIME const char *
529 /* The "str" field contains the equivalent pretty names of the
530 type, separated by vertical-bar characters. Choose the last
531 name. It should be the most specific; a fully resolved name
532 but not necessarily with default template parameters expanded. */
533 if (!type) return NULL;
534 if (type->str != NULL) {
535 const char *last_name = type->str;
536 const char *s;
537 for (s = type->str; *s; s++)
538 if (*s == '|') last_name = s+1;
539 return last_name;
540 }
541 else
542 return type->name;
543}
544
545/*
546 Set the clientdata field for a type
547*/
548SWIGRUNTIME void
550 swig_cast_info *cast = ti->cast;
551 /* if (ti->clientdata == clientdata) return; */
553
554 while (cast) {
555 if (!cast->converter) {
556 swig_type_info *tc = cast->type;
557 if (!tc->clientdata) {
559 }
560 }
561 cast = cast->next;
562 }
563}
564SWIGRUNTIME void
569
570/*
571 Search for a swig_type_info structure only by mangled name
572 Search is a O(log #types)
573
574 We start searching at module start, and finish searching when start == end.
575 Note: if start == end at the beginning of the function, we go all the way around
576 the circular list.
577*/
580 swig_module_info *end,
581 const char *name) {
582 swig_module_info *iter = start;
583 do {
584 if (iter->size) {
585 size_t l = 0;
586 size_t r = iter->size - 1;
587 do {
588 /* since l+r >= 0, we can (>> 1) instead (/ 2) */
589 size_t i = (l + r) >> 1;
590 const char *iname = iter->types[i]->name;
591 if (iname) {
592 int compare = strcmp(name, iname);
593 if (compare == 0) {
594 return iter->types[i];
595 } else if (compare < 0) {
596 if (i) {
597 r = i - 1;
598 } else {
599 break;
600 }
601 } else if (compare > 0) {
602 l = i + 1;
603 }
604 } else {
605 break; /* should never happen */
606 }
607 } while (l <= r);
608 }
609 iter = iter->next;
610 } while (iter != end);
611 return 0;
612}
613
614/*
615 Search for a swig_type_info structure for either a mangled name or a human readable name.
616 It first searches the mangled names of the types, which is a O(log #types)
617 If a type is not found it then searches the human readable names, which is O(#types).
618
619 We start searching at module start, and finish searching when start == end.
620 Note: if start == end at the beginning of the function, we go all the way around
621 the circular list.
622*/
625 swig_module_info *end,
626 const char *name) {
627 /* STEP 1: Search the name field using binary search */
628 swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
629 if (ret) {
630 return ret;
631 } else {
632 /* STEP 2: If the type hasn't been found, do a complete search
633 of the str field (the human readable name) */
634 swig_module_info *iter = start;
635 do {
636 size_t i = 0;
637 for (; i < iter->size; ++i) {
638 if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
639 return iter->types[i];
640 }
641 iter = iter->next;
642 } while (iter != end);
643 }
644
645 /* neither found a match */
646 return 0;
647}
648
649/*
650 Pack binary data into a string
651*/
652SWIGRUNTIME char *
653SWIG_PackData(char *c, void *ptr, size_t sz) {
654 static const char hex[17] = "0123456789abcdef";
655 const unsigned char *u = (unsigned char *) ptr;
656 const unsigned char *eu = u + sz;
657 for (; u != eu; ++u) {
658 unsigned char uu = *u;
659 *(c++) = hex[(uu & 0xf0) >> 4];
660 *(c++) = hex[uu & 0xf];
661 }
662 return c;
663}
664
665/*
666 Unpack binary data from a string
667*/
668SWIGRUNTIME const char *
669SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
670 unsigned char *u = (unsigned char *) ptr;
671 const unsigned char *eu = u + sz;
672 for (; u != eu; ++u) {
673 char d = *(c++);
674 unsigned char uu;
675 if ((d >= '0') && (d <= '9'))
676 uu = (unsigned char)((d - '0') << 4);
677 else if ((d >= 'a') && (d <= 'f'))
678 uu = (unsigned char)((d - ('a'-10)) << 4);
679 else
680 return (char *) 0;
681 d = *(c++);
682 if ((d >= '0') && (d <= '9'))
683 uu |= (unsigned char)(d - '0');
684 else if ((d >= 'a') && (d <= 'f'))
685 uu |= (unsigned char)(d - ('a'-10));
686 else
687 return (char *) 0;
688 *u = uu;
689 }
690 return c;
691}
692
693/*
694 Pack 'void *' into a string buffer.
695*/
696SWIGRUNTIME char *
697SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
698 char *r = buff;
699 if ((2*sizeof(void *) + 2) > bsz) return 0;
700 *(r++) = '_';
701 r = SWIG_PackData(r,&ptr,sizeof(void *));
702 if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
703 strcpy(r,name);
704 return buff;
705}
706
707SWIGRUNTIME const char *
708SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
709 if (*c != '_') {
710 if (strcmp(c,"NULL") == 0) {
711 *ptr = (void *) 0;
712 return name;
713 } else {
714 return 0;
715 }
716 }
717 return SWIG_UnpackData(++c,ptr,sizeof(void *));
718}
719
720SWIGRUNTIME char *
721SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
722 char *r = buff;
723 size_t lname = (name ? strlen(name) : 0);
724 if ((2*sz + 2 + lname) > bsz) return 0;
725 *(r++) = '_';
726 r = SWIG_PackData(r,ptr,sz);
727 if (lname) {
728 strncpy(r,name,lname+1);
729 } else {
730 *r = 0;
731 }
732 return buff;
733}
734
735SWIGRUNTIME const char *
736SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
737 if (*c != '_') {
738 if (strcmp(c,"NULL") == 0) {
739 memset(ptr,0,sz);
740 return name;
741 } else {
742 return 0;
743 }
744 }
745 return SWIG_UnpackData(++c,ptr,sz);
746}
747
748#ifdef __cplusplus
749}
750#endif
751/* -----------------------------------------------------------------------------*
752 Standard SWIG API for use inside user code.
753
754 Don't include this file directly, run the command
755 swig -python -external-runtime
756 Also, read the Modules chapter of the SWIG Manual.
757
758 * -----------------------------------------------------------------------------*/
759
760#ifdef SWIG_MODULE_CLIENTDATA_TYPE
761
764 swig_module_info *module = SWIG_GetModule(clientdata);
765 return SWIG_TypeQueryModule(module, module, name);
766}
767
770 swig_module_info *module = SWIG_GetModule(clientdata);
771 return SWIG_MangledTypeQueryModule(module, module, name);
772}
773
774#else
775
777SWIG_TypeQuery(const char *name) {
778 swig_module_info *module = SWIG_GetModule(NULL);
779 return SWIG_TypeQueryModule(module, module, name);
780}
781
783SWIG_MangledTypeQuery(const char *name) {
784 swig_module_info *module = SWIG_GetModule(NULL);
785 return SWIG_MangledTypeQueryModule(module, module, name);
786}
787
788#endif
int compare(Agobj_t *l, Agobj_t *r)
Definition actions.c:687
expr procedure type
Definition exparse.y:211
node NULL
Definition grammar.y:149
#define SWIG_MangledTypeQuery(name)
#define SWIG_TypeQuery(name)
#define SWIG_MODULE_CLIENTDATA_TYPE
Definition gv_lua.cpp:1079
#define SWIG_MAXCASTRANK
Definition gv_perl.cpp:312
#define SWIG_CastRank(r)
Definition gv_perl.cpp:315
#define SWIG_CheckState(r)
Definition runtime.h:333
SWIGRUNTIME int SWIG_TypeEquiv(const char *nb, const char *tb)
Definition runtime.h:435
SWIGRUNTIME int SWIG_TypeNameComp(const char *f1, const char *l1, const char *f2, const char *l2)
Definition runtime.h:401
#define SWIGRUNTIME
Definition runtime.h:183
SWIGRUNTIME void SWIG_TypeClientData(swig_type_info *ti, void *clientdata)
Definition runtime.h:549
SWIGRUNTIME swig_type_info * SWIG_TypeQueryModule(swig_module_info *start, swig_module_info *end, const char *name)
Definition runtime.h:624
SWIGRUNTIME char * SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz)
Definition runtime.h:721
#define SWIG_AddCast(r)
Definition runtime.h:332
SWIGRUNTIME const char * SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name)
Definition runtime.h:708
SWIGRUNTIME swig_type_info * SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr)
Definition runtime.h:505
SWIGRUNTIME void SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata)
Definition runtime.h:565
SWIGRUNTIME int SWIG_TypeCmp(const char *nb, const char *tb)
Definition runtime.h:416
SWIGRUNTIME const char * SWIG_UnpackData(const char *c, void *ptr, size_t sz)
Definition runtime.h:669
void *(* swig_converter_func)(void *, int *)
Definition runtime.h:360
SWIGRUNTIME swig_type_info * SWIG_MangledTypeQueryModule(swig_module_info *start, swig_module_info *end, const char *name)
Definition runtime.h:579
SWIGRUNTIME const char * SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name)
Definition runtime.h:736
struct swig_type_info *(* swig_dycast_func)(void **)
Definition runtime.h:361
SWIGRUNTIMEINLINE const char * SWIG_TypeName(const swig_type_info *ty)
Definition runtime.h:519
SWIGRUNTIME char * SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz)
Definition runtime.h:697
SWIGRUNTIME char * SWIG_PackData(char *c, void *ptr, size_t sz)
Definition runtime.h:653
SWIGRUNTIME swig_cast_info * SWIG_TypeCheckStruct(const swig_type_info *from, swig_type_info *ty)
Definition runtime.h:470
SWIGRUNTIME const char * SWIG_TypePrettyName(const swig_type_info *type)
Definition runtime.h:528
SWIGRUNTIME swig_cast_info * SWIG_TypeCheck(const char *c, swig_type_info *ty)
Definition runtime.h:443
#define SWIG_ERROR
Definition runtime.h:287
#define SWIG_IsOK(r)
Definition runtime.h:293
#define SWIGINTERNINLINE
Definition runtime.h:72
#define SWIGRUNTIMEINLINE
Definition runtime.h:187
SWIGRUNTIMEINLINE void * SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory)
Definition runtime.h:497
swig_type_info * type
Definition gv_guile.cpp:372
struct swig_cast_info * prev
Definition gv_guile.cpp:375
struct swig_cast_info * next
Definition gv_guile.cpp:374
swig_converter_func converter
Definition gv_guile.cpp:373
swig_type_info ** types
Definition gv_guile.cpp:382
swig_cast_info ** cast_initial
Definition gv_guile.cpp:386
swig_type_info ** type_initial
Definition gv_guile.cpp:385
struct swig_module_info * next
Definition gv_guile.cpp:384
swig_dycast_func dcast
Definition gv_guile.cpp:364
void * clientdata
Definition gv_guile.cpp:366
const char * name
Definition gv_guile.cpp:362
const char * str
Definition gv_guile.cpp:363
struct swig_cast_info * cast
Definition gv_guile.cpp:365
Definition grammar.c:93
char * name
Definition grammar.c:98