gobject-introspection 3.0.1-x86-mingw32 → 3.0.2-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/ext/gobject-introspection/rb-gi-argument.c +81 -48
  3. data/ext/gobject-introspection/rb-gi-loader.c +12 -0
  4. data/lib/2.0/gobject_introspection.so +0 -0
  5. data/lib/2.1/gobject_introspection.so +0 -0
  6. data/lib/2.2/gobject_introspection.so +0 -0
  7. data/vendor/local/bin/g-ir-compiler.exe +0 -0
  8. data/vendor/local/bin/g-ir-generate.exe +0 -0
  9. data/vendor/local/bin/libgirepository-1.0-1.dll +0 -0
  10. data/vendor/local/lib/gobject-introspection/giscanner/__init__.pyc +0 -0
  11. data/vendor/local/lib/gobject-introspection/giscanner/__init__.pyo +0 -0
  12. data/vendor/local/lib/gobject-introspection/giscanner/annotationmain.pyc +0 -0
  13. data/vendor/local/lib/gobject-introspection/giscanner/annotationmain.pyo +0 -0
  14. data/vendor/local/lib/gobject-introspection/giscanner/annotationparser.pyc +0 -0
  15. data/vendor/local/lib/gobject-introspection/giscanner/annotationparser.pyo +0 -0
  16. data/vendor/local/lib/gobject-introspection/giscanner/ast.pyc +0 -0
  17. data/vendor/local/lib/gobject-introspection/giscanner/ast.pyo +0 -0
  18. data/vendor/local/lib/gobject-introspection/giscanner/cachestore.pyc +0 -0
  19. data/vendor/local/lib/gobject-introspection/giscanner/cachestore.pyo +0 -0
  20. data/vendor/local/lib/gobject-introspection/giscanner/ccompiler.pyc +0 -0
  21. data/vendor/local/lib/gobject-introspection/giscanner/ccompiler.pyo +0 -0
  22. data/vendor/local/lib/gobject-introspection/giscanner/codegen.pyc +0 -0
  23. data/vendor/local/lib/gobject-introspection/giscanner/codegen.pyo +0 -0
  24. data/vendor/local/lib/gobject-introspection/giscanner/collections/__init__.pyc +0 -0
  25. data/vendor/local/lib/gobject-introspection/giscanner/collections/__init__.pyo +0 -0
  26. data/vendor/local/lib/gobject-introspection/giscanner/collections/counter.pyc +0 -0
  27. data/vendor/local/lib/gobject-introspection/giscanner/collections/counter.pyo +0 -0
  28. data/vendor/local/lib/gobject-introspection/giscanner/collections/ordereddict.pyc +0 -0
  29. data/vendor/local/lib/gobject-introspection/giscanner/collections/ordereddict.pyo +0 -0
  30. data/vendor/local/lib/gobject-introspection/giscanner/docmain.pyc +0 -0
  31. data/vendor/local/lib/gobject-introspection/giscanner/docmain.pyo +0 -0
  32. data/vendor/local/lib/gobject-introspection/giscanner/docwriter.pyc +0 -0
  33. data/vendor/local/lib/gobject-introspection/giscanner/docwriter.pyo +0 -0
  34. data/vendor/local/lib/gobject-introspection/giscanner/dumper.pyc +0 -0
  35. data/vendor/local/lib/gobject-introspection/giscanner/dumper.pyo +0 -0
  36. data/vendor/local/lib/gobject-introspection/giscanner/gdumpparser.pyc +0 -0
  37. data/vendor/local/lib/gobject-introspection/giscanner/gdumpparser.pyo +0 -0
  38. data/vendor/local/lib/gobject-introspection/giscanner/girparser.pyc +0 -0
  39. data/vendor/local/lib/gobject-introspection/giscanner/girparser.pyo +0 -0
  40. data/vendor/local/lib/gobject-introspection/giscanner/girwriter.pyc +0 -0
  41. data/vendor/local/lib/gobject-introspection/giscanner/girwriter.pyo +0 -0
  42. data/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyc +0 -0
  43. data/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyo +0 -0
  44. data/vendor/local/lib/gobject-introspection/giscanner/libtoolimporter.pyc +0 -0
  45. data/vendor/local/lib/gobject-introspection/giscanner/libtoolimporter.pyo +0 -0
  46. data/vendor/local/lib/gobject-introspection/giscanner/maintransformer.pyc +0 -0
  47. data/vendor/local/lib/gobject-introspection/giscanner/maintransformer.pyo +0 -0
  48. data/vendor/local/lib/gobject-introspection/giscanner/message.pyc +0 -0
  49. data/vendor/local/lib/gobject-introspection/giscanner/message.pyo +0 -0
  50. data/vendor/local/lib/gobject-introspection/giscanner/scannermain.pyc +0 -0
  51. data/vendor/local/lib/gobject-introspection/giscanner/scannermain.pyo +0 -0
  52. data/vendor/local/lib/gobject-introspection/giscanner/sectionparser.pyc +0 -0
  53. data/vendor/local/lib/gobject-introspection/giscanner/sectionparser.pyo +0 -0
  54. data/vendor/local/lib/gobject-introspection/giscanner/shlibs.pyc +0 -0
  55. data/vendor/local/lib/gobject-introspection/giscanner/shlibs.pyo +0 -0
  56. data/vendor/local/lib/gobject-introspection/giscanner/sourcescanner.pyc +0 -0
  57. data/vendor/local/lib/gobject-introspection/giscanner/sourcescanner.pyo +0 -0
  58. data/vendor/local/lib/gobject-introspection/giscanner/testcodegen.pyc +0 -0
  59. data/vendor/local/lib/gobject-introspection/giscanner/testcodegen.pyo +0 -0
  60. data/vendor/local/lib/gobject-introspection/giscanner/transformer.pyc +0 -0
  61. data/vendor/local/lib/gobject-introspection/giscanner/transformer.pyo +0 -0
  62. data/vendor/local/lib/gobject-introspection/giscanner/utils.pyc +0 -0
  63. data/vendor/local/lib/gobject-introspection/giscanner/utils.pyo +0 -0
  64. data/vendor/local/lib/gobject-introspection/giscanner/xmlwriter.pyc +0 -0
  65. data/vendor/local/lib/gobject-introspection/giscanner/xmlwriter.pyo +0 -0
  66. data/vendor/local/lib/libgirepository-1.0.a +0 -0
  67. data/vendor/local/lib/libgirepository-1.0.dll.a +0 -0
  68. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b27ebb5e0276fb1df573b303668700e3f37b1b3e
4
- data.tar.gz: 365c790112a4d6ec1db247e5da44c60bbfe20c15
3
+ metadata.gz: 715636c914557e97a1fb73f5d6a6e1a85cf16d8c
4
+ data.tar.gz: c6e9404fb07f9fcf1de450be86a44f1ce985318c
5
5
  SHA512:
6
- metadata.gz: 02508813421bf74e4b92ec036fef18307c18059d3e2e9510e4ba2ceb1597673fec7cc380adec7dd071c546288338938d6d71b0e7fe8778c915ff87599ce1ea9b
7
- data.tar.gz: 5caed3d513ea4dc2001233f16ca417a1c3be4d0e9d5b7082359e3c710d591fad78d4c3f4e2d82014c1d440ca121db9255a20fa86c6199cb6ef204d8b77773763
6
+ metadata.gz: 563eb569800290f53461c82f57aa9c740924ae35589bca6d98872a91e1166c94742077dfd1ebceed40cfbb8975c3c9a24b67be7d0c935281ce25da26c13091bc
7
+ data.tar.gz: 1468bec85414bc6073600067fcd1550586d31b2d47fac9a6da0f0e2831c887d9b66e04e6a402f31c1aaff82cf0b0e5e3ff6c66e6090e5406c9ce506f57a884af
@@ -1366,67 +1366,70 @@ rb_gi_out_argument_init(GIArgument *argument, GIArgInfo *arg_info)
1366
1366
  g_arg_info_load_type(arg_info, &type_info);
1367
1367
  type_tag = g_type_info_get_tag(&type_info);
1368
1368
  switch (type_tag) {
1369
- case GI_TYPE_TAG_VOID:
1369
+ case GI_TYPE_TAG_VOID:
1370
+ if (g_type_info_is_pointer(&type_info)) {
1371
+ argument->v_pointer = ALLOC(gpointer);
1372
+ }
1370
1373
  break;
1371
- case GI_TYPE_TAG_BOOLEAN:
1374
+ case GI_TYPE_TAG_BOOLEAN:
1372
1375
  argument->v_pointer = ALLOC(gboolean);
1373
1376
  break;
1374
- case GI_TYPE_TAG_INT8:
1377
+ case GI_TYPE_TAG_INT8:
1375
1378
  argument->v_pointer = ALLOC(gint8);
1376
1379
  break;
1377
- case GI_TYPE_TAG_UINT8:
1380
+ case GI_TYPE_TAG_UINT8:
1378
1381
  argument->v_pointer = ALLOC(guint8);
1379
1382
  break;
1380
- case GI_TYPE_TAG_INT16:
1383
+ case GI_TYPE_TAG_INT16:
1381
1384
  argument->v_pointer = ALLOC(gint16);
1382
1385
  break;
1383
- case GI_TYPE_TAG_UINT16:
1386
+ case GI_TYPE_TAG_UINT16:
1384
1387
  argument->v_pointer = ALLOC(guint16);
1385
1388
  break;
1386
- case GI_TYPE_TAG_INT32:
1389
+ case GI_TYPE_TAG_INT32:
1387
1390
  argument->v_pointer = ALLOC(gint32);
1388
1391
  break;
1389
- case GI_TYPE_TAG_UINT32:
1392
+ case GI_TYPE_TAG_UINT32:
1390
1393
  argument->v_pointer = ALLOC(guint32);
1391
1394
  break;
1392
- case GI_TYPE_TAG_INT64:
1395
+ case GI_TYPE_TAG_INT64:
1393
1396
  argument->v_pointer = ALLOC(gint64);
1394
1397
  break;
1395
- case GI_TYPE_TAG_UINT64:
1398
+ case GI_TYPE_TAG_UINT64:
1396
1399
  argument->v_pointer = ALLOC(guint64);
1397
1400
  break;
1398
- case GI_TYPE_TAG_FLOAT:
1401
+ case GI_TYPE_TAG_FLOAT:
1399
1402
  argument->v_pointer = ALLOC(gfloat);
1400
1403
  break;
1401
- case GI_TYPE_TAG_DOUBLE:
1404
+ case GI_TYPE_TAG_DOUBLE:
1402
1405
  argument->v_pointer = ALLOC(gdouble);
1403
1406
  break;
1404
- case GI_TYPE_TAG_GTYPE:
1407
+ case GI_TYPE_TAG_GTYPE:
1405
1408
  argument->v_pointer = ALLOC(GType);
1406
1409
  break;
1407
- case GI_TYPE_TAG_UTF8:
1408
- case GI_TYPE_TAG_FILENAME:
1410
+ case GI_TYPE_TAG_UTF8:
1411
+ case GI_TYPE_TAG_FILENAME:
1409
1412
  argument->v_pointer = ALLOC(gchar *);
1410
1413
  break;
1411
- case GI_TYPE_TAG_ARRAY:
1414
+ case GI_TYPE_TAG_ARRAY:
1412
1415
  rb_gi_out_argument_init_array(argument, arg_info, &type_info);
1413
1416
  break;
1414
- case GI_TYPE_TAG_INTERFACE:
1417
+ case GI_TYPE_TAG_INTERFACE:
1415
1418
  rb_gi_out_argument_init_interface(argument, arg_info, &type_info);
1416
1419
  break;
1417
- case GI_TYPE_TAG_GLIST:
1418
- case GI_TYPE_TAG_GSLIST:
1419
- case GI_TYPE_TAG_GHASH:
1420
+ case GI_TYPE_TAG_GLIST:
1421
+ case GI_TYPE_TAG_GSLIST:
1422
+ case GI_TYPE_TAG_GHASH:
1420
1423
  argument->v_pointer = ALLOC(gpointer);
1421
1424
  break;
1422
- case GI_TYPE_TAG_ERROR:
1425
+ case GI_TYPE_TAG_ERROR:
1423
1426
  argument->v_pointer = ALLOC(GError *);
1424
1427
  memset(argument->v_pointer, 0, sizeof(GError *));
1425
1428
  break;
1426
- case GI_TYPE_TAG_UNICHAR:
1429
+ case GI_TYPE_TAG_UNICHAR:
1427
1430
  argument->v_pointer = ALLOC(gunichar);
1428
1431
  break;
1429
- default:
1432
+ default:
1430
1433
  g_assert_not_reached();
1431
1434
  break;
1432
1435
  }
@@ -1448,53 +1451,56 @@ rb_gi_out_argument_to_ruby(GIArgument *argument,
1448
1451
  g_arg_info_load_type(arg_info, &type_info);
1449
1452
  type_tag = g_type_info_get_tag(&type_info);
1450
1453
  switch (type_tag) {
1451
- case GI_TYPE_TAG_VOID:
1454
+ case GI_TYPE_TAG_VOID:
1455
+ if (g_type_info_is_pointer(&type_info)) {
1456
+ normalized_argument.v_pointer = *((gpointer *)(argument->v_pointer));
1457
+ }
1452
1458
  break;
1453
- case GI_TYPE_TAG_BOOLEAN:
1459
+ case GI_TYPE_TAG_BOOLEAN:
1454
1460
  normalized_argument.v_boolean = *((gboolean *)(argument->v_pointer));
1455
1461
  break;
1456
- case GI_TYPE_TAG_INT8:
1462
+ case GI_TYPE_TAG_INT8:
1457
1463
  normalized_argument.v_int8 = *((gint8 *)(argument->v_pointer));
1458
1464
  break;
1459
- case GI_TYPE_TAG_UINT8:
1465
+ case GI_TYPE_TAG_UINT8:
1460
1466
  normalized_argument.v_uint8 = *((guint8 *)(argument->v_pointer));
1461
1467
  break;
1462
- case GI_TYPE_TAG_INT16:
1468
+ case GI_TYPE_TAG_INT16:
1463
1469
  normalized_argument.v_int16 = *((gint16 *)(argument->v_pointer));
1464
1470
  break;
1465
- case GI_TYPE_TAG_UINT16:
1471
+ case GI_TYPE_TAG_UINT16:
1466
1472
  normalized_argument.v_uint16 = *((guint16 *)(argument->v_pointer));
1467
1473
  break;
1468
- case GI_TYPE_TAG_INT32:
1474
+ case GI_TYPE_TAG_INT32:
1469
1475
  normalized_argument.v_int32 = *((gint32 *)(argument->v_pointer));
1470
1476
  break;
1471
- case GI_TYPE_TAG_UINT32:
1477
+ case GI_TYPE_TAG_UINT32:
1472
1478
  normalized_argument.v_uint32 = *((guint32 *)(argument->v_pointer));
1473
1479
  break;
1474
- case GI_TYPE_TAG_INT64:
1480
+ case GI_TYPE_TAG_INT64:
1475
1481
  normalized_argument.v_int64 = *((gint64 *)(argument->v_pointer));
1476
1482
  break;
1477
- case GI_TYPE_TAG_UINT64:
1483
+ case GI_TYPE_TAG_UINT64:
1478
1484
  normalized_argument.v_uint64 = *((guint64 *)(argument->v_pointer));
1479
1485
  break;
1480
- case GI_TYPE_TAG_FLOAT:
1486
+ case GI_TYPE_TAG_FLOAT:
1481
1487
  normalized_argument.v_float = *((gfloat *)(argument->v_pointer));
1482
1488
  break;
1483
- case GI_TYPE_TAG_DOUBLE:
1489
+ case GI_TYPE_TAG_DOUBLE:
1484
1490
  normalized_argument.v_double = *((gdouble *)(argument->v_pointer));
1485
1491
  break;
1486
- case GI_TYPE_TAG_GTYPE:
1492
+ case GI_TYPE_TAG_GTYPE:
1487
1493
  normalized_argument.v_size = *((GType *)(argument->v_pointer));
1488
1494
  break;
1489
- case GI_TYPE_TAG_UTF8:
1490
- case GI_TYPE_TAG_FILENAME:
1495
+ case GI_TYPE_TAG_UTF8:
1496
+ case GI_TYPE_TAG_FILENAME:
1491
1497
  normalized_argument.v_string = *((gchar **)(argument->v_pointer));
1492
1498
  break;
1493
- case GI_TYPE_TAG_ARRAY:
1494
- case GI_TYPE_TAG_INTERFACE:
1495
- case GI_TYPE_TAG_GLIST:
1496
- case GI_TYPE_TAG_GSLIST:
1497
- case GI_TYPE_TAG_GHASH:
1499
+ case GI_TYPE_TAG_ARRAY:
1500
+ case GI_TYPE_TAG_INTERFACE:
1501
+ case GI_TYPE_TAG_GLIST:
1502
+ case GI_TYPE_TAG_GSLIST:
1503
+ case GI_TYPE_TAG_GHASH:
1498
1504
  if (g_arg_info_is_caller_allocates(arg_info)) {
1499
1505
  duplicate = TRUE;
1500
1506
  normalized_argument.v_pointer = argument->v_pointer;
@@ -1502,13 +1508,13 @@ rb_gi_out_argument_to_ruby(GIArgument *argument,
1502
1508
  normalized_argument.v_pointer = *((gpointer *)(argument->v_pointer));
1503
1509
  }
1504
1510
  break;
1505
- case GI_TYPE_TAG_ERROR:
1511
+ case GI_TYPE_TAG_ERROR:
1506
1512
  normalized_argument.v_pointer = *((GError **)(argument->v_pointer));
1507
1513
  break;
1508
- case GI_TYPE_TAG_UNICHAR:
1514
+ case GI_TYPE_TAG_UNICHAR:
1509
1515
  normalized_argument.v_uint32 = *((guint32 *)(argument->v_pointer));
1510
1516
  break;
1511
- default:
1517
+ default:
1512
1518
  g_assert_not_reached();
1513
1519
  break;
1514
1520
  }
@@ -2396,6 +2402,34 @@ rb_gi_value_argument_from_ruby_void(GIArgument *argument, GITypeInfo *type_info,
2396
2402
  }
2397
2403
  }
2398
2404
 
2405
+ static GType
2406
+ rb_gi_value_argument_from_ruby_gtype(VALUE rb_argument)
2407
+ {
2408
+ ID id_gtype;
2409
+ VALUE rb_gtype;
2410
+
2411
+ if (RB_TYPE_P(rb_argument, RUBY_T_STRING)) {
2412
+ GType gtype;
2413
+ gtype = g_type_from_name(RVAL2CSTR(rb_argument));
2414
+ if (gtype == 0) {
2415
+ rb_raise(rb_eArgError,
2416
+ "unknown GType name: <%s>",
2417
+ RVAL2CSTR(rb_argument));
2418
+ }
2419
+ return gtype;
2420
+ }
2421
+
2422
+ CONST_ID(id_gtype, "gtype");
2423
+
2424
+ if (rb_respond_to(rb_argument, id_gtype)) {
2425
+ rb_gtype = rb_funcall(rb_argument, id_gtype, 0);
2426
+ } else {
2427
+ rb_gtype = rb_argument;
2428
+ }
2429
+
2430
+ return NUM2ULONG(rb_gtype);
2431
+ }
2432
+
2399
2433
  GIArgument *
2400
2434
  rb_gi_value_argument_from_ruby(GIArgument *argument, GITypeInfo *type_info,
2401
2435
  VALUE rb_argument, VALUE self)
@@ -2443,8 +2477,7 @@ rb_gi_value_argument_from_ruby(GIArgument *argument, GITypeInfo *type_info,
2443
2477
  argument->v_double = NUM2DBL(rb_argument);
2444
2478
  break;
2445
2479
  case GI_TYPE_TAG_GTYPE:
2446
- /* TODO: support GLib::Type and String as GType name. */
2447
- argument->v_size = NUM2ULONG(rb_argument);
2480
+ argument->v_size = rb_gi_value_argument_from_ruby_gtype(rb_argument);
2448
2481
  break;
2449
2482
  case GI_TYPE_TAG_UTF8:
2450
2483
  /* TODO: support UTF-8 convert like rb_argument.encode("UTF-8"). */
@@ -236,6 +236,17 @@ rg_s_reference_gobject(int argc, VALUE *argv, G_GNUC_UNUSED VALUE klass)
236
236
  return Qnil;
237
237
  }
238
238
 
239
+ static VALUE
240
+ rg_s_instantiate_gobject_pointer(G_GNUC_UNUSED VALUE klass,
241
+ VALUE rb_gobject_pointer)
242
+ {
243
+ GObject *gobject;
244
+
245
+ gobject = GUINT_TO_POINTER(NUM2ULONG(rb_gobject_pointer));
246
+
247
+ return GOBJ2RVAL(gobject);
248
+ }
249
+
239
250
  void
240
251
  rb_gi_loader_init(VALUE rb_mGI)
241
252
  {
@@ -253,4 +264,5 @@ rb_gi_loader_init(VALUE rb_mGI)
253
264
  RG_DEF_SMETHOD(register_constant_rename_map, 2);
254
265
  RG_DEF_SMETHOD(start_callback_dispatch_thread, 0);
255
266
  RG_DEF_SMETHOD(reference_gobject, -1);
267
+ RG_DEF_SMETHOD(instantiate_gobject_pointer, 1);
256
268
  }
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gobject-introspection
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 3.0.2
5
5
  platform: x86-mingw32
6
6
  authors:
7
7
  - The Ruby-GNOME2 Project Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-11 00:00:00.000000000 Z
11
+ date: 2015-09-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: glib2
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 3.0.1
19
+ version: 3.0.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 3.0.1
26
+ version: 3.0.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: test-unit
29
29
  requirement: !ruby/object:Gem::Requirement