fxruby 1.6.47 → 1.6.48

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,11 +1,9 @@
1
1
  /* ----------------------------------------------------------------------------
2
- * This file was automatically generated by SWIG (http://www.swig.org).
3
- * Version 4.0.2
2
+ * This file was automatically generated by SWIG (https://www.swig.org).
3
+ * Version 4.2.0
4
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.
5
+ * Do not make changes to this file unless you know what you are doing - modify
6
+ * the SWIG interface file instead.
9
7
  * ----------------------------------------------------------------------------- */
10
8
 
11
9
  /* -----------------------------------------------------------------------------
@@ -131,7 +129,13 @@
131
129
  #ifdef __INTEL_COMPILER
132
130
  # pragma warning disable 592
133
131
  #endif
134
- /* Errors in SWIG */
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 */
135
139
  #define SWIG_UnknownError -1
136
140
  #define SWIG_IOError -2
137
141
  #define SWIG_RuntimeError -3
@@ -146,7 +150,6 @@
146
150
  #define SWIG_MemoryError -12
147
151
  #define SWIG_NullReferenceError -13
148
152
 
149
-
150
153
  /* -----------------------------------------------------------------------------
151
154
  * swigrun.swg
152
155
  *
@@ -193,6 +196,8 @@
193
196
  #define SWIG_POINTER_DISOWN 0x1
194
197
  #define SWIG_CAST_NEW_MEMORY 0x2
195
198
  #define SWIG_POINTER_NO_NULL 0x4
199
+ #define SWIG_POINTER_CLEAR 0x8
200
+ #define SWIG_POINTER_RELEASE (SWIG_POINTER_CLEAR | SWIG_POINTER_DISOWN)
196
201
 
197
202
  /* Flags for new pointer objects */
198
203
  #define SWIG_POINTER_OWN 0x1
@@ -264,7 +269,7 @@
264
269
  SWIG errors code.
265
270
 
266
271
  Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
267
- allows to return the 'cast rank', for example, if you have this
272
+ allows returning the 'cast rank', for example, if you have this
268
273
 
269
274
  int food(double)
270
275
  int fooi(int);
@@ -278,7 +283,13 @@
278
283
  */
279
284
 
280
285
  #define SWIG_OK (0)
286
+ /* Runtime errors are < 0 */
281
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
+
282
293
  #define SWIG_IsOK(r) (r >= 0)
283
294
  #define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
284
295
 
@@ -286,14 +297,14 @@
286
297
  #define SWIG_CASTRANKLIMIT (1 << 8)
287
298
  /* The NewMask denotes the object was created (using new/malloc) */
288
299
  #define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
289
- /* The TmpMask is for in/out typemaps that use temporal objects */
300
+ /* The TmpMask is for in/out typemaps that use temporary objects */
290
301
  #define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
291
302
  /* Simple returning values */
292
303
  #define SWIG_BADOBJ (SWIG_ERROR)
293
304
  #define SWIG_OLDOBJ (SWIG_OK)
294
305
  #define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
295
306
  #define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
296
- /* Check, add and del mask methods */
307
+ /* Check, add and del object mask methods */
297
308
  #define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
298
309
  #define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
299
310
  #define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
@@ -322,6 +333,23 @@ SWIGINTERNINLINE int SWIG_CheckState(int r) {
322
333
  # define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
323
334
  #endif
324
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
325
353
 
326
354
  #include <string.h>
327
355
 
@@ -439,7 +467,7 @@ SWIG_TypeCheck(const char *c, swig_type_info *ty) {
439
467
  Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
440
468
  */
441
469
  SWIGRUNTIME swig_cast_info *
442
- SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty) {
470
+ SWIG_TypeCheckStruct(const swig_type_info *from, swig_type_info *ty) {
443
471
  if (ty) {
444
472
  swig_cast_info *iter = ty->cast;
445
473
  while (iter) {
@@ -499,9 +527,9 @@ SWIG_TypeName(const swig_type_info *ty) {
499
527
  SWIGRUNTIME const char *
500
528
  SWIG_TypePrettyName(const swig_type_info *type) {
501
529
  /* The "str" field contains the equivalent pretty names of the
502
- type, separated by vertical-bar characters. We choose
503
- to print the last name, as it is often (?) the most
504
- specific. */
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. */
505
533
  if (!type) return NULL;
506
534
  if (type->str != NULL) {
507
535
  const char *last_name = type->str;
@@ -720,6 +748,19 @@ SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
720
748
  #ifdef __cplusplus
721
749
  }
722
750
  #endif
751
+ #if __GNUC__ >= 7
752
+ #pragma GCC diagnostic push
753
+ #if defined(__cplusplus)
754
+ #pragma GCC diagnostic ignored "-Wregister"
755
+ #if __GNUC__ >= 10
756
+ #pragma GCC diagnostic ignored "-Wvolatile"
757
+ #if __GNUC__ >= 11
758
+ #pragma GCC diagnostic ignored "-Wdeprecated-enum-enum-conversion"
759
+ #endif
760
+ #endif
761
+ #endif
762
+ #endif
763
+
723
764
  #include <ruby.h>
724
765
 
725
766
  #if defined(RB_METHOD_DEFINITION_DECL)
@@ -734,6 +775,11 @@ SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
734
775
  # define RUBY_VOIDP_METHOD_FUNC(func) ((void *(*)(ANYARGS))(func))
735
776
  #endif
736
777
 
778
+ #include <ruby/version.h> /* For RUBY_API_VERSION_CODE */
779
+
780
+ #if __GNUC__ >= 7
781
+ #pragma GCC diagnostic pop
782
+ #endif
737
783
 
738
784
  /* Ruby 1.9.1 has a "memoisation optimisation" when compiling with GCC which
739
785
  * breaks using rb_intern as an lvalue, as SWIG does. We work around this
@@ -835,9 +881,9 @@ SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
835
881
  /*
836
882
  * The following macros are used for providing the correct type of a
837
883
  * function pointer to the Ruby C API.
838
- * Starting with Ruby 2.7 (corresponding to RB_METHOD_DEFINITION_DECL being
839
- * defined) these macros act transparently due to Ruby's moving away from
840
- * ANYARGS and instead employing strict function signatures.
884
+ *
885
+ * Starting with Ruby 2.7 these macros act transparently due to Ruby's moving
886
+ * moving away from ANYARGS and instead employing strict function signatures.
841
887
  *
842
888
  * Note: In case of C (not C++) the macros are transparent even before
843
889
  * Ruby 2.7 due to the fact that the Ruby C API used function declarators
@@ -861,7 +907,7 @@ SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
861
907
  * SWIG_RUBY_INT_ANYARGS_FUNC(f) is used for the function pointer
862
908
  * argument(s) of Ruby C API functions like st_foreach().
863
909
  */
864
- #if defined(__cplusplus) && !defined(RB_METHOD_DEFINITION_DECL)
910
+ #if defined(__cplusplus) && RUBY_API_VERSION_CODE < 20700
865
911
  # define PROTECTFUNC(f) ((VALUE (*)(VALUE)) f)
866
912
  # define VALUEFUNC(f) ((VALUE (*)(ANYARGS)) f)
867
913
  # define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
@@ -1013,7 +1059,7 @@ const char* Ruby_Format_TypeError( const char* msg,
1013
1059
  }
1014
1060
 
1015
1061
  str = rb_str_cat2( str, "Expected argument " );
1016
- sprintf( buf, "%d of type ", argn-1 );
1062
+ SWIG_snprintf( buf, sizeof( buf), "%d of type ", argn-1 );
1017
1063
  str = rb_str_cat2( str, buf );
1018
1064
  str = rb_str_cat2( str, type );
1019
1065
  str = rb_str_cat2( str, ", but got " );
@@ -1309,6 +1355,7 @@ static VALUE swig_runtime_data_type_pointer = Qnil;
1309
1355
  /* Global IDs used to keep some internal SWIG stuff */
1310
1356
  static ID swig_arity_id = 0;
1311
1357
  static ID swig_call_id = 0;
1358
+ static ID swig_lowerthan_id = 0;
1312
1359
 
1313
1360
  /*
1314
1361
  If your swig extension is to be run within an embedded ruby and has
@@ -1360,7 +1407,7 @@ SWIG_Ruby_ExceptionType(swig_type_info *desc, VALUE obj) {
1360
1407
  VALUE exceptionClass = getExceptionClass();
1361
1408
  if (rb_obj_is_kind_of(obj, exceptionClass)) {
1362
1409
  return obj;
1363
- } else {
1410
+ } else {
1364
1411
  return rb_exc_new3(rb_eRuntimeError, rb_obj_as_string(obj));
1365
1412
  }
1366
1413
  }
@@ -1373,6 +1420,7 @@ SWIG_Ruby_InitRuntime(void)
1373
1420
  _mSWIG = rb_define_module("SWIG");
1374
1421
  swig_call_id = rb_intern("call");
1375
1422
  swig_arity_id = rb_intern("arity");
1423
+ swig_lowerthan_id = rb_intern("<");
1376
1424
  }
1377
1425
  }
1378
1426
 
@@ -1380,13 +1428,14 @@ SWIG_Ruby_InitRuntime(void)
1380
1428
  SWIGRUNTIME void
1381
1429
  SWIG_Ruby_define_class(swig_type_info *type)
1382
1430
  {
1383
- char *klass_name = (char *) malloc(4 + strlen(type->name) + 1);
1384
- sprintf(klass_name, "TYPE%s", type->name);
1431
+ size_t klass_len = 4 + strlen(type->name) + 1;
1432
+ char *klass_name = (char *) malloc(klass_len);
1433
+ SWIG_snprintf(klass_name, klass_len, "TYPE%s", type->name);
1385
1434
  if (NIL_P(_cSWIG_Pointer)) {
1386
1435
  _cSWIG_Pointer = rb_define_class_under(_mSWIG, "Pointer", rb_cObject);
1387
1436
  rb_undef_method(CLASS_OF(_cSWIG_Pointer), "new");
1388
1437
  }
1389
- rb_define_class_under(_mSWIG, klass_name, _cSWIG_Pointer);
1438
+ rb_undef_alloc_func(rb_define_class_under(_mSWIG, klass_name, _cSWIG_Pointer));
1390
1439
  free((void *) klass_name);
1391
1440
  }
1392
1441
 
@@ -1437,8 +1486,9 @@ SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
1437
1486
  SWIG_RubyAddTracking(ptr, obj);
1438
1487
  }
1439
1488
  } else {
1440
- klass_name = (char *) malloc(4 + strlen(type->name) + 1);
1441
- sprintf(klass_name, "TYPE%s", type->name);
1489
+ size_t klass_len = 4 + strlen(type->name) + 1;
1490
+ klass_name = (char *) malloc(klass_len);
1491
+ SWIG_snprintf(klass_name, klass_len, "TYPE%s", type->name);
1442
1492
  klass = rb_const_get(_mSWIG, rb_intern(klass_name));
1443
1493
  free((void *) klass_name);
1444
1494
  obj = Data_Wrap_Struct(klass, 0, 0, ptr);
@@ -1510,6 +1560,11 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
1510
1560
  own->own = 0;
1511
1561
  }
1512
1562
 
1563
+ if (((flags & SWIG_POINTER_RELEASE) == SWIG_POINTER_RELEASE)) {
1564
+ if (!RDATA(obj)->dfree)
1565
+ return SWIG_ERROR_RELEASE_NOT_OWNED;
1566
+ }
1567
+
1513
1568
  /* Check to see if the input object is giving up ownership
1514
1569
  of the underlying C struct or C++ object. If so then we
1515
1570
  need to reset the destructor since the Ruby object no
@@ -1521,7 +1576,7 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
1521
1576
  swig_class *sklass = (swig_class *) ty->clientdata;
1522
1577
  track = sklass->trackObjects;
1523
1578
  }
1524
-
1579
+
1525
1580
  if (track) {
1526
1581
  /* We are tracking objects for this class. Thus we change the destructor
1527
1582
  * to SWIG_RubyRemoveTracking. This allows us to
@@ -1535,6 +1590,10 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
1535
1590
  }
1536
1591
  }
1537
1592
 
1593
+ if (flags & SWIG_POINTER_CLEAR) {
1594
+ DATA_PTR(obj) = 0;
1595
+ }
1596
+
1538
1597
  /* Do type-checking if type info was provided */
1539
1598
  if (ty) {
1540
1599
  if (ty->clientdata) {
@@ -1642,6 +1701,7 @@ SWIG_Ruby_SetModule(swig_module_info *pointer)
1642
1701
  {
1643
1702
  /* register a new class */
1644
1703
  VALUE cl = rb_define_class("SWIG_RUNTIME_DATA", rb_cObject);rb_undef_alloc_func(cl);
1704
+ rb_undef_alloc_func(cl);
1645
1705
  /* create and store the structure pointer to a global variable */
1646
1706
  swig_runtime_data_type_pointer = Data_Wrap_Struct(cl, 0, 0, pointer);
1647
1707
  rb_define_readonly_variable("$swig_runtime_data_type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, &swig_runtime_data_type_pointer);
@@ -1672,7 +1732,7 @@ int SWIG_Ruby_arity( VALUE proc, int minimal )
1672
1732
  {
1673
1733
  if ( rb_respond_to( proc, swig_arity_id ) )
1674
1734
  {
1675
- VALUE num = rb_funcall( proc, swig_arity_id, 0 );
1735
+ VALUE num = rb_funcall2( proc, swig_arity_id, 0, 0 );
1676
1736
  int arity = NUM2INT(num);
1677
1737
  if ( arity < 0 && (arity+1) < -minimal ) return 1;
1678
1738
  if ( arity == minimal ) return 1;