gir_ffi 0.8.3 → 0.8.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Changelog.md +9 -1
- data/Gemfile +1 -1
- data/README.md +3 -2
- data/lib/ffi-glib/bytes.rb +0 -14
- data/lib/ffi-glib/hash_table.rb +0 -1
- data/lib/ffi-gobject/object.rb +7 -0
- data/lib/ffi-gobject_introspection/i_base_info.rb +4 -0
- data/lib/ffi-gobject_introspection/lib.rb +1 -0
- data/lib/gir_ffi/boxed_base.rb +2 -2
- data/lib/gir_ffi/builders/callback_argument_builder.rb +3 -1
- data/lib/gir_ffi/builders/closure_return_value_builder.rb +0 -1
- data/lib/gir_ffi/builders/module_builder.rb +9 -2
- data/lib/gir_ffi/builders/null_class_builder.rb +1 -0
- data/lib/gir_ffi/builders/registered_type_builder.rb +5 -1
- data/lib/gir_ffi/callback_base.rb +2 -2
- data/lib/gir_ffi/enum_base.rb +2 -2
- data/lib/gir_ffi/in_out_pointer.rb +1 -1
- data/lib/gir_ffi/info_ext/i_registered_type_info.rb +1 -1
- data/lib/gir_ffi/object_base.rb +24 -8
- data/lib/gir_ffi/sized_array.rb +2 -2
- data/lib/gir_ffi/version.rb +1 -1
- data/lib/gir_ffi/zero_terminated.rb +12 -1
- data/lib/gir_ffi-base/glib/boolean.rb +2 -2
- data/tasks/test.rake +25 -23
- data/test/base_test_helper.rb +3 -4
- data/test/ffi-gobject/object_test.rb +10 -4
- data/test/ffi-gobject_introspection/i_property_info_test.rb +3 -2
- data/test/gir_ffi/builders/module_builder_test.rb +26 -3
- data/test/gir_ffi/object_base_test.rb +2 -2
- data/test/integration/generated_everything_test.rb +428 -0
- data/test/integration/generated_gimarshallingtests_test.rb +17 -0
- data/test/integration/generated_gtop_test.rb +21 -0
- data/test/integration/generated_regress_test.rb +734 -0
- data/test/integration/generated_warnlib_test.rb +47 -0
- data/test/introspection_test_helper.rb +2 -0
- data/test/lib/Makefile.am +82 -16
- data/test/lib/configure.ac +3 -0
- metadata +5 -2
@@ -0,0 +1,428 @@
|
|
1
|
+
require 'gir_ffi_test_helper'
|
2
|
+
|
3
|
+
GirFFI.setup :Everything
|
4
|
+
|
5
|
+
describe Everything do
|
6
|
+
it 'has a working function #const_return_GType' do
|
7
|
+
Everything.const_return_GType.must_equal GObject::TYPE_OBJECT
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'has a working function #const_return_filename' do
|
11
|
+
Everything.const_return_filename.must_equal ''
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'has a working function #const_return_gboolean' do
|
15
|
+
Everything.const_return_gboolean.must_equal false
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'has a working function #const_return_gchar' do
|
19
|
+
Everything.const_return_gchar.must_equal 0
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'has a working function #const_return_gdouble' do
|
23
|
+
Everything.const_return_gdouble.must_equal 0
|
24
|
+
end
|
25
|
+
|
26
|
+
it 'has a working function #const_return_gfloat' do
|
27
|
+
Everything.const_return_gfloat.must_equal 0
|
28
|
+
end
|
29
|
+
|
30
|
+
it 'has a working function #const_return_gint' do
|
31
|
+
Everything.const_return_gint.must_equal 0
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'has a working function #const_return_gint16' do
|
35
|
+
Everything.const_return_gint16.must_equal 0
|
36
|
+
end
|
37
|
+
|
38
|
+
it 'has a working function #const_return_gint32' do
|
39
|
+
Everything.const_return_gint32.must_equal 0
|
40
|
+
end
|
41
|
+
|
42
|
+
it 'has a working function #const_return_gint64' do
|
43
|
+
Everything.const_return_gint64.must_equal 0
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'has a working function #const_return_gint8' do
|
47
|
+
Everything.const_return_gint8.must_equal 0
|
48
|
+
end
|
49
|
+
|
50
|
+
it 'has a working function #const_return_gintptr' do
|
51
|
+
Everything.const_return_gintptr.must_equal 0
|
52
|
+
end
|
53
|
+
|
54
|
+
it 'has a working function #const_return_glong' do
|
55
|
+
Everything.const_return_glong.must_equal 0
|
56
|
+
end
|
57
|
+
|
58
|
+
it 'has a working function #const_return_gshort' do
|
59
|
+
Everything.const_return_gshort.must_equal 0
|
60
|
+
end
|
61
|
+
|
62
|
+
it 'has a working function #const_return_gsize' do
|
63
|
+
Everything.const_return_gsize.must_equal 0
|
64
|
+
end
|
65
|
+
|
66
|
+
it 'has a working function #const_return_gssize' do
|
67
|
+
Everything.const_return_gssize.must_equal 0
|
68
|
+
end
|
69
|
+
|
70
|
+
it 'has a working function #const_return_guint' do
|
71
|
+
Everything.const_return_guint.must_equal 0
|
72
|
+
end
|
73
|
+
|
74
|
+
it 'has a working function #const_return_guint16' do
|
75
|
+
Everything.const_return_guint16.must_equal 0
|
76
|
+
end
|
77
|
+
|
78
|
+
it 'has a working function #const_return_guint32' do
|
79
|
+
Everything.const_return_guint32.must_equal 0
|
80
|
+
end
|
81
|
+
|
82
|
+
it 'has a working function #const_return_guint64' do
|
83
|
+
Everything.const_return_guint64.must_equal 0
|
84
|
+
end
|
85
|
+
|
86
|
+
it 'has a working function #const_return_guint8' do
|
87
|
+
Everything.const_return_guint8.must_equal 0
|
88
|
+
end
|
89
|
+
|
90
|
+
it 'has a working function #const_return_guintptr' do
|
91
|
+
Everything.const_return_guintptr.must_equal 0
|
92
|
+
end
|
93
|
+
|
94
|
+
it 'has a working function #const_return_gulong' do
|
95
|
+
Everything.const_return_gulong.must_equal 0
|
96
|
+
end
|
97
|
+
|
98
|
+
it 'has a working function #const_return_gunichar' do
|
99
|
+
Everything.const_return_gunichar.must_equal 0
|
100
|
+
end
|
101
|
+
|
102
|
+
it 'has a working function #const_return_gushort' do
|
103
|
+
Everything.const_return_gushort.must_equal 0
|
104
|
+
end
|
105
|
+
|
106
|
+
it 'has a working function #const_return_utf8' do
|
107
|
+
Everything.const_return_utf8.must_equal ''
|
108
|
+
end
|
109
|
+
|
110
|
+
it 'has a working function #nullfunc' do
|
111
|
+
Everything.nullfunc.must_be_nil
|
112
|
+
end
|
113
|
+
|
114
|
+
it 'has a working function #one_outparam_GType' do
|
115
|
+
Everything.one_outparam_GType.must_equal 0
|
116
|
+
end
|
117
|
+
|
118
|
+
it 'has a working function #one_outparam_filename' do
|
119
|
+
# NOTE: This function stores a null pointer in its output parameter.
|
120
|
+
Everything.one_outparam_filename.must_be_nil
|
121
|
+
end
|
122
|
+
|
123
|
+
it 'has a working function #one_outparam_gboolean' do
|
124
|
+
Everything.one_outparam_gboolean.must_equal false
|
125
|
+
end
|
126
|
+
|
127
|
+
it 'has a working function #one_outparam_gchar' do
|
128
|
+
skip 'GIR gives the incorrect type: utf8 instead of gchar'
|
129
|
+
Everything.one_outparam_gchar.must_equal 0
|
130
|
+
end
|
131
|
+
|
132
|
+
it 'has a working function #one_outparam_gdouble' do
|
133
|
+
Everything.one_outparam_gdouble.must_equal 0
|
134
|
+
end
|
135
|
+
|
136
|
+
it 'has a working function #one_outparam_gfloat' do
|
137
|
+
Everything.one_outparam_gfloat.must_equal 0
|
138
|
+
end
|
139
|
+
|
140
|
+
it 'has a working function #one_outparam_gint' do
|
141
|
+
Everything.one_outparam_gint.must_equal 0
|
142
|
+
end
|
143
|
+
|
144
|
+
it 'has a working function #one_outparam_gint16' do
|
145
|
+
Everything.one_outparam_gint16.must_equal 0
|
146
|
+
end
|
147
|
+
|
148
|
+
it 'has a working function #one_outparam_gint32' do
|
149
|
+
Everything.one_outparam_gint32.must_equal 0
|
150
|
+
end
|
151
|
+
|
152
|
+
it 'has a working function #one_outparam_gint64' do
|
153
|
+
Everything.one_outparam_gint64.must_equal 0
|
154
|
+
end
|
155
|
+
|
156
|
+
it 'has a working function #one_outparam_gint8' do
|
157
|
+
Everything.one_outparam_gint8.must_equal 0
|
158
|
+
end
|
159
|
+
|
160
|
+
it 'has a working function #one_outparam_gintptr' do
|
161
|
+
Everything.one_outparam_gintptr.must_equal 0
|
162
|
+
end
|
163
|
+
|
164
|
+
it 'has a working function #one_outparam_glong' do
|
165
|
+
Everything.one_outparam_glong.must_equal 0
|
166
|
+
end
|
167
|
+
|
168
|
+
it 'has a working function #one_outparam_gshort' do
|
169
|
+
Everything.one_outparam_gshort.must_equal 0
|
170
|
+
end
|
171
|
+
|
172
|
+
it 'has a working function #one_outparam_gsize' do
|
173
|
+
Everything.one_outparam_gsize.must_equal 0
|
174
|
+
end
|
175
|
+
|
176
|
+
it 'has a working function #one_outparam_gssize' do
|
177
|
+
Everything.one_outparam_gssize.must_equal 0
|
178
|
+
end
|
179
|
+
|
180
|
+
it 'has a working function #one_outparam_guint' do
|
181
|
+
Everything.one_outparam_guint.must_equal 0
|
182
|
+
end
|
183
|
+
|
184
|
+
it 'has a working function #one_outparam_guint16' do
|
185
|
+
Everything.one_outparam_guint16.must_equal 0
|
186
|
+
end
|
187
|
+
|
188
|
+
it 'has a working function #one_outparam_guint32' do
|
189
|
+
Everything.one_outparam_guint32.must_equal 0
|
190
|
+
end
|
191
|
+
|
192
|
+
it 'has a working function #one_outparam_guint64' do
|
193
|
+
Everything.one_outparam_guint64.must_equal 0
|
194
|
+
end
|
195
|
+
|
196
|
+
it 'has a working function #one_outparam_guint8' do
|
197
|
+
Everything.one_outparam_guint8.must_equal 0
|
198
|
+
end
|
199
|
+
|
200
|
+
it 'has a working function #one_outparam_guintptr' do
|
201
|
+
Everything.one_outparam_guintptr.must_equal 0
|
202
|
+
end
|
203
|
+
|
204
|
+
it 'has a working function #one_outparam_gulong' do
|
205
|
+
Everything.one_outparam_gulong.must_equal 0
|
206
|
+
end
|
207
|
+
|
208
|
+
it 'has a working function #one_outparam_gunichar' do
|
209
|
+
Everything.one_outparam_gunichar.must_equal 0
|
210
|
+
end
|
211
|
+
|
212
|
+
it 'has a working function #one_outparam_gushort' do
|
213
|
+
Everything.one_outparam_gushort.must_equal 0
|
214
|
+
end
|
215
|
+
|
216
|
+
it 'has a working function #one_outparam_utf8' do
|
217
|
+
# NOTE: This function stores a null pointer in its output parameter.
|
218
|
+
Everything.one_outparam_utf8.must_be_nil
|
219
|
+
end
|
220
|
+
|
221
|
+
it 'has a working function #oneparam_GType' do
|
222
|
+
Everything.oneparam_GType(0).must_be_nil
|
223
|
+
end
|
224
|
+
|
225
|
+
it 'has a working function #oneparam_filename' do
|
226
|
+
Everything.oneparam_filename('').must_be_nil
|
227
|
+
end
|
228
|
+
|
229
|
+
it 'has a working function #oneparam_gboolean' do
|
230
|
+
Everything.oneparam_gboolean(false).must_be_nil
|
231
|
+
end
|
232
|
+
|
233
|
+
it 'has a working function #oneparam_gchar' do
|
234
|
+
Everything.oneparam_gchar(0).must_be_nil
|
235
|
+
end
|
236
|
+
|
237
|
+
it 'has a working function #oneparam_gdouble' do
|
238
|
+
Everything.oneparam_gdouble(0.0).must_be_nil
|
239
|
+
end
|
240
|
+
|
241
|
+
it 'has a working function #oneparam_gfloat' do
|
242
|
+
Everything.oneparam_gfloat(0.0).must_be_nil
|
243
|
+
end
|
244
|
+
|
245
|
+
it 'has a working function #oneparam_gint' do
|
246
|
+
Everything.oneparam_gint(0).must_be_nil
|
247
|
+
end
|
248
|
+
|
249
|
+
it 'has a working function #oneparam_gint16' do
|
250
|
+
Everything.oneparam_gint16(0).must_be_nil
|
251
|
+
end
|
252
|
+
|
253
|
+
it 'has a working function #oneparam_gint32' do
|
254
|
+
Everything.oneparam_gint32(0).must_be_nil
|
255
|
+
end
|
256
|
+
|
257
|
+
it 'has a working function #oneparam_gint64' do
|
258
|
+
Everything.oneparam_gint64(0).must_be_nil
|
259
|
+
end
|
260
|
+
|
261
|
+
it 'has a working function #oneparam_gint8' do
|
262
|
+
Everything.oneparam_gint8(0).must_be_nil
|
263
|
+
end
|
264
|
+
|
265
|
+
it 'has a working function #oneparam_gintptr' do
|
266
|
+
Everything.oneparam_gintptr(0).must_be_nil
|
267
|
+
end
|
268
|
+
|
269
|
+
it 'has a working function #oneparam_glong' do
|
270
|
+
Everything.oneparam_glong(0).must_be_nil
|
271
|
+
end
|
272
|
+
|
273
|
+
it 'has a working function #oneparam_gshort' do
|
274
|
+
Everything.oneparam_gshort(0).must_be_nil
|
275
|
+
end
|
276
|
+
|
277
|
+
it 'has a working function #oneparam_gsize' do
|
278
|
+
Everything.oneparam_gsize(0).must_be_nil
|
279
|
+
end
|
280
|
+
|
281
|
+
it 'has a working function #oneparam_gssize' do
|
282
|
+
Everything.oneparam_gssize(0).must_be_nil
|
283
|
+
end
|
284
|
+
|
285
|
+
it 'has a working function #oneparam_guint' do
|
286
|
+
Everything.oneparam_guint(0).must_be_nil
|
287
|
+
end
|
288
|
+
|
289
|
+
it 'has a working function #oneparam_guint16' do
|
290
|
+
Everything.oneparam_guint16(0).must_be_nil
|
291
|
+
end
|
292
|
+
|
293
|
+
it 'has a working function #oneparam_guint32' do
|
294
|
+
Everything.oneparam_guint32(0).must_be_nil
|
295
|
+
end
|
296
|
+
|
297
|
+
it 'has a working function #oneparam_guint64' do
|
298
|
+
Everything.oneparam_guint64(0).must_be_nil
|
299
|
+
end
|
300
|
+
|
301
|
+
it 'has a working function #oneparam_guint8' do
|
302
|
+
Everything.oneparam_guint8(0).must_be_nil
|
303
|
+
end
|
304
|
+
|
305
|
+
it 'has a working function #oneparam_guintptr' do
|
306
|
+
Everything.oneparam_guintptr(0).must_be_nil
|
307
|
+
end
|
308
|
+
|
309
|
+
it 'has a working function #oneparam_gulong' do
|
310
|
+
Everything.oneparam_gulong(0).must_be_nil
|
311
|
+
end
|
312
|
+
|
313
|
+
it 'has a working function #oneparam_gunichar' do
|
314
|
+
Everything.oneparam_gunichar(0).must_be_nil
|
315
|
+
end
|
316
|
+
|
317
|
+
it 'has a working function #oneparam_gushort' do
|
318
|
+
Everything.oneparam_gushort(0).must_be_nil
|
319
|
+
end
|
320
|
+
|
321
|
+
it 'has a working function #oneparam_utf8' do
|
322
|
+
Everything.oneparam_utf8('').must_be_nil
|
323
|
+
end
|
324
|
+
|
325
|
+
it 'has a working function #passthrough_one_GType' do
|
326
|
+
Everything.passthrough_one_GType(GObject::TYPE_OBJECT).must_equal GObject::TYPE_OBJECT
|
327
|
+
end
|
328
|
+
|
329
|
+
it 'has a working function #passthrough_one_filename' do
|
330
|
+
Everything.passthrough_one_filename('foo').must_equal 'foo'
|
331
|
+
end
|
332
|
+
|
333
|
+
it 'has a working function #passthrough_one_gboolean' do
|
334
|
+
Everything.passthrough_one_gboolean(true).must_equal true
|
335
|
+
end
|
336
|
+
|
337
|
+
it 'has a working function #passthrough_one_gchar' do
|
338
|
+
Everything.passthrough_one_gchar(42).must_equal 42
|
339
|
+
end
|
340
|
+
|
341
|
+
it 'has a working function #passthrough_one_gdouble' do
|
342
|
+
Everything.passthrough_one_gdouble(23.42).must_equal 23.42
|
343
|
+
end
|
344
|
+
|
345
|
+
it 'has a working function #passthrough_one_gfloat' do
|
346
|
+
Everything.passthrough_one_gfloat(23.42).must_be_close_to 23.42
|
347
|
+
end
|
348
|
+
|
349
|
+
it 'has a working function #passthrough_one_gint' do
|
350
|
+
Everything.passthrough_one_gint(42).must_equal 42
|
351
|
+
end
|
352
|
+
|
353
|
+
it 'has a working function #passthrough_one_gint16' do
|
354
|
+
Everything.passthrough_one_gint16(42).must_equal 42
|
355
|
+
end
|
356
|
+
|
357
|
+
it 'has a working function #passthrough_one_gint32' do
|
358
|
+
Everything.passthrough_one_gint32(42).must_equal 42
|
359
|
+
end
|
360
|
+
|
361
|
+
it 'has a working function #passthrough_one_gint64' do
|
362
|
+
Everything.passthrough_one_gint64(42).must_equal 42
|
363
|
+
end
|
364
|
+
|
365
|
+
it 'has a working function #passthrough_one_gint8' do
|
366
|
+
Everything.passthrough_one_gint8(42).must_equal 42
|
367
|
+
end
|
368
|
+
|
369
|
+
it 'has a working function #passthrough_one_gintptr' do
|
370
|
+
Everything.passthrough_one_gintptr(42).must_equal 42
|
371
|
+
end
|
372
|
+
|
373
|
+
it 'has a working function #passthrough_one_glong' do
|
374
|
+
Everything.passthrough_one_glong(42).must_equal 42
|
375
|
+
end
|
376
|
+
|
377
|
+
it 'has a working function #passthrough_one_gshort' do
|
378
|
+
Everything.passthrough_one_gshort(42).must_equal 42
|
379
|
+
end
|
380
|
+
|
381
|
+
it 'has a working function #passthrough_one_gsize' do
|
382
|
+
Everything.passthrough_one_gsize(42).must_equal 42
|
383
|
+
end
|
384
|
+
|
385
|
+
it 'has a working function #passthrough_one_gssize' do
|
386
|
+
Everything.passthrough_one_gssize(42).must_equal 42
|
387
|
+
end
|
388
|
+
|
389
|
+
it 'has a working function #passthrough_one_guint' do
|
390
|
+
Everything.passthrough_one_guint(42).must_equal 42
|
391
|
+
end
|
392
|
+
|
393
|
+
it 'has a working function #passthrough_one_guint16' do
|
394
|
+
Everything.passthrough_one_guint16(42).must_equal 42
|
395
|
+
end
|
396
|
+
|
397
|
+
it 'has a working function #passthrough_one_guint32' do
|
398
|
+
Everything.passthrough_one_guint32(42).must_equal 42
|
399
|
+
end
|
400
|
+
|
401
|
+
it 'has a working function #passthrough_one_guint64' do
|
402
|
+
Everything.passthrough_one_guint64(42).must_equal 42
|
403
|
+
end
|
404
|
+
|
405
|
+
it 'has a working function #passthrough_one_guint8' do
|
406
|
+
Everything.passthrough_one_guint8(42).must_equal 42
|
407
|
+
end
|
408
|
+
|
409
|
+
it 'has a working function #passthrough_one_guintptr' do
|
410
|
+
Everything.passthrough_one_guintptr(42).must_equal 42
|
411
|
+
end
|
412
|
+
|
413
|
+
it 'has a working function #passthrough_one_gulong' do
|
414
|
+
Everything.passthrough_one_gulong(42).must_equal 42
|
415
|
+
end
|
416
|
+
|
417
|
+
it 'has a working function #passthrough_one_gunichar' do
|
418
|
+
Everything.passthrough_one_gunichar(42).must_equal 42
|
419
|
+
end
|
420
|
+
|
421
|
+
it 'has a working function #passthrough_one_gushort' do
|
422
|
+
Everything.passthrough_one_gushort(42).must_equal 42
|
423
|
+
end
|
424
|
+
|
425
|
+
it 'has a working function #passthrough_one_utf8' do
|
426
|
+
Everything.passthrough_one_utf8('42').must_equal '42'
|
427
|
+
end
|
428
|
+
end
|
@@ -226,6 +226,18 @@ describe GIMarshallingTests do
|
|
226
226
|
end
|
227
227
|
end
|
228
228
|
|
229
|
+
describe 'GIMarshallingTests::InterfaceImpl' do
|
230
|
+
before do
|
231
|
+
skip unless get_introspection_data 'GIMarshallingTests', 'InterfaceImpl'
|
232
|
+
end
|
233
|
+
|
234
|
+
it 'has a working method #get_as_interface' do
|
235
|
+
obj = GIMarshallingTests::InterfaceImpl.new []
|
236
|
+
result = obj.get_as_interface
|
237
|
+
result.must_be_kind_of GIMarshallingTests::Interface
|
238
|
+
end
|
239
|
+
end
|
240
|
+
|
229
241
|
describe 'GIMarshallingTests::NestedStruct' do
|
230
242
|
let(:instance) { GIMarshallingTests::NestedStruct.new }
|
231
243
|
it 'has a writable field simple_struct' do
|
@@ -278,6 +290,11 @@ describe GIMarshallingTests do
|
|
278
290
|
assert_equal 42, ob.int
|
279
291
|
end
|
280
292
|
|
293
|
+
it 'fails to create an instance using #new_fail' do
|
294
|
+
skip unless get_method_introspection_data('GIMarshallingTests', 'Object', 'new_fail')
|
295
|
+
proc { GIMarshallingTests::Object.new_fail 42 }.must_raise GirFFI::GLibError
|
296
|
+
end
|
297
|
+
|
281
298
|
it 'has a working function #full_inout' do
|
282
299
|
ob = GIMarshallingTests::Object.new 42
|
283
300
|
ref_count(ob).must_equal 1
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'gir_ffi_test_helper'
|
2
|
+
|
3
|
+
# Tests generated methods and functions in the GTop namespace. This namespace
|
4
|
+
# contains types with bad names, like 'glibtop_cpu'.
|
5
|
+
describe 'The generated GTop module' do
|
6
|
+
before do
|
7
|
+
GirFFI.setup :GTop
|
8
|
+
end
|
9
|
+
|
10
|
+
describe 'Glibtop' do
|
11
|
+
it 'is a valid struct class' do
|
12
|
+
GTop::Glibtop.ancestors.must_include GirFFI::StructBase
|
13
|
+
end
|
14
|
+
|
15
|
+
it 'can be created using Glibtop.init' do
|
16
|
+
skip unless get_method_introspection_data 'GTop', 'glibtop', 'init'
|
17
|
+
instance = GTop::Glibtop.init
|
18
|
+
instance.must_be_kind_of GTop::Glibtop
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|