glib2 4.2.4 → 4.2.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -3
- data/Rakefile +2 -2
- data/ext/glib2/extconf.rb +2 -2
- data/ext/glib2/glib2.def +2 -5
- data/ext/glib2/rbglib-variant.c +1 -1
- data/ext/glib2/rbglib.c +10 -7
- data/ext/glib2/rbglib.h +12 -45
- data/ext/glib2/rbglib_fileutils.c +5 -4
- data/ext/glib2/rbglib_int64.c +9 -125
- data/ext/glib2/rbglib_maincontext.c +12 -21
- data/ext/glib2/rbglib_unichar.c +31 -31
- data/ext/glib2/rbglib_unicode.c +2 -2
- data/ext/glib2/rbglib_utils.c +2 -2
- data/ext/glib2/rbglib_win32.c +4 -4
- data/ext/glib2/rbgobj_boxed.c +7 -7
- data/ext/glib2/rbgobj_enums.c +3 -4
- data/ext/glib2/rbgobj_flags.c +11 -11
- data/ext/glib2/rbgobj_object.c +99 -113
- data/ext/glib2/rbgobj_param.c +24 -24
- data/ext/glib2/rbgobj_paramspecs.c +18 -18
- data/ext/glib2/rbgobj_signal.c +26 -26
- data/ext/glib2/rbgobj_type.c +11 -19
- data/ext/glib2/rbgobj_typeinstance.c +88 -4
- data/ext/glib2/rbgobj_typeinterface.c +6 -6
- data/ext/glib2/rbgobj_value.c +14 -5
- data/ext/glib2/rbgobj_valuetypes.c +5 -5
- data/ext/glib2/rbgobject.c +20 -7
- data/ext/glib2/rbgobject.h +1 -2
- data/ext/glib2/rbgprivate.h +5 -2
- data/ext/glib2/rbgutil.c +20 -37
- data/ext/glib2/rbgutil.h +25 -7
- data/lib/glib2/deprecated.rb +11 -1
- data/lib/glib2/value.rb +46 -0
- data/lib/glib2.rb +2 -1
- data/test/test-glib2.rb +7 -6
- data/test/test-value.rb +38 -3
- data/test/test-variant.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e278dde163e8d497ede015df6d5b274379bfe750ac7ffd56da075f131788363d
|
4
|
+
data.tar.gz: 8eb2125a49ae54dab3551f626e3ed16cba35637782f0237094ec9408f3afe3eb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 213be1775836e0fc704ecda13ccc0acec168a663c7d7febcf469ad09231d6a61e6096e980fdbbc7187001024dff57dcc43e43f9620f6cc51241e3664b57f0f6d
|
7
|
+
data.tar.gz: 1b3d657906865e78ef16f13585f8c32c5881f59096496c076c178df2ec653068dda7d2529d75266d203639172dd87e7e673ac01c661185bb3e3cf651c57f41e2
|
data/README.md
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
# Ruby/GLib2
|
2
2
|
|
3
|
-
Ruby/GLib2 is a Ruby binding of GLib 2.
|
3
|
+
Ruby/GLib2 is a Ruby binding of GLib 2.56 or later.
|
4
4
|
|
5
5
|
## Requirements
|
6
6
|
|
7
7
|
* Ruby >= 2.5: https://www.ruby-lang.org/
|
8
8
|
* pkg-config.rb: https://github.com/ruby-gnome/pkg-config
|
9
|
-
* GLib >= 2.
|
9
|
+
* GLib >= 2.56: https://www.gtk.org/
|
10
10
|
|
11
11
|
## Install
|
12
12
|
|
@@ -16,7 +16,7 @@ gem install glib2
|
|
16
16
|
|
17
17
|
## Copying
|
18
18
|
|
19
|
-
Copyright (
|
19
|
+
Copyright (C) 2002-2025 Ruby-GNOME Project Team
|
20
20
|
|
21
21
|
This program is free software.
|
22
22
|
You can distribute/modify this program under the terms of
|
data/Rakefile
CHANGED
@@ -19,10 +19,10 @@
|
|
19
19
|
base_dir = __dir__
|
20
20
|
|
21
21
|
$LOAD_PATH.unshift(File.join(base_dir, "lib"))
|
22
|
-
require "
|
22
|
+
require "gnome/rake/package-task"
|
23
23
|
|
24
24
|
package_name = File.basename(base_dir)
|
25
25
|
spec = Gem::Specification.load(File.join(base_dir, "#{package_name}.gemspec"))
|
26
26
|
|
27
|
-
|
27
|
+
GNOME::Rake::PackageTask.define(spec, __dir__) do |package|
|
28
28
|
end
|
data/ext/glib2/extconf.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright (C) 2002-
|
1
|
+
# Copyright (C) 2002-2025 Ruby-GNOME Project Team
|
2
2
|
#
|
3
3
|
# This library is free software; you can redistribute it and/or
|
4
4
|
# modify it under the terms of the GNU Lesser General Public
|
@@ -26,7 +26,7 @@ package_id = "gobject-2.0"
|
|
26
26
|
|
27
27
|
require "mkmf-gnome"
|
28
28
|
|
29
|
-
unless required_pkg_config_package([package_id, 2,
|
29
|
+
unless required_pkg_config_package([package_id, 2, 56, 0],
|
30
30
|
:alt_linux => "glib2-devel",
|
31
31
|
:arch_linux => "glib2",
|
32
32
|
:conda => "glib",
|
data/ext/glib2/glib2.def
CHANGED
@@ -20,7 +20,6 @@ EXPORTS
|
|
20
20
|
rbgobj_instance_unref
|
21
21
|
rbgobj_get_ruby_object_from_gobject
|
22
22
|
rbgobj_create_object
|
23
|
-
rbgobj_gobject_new
|
24
23
|
rbgobj_gobject_initialize
|
25
24
|
rbgobj_boxed_alloc_func
|
26
25
|
rbgobj_boxed_create
|
@@ -132,9 +131,8 @@ EXPORTS
|
|
132
131
|
rbg_gslist2rval_with_type
|
133
132
|
rbg_rval2glist
|
134
133
|
rbg_rval2gslist
|
135
|
-
|
136
|
-
|
137
|
-
rbg_define_singleton_method
|
134
|
+
rbg_define_setter_alias_if_need
|
135
|
+
rbg_define_singleton_setter_alias_if_need
|
138
136
|
rbg_to_array
|
139
137
|
rbg_to_hash
|
140
138
|
rbg_check_array_type
|
@@ -175,7 +173,6 @@ EXPORTS
|
|
175
173
|
rbglib_num_to_uint64
|
176
174
|
rbglib_uint64_to_num
|
177
175
|
rbglib_num_to_int64
|
178
|
-
rbglib_int64_to_num
|
179
176
|
rbg_variant_to_ruby
|
180
177
|
rbg_variant_from_ruby
|
181
178
|
rbg_variant_type_from_ruby
|
data/ext/glib2/rbglib-variant.c
CHANGED
data/ext/glib2/rbglib.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2025 Ruby-GNOME Project Team
|
4
4
|
* Copyright (C) 2002,2003 Masahiro Sakai
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -23,16 +23,18 @@
|
|
23
23
|
#include "rbgprivate.h"
|
24
24
|
#include "rbglib.h"
|
25
25
|
|
26
|
-
#define RG_TARGET_NAMESPACE
|
26
|
+
#define RG_TARGET_NAMESPACE rbg_mGLib()
|
27
27
|
|
28
28
|
static ID id_inspect;
|
29
29
|
|
30
|
-
VALUE
|
30
|
+
VALUE mGLib;
|
31
31
|
|
32
32
|
VALUE
|
33
33
|
rbg_mGLib(void)
|
34
34
|
{
|
35
|
-
|
35
|
+
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
36
|
+
return mGLib;
|
37
|
+
G_GNUC_END_IGNORE_DEPRECATIONS
|
36
38
|
}
|
37
39
|
|
38
40
|
const gchar *
|
@@ -1105,7 +1107,9 @@ Init_glib2(void)
|
|
1105
1107
|
|
1106
1108
|
id_inspect = rb_intern("inspect");
|
1107
1109
|
|
1108
|
-
|
1110
|
+
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
1111
|
+
mGLib = rb_define_module("GLib");
|
1112
|
+
G_GNUC_END_IGNORE_DEPRECATIONS
|
1109
1113
|
|
1110
1114
|
setlocale (LC_CTYPE, "");
|
1111
1115
|
#ifdef LC_MESSAGES
|
@@ -1157,7 +1161,7 @@ Init_glib2(void)
|
|
1157
1161
|
rb_define_const(RG_TARGET_NAMESPACE, "MAXINT16", INT2FIX(G_MAXINT16));
|
1158
1162
|
rb_define_const(RG_TARGET_NAMESPACE, "MAXUINT16", UINT2NUM(G_MAXUINT16));
|
1159
1163
|
|
1160
|
-
rb_define_const(RG_TARGET_NAMESPACE, "MININT32",
|
1164
|
+
rb_define_const(RG_TARGET_NAMESPACE, "MININT32", INT2NUM(G_MININT32));
|
1161
1165
|
rb_define_const(RG_TARGET_NAMESPACE, "MAXINT32", INT2NUM(G_MAXINT32));
|
1162
1166
|
rb_define_const(RG_TARGET_NAMESPACE, "MAXUINT32", UINT2NUM(G_MAXUINT32));
|
1163
1167
|
|
@@ -1248,7 +1252,6 @@ union GDoubleIEEE754;
|
|
1248
1252
|
Init_gutil_callback();
|
1249
1253
|
|
1250
1254
|
Init_glib_gettext();
|
1251
|
-
Init_glib_int64();
|
1252
1255
|
Init_glib_error();
|
1253
1256
|
Init_glib_threads();
|
1254
1257
|
Init_glib_convert();
|
data/ext/glib2/rbglib.h
CHANGED
@@ -33,49 +33,14 @@ G_BEGIN_DECLS
|
|
33
33
|
|
34
34
|
#define RBGLIB_MAJOR_VERSION 4
|
35
35
|
#define RBGLIB_MINOR_VERSION 2
|
36
|
-
#define RBGLIB_MICRO_VERSION
|
36
|
+
#define RBGLIB_MICRO_VERSION 6
|
37
37
|
|
38
|
-
|
39
|
-
#
|
40
|
-
#
|
41
|
-
# else
|
42
|
-
# define RB_ZALLOC(type) rbg_memzero(ALLOC(type), sizeof(type))
|
43
|
-
# endif
|
38
|
+
/* For Ruby < 3.0 */
|
39
|
+
#ifndef RB_LL2NUM
|
40
|
+
# define RB_LL2NUM LL2NUM
|
44
41
|
#endif
|
45
|
-
|
46
|
-
#
|
47
|
-
# define RB_ALLOC(type) ALLOC(type)
|
48
|
-
#endif
|
49
|
-
|
50
|
-
#ifndef RB_ALLOC_N
|
51
|
-
# define RB_ALLOC_N(type, n) ALLOC_N(type, n)
|
52
|
-
#endif
|
53
|
-
|
54
|
-
/* For Ruby < 2.3 */
|
55
|
-
#ifndef RB_OBJ_FROZEN
|
56
|
-
# define RB_OBJ_FROZEN(obj) OBJ_FROZEN(obj)
|
57
|
-
#endif
|
58
|
-
|
59
|
-
#ifndef RSTRING_PTR
|
60
|
-
# define RSTRING_PTR(s) (RSTRING(s)->ptr)
|
61
|
-
# define RSTRING_LEN(s) (RSTRING(s)->len)
|
62
|
-
#endif
|
63
|
-
|
64
|
-
#ifndef RARRAY_PTR
|
65
|
-
# define RARRAY_PTR(a) (RARRAY(a)->ptr)
|
66
|
-
# define RARRAY_LEN(a) (RARRAY(a)->len)
|
67
|
-
#endif
|
68
|
-
|
69
|
-
#ifndef RARRAY_CONST_PTR
|
70
|
-
# define RARRAY_CONST_PTR(a) RARRAY_PTR(a)
|
71
|
-
#endif
|
72
|
-
|
73
|
-
#ifndef DBL2NUM
|
74
|
-
# define DBL2NUM(v) (rb_float_new(v))
|
75
|
-
#endif
|
76
|
-
|
77
|
-
#ifndef RBASIC_CLASS
|
78
|
-
# define RBASIC_CLASS(obj) (RBASIC(obj)->klass)
|
42
|
+
#ifndef RB_ULL2NUM
|
43
|
+
# define RB_ULL2NUM ULL2NUM
|
79
44
|
#endif
|
80
45
|
|
81
46
|
#ifndef G_SOURCE_REMOVE
|
@@ -143,11 +108,11 @@ G_BEGIN_DECLS
|
|
143
108
|
#define POINTER2RVAL(pointer) ((VALUE)(pointer))
|
144
109
|
|
145
110
|
#if SIZEOF_VOIDP == SIZEOF_LONG
|
146
|
-
# define NUM2POINTER(number) ((gpointer)
|
147
|
-
# define POINTER2NUM(pointer)
|
111
|
+
# define NUM2POINTER(number) ((gpointer)RB_NUM2ULONG(number))
|
112
|
+
# define POINTER2NUM(pointer) RB_ULONG2NUM((unsigned long)pointer)
|
148
113
|
#else
|
149
|
-
# define NUM2POINTER(number) ((gpointer)
|
150
|
-
# define POINTER2NUM(pointer)
|
114
|
+
# define NUM2POINTER(number) ((gpointer)RB_NUM2ULL(number))
|
115
|
+
# define POINTER2NUM(pointer) RB_ULL2NUM((unsigned LONG_LONG)pointer)
|
151
116
|
#endif
|
152
117
|
|
153
118
|
#define GINTS2RVAL(ary, n) rbg_gints2rval(ary, n)
|
@@ -245,6 +210,8 @@ extern GQuark rbgerr_ruby_error_quark(void);
|
|
245
210
|
extern VALUE rbgerr_gerror2exception(GError *error);
|
246
211
|
extern VALUE rbgerr_define_gerror(GQuark domain, const gchar* name, VALUE module, VALUE parent, GType gtype);
|
247
212
|
|
213
|
+
/* Deprecated. Use RB_LL2NUM()/RB_ULL2NUM()/RB_NUM2LL()/RB_NUM2ULL()
|
214
|
+
* directly. */
|
248
215
|
extern VALUE rbglib_int64_to_num(guint64 val);
|
249
216
|
extern VALUE rbglib_uint64_to_num(guint64 val);
|
250
217
|
extern gint64 rbglib_num_to_int64(VALUE val);
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2025 Ruby-GNOME Project Team
|
4
4
|
* Copyright (C) 2004 Masao Mutoh
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -50,7 +50,7 @@ void g_dir_close (GDir *dir);
|
|
50
50
|
*/
|
51
51
|
|
52
52
|
static VALUE
|
53
|
-
|
53
|
+
rg_s_format_size(int argc, VALUE *argv, G_GNUC_UNUSED VALUE self)
|
54
54
|
{
|
55
55
|
VALUE rb_size, rb_options;
|
56
56
|
|
@@ -98,6 +98,7 @@ Init_glib_fileutils(void)
|
|
98
98
|
rb_define_const(RG_TARGET_NAMESPACE, "PERM", INT2NUM(G_FILE_ERROR_PERM));
|
99
99
|
rb_define_const(RG_TARGET_NAMESPACE, "FAILED", INT2NUM(G_FILE_ERROR_FAILED));
|
100
100
|
|
101
|
-
|
102
|
-
|
101
|
+
#undef RG_TARGET_NAMESPACE
|
102
|
+
#define RG_TARGET_NAMESPACE rbg_mGLib()
|
103
|
+
RG_DEF_SMETHOD(format_size, -1);
|
103
104
|
}
|
data/ext/glib2/rbglib_int64.c
CHANGED
@@ -1,9 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011 Ruby-
|
4
|
-
* Copyright (C) 2003 Masahiro Sakai
|
5
|
-
* Copyright (C) 2002 Masahiro Sakai
|
6
|
-
* Kenichi Komiya
|
3
|
+
* Copyright (C) 2011-2024 Ruby-GNOME Project Team
|
7
4
|
*
|
8
5
|
* This library is free software; you can redistribute it and/or
|
9
6
|
* modify it under the terms of the GNU Lesser General Public
|
@@ -23,143 +20,30 @@
|
|
23
20
|
|
24
21
|
#include "rbgprivate.h"
|
25
22
|
|
26
|
-
|
27
|
-
static ID id_rshift;
|
28
|
-
static ID id_lshift;
|
29
|
-
static ID id_lt;
|
30
|
-
static ID id_plus;
|
31
|
-
static ID id_uminus;
|
32
|
-
static ID id_abs;
|
33
|
-
static VALUE max_PRUint32;
|
34
|
-
|
35
|
-
typedef guint64 PRUint64;
|
36
|
-
typedef gint64 PRInt64;
|
37
|
-
|
38
|
-
#define LL_ZERO G_GINT64_CONSTANT(0)
|
39
|
-
#define LL_UI2L(lhs,rhs) ((lhs)=(rhs))
|
40
|
-
#define LL_L2UI(lhs,rhs) ((lhs)=(guint32)(rhs))
|
41
|
-
#define LL_SHL(lhs,v1,v2) ((lhs)=(v1)<<(v2))
|
42
|
-
#define LL_SHR(lhs,v1,v2) ((lhs)=(v1)>>(v2))
|
43
|
-
#define LL_ADD(lhs,v1,v2) ((lhs)=(v1)+(v2))
|
44
|
-
#define LL_NEG(lhs,rhs) ((lhs)=-(rhs))
|
45
|
-
#define LL_CMP(v1,op,v2) ((v1) op (v2))
|
46
|
-
|
47
|
-
/**********************************************************************/
|
48
|
-
/*
|
49
|
-
following is ripped from rbXPCOM-0.0.3
|
50
|
-
http://www.ruby-lang.org/en/raa-list.rhtml?name=rbXPCOM
|
51
|
-
Copyright (C) 2001 Kenichi Komiya <kom@mail1.accsnet.ne.jp>
|
52
|
-
*/
|
53
|
-
|
54
|
-
static PRUint64
|
55
|
-
RubyTo64BitInt(VALUE aRuby)
|
56
|
-
{
|
57
|
-
VALUE bitMask = max_PRUint32;
|
58
|
-
VALUE lo = rb_funcall(aRuby, id_and, 1, bitMask);
|
59
|
-
VALUE hi = rb_funcall(aRuby, id_rshift, 1, INT2FIX(32));
|
60
|
-
PRUint64 result, hi64, lo64;
|
61
|
-
LL_UI2L(hi64, NUM2UINT(hi));
|
62
|
-
LL_UI2L(lo64, NUM2UINT(lo));
|
63
|
-
LL_SHL(result, hi64, 32);
|
64
|
-
LL_ADD(result, result, lo64);
|
65
|
-
return result;
|
66
|
-
}
|
67
|
-
|
68
|
-
|
69
|
-
static inline PRUint64
|
70
|
-
RubyToPRUint64(VALUE aRuby)
|
71
|
-
{
|
72
|
-
return RubyTo64BitInt(aRuby);
|
73
|
-
}
|
74
|
-
|
75
|
-
|
76
|
-
static PRInt64
|
77
|
-
RubyToPRInt64(VALUE aRuby)
|
78
|
-
{
|
79
|
-
if(RVAL2CBOOL(rb_funcall(aRuby, id_lt, 1, INT2FIX(0))))
|
80
|
-
{
|
81
|
-
VALUE absRuby = rb_funcall(aRuby, id_abs, 0);
|
82
|
-
PRInt64 result;
|
83
|
-
LL_NEG(result, RubyTo64BitInt(absRuby));
|
84
|
-
return result;
|
85
|
-
} else
|
86
|
-
return (PRInt64)RubyTo64BitInt(aRuby);
|
87
|
-
|
88
|
-
}
|
89
|
-
|
90
|
-
static VALUE
|
91
|
-
RubyFrom64BitInt(PRUint64 aNative)
|
92
|
-
{
|
93
|
-
PRUint64 lo64, hi64;
|
94
|
-
LL_L2UI(lo64, aNative);
|
95
|
-
LL_SHR(hi64, aNative, 32);
|
96
|
-
{
|
97
|
-
VALUE lo = UINT2NUM(lo64);
|
98
|
-
VALUE hi = UINT2NUM(hi64);
|
99
|
-
VALUE hiRuby = rb_funcall(hi, id_lshift, 1, INT2FIX(32));
|
100
|
-
return rb_funcall(hiRuby, id_plus, 1, lo);
|
101
|
-
}
|
102
|
-
}
|
103
|
-
|
104
|
-
static inline VALUE
|
105
|
-
PRUint64ToRuby(PRUint64 aNative)
|
106
|
-
{
|
107
|
-
return RubyFrom64BitInt(aNative);
|
108
|
-
}
|
109
|
-
|
110
|
-
static VALUE
|
111
|
-
PRInt64ToRuby(PRInt64 aNative)
|
112
|
-
{
|
113
|
-
if(LL_CMP(aNative, <, LL_ZERO))
|
114
|
-
{
|
115
|
-
PRUint64 abs64;
|
116
|
-
LL_NEG(abs64, aNative);
|
117
|
-
return rb_funcall(RubyFrom64BitInt(abs64), id_uminus, 0);
|
118
|
-
}
|
119
|
-
else
|
120
|
-
return RubyFrom64BitInt((PRUint64)aNative);
|
121
|
-
}
|
122
|
-
|
123
|
-
/* end of ripping */
|
124
|
-
/**********************************************************************/
|
125
|
-
|
23
|
+
/* Deprecated. Use RB_LL2NUM() directly. */
|
126
24
|
VALUE
|
127
25
|
rbglib_int64_to_num(guint64 val)
|
128
26
|
{
|
129
|
-
return
|
27
|
+
return RB_LL2NUM(val);
|
130
28
|
}
|
131
29
|
|
30
|
+
/* Deprecated. Use RB_ULL2NUM() directly. */
|
132
31
|
VALUE
|
133
32
|
rbglib_uint64_to_num(guint64 val)
|
134
33
|
{
|
135
|
-
return
|
34
|
+
return RB_ULL2NUM(val);
|
136
35
|
}
|
137
36
|
|
37
|
+
/* Deprecated. Use RB_NUM2LL() directly. */
|
138
38
|
gint64
|
139
39
|
rbglib_num_to_int64(VALUE val)
|
140
40
|
{
|
141
|
-
return
|
41
|
+
return RB_NUM2LL(val);
|
142
42
|
}
|
143
43
|
|
44
|
+
/* Deprecated. Use RB_NUM2ULL() directly. */
|
144
45
|
guint64
|
145
46
|
rbglib_num_to_uint64(VALUE val)
|
146
47
|
{
|
147
|
-
return
|
148
|
-
}
|
149
|
-
|
150
|
-
/**********************************************************************/
|
151
|
-
|
152
|
-
void
|
153
|
-
Init_glib_int64(void)
|
154
|
-
{
|
155
|
-
id_and = rb_intern("&");
|
156
|
-
id_rshift = rb_intern(">>");
|
157
|
-
id_lshift = rb_intern("<<");
|
158
|
-
id_lt = rb_intern("<");
|
159
|
-
id_plus = rb_intern("+");
|
160
|
-
id_uminus = rb_intern("-@");
|
161
|
-
id_abs = rb_intern("abs");
|
162
|
-
|
163
|
-
rb_global_variable(&max_PRUint32);
|
164
|
-
max_PRUint32 = UINT2NUM(0xffffffffL);
|
48
|
+
return RB_NUM2ULL(val);
|
165
49
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2025 Ruby-GNOME Project Team
|
4
4
|
* Copyright (C) 2005 Masao Mutoh
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -104,12 +104,6 @@ rg_poll(GPollFD *ufds, guint nfsd, gint timeout)
|
|
104
104
|
return info.result;
|
105
105
|
}
|
106
106
|
|
107
|
-
static VALUE
|
108
|
-
ruby_source_set_priority (G_GNUC_UNUSED VALUE self, G_GNUC_UNUSED VALUE priority)
|
109
|
-
{
|
110
|
-
return Qnil;
|
111
|
-
}
|
112
|
-
|
113
107
|
static void
|
114
108
|
restore_poll_func(G_GNUC_UNUSED VALUE data)
|
115
109
|
{
|
@@ -510,12 +504,9 @@ Init_glib_main_context(void)
|
|
510
504
|
|
511
505
|
main_thread = g_thread_self();
|
512
506
|
|
513
|
-
rbg_define_singleton_method(rbg_mGLib(), "set_ruby_thread_priority",
|
514
|
-
ruby_source_set_priority, 1);
|
515
|
-
|
516
507
|
mGLibSource = rb_const_get(rbg_mGLib(), rb_intern("Source"));
|
517
|
-
|
518
|
-
|
508
|
+
rb_define_singleton_method(mGLibSource, "remove", source_remove, 1);
|
509
|
+
rb_define_singleton_method(mGLibSource, "current", source_current_source, 0);
|
519
510
|
/*
|
520
511
|
id_poll_func = rb_intern("__poll_func__");
|
521
512
|
*/
|
@@ -540,15 +531,15 @@ Init_glib_main_context(void)
|
|
540
531
|
RG_DEF_METHOD(add_poll, 2);
|
541
532
|
RG_DEF_METHOD(remove_poll, 1);
|
542
533
|
RG_DEF_SMETHOD(depth, 0);
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
534
|
+
rb_define_singleton_method(timeout, "source_new", timeout_source_new, 1);
|
535
|
+
rb_define_singleton_method(timeout, "source_new_seconds", timeout_source_new_seconds, 1);
|
536
|
+
rb_define_singleton_method(timeout, "add", timeout_add, -1);
|
537
|
+
rb_define_singleton_method(timeout, "add_seconds", timeout_add_seconds, -1);
|
538
|
+
rb_define_singleton_method(idle, "source_new", idle_source_new, 0);
|
539
|
+
rb_define_singleton_method(idle, "add", idle_add, -1);
|
540
|
+
|
541
|
+
rb_define_singleton_method(child_watch, "source_new", child_watch_source_new, 1);
|
542
|
+
rb_define_singleton_method(child_watch, "add", child_watch_add, 1);
|
552
543
|
|
553
544
|
default_poll_func = g_main_context_get_poll_func(NULL);
|
554
545
|
g_main_context_set_poll_func(NULL, rg_poll);
|
data/ext/glib2/rbglib_unichar.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2025 Ruby-GNOME Project Team
|
4
4
|
* Copyright (C) 2006 Kouhei Sutou
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -187,36 +187,36 @@ Init_glib_unichar(void)
|
|
187
187
|
{
|
188
188
|
VALUE RG_TARGET_NAMESPACE = rb_define_module_under(rbg_mGLib(), "UniChar");
|
189
189
|
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
190
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "alnum?",
|
191
|
+
rbglib_m_unichar_isalnum, 1);
|
192
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "alpha?",
|
193
|
+
rbglib_m_unichar_isalpha, 1);
|
194
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "cntrl?",
|
195
|
+
rbglib_m_unichar_iscntrl, 1);
|
196
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "digit?",
|
197
|
+
rbglib_m_unichar_isdigit, 1);
|
198
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "graph?",
|
199
|
+
rbglib_m_unichar_isgraph, 1);
|
200
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "lower?",
|
201
|
+
rbglib_m_unichar_islower, 1);
|
202
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "print?",
|
203
|
+
rbglib_m_unichar_isprint, 1);
|
204
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "punct?",
|
205
|
+
rbglib_m_unichar_ispunct, 1);
|
206
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "space?",
|
207
|
+
rbglib_m_unichar_isspace, 1);
|
208
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "upper?",
|
209
|
+
rbglib_m_unichar_isupper, 1);
|
210
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "xdigit?",
|
211
|
+
rbglib_m_unichar_isxdigit, 1);
|
212
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "title?",
|
213
|
+
rbglib_m_unichar_istitle, 1);
|
214
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "defined?",
|
215
|
+
rbglib_m_unichar_isdefined, 1);
|
216
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "wide?",
|
217
|
+
rbglib_m_unichar_iswide, 1);
|
218
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "wide_cjk?",
|
219
|
+
rbglib_m_unichar_iswide_cjk, 1);
|
220
220
|
|
221
221
|
RG_DEF_SMETHOD(to_upper, 1);
|
222
222
|
RG_DEF_SMETHOD(to_lower, 1);
|
data/ext/glib2/rbglib_unicode.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2025 Ruby-GNOME Project Team
|
4
4
|
* Copyright (C) 2006 Kouhei Sutou
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -67,7 +67,7 @@ Init_glib_unicode(void)
|
|
67
67
|
|
68
68
|
G_DEF_CLASS(G_TYPE_NORMALIZE_MODE, "NormalizeMode", rbg_mGLib());
|
69
69
|
|
70
|
-
|
70
|
+
rb_define_singleton_method(rbg_mGLib(), "charset", rbglib_m_charset, 0);
|
71
71
|
|
72
72
|
RG_DEF_SMETHOD(canonical_ordering, 1);
|
73
73
|
}
|
data/ext/glib2/rbglib_utils.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2004-
|
3
|
+
* Copyright (C) 2004-2025 Ruby-GNOME Project Team
|
4
4
|
* Copyright (C) 2004 Pascal Terjan
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -308,7 +308,7 @@ Init_glib_utils(void)
|
|
308
308
|
RG_DEF_SMETHOD(prgname, 0);
|
309
309
|
RG_DEF_SMETHOD(set_prgname, 1);
|
310
310
|
RG_DEF_SMETHOD(getenv, 1);
|
311
|
-
RG_DEF_SMETHOD(setenv,
|
311
|
+
RG_DEF_SMETHOD(setenv, 3);
|
312
312
|
RG_DEF_SMETHOD(unsetenv, 1);
|
313
313
|
RG_DEF_SMETHOD(listenv, 0);
|
314
314
|
RG_DEF_SMETHOD(host_name, 0);
|
data/ext/glib2/rbglib_win32.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2025 Ruby-GNOME Project Team
|
4
4
|
* Copyright (C) 2006 Kouhei Sutou
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -96,12 +96,12 @@ Init_glib_win32(void)
|
|
96
96
|
RG_DEF_SMETHOD(locale, 0);
|
97
97
|
RG_DEF_SMETHOD(version, 0);
|
98
98
|
/* Deprecated */
|
99
|
-
|
99
|
+
rb_define_singleton_method(rbg_mGLib(), "win32_locale", rbglib_m_win32_locale_deprecated, 0);
|
100
100
|
|
101
101
|
RG_DEF_SMETHOD(locale_filename_from_utf8, 1);
|
102
102
|
/* Deprecated */
|
103
|
-
|
104
|
-
|
103
|
+
rb_define_singleton_method(rbg_mGLib(), "win32_locale_filename_from_utf8",
|
104
|
+
rbglib_m_win32_locale_filename_from_utf8_deprecated, 1);
|
105
105
|
|
106
106
|
RG_DEF_SMETHOD(get_package_installation_directory_of_module, -1);
|
107
107
|
#endif
|
data/ext/glib2/rbgobj_boxed.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2011-
|
3
|
+
* Copyright (C) 2011-2025 Ruby-GNOME Project Team
|
4
4
|
* Copyright (C) 2002,2003 Masahiro Sakai
|
5
5
|
*
|
6
6
|
* This library is free software; you can redistribute it and/or
|
@@ -319,13 +319,13 @@ Init_gobject_gboxed(void)
|
|
319
319
|
rbgobj_register_r2g_func(G_TYPE_BOXED, boxed_from_ruby);
|
320
320
|
|
321
321
|
rb_define_alloc_func(RG_TARGET_NAMESPACE, rbgobj_boxed_alloc_func);
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
322
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE, "gtype", generic_s_gtype, 0);
|
323
|
+
rb_define_singleton_method(RG_TARGET_NAMESPACE,
|
324
|
+
"to_s",
|
325
|
+
rbgutil_generic_s_to_s_gtype_name_fallback,
|
326
|
+
0);
|
327
327
|
RG_DEF_SALIAS("inspect", "to_s");
|
328
|
-
|
328
|
+
rb_define_method(RG_TARGET_NAMESPACE, "gtype", generic_gtype, 0);
|
329
329
|
RG_DEF_METHOD(initialize, 0);
|
330
330
|
RG_DEF_METHOD(inspect, 0);
|
331
331
|
RG_DEF_METHOD(initialize_copy, 1);
|