gio2 0.90.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. data/ChangeLog +60 -0
  2. data/README +34 -0
  3. data/Rakefile +76 -0
  4. data/ext/gio2/depend +5 -0
  5. data/ext/gio2/extconf.rb +91 -0
  6. data/ext/gio2/gappinfo.c +318 -0
  7. data/ext/gio2/gapplaunchcontext.c +79 -0
  8. data/ext/gio2/gasyncinitable.c +244 -0
  9. data/ext/gio2/gasyncresult.c +39 -0
  10. data/ext/gio2/gbufferedinputstream.c +184 -0
  11. data/ext/gio2/gbufferedoutputstream.c +82 -0
  12. data/ext/gio2/gcancellable.c +177 -0
  13. data/ext/gio2/gcharsetconverter.c +72 -0
  14. data/ext/gio2/gcontenttype.c +135 -0
  15. data/ext/gio2/gconverter.c +117 -0
  16. data/ext/gio2/gconverterinputstream.c +48 -0
  17. data/ext/gio2/gconverteroutputstream.c +48 -0
  18. data/ext/gio2/gdatainputstream.c +341 -0
  19. data/ext/gio2/gdataoutputstream.c +202 -0
  20. data/ext/gio2/gdesktopappinfo.c +90 -0
  21. data/ext/gio2/gdrive.c +267 -0
  22. data/ext/gio2/gemblem.c +71 -0
  23. data/ext/gio2/gemblemedicon.c +63 -0
  24. data/ext/gio2/gfile.c +2058 -0
  25. data/ext/gio2/gfileattribute.c +263 -0
  26. data/ext/gio2/gfileattributematcher.c +90 -0
  27. data/ext/gio2/gfiledescriptorbased.c +42 -0
  28. data/ext/gio2/gfileenumerator.c +167 -0
  29. data/ext/gio2/gfileicon.c +46 -0
  30. data/ext/gio2/gfileinfo.c +641 -0
  31. data/ext/gio2/gfileinputstream.c +92 -0
  32. data/ext/gio2/gfileiostream.c +98 -0
  33. data/ext/gio2/gfilemonitor.c +63 -0
  34. data/ext/gio2/gfilenamecompleter.c +72 -0
  35. data/ext/gio2/gfileoutputstream.c +100 -0
  36. data/ext/gio2/gfilterinputstream.c +56 -0
  37. data/ext/gio2/gfilteroutputstream.c +56 -0
  38. data/ext/gio2/gicon.c +69 -0
  39. data/ext/gio2/ginetaddress.c +188 -0
  40. data/ext/gio2/ginetsocketaddress.c +54 -0
  41. data/ext/gio2/ginitable.c +195 -0
  42. data/ext/gio2/ginputstream.c +341 -0
  43. data/ext/gio2/gio2.c +120 -0
  44. data/ext/gio2/gio2.def +2 -0
  45. data/ext/gio2/gio2.h +343 -0
  46. data/ext/gio2/gioerror.c +67 -0
  47. data/ext/gio2/giomodule.c +63 -0
  48. data/ext/gio2/gioscheduler.c +195 -0
  49. data/ext/gio2/giostream.c +129 -0
  50. data/ext/gio2/gloadableicon.c +91 -0
  51. data/ext/gio2/gmemoryinputstream.c +65 -0
  52. data/ext/gio2/gmemoryoutputstream.c +65 -0
  53. data/ext/gio2/gmount.c +283 -0
  54. data/ext/gio2/gmountoperation.c +168 -0
  55. data/ext/gio2/gnetworkaddress.c +71 -0
  56. data/ext/gio2/gnetworkservice.c +64 -0
  57. data/ext/gio2/goutputstream.c +343 -0
  58. data/ext/gio2/gresolver.c +230 -0
  59. data/ext/gio2/gseekable.c +89 -0
  60. data/ext/gio2/gsimpleasyncresult.c +153 -0
  61. data/ext/gio2/gsocket.c +451 -0
  62. data/ext/gio2/gsocketaddress.c +45 -0
  63. data/ext/gio2/gsocketclient.c +273 -0
  64. data/ext/gio2/gsocketconnectable.c +97 -0
  65. data/ext/gio2/gsocketconnection.c +82 -0
  66. data/ext/gio2/gsocketcontrolmessage.c +82 -0
  67. data/ext/gio2/gsocketlistener.c +239 -0
  68. data/ext/gio2/gsocketservice.c +64 -0
  69. data/ext/gio2/gsrvtarget.c +77 -0
  70. data/ext/gio2/gtcpconnection.c +48 -0
  71. data/ext/gio2/gthemedicon.c +86 -0
  72. data/ext/gio2/gthreadedsocketservice.c +39 -0
  73. data/ext/gio2/gunixconnection.c +69 -0
  74. data/ext/gio2/gunixfdlist.c +112 -0
  75. data/ext/gio2/gunixfdmessage.c +81 -0
  76. data/ext/gio2/gunixinputstream.c +73 -0
  77. data/ext/gio2/gunixmounts.c +346 -0
  78. data/ext/gio2/gunixoutputstream.c +73 -0
  79. data/ext/gio2/gunixsocketaddress.c +79 -0
  80. data/ext/gio2/gvfs.c +84 -0
  81. data/ext/gio2/gvolume.c +191 -0
  82. data/ext/gio2/gvolumemonitor.c +77 -0
  83. data/ext/gio2/gzlibcompressor.c +47 -0
  84. data/ext/gio2/gzlibdecompressor.c +43 -0
  85. data/ext/gio2/util.c +323 -0
  86. data/extconf.rb +49 -0
  87. data/lib/gio2.rb +141 -0
  88. metadata +184 -0
@@ -0,0 +1,230 @@
1
+ /* -*- c-file-style: "ruby" -*- */
2
+ /*
3
+ * Ruby/GIO: a Ruby binding of gio-2.0.x.
4
+ * Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
+ */
20
+
21
+ #include "gio2.h"
22
+
23
+ #define _SELF(value) G_RESOLVER(RVAL2GOBJ(value))
24
+
25
+ static VALUE
26
+ resolver_get_default(G_GNUC_UNUSED VALUE self)
27
+ {
28
+ return GOBJ2RVAL_UNREF(g_resolver_get_default());
29
+ }
30
+
31
+ static VALUE
32
+ resolver_set_default(G_GNUC_UNUSED VALUE self, VALUE resolver)
33
+ {
34
+ g_resolver_set_default(_SELF(resolver));
35
+
36
+ return self;
37
+ }
38
+
39
+ static VALUE
40
+ resolver_lookup_by_name(VALUE self, VALUE hostname, VALUE cancellable)
41
+ {
42
+ GError *error = NULL;
43
+ GList *addresses;
44
+
45
+ addresses = g_resolver_lookup_by_name(_SELF(self),
46
+ RVAL2CSTR(hostname),
47
+ RVAL2GCANCELLABLE(cancellable),
48
+ &error);
49
+ if (addresses == NULL)
50
+ rbgio_raise_error(error);
51
+
52
+ return GLIST2ARY_UNREF_FREE(addresses);
53
+ }
54
+
55
+ static VALUE
56
+ resolver_lookup_by_name_async(int argc, VALUE *argv, VALUE self)
57
+ {
58
+ VALUE rbhostname, rbcancellable, block;
59
+ const gchar *hostname;
60
+ GCancellable *cancellable;
61
+
62
+ rb_scan_args(argc, argv, "11&", &hostname, &rbcancellable, &block);
63
+ hostname = RVAL2CSTR(rbhostname);
64
+ cancellable = RVAL2GCANCELLABLE(rbcancellable);
65
+ SAVE_BLOCK(block);
66
+ g_resolver_lookup_by_name_async(_SELF(self),
67
+ hostname,
68
+ cancellable,
69
+ rbgio_async_ready_callback,
70
+ (gpointer)block);
71
+
72
+ return self;
73
+ }
74
+
75
+ static VALUE
76
+ resolver_lookup_by_name_finish(VALUE self, VALUE result)
77
+ {
78
+ GError *error = NULL;
79
+ GList *addresses;
80
+
81
+ addresses = g_resolver_lookup_by_name_finish(_SELF(self),
82
+ RVAL2GASYNCRESULT(result),
83
+ &error);
84
+ if (addresses == NULL)
85
+ rbgio_raise_error(error);
86
+
87
+ return GLIST2ARY_UNREF_FREE(addresses);
88
+ }
89
+
90
+ static VALUE
91
+ resolver_lookup_by_address(int argc, VALUE *argv, VALUE self)
92
+ {
93
+ VALUE address, cancellable;
94
+ GError *error = NULL;
95
+ gchar *hostname;
96
+
97
+ rb_scan_args(argc, argv, "11", &address, &cancellable);
98
+ hostname = g_resolver_lookup_by_address(_SELF(self),
99
+ RVAL2GINETADDRESS(address),
100
+ RVAL2GCANCELLABLE(cancellable),
101
+ &error);
102
+ if (hostname == NULL)
103
+ rbgio_raise_error(error);
104
+
105
+ return CSTR2RVAL_FREE(hostname);
106
+ }
107
+
108
+ static VALUE
109
+ resolver_lookup_by_address_async(int argc, VALUE *argv, VALUE self)
110
+ {
111
+ VALUE rbaddress, rbcancellable, block;
112
+ GInetAddress *address;
113
+ GCancellable *cancellable;
114
+
115
+ rb_scan_args(argc, argv, "11&", &rbaddress, &rbcancellable, &block);
116
+ address = RVAL2GINETADDRESS(rbaddress);
117
+ cancellable = RVAL2GCANCELLABLE(rbcancellable);
118
+ SAVE_BLOCK(block);
119
+ g_resolver_lookup_by_address_async(_SELF(self),
120
+ address,
121
+ cancellable,
122
+ rbgio_async_ready_callback,
123
+ (gpointer)block);
124
+
125
+ return self;
126
+ }
127
+
128
+ static VALUE
129
+ resolver_lookup_by_address_finish(VALUE self, VALUE result)
130
+ {
131
+ GError *error = NULL;
132
+ gchar *hostname;
133
+
134
+ hostname = g_resolver_lookup_by_address_finish(_SELF(self),
135
+ RVAL2GASYNCRESULT(result),
136
+ &error);
137
+ if (hostname == NULL)
138
+ rbgio_raise_error(error);
139
+
140
+ return CSTR2RVAL_FREE(hostname);
141
+ }
142
+
143
+ static VALUE
144
+ resolver_lookup_service(int argc, VALUE *argv, VALUE self)
145
+ {
146
+ VALUE service, protocol, domain, cancellable;
147
+ GError *error = NULL;
148
+ GList *targets;
149
+
150
+ rb_scan_args(argc, argv, "31", &service, &protocol, &domain, &cancellable);
151
+ targets = g_resolver_lookup_service(_SELF(self),
152
+ RVAL2CSTR(service),
153
+ RVAL2CSTR(protocol),
154
+ RVAL2CSTR(domain),
155
+ RVAL2GCANCELLABLE(cancellable),
156
+ &error);
157
+ if (targets == NULL)
158
+ rbgio_raise_error(error);
159
+
160
+ return GLIST2ARY_UNREF_FREE(targets);
161
+ }
162
+
163
+ static VALUE
164
+ resolver_lookup_service_async(int argc, VALUE *argv, VALUE self)
165
+ {
166
+ VALUE rbservice, rbprotocol, rbdomain, rbcancellable, block;
167
+ const gchar *service;
168
+ const gchar *protocol;
169
+ const gchar *domain;
170
+ GCancellable *cancellable;
171
+
172
+ rb_scan_args(argc, argv, "31&", &rbservice, &rbprotocol, &rbdomain, &rbcancellable, &block);
173
+ service = RVAL2CSTR(rbservice);
174
+ protocol = RVAL2CSTR(rbprotocol);
175
+ domain = RVAL2CSTR(rbdomain);
176
+ cancellable = RVAL2GCANCELLABLE(rbcancellable);
177
+ SAVE_BLOCK(block);
178
+ g_resolver_lookup_service_async(_SELF(self),
179
+ service,
180
+ protocol,
181
+ domain,
182
+ cancellable,
183
+ rbgio_async_ready_callback,
184
+ (gpointer)block);
185
+
186
+ return self;
187
+ }
188
+
189
+ static VALUE
190
+ resolver_lookup_service_finish(VALUE self, VALUE result)
191
+ {
192
+ GError *error = NULL;
193
+ GList *targets;
194
+
195
+ targets = g_resolver_lookup_service_finish(_SELF(self), RVAL2GASYNCRESULT(result), &error);
196
+ if (targets == NULL)
197
+ rbgio_raise_error(error);
198
+
199
+ return GLIST2ARY_UNREF_FREE(targets);
200
+ }
201
+
202
+ void
203
+ Init_gresolver(VALUE glib)
204
+ {
205
+ VALUE resolver, error;
206
+
207
+ resolver = G_DEF_CLASS(G_TYPE_RESOLVER, "Resolver", glib);
208
+
209
+ rb_define_singleton_method(resolver, "default", resolver_get_default, 0);
210
+ rb_define_singleton_method(resolver, "set_default", resolver_set_default, 1);
211
+
212
+ rb_undef_alloc_func(resolver);
213
+
214
+ /* TODO: Taint result of these methods? */
215
+ rb_define_method(resolver, "lookup_by_name", resolver_lookup_by_name, 2);
216
+ rb_define_method(resolver, "lookup_by_name_async", resolver_lookup_by_name_async, -1);
217
+ rb_define_method(resolver, "lookup_by_name_finish", resolver_lookup_by_name_finish, 1);
218
+ rb_define_method(resolver, "lookup_by_address", resolver_lookup_by_address, -1);
219
+ rb_define_method(resolver, "lookup_by_address_async", resolver_lookup_by_address_async, -1);
220
+ rb_define_method(resolver, "lookup_by_address_finish", resolver_lookup_by_address_finish, 1);
221
+ rb_define_method(resolver, "lookup_service", resolver_lookup_service, -1);
222
+ rb_define_method(resolver, "lookup_service_async", resolver_lookup_service_async, -1);
223
+ rb_define_method(resolver, "lookup_service_finish", resolver_lookup_service_finish, 1);
224
+
225
+ error = rbgio_define_domain_error(resolver, "Error", G_RESOLVER_ERROR, "GResolverErrorEnum", rb_eIOError);
226
+
227
+ rbgio_define_error(resolver, "NotFoundError", G_RESOLVER_ERROR_NOT_FOUND, error);
228
+ rbgio_define_error(resolver, "TemporaryFailureError", G_RESOLVER_ERROR_TEMPORARY_FAILURE, error);
229
+ rbgio_define_error(resolver, "InternalError", G_RESOLVER_ERROR_INTERNAL, error);
230
+ }
@@ -0,0 +1,89 @@
1
+ /* -*- c-file-style: "ruby" -*- */
2
+ /*
3
+ * Ruby/GIO: a Ruby binding of gio-2.0.x.
4
+ * Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
+ */
20
+
21
+ #include "gio2.h"
22
+
23
+ #define _SELF(value) G_SEEKABLE(RVAL2GOBJ(value))
24
+
25
+ #define RVAL2GSEEKTYPEDEFAULT(value) \
26
+ RVAL2TYPE_WITH_DEFAULT((value), NUM2INT, G_SEEK_CUR)
27
+
28
+ static VALUE
29
+ seekable_tell(VALUE self)
30
+ {
31
+ return GOFFSET2RVAL(g_seekable_tell(_SELF(self)));
32
+ }
33
+
34
+ static VALUE
35
+ seekable_can_seek(VALUE self)
36
+ {
37
+ return CBOOL2RVAL(g_seekable_can_seek(_SELF(self)));
38
+ }
39
+
40
+ static VALUE
41
+ seekable_seek(int argc, VALUE *argv, VALUE self)
42
+ {
43
+ VALUE offset, type, cancellable;
44
+ GError *error = NULL;
45
+
46
+ rb_scan_args(argc, argv, "12", &offset, &type, &cancellable);
47
+ if (!g_seekable_seek(_SELF(self),
48
+ RVAL2GOFFSET(offset),
49
+ RVAL2GSEEKTYPEDEFAULT(type),
50
+ RVAL2GCANCELLABLE(cancellable),
51
+ &error))
52
+ rbgio_raise_error(error);
53
+
54
+ return self;
55
+ }
56
+
57
+ static VALUE
58
+ seekable_can_truncate(VALUE self)
59
+ {
60
+ return CBOOL2RVAL(g_seekable_can_truncate(_SELF(self)));
61
+ }
62
+
63
+ static VALUE
64
+ seekable_truncate(int argc, VALUE *argv, VALUE self)
65
+ {
66
+ VALUE offset, cancellable;
67
+ GError *error = NULL;
68
+
69
+ rb_scan_args(argc, argv, "11", &offset, &cancellable);
70
+ if (!g_seekable_truncate(_SELF(self),
71
+ RVAL2GOFFSET(offset),
72
+ RVAL2GCANCELLABLE(cancellable),
73
+ &error))
74
+ rbgio_raise_error(error);
75
+
76
+ return self;
77
+ }
78
+
79
+ void
80
+ Init_gseekable(VALUE glib)
81
+ {
82
+ VALUE seekable = G_DEF_INTERFACE(G_TYPE_SEEKABLE, "Seekable", glib);
83
+
84
+ rb_define_method(seekable, "tell", seekable_tell, 0);
85
+ rb_define_method(seekable, "can_seek?", seekable_can_seek, 0);
86
+ rb_define_method(seekable, "seek", seekable_seek, -1);
87
+ rb_define_method(seekable, "can_truncate?", seekable_can_truncate, 0);
88
+ rb_define_method(seekable, "truncate", seekable_truncate, -1);
89
+ }
@@ -0,0 +1,153 @@
1
+ /* -*- c-file-style: "ruby" -*- */
2
+ /*
3
+ * Ruby/GIO: a Ruby binding of gio-2.0.x.
4
+ * Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
+ */
20
+
21
+ #include "gio2.h"
22
+
23
+ #define _SELF(value) G_SIMPLE_ASYNC_RESULT(RVAL2GOBJ(value))
24
+
25
+ static VALUE
26
+ simpleasyncresult_initialize(VALUE self, VALUE object)
27
+ {
28
+ VALUE block;
29
+
30
+ /* TODO: I have absolutely no idea if this makes sense. Should we even
31
+ * be providing this method? */
32
+ block = rb_block_proc();
33
+ SAVE_BLOCK(block);
34
+ G_INITIALIZE(self,
35
+ g_simple_async_result_new(RVAL2GOBJ(object),
36
+ rbgio_async_ready_callback,
37
+ (gpointer)block,
38
+ (gpointer)block));
39
+
40
+ return Qnil;
41
+ }
42
+
43
+ /* NOTE: Can’t implement g_simple_async_result_new_error. */
44
+
45
+ /* NOTE: Can’t implement g_simple_async_result_new_from_error. */
46
+
47
+ /* NOTE: Can’t implement g_simple_async_result_set_op_res_gpointer. */
48
+
49
+ /* NOTE: Can’t implement g_simple_async_result_get_op_res_gpointer. */
50
+
51
+ static VALUE
52
+ simpleasyncresult_set_op_res_gssize(VALUE self, VALUE op_res)
53
+ {
54
+ g_simple_async_result_set_op_res_gssize(_SELF(self),
55
+ RVAL2GSSIZE(op_res));
56
+
57
+ return self;
58
+ }
59
+
60
+ static VALUE
61
+ simpleasyncresult_get_op_res_gssize(VALUE self)
62
+ {
63
+ return GSSIZE2RVAL(g_simple_async_result_get_op_res_gssize(_SELF(self)));
64
+ }
65
+
66
+ static VALUE
67
+ simpleasyncresult_set_op_res_gboolean(VALUE self, VALUE op_res)
68
+ {
69
+ g_simple_async_result_set_op_res_gboolean(_SELF(self),
70
+ RVAL2CBOOL(op_res));
71
+
72
+ return self;
73
+ }
74
+
75
+ static VALUE
76
+ simpleasyncresult_get_op_res_gboolean(VALUE self)
77
+ {
78
+ return CBOOL2RVAL(g_simple_async_result_get_op_res_gboolean(_SELF(self)));
79
+ }
80
+
81
+ static VALUE
82
+ simpleasyncresult_get_source_tag(VALUE self)
83
+ {
84
+ return (VALUE)g_simple_async_result_get_source_tag(_SELF(self));
85
+ }
86
+
87
+ static VALUE
88
+ simpleasyncresult_is_valid(VALUE self, VALUE source, VALUE source_tag)
89
+ {
90
+ return CBOOL2RVAL(g_simple_async_result_is_valid(RVAL2GASYNCRESULT(self),
91
+ RVAL2GOBJ(source),
92
+ (gpointer)source_tag));
93
+ }
94
+
95
+ static VALUE
96
+ simpleasyncresult_set_handle_cancellation(VALUE self, VALUE handle_cancellation)
97
+ {
98
+ g_simple_async_result_set_handle_cancellation(_SELF(self),
99
+ RVAL2CBOOL(handle_cancellation));
100
+
101
+ return self;
102
+ }
103
+
104
+ static VALUE
105
+ simpleasyncresult_complete(VALUE self)
106
+ {
107
+ g_simple_async_result_complete(_SELF(self));
108
+
109
+ return self;
110
+ }
111
+
112
+ static VALUE
113
+ simpleasyncresult_complete_in_idle(VALUE self)
114
+ {
115
+ g_simple_async_result_complete_in_idle(_SELF(self));
116
+
117
+ return self;
118
+ }
119
+
120
+ /* TODO: Should we implement g_simple_async_result_run_in_thread? I’d say no,
121
+ * but I’m not sure. */
122
+
123
+ /* NOTE: Can’t implement g_simple_async_result_set_from_error. */
124
+
125
+ /* NOTE: Can’t implement g_simple_async_result_propagate_error. */
126
+
127
+ /* NOTE: Can’t implement g_simple_async_result_set_error. */
128
+
129
+ /* NOTE: Can’t implement g_simple_async_result_set_error_va. */
130
+
131
+ /* NOTE: Can’t implement g_simple_async_result_report_error_in_idle. */
132
+
133
+ /* NOTE: Can’t implement g_simple_async_result_report_gerror_in_idle. */
134
+
135
+ void
136
+ Init_gsimpleasyncresult(VALUE glib)
137
+ {
138
+ VALUE simpleasyncresult = G_DEF_CLASS(G_TYPE_SIMPLE_ASYNC_RESULT, "SimpleAsyncResult", glib);
139
+
140
+ rb_define_method(simpleasyncresult, "initialize", simpleasyncresult_initialize, 1);
141
+ rb_define_method(simpleasyncresult, "set_op_res_gssize", simpleasyncresult_set_op_res_gssize, 1);
142
+ G_DEF_SETTER(simpleasyncresult, "op_res_gssize");
143
+ rb_define_method(simpleasyncresult, "op_res_gssize", simpleasyncresult_get_op_res_gssize, 0);
144
+ rb_define_method(simpleasyncresult, "set_op_res_gboolean", simpleasyncresult_set_op_res_gboolean, 1);
145
+ G_DEF_SETTER(simpleasyncresult, "op_res_gboolean");
146
+ rb_define_method(simpleasyncresult, "op_res_gboolean", simpleasyncresult_get_op_res_gboolean, 0);
147
+ rb_define_method(simpleasyncresult, "source_tag", simpleasyncresult_get_source_tag, 0);
148
+ rb_define_method(simpleasyncresult, "valid?", simpleasyncresult_is_valid, 2);
149
+ rb_define_method(simpleasyncresult, "set_handle_cancellation", simpleasyncresult_set_handle_cancellation, 1);
150
+ G_DEF_SETTER(simpleasyncresult, "handle_cancellation");
151
+ rb_define_method(simpleasyncresult, "complete", simpleasyncresult_complete, 0);
152
+ rb_define_method(simpleasyncresult, "complete_in_idle", simpleasyncresult_complete_in_idle, 0);
153
+ }