glib2 3.1.0-x86-mingw32 → 3.1.1-x86-mingw32
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/Rakefile +2 -2
- data/ext/glib2/rbglib.c +2 -0
- data/ext/glib2/rbglib.h +1 -1
- data/ext/glib2/rbglib2conversions.h +3 -0
- data/ext/glib2/rbglib_datetime.c +250 -0
- data/ext/glib2/rbglib_timezone.c +82 -0
- data/ext/glib2/rbgprivate.h +2 -0
- data/lib/2.2/glib2.so +0 -0
- data/lib/2.3/glib2.so +0 -0
- data/lib/2.4/glib2.so +0 -0
- data/lib/glib2.rb +15 -7
- data/lib/gnome2/rake/external-package.rb +35 -5
- data/lib/gnome2/rake/source-download-task.rb +25 -5
- data/lib/mkmf-gnome2.rb +1 -6
- data/test/test-date-time.rb +112 -0
- data/test/test-time-zone.rb +31 -0
- data/vendor/local/bin/asn1Coding.exe +0 -0
- data/vendor/local/bin/asn1Decoding.exe +0 -0
- data/vendor/local/bin/asn1Parser.exe +0 -0
- data/vendor/local/bin/envsubst.exe +0 -0
- data/vendor/local/bin/gdbus.exe +0 -0
- data/vendor/local/bin/gettext.exe +0 -0
- data/vendor/local/bin/gio-querymodules.exe +0 -0
- data/vendor/local/bin/gio.exe +0 -0
- data/vendor/local/bin/glib-compile-resources.exe +0 -0
- data/vendor/local/bin/glib-compile-schemas.exe +0 -0
- data/vendor/local/bin/glib-genmarshal.exe +0 -0
- data/vendor/local/bin/gobject-query.exe +0 -0
- data/vendor/local/bin/gresource.exe +0 -0
- data/vendor/local/bin/gsettings.exe +0 -0
- data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
- data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
- data/vendor/local/bin/iconv.exe +0 -0
- data/vendor/local/bin/idn.exe +0 -0
- data/vendor/local/bin/libasprintf-0.dll +0 -0
- data/vendor/local/bin/libcharset-1.dll +0 -0
- data/vendor/local/bin/libffi-6.dll +0 -0
- data/vendor/local/bin/libgio-2.0-0.dll +0 -0
- data/vendor/local/bin/libglib-2.0-0.dll +0 -0
- data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
- data/vendor/local/bin/libgmp-10.dll +0 -0
- data/vendor/local/bin/libgnutls-30.dll +0 -0
- data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
- data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
- data/vendor/local/bin/libhogweed-4-2.dll +0 -0
- data/vendor/local/bin/libiconv-2.dll +0 -0
- data/vendor/local/bin/libidn-11.dll +0 -0
- data/vendor/local/bin/libintl-8.dll +0 -0
- data/vendor/local/bin/libnettle-6-2.dll +0 -0
- data/vendor/local/bin/libp11-kit-0.dll +0 -0
- data/vendor/local/bin/libpcre-1.dll +0 -0
- data/vendor/local/bin/libpcrecpp-0.dll +0 -0
- data/vendor/local/bin/libpcreposix-0.dll +0 -0
- data/vendor/local/bin/libtasn1-6.dll +0 -0
- data/vendor/local/bin/nettle-hash.exe +0 -0
- data/vendor/local/bin/nettle-lfib-stream.exe +0 -0
- data/vendor/local/bin/nettle-pbkdf2.exe +0 -0
- data/vendor/local/bin/ngettext.exe +0 -0
- data/vendor/local/bin/p11-kit.exe +0 -0
- data/vendor/local/bin/pcre-config +1 -1
- data/vendor/local/bin/pcregrep.exe +0 -0
- data/vendor/local/bin/pcretest.exe +0 -0
- data/vendor/local/bin/pkcs1-conv.exe +0 -0
- data/vendor/local/bin/sexp-conv.exe +0 -0
- data/vendor/local/bin/trust.exe +0 -0
- data/vendor/local/include/pcre.h +2 -2
- data/vendor/local/lib/gio/modules/libgiognutls.dll +0 -0
- data/vendor/local/lib/gio/modules/libgiognutls.dll.a +0 -0
- data/vendor/local/lib/libasprintf.dll.a +0 -0
- data/vendor/local/lib/libcharset.dll.a +0 -0
- data/vendor/local/lib/libffi.dll.a +0 -0
- data/vendor/local/lib/libgio-2.0.dll.a +0 -0
- data/vendor/local/lib/libglib-2.0.dll.a +0 -0
- data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
- data/vendor/local/lib/libgmp.dll.a +0 -0
- data/vendor/local/lib/libgnutls.dll.a +0 -0
- data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
- data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
- data/vendor/local/lib/libhogweed.dll.a +0 -0
- data/vendor/local/lib/libiconv.dll.a +0 -0
- data/vendor/local/lib/libidn.dll.a +0 -0
- data/vendor/local/lib/libintl.dll.a +0 -0
- data/vendor/local/lib/libnettle.dll.a +0 -0
- data/vendor/local/lib/libp11-kit.dll.a +0 -0
- data/vendor/local/lib/libpcre.a +0 -0
- data/vendor/local/lib/libpcre.dll.a +0 -0
- data/vendor/local/lib/libpcre.la +1 -1
- data/vendor/local/lib/libpcrecpp.dll.a +0 -0
- data/vendor/local/lib/libpcreposix.a +0 -0
- data/vendor/local/lib/libpcreposix.dll.a +0 -0
- data/vendor/local/lib/libpcreposix.la +1 -1
- data/vendor/local/lib/libtasn1.dll.a +0 -0
- data/vendor/local/lib/p11-kit/p11-kit-remote.exe +0 -0
- data/vendor/local/lib/pkcs11/p11-kit-trust.dll +0 -0
- data/vendor/local/lib/pkcs11/p11-kit-trust.dll.a +0 -0
- data/vendor/local/lib/pkgconfig/libpcre.pc +1 -1
- data/vendor/local/lib/pkgconfig/libpcrecpp.pc +1 -1
- data/vendor/local/lib/pkgconfig/libpcreposix.pc +1 -1
- data/vendor/local/share/doc/pcre/AUTHORS +3 -3
- data/vendor/local/share/doc/pcre/ChangeLog +140 -1
- data/vendor/local/share/doc/pcre/LICENCE +3 -3
- data/vendor/local/share/doc/pcre/NEWS +15 -0
- data/vendor/local/share/doc/pcre/html/pcreapi.html +4 -5
- data/vendor/local/share/doc/pcre/html/pcrecompat.html +1 -1
- data/vendor/local/share/doc/pcre/html/pcrepattern.html +20 -17
- data/vendor/local/share/doc/pcre/pcre.txt +2024 -2020
- data/vendor/local/share/glib-2.0/codegen/__init__.pyc +0 -0
- data/vendor/local/share/glib-2.0/codegen/__init__.pyo +0 -0
- data/vendor/local/share/glib-2.0/codegen/codegen.pyc +0 -0
- data/vendor/local/share/glib-2.0/codegen/codegen.pyo +0 -0
- data/vendor/local/share/glib-2.0/codegen/codegen_docbook.pyc +0 -0
- data/vendor/local/share/glib-2.0/codegen/codegen_docbook.pyo +0 -0
- data/vendor/local/share/glib-2.0/codegen/codegen_main.pyc +0 -0
- data/vendor/local/share/glib-2.0/codegen/codegen_main.pyo +0 -0
- data/vendor/local/share/glib-2.0/codegen/config.pyc +0 -0
- data/vendor/local/share/glib-2.0/codegen/config.pyo +0 -0
- data/vendor/local/share/glib-2.0/codegen/dbustypes.pyc +0 -0
- data/vendor/local/share/glib-2.0/codegen/dbustypes.pyo +0 -0
- data/vendor/local/share/glib-2.0/codegen/parser.pyc +0 -0
- data/vendor/local/share/glib-2.0/codegen/parser.pyo +0 -0
- data/vendor/local/share/glib-2.0/codegen/utils.pyc +0 -0
- data/vendor/local/share/glib-2.0/codegen/utils.pyo +0 -0
- data/vendor/local/share/license/pcre/AUTHORS +3 -3
- data/vendor/local/share/man/man3/pcreapi.3 +5 -6
- data/vendor/local/share/man/man3/pcrecompat.3 +1 -1
- data/vendor/local/share/man/man3/pcrepattern.3 +20 -17
- metadata +11 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 73f5bd3c313946391f89b67d5b1abe326257b0c0
         | 
| 4 | 
            +
              data.tar.gz: 4f4de89c485d946f3016c37ea48c1ac9c5360877
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 0de43fa7cdd8ff369a5a6fc3519498b8ac8574adc3c28ff12d6dd59342edbedd02cba71f44b7fa6b494080cea5346ba231544872ede2870b4e0c6eb79a987b9d
         | 
| 7 | 
            +
              data.tar.gz: feb187f9bada12f36573d6dd385799707cf0c3cd4affa9453e2fc28c7b856eb8206b05634d1658cda4792726d9076643fcd857e470d6ff671139bb6b5d3f4aa4
         | 
    
        data/Rakefile
    CHANGED
    
    | @@ -1,6 +1,6 @@ | |
| 1 1 | 
             
            # -*- ruby -*-
         | 
| 2 2 | 
             
            #
         | 
| 3 | 
            -
            # Copyright (C) 2011- | 
| 3 | 
            +
            # Copyright (C) 2011-2017  Ruby-GNOME2 Project Team
         | 
| 4 4 | 
             
            #
         | 
| 5 5 | 
             
            # This library is free software; you can redistribute it and/or
         | 
| 6 6 | 
             
            # modify it under the terms of the GNU Lesser General Public
         | 
| @@ -73,7 +73,7 @@ package_task = GNOME2::Rake::PackageTask.new do |package| | |
| 73 73 | 
             
                  :name => "pcre",
         | 
| 74 74 | 
             
                  :download_base_url => "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre",
         | 
| 75 75 | 
             
                  :label => "PCRE",
         | 
| 76 | 
            -
                  :version => "8. | 
| 76 | 
            +
                  :version => "8.40",
         | 
| 77 77 | 
             
                  :windows => {
         | 
| 78 78 | 
             
                    :configure_args => [
         | 
| 79 79 | 
             
                      "--enable-unicode-properties",
         | 
    
        data/ext/glib2/rbglib.c
    CHANGED
    
    
    
        data/ext/glib2/rbglib.h
    CHANGED
    
    
| @@ -62,4 +62,7 @@ | |
| 62 62 | 
             
            #define RVAL2GREGEXMATCHOPTIONSFLAGS(o)    (RVAL2GFLAGS(o, G_TYPE_REGEX_MATCH_FLAGS))
         | 
| 63 63 | 
             
            #define RVAL2GREGEXCOMPILEOPTIONSFLAGS(o)  (RVAL2GFLAGS(o, G_TYPE_REGEX_COMPILE_FLAGS))
         | 
| 64 64 | 
             
            #define GMATCHINFO2RVAL(o)                 (BOXED2RVAL(o, G_TYPE_MATCH_INFO))
         | 
| 65 | 
            +
            #define GDATETIME2RVAL(o)                  (BOXED2RVAL(o, G_TYPE_DATE_TIME))
         | 
| 66 | 
            +
            #define GTIMEZONE2RVAL(o)                  (BOXED2RVAL(o, G_TYPE_TIME_ZONE))
         | 
| 67 | 
            +
            #define RVAL2GTIMEZONE(o)                  ((GTimeZone*)RVAL2BOXED(o, G_TYPE_TIME_ZONE))
         | 
| 65 68 | 
             
            #endif /* __GLIB2CONVERSIONS_H__ */
         | 
| @@ -0,0 +1,250 @@ | |
| 1 | 
            +
            /*
         | 
| 2 | 
            +
             *  Copyright (C) 2016  Ruby-GNOME2 Project Team
         | 
| 3 | 
            +
             *
         | 
| 4 | 
            +
             *  This library is free software; you can redistribute it and/or
         | 
| 5 | 
            +
             *  modify it under the terms of the GNU Lesser General Public
         | 
| 6 | 
            +
             *  License as published by the Free Software Foundation; either
         | 
| 7 | 
            +
             *  version 2.1 of the License, or (at your option) any later version.
         | 
| 8 | 
            +
             *
         | 
| 9 | 
            +
             *  This library is distributed in the hope that it will be useful,
         | 
| 10 | 
            +
             *  but WITHOUT ANY WARRANTY; without even the implied warranty of
         | 
| 11 | 
            +
             *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
         | 
| 12 | 
            +
             *  Lesser General Public License for more details.
         | 
| 13 | 
            +
             *
         | 
| 14 | 
            +
             *  You should have received a copy of the GNU Lesser General Public
         | 
| 15 | 
            +
             *  License along with this library; if not, write to the Free Software
         | 
| 16 | 
            +
             *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
         | 
| 17 | 
            +
             *  MA  02110-1301  USA
         | 
| 18 | 
            +
             */
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            #include "rbgprivate.h"
         | 
| 21 | 
            +
             | 
| 22 | 
            +
            #define RG_TARGET_NAMESPACE cDateTime
         | 
| 23 | 
            +
            #define _SELF(s) ((GDateTime*)RVAL2BOXED(s, G_TYPE_DATE_TIME))
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            static gboolean
         | 
| 26 | 
            +
            is_local_timezone(VALUE rb_timezone)
         | 
| 27 | 
            +
            {
         | 
| 28 | 
            +
                ID id_equal;
         | 
| 29 | 
            +
                ID id_local;
         | 
| 30 | 
            +
             | 
| 31 | 
            +
                if (NIL_P(rb_timezone)) {
         | 
| 32 | 
            +
                    return TRUE;
         | 
| 33 | 
            +
                }
         | 
| 34 | 
            +
             | 
| 35 | 
            +
                CONST_ID(id_equal, "==");
         | 
| 36 | 
            +
                CONST_ID(id_local, "local");
         | 
| 37 | 
            +
                return RVAL2CBOOL(rb_funcall(rb_timezone, id_equal, 1, ID2SYM(id_local)));
         | 
| 38 | 
            +
            }
         | 
| 39 | 
            +
             | 
| 40 | 
            +
            static gboolean
         | 
| 41 | 
            +
            is_utc_timezone(VALUE rb_timezone)
         | 
| 42 | 
            +
            {
         | 
| 43 | 
            +
                ID id_equal;
         | 
| 44 | 
            +
                ID id_utc;
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                CONST_ID(id_equal, "==");
         | 
| 47 | 
            +
                CONST_ID(id_utc, "utc");
         | 
| 48 | 
            +
                return RVAL2CBOOL(rb_funcall(rb_timezone, id_equal, 1, ID2SYM(id_utc)));
         | 
| 49 | 
            +
            }
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            static gboolean
         | 
| 52 | 
            +
            is_timezone(VALUE rb_timezone)
         | 
| 53 | 
            +
            {
         | 
| 54 | 
            +
                VALUE rb_cTimeZone;
         | 
| 55 | 
            +
             | 
| 56 | 
            +
                rb_cTimeZone = rb_const_get(mGLib, rb_intern("TimeZone"));
         | 
| 57 | 
            +
                return RVAL2CBOOL(rb_obj_is_kind_of(rb_timezone, rb_cTimeZone));
         | 
| 58 | 
            +
            }
         | 
| 59 | 
            +
             | 
| 60 | 
            +
            static VALUE
         | 
| 61 | 
            +
            rg_s_now(int argc, VALUE *argv, G_GNUC_UNUSED VALUE self)
         | 
| 62 | 
            +
            {
         | 
| 63 | 
            +
                GDateTime *date = NULL;
         | 
| 64 | 
            +
                VALUE rb_timezone;
         | 
| 65 | 
            +
             | 
| 66 | 
            +
                rb_scan_args(argc, argv, "01", &rb_timezone);
         | 
| 67 | 
            +
             | 
| 68 | 
            +
                if (is_local_timezone(rb_timezone)) {
         | 
| 69 | 
            +
                    date = g_date_time_new_now_local();
         | 
| 70 | 
            +
                } else if (is_utc_timezone(rb_timezone)) {
         | 
| 71 | 
            +
                    date = g_date_time_new_now_utc();
         | 
| 72 | 
            +
                } else if (is_timezone(rb_timezone)) {
         | 
| 73 | 
            +
                    date = g_date_time_new_now(RVAL2GTIMEZONE(rb_timezone));
         | 
| 74 | 
            +
                } else {
         | 
| 75 | 
            +
                    rb_raise(rb_eArgError,
         | 
| 76 | 
            +
                             "timezone must be nil, :local, :utc or GLib::TimeZone: "
         | 
| 77 | 
            +
                             "%+" PRIsVALUE,
         | 
| 78 | 
            +
                             rb_timezone);
         | 
| 79 | 
            +
                }
         | 
| 80 | 
            +
             | 
| 81 | 
            +
                return GDATETIME2RVAL(date);
         | 
| 82 | 
            +
            }
         | 
| 83 | 
            +
             | 
| 84 | 
            +
            static VALUE
         | 
| 85 | 
            +
            rg_initialize(int argc, VALUE *argv, VALUE self)
         | 
| 86 | 
            +
            {
         | 
| 87 | 
            +
                /*
         | 
| 88 | 
            +
                 * Not implemented:
         | 
| 89 | 
            +
                 * GDateTime * 	g_date_time_new_from_timeval_local ()
         | 
| 90 | 
            +
                 * GDateTime * 	g_date_time_new_from_timeval_utc ()
         | 
| 91 | 
            +
                 * https://developer.gnome.org/glib/stable/glib-Date-and-Time-Functions.html#GTimeVal
         | 
| 92 | 
            +
                 * */
         | 
| 93 | 
            +
                VALUE rb_options;
         | 
| 94 | 
            +
                VALUE rb_unix;
         | 
| 95 | 
            +
                VALUE rb_timezone;
         | 
| 96 | 
            +
                VALUE rb_year;
         | 
| 97 | 
            +
                VALUE rb_month;
         | 
| 98 | 
            +
                VALUE rb_day;
         | 
| 99 | 
            +
                VALUE rb_hour;
         | 
| 100 | 
            +
                VALUE rb_minute;
         | 
| 101 | 
            +
                VALUE rb_second;
         | 
| 102 | 
            +
                GDateTime *datetime = NULL;
         | 
| 103 | 
            +
             | 
| 104 | 
            +
                rb_scan_args(argc, argv, "1", &rb_options);
         | 
| 105 | 
            +
                rbg_scan_options(rb_options,
         | 
| 106 | 
            +
                                 "unix", &rb_unix,
         | 
| 107 | 
            +
                                 "timezone", &rb_timezone,
         | 
| 108 | 
            +
                                 "year", &rb_year,
         | 
| 109 | 
            +
                                 "month", &rb_month,
         | 
| 110 | 
            +
                                 "day", &rb_day,
         | 
| 111 | 
            +
                                 "hour", &rb_hour,
         | 
| 112 | 
            +
                                 "minute", &rb_minute,
         | 
| 113 | 
            +
                                 "second", &rb_second,
         | 
| 114 | 
            +
                                 NULL);
         | 
| 115 | 
            +
             | 
| 116 | 
            +
                if (!NIL_P(rb_unix)) {
         | 
| 117 | 
            +
                    gint64 unix_time;
         | 
| 118 | 
            +
             | 
| 119 | 
            +
                    unix_time = rbglib_num_to_int64(rb_unix);
         | 
| 120 | 
            +
                    if (is_local_timezone(rb_timezone)) {
         | 
| 121 | 
            +
                        datetime = g_date_time_new_from_unix_local(unix_time);
         | 
| 122 | 
            +
                    } else if (is_utc_timezone(rb_timezone)) {
         | 
| 123 | 
            +
                        datetime = g_date_time_new_from_unix_utc(unix_time);
         | 
| 124 | 
            +
                    } else {
         | 
| 125 | 
            +
                        rb_raise(rb_eArgError,
         | 
| 126 | 
            +
                                 ":timezone must be nil, :local or :utc: %+" PRIsVALUE,
         | 
| 127 | 
            +
                                 rb_timezone);
         | 
| 128 | 
            +
                    }
         | 
| 129 | 
            +
                } else if (!NIL_P(rb_year) &&
         | 
| 130 | 
            +
                           !NIL_P(rb_month) &&
         | 
| 131 | 
            +
                           !NIL_P(rb_hour) &&
         | 
| 132 | 
            +
                           !NIL_P(rb_minute) &&
         | 
| 133 | 
            +
                           !NIL_P(rb_second)) {
         | 
| 134 | 
            +
                    gint year = 0;
         | 
| 135 | 
            +
                    gint month = 0;
         | 
| 136 | 
            +
                    gint day = 0;
         | 
| 137 | 
            +
                    gint hour = 0;
         | 
| 138 | 
            +
                    gint minute = 0;
         | 
| 139 | 
            +
                    gdouble second = 0.0;
         | 
| 140 | 
            +
             | 
| 141 | 
            +
                    year = NUM2INT(rb_year);
         | 
| 142 | 
            +
                    month = NUM2INT(rb_month);
         | 
| 143 | 
            +
                    day = NUM2INT(rb_day);
         | 
| 144 | 
            +
                    hour = NUM2INT(rb_hour);
         | 
| 145 | 
            +
                    minute = NUM2INT(rb_minute);
         | 
| 146 | 
            +
                    second = NUM2DBL(rb_second);
         | 
| 147 | 
            +
                    if (is_local_timezone(rb_timezone)) {
         | 
| 148 | 
            +
                        datetime = g_date_time_new_local(year,
         | 
| 149 | 
            +
                                                         month,
         | 
| 150 | 
            +
                                                         day,
         | 
| 151 | 
            +
                                                         hour,
         | 
| 152 | 
            +
                                                         minute,
         | 
| 153 | 
            +
                                                         second);
         | 
| 154 | 
            +
                    } else if (is_utc_timezone(rb_timezone)) {
         | 
| 155 | 
            +
                        datetime = g_date_time_new_utc(year,
         | 
| 156 | 
            +
                                                       month,
         | 
| 157 | 
            +
                                                       day,
         | 
| 158 | 
            +
                                                       hour,
         | 
| 159 | 
            +
                                                       minute,
         | 
| 160 | 
            +
                                                       second);
         | 
| 161 | 
            +
                    } else if (is_timezone(rb_timezone)) {
         | 
| 162 | 
            +
                        GTimeZone *timezone = NULL;
         | 
| 163 | 
            +
             | 
| 164 | 
            +
                        timezone = RVAL2GTIMEZONE(rb_timezone);
         | 
| 165 | 
            +
                        datetime = g_date_time_new(timezone,
         | 
| 166 | 
            +
                                                   year,
         | 
| 167 | 
            +
                                                   month,
         | 
| 168 | 
            +
                                                   day,
         | 
| 169 | 
            +
                                                   hour,
         | 
| 170 | 
            +
                                                   minute,
         | 
| 171 | 
            +
                                                   second);
         | 
| 172 | 
            +
                    } else {
         | 
| 173 | 
            +
                        rb_raise(rb_eArgError,
         | 
| 174 | 
            +
                                 ":timezone must be nil, :local, :utc or GLib::TimeZone: "
         | 
| 175 | 
            +
                                 "%+" PRIsVALUE,
         | 
| 176 | 
            +
                                 rb_timezone);
         | 
| 177 | 
            +
                    }
         | 
| 178 | 
            +
                } else {
         | 
| 179 | 
            +
                    rb_raise(rb_eArgError,
         | 
| 180 | 
            +
                             ":unix or (:year, :month, :day, :hour, :minute and :second) "
         | 
| 181 | 
            +
                             "must be specified: %+" PRIsVALUE,
         | 
| 182 | 
            +
                             rb_options);
         | 
| 183 | 
            +
                }
         | 
| 184 | 
            +
             | 
| 185 | 
            +
                G_INITIALIZE(self, datetime);
         | 
| 186 | 
            +
             | 
| 187 | 
            +
                return Qnil;
         | 
| 188 | 
            +
            }
         | 
| 189 | 
            +
             | 
| 190 | 
            +
            static VALUE
         | 
| 191 | 
            +
            rg_year(VALUE self)
         | 
| 192 | 
            +
            {
         | 
| 193 | 
            +
                return INT2NUM(g_date_time_get_year(_SELF(self)));
         | 
| 194 | 
            +
            }
         | 
| 195 | 
            +
             | 
| 196 | 
            +
            static VALUE
         | 
| 197 | 
            +
            rg_month(VALUE self)
         | 
| 198 | 
            +
            {
         | 
| 199 | 
            +
                return INT2NUM(g_date_time_get_month(_SELF(self)));
         | 
| 200 | 
            +
            }
         | 
| 201 | 
            +
             | 
| 202 | 
            +
            static VALUE
         | 
| 203 | 
            +
            rg_day_of_month(VALUE self)
         | 
| 204 | 
            +
            {
         | 
| 205 | 
            +
                return INT2NUM(g_date_time_get_day_of_month(_SELF(self)));
         | 
| 206 | 
            +
            }
         | 
| 207 | 
            +
             | 
| 208 | 
            +
            static VALUE
         | 
| 209 | 
            +
            rg_hour(VALUE self)
         | 
| 210 | 
            +
            {
         | 
| 211 | 
            +
                return INT2NUM(g_date_time_get_hour(_SELF(self)));
         | 
| 212 | 
            +
            }
         | 
| 213 | 
            +
             | 
| 214 | 
            +
            static VALUE
         | 
| 215 | 
            +
            rg_minute(VALUE self)
         | 
| 216 | 
            +
            {
         | 
| 217 | 
            +
                return INT2NUM(g_date_time_get_minute(_SELF(self)));
         | 
| 218 | 
            +
            }
         | 
| 219 | 
            +
             | 
| 220 | 
            +
            static VALUE
         | 
| 221 | 
            +
            rg_second(VALUE self)
         | 
| 222 | 
            +
            {
         | 
| 223 | 
            +
                return DBL2NUM(g_date_time_get_second(_SELF(self)));
         | 
| 224 | 
            +
            }
         | 
| 225 | 
            +
             | 
| 226 | 
            +
            static VALUE
         | 
| 227 | 
            +
            rg_format(VALUE self, VALUE rb_format)
         | 
| 228 | 
            +
            {
         | 
| 229 | 
            +
                const gchar *format = RVAL2CSTR(rb_format);
         | 
| 230 | 
            +
                return CSTR2RVAL(g_date_time_format(_SELF(self), format));
         | 
| 231 | 
            +
            }
         | 
| 232 | 
            +
             | 
| 233 | 
            +
            void
         | 
| 234 | 
            +
            Init_glib_date_time(void)
         | 
| 235 | 
            +
            {
         | 
| 236 | 
            +
                VALUE RG_TARGET_NAMESPACE;
         | 
| 237 | 
            +
             | 
| 238 | 
            +
                RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_DATE_TIME, "DateTime", mGLib);
         | 
| 239 | 
            +
             | 
| 240 | 
            +
                RG_DEF_SMETHOD(now, -1);
         | 
| 241 | 
            +
             | 
| 242 | 
            +
                RG_DEF_METHOD(initialize, -1);
         | 
| 243 | 
            +
                RG_DEF_METHOD(year, 0);
         | 
| 244 | 
            +
                RG_DEF_METHOD(month, 0);
         | 
| 245 | 
            +
                RG_DEF_METHOD(day_of_month, 0);
         | 
| 246 | 
            +
                RG_DEF_METHOD(hour, 0);
         | 
| 247 | 
            +
                RG_DEF_METHOD(minute, 0);
         | 
| 248 | 
            +
                RG_DEF_METHOD(second, 0);
         | 
| 249 | 
            +
                RG_DEF_METHOD(format, 1);
         | 
| 250 | 
            +
            }
         | 
| @@ -0,0 +1,82 @@ | |
| 1 | 
            +
            /*
         | 
| 2 | 
            +
             *  Copyright (C) 2016  Ruby-GNOME2 Project Team
         | 
| 3 | 
            +
             *
         | 
| 4 | 
            +
             *  This library is free software; you can redistribute it and/or
         | 
| 5 | 
            +
             *  modify it under the terms of the GNU Lesser General Public
         | 
| 6 | 
            +
             *  License as published by the Free Software Foundation; either
         | 
| 7 | 
            +
             *  version 2.1 of the License, or (at your option) any later version.
         | 
| 8 | 
            +
             *
         | 
| 9 | 
            +
             *  This library is distributed in the hope that it will be useful,
         | 
| 10 | 
            +
             *  but WITHOUT ANY WARRANTY; without even the implied warranty of
         | 
| 11 | 
            +
             *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
         | 
| 12 | 
            +
             *  Lesser General Public License for more details.
         | 
| 13 | 
            +
             *
         | 
| 14 | 
            +
             *  You should have received a copy of the GNU Lesser General Public
         | 
| 15 | 
            +
             *  License along with this library; if not, write to the Free Software
         | 
| 16 | 
            +
             *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
         | 
| 17 | 
            +
             *  MA  02110-1301  USA
         | 
| 18 | 
            +
             */
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            #include "rbgprivate.h"
         | 
| 21 | 
            +
             | 
| 22 | 
            +
            #define RG_TARGET_NAMESPACE cTimeZone
         | 
| 23 | 
            +
            #define _SELF(s) ((GTimeZone*)RVAL2BOXED(s, G_TYPE_TIME_ZONE))
         | 
| 24 | 
            +
             | 
| 25 | 
            +
            static VALUE
         | 
| 26 | 
            +
            rg_initialize(gint argc, VALUE *argv, VALUE self)
         | 
| 27 | 
            +
            {
         | 
| 28 | 
            +
                VALUE rb_identifier = Qnil;
         | 
| 29 | 
            +
                const gchar *identifier = NULL;
         | 
| 30 | 
            +
                GTimeZone *time_zone = NULL;
         | 
| 31 | 
            +
             | 
| 32 | 
            +
                rb_scan_args(argc, argv, "01", &rb_identifier);
         | 
| 33 | 
            +
             | 
| 34 | 
            +
                if (!NIL_P(rb_identifier))
         | 
| 35 | 
            +
                    identifier = RVAL2CSTR(rb_identifier);
         | 
| 36 | 
            +
             | 
| 37 | 
            +
                time_zone = g_time_zone_new(identifier);
         | 
| 38 | 
            +
                G_INITIALIZE(self, time_zone);
         | 
| 39 | 
            +
                return Qnil;
         | 
| 40 | 
            +
            }
         | 
| 41 | 
            +
             | 
| 42 | 
            +
            static VALUE
         | 
| 43 | 
            +
            rg_s_local(G_GNUC_UNUSED VALUE self)
         | 
| 44 | 
            +
            {
         | 
| 45 | 
            +
                GTimeZone *time_zone = NULL;
         | 
| 46 | 
            +
                time_zone = g_time_zone_new_local();
         | 
| 47 | 
            +
                return GTIMEZONE2RVAL(time_zone);
         | 
| 48 | 
            +
            }
         | 
| 49 | 
            +
             | 
| 50 | 
            +
            static VALUE
         | 
| 51 | 
            +
            rg_s_utc(G_GNUC_UNUSED VALUE self)
         | 
| 52 | 
            +
            {
         | 
| 53 | 
            +
                GTimeZone *time_zone = NULL;
         | 
| 54 | 
            +
                time_zone = g_time_zone_new_utc();
         | 
| 55 | 
            +
                return GTIMEZONE2RVAL(time_zone);
         | 
| 56 | 
            +
            }
         | 
| 57 | 
            +
             | 
| 58 | 
            +
            static VALUE
         | 
| 59 | 
            +
            rg_abbreviation(VALUE self, VALUE rb_interval)
         | 
| 60 | 
            +
            {
         | 
| 61 | 
            +
                gint interval = NUM2INT(rb_interval);
         | 
| 62 | 
            +
                return CSTR2RVAL(g_time_zone_get_abbreviation(_SELF(self), interval));
         | 
| 63 | 
            +
            }
         | 
| 64 | 
            +
             | 
| 65 | 
            +
            static VALUE
         | 
| 66 | 
            +
            rg_offset(VALUE self, VALUE rb_interval)
         | 
| 67 | 
            +
            {
         | 
| 68 | 
            +
                gint interval = NUM2INT(rb_interval);
         | 
| 69 | 
            +
                return INT2NUM(g_time_zone_get_offset(_SELF(self), interval));
         | 
| 70 | 
            +
            }
         | 
| 71 | 
            +
             | 
| 72 | 
            +
            void
         | 
| 73 | 
            +
            Init_glib_time_zone(void)
         | 
| 74 | 
            +
            {
         | 
| 75 | 
            +
                VALUE RG_TARGET_NAMESPACE;
         | 
| 76 | 
            +
                RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_TIME_ZONE, "TimeZone", mGLib);
         | 
| 77 | 
            +
                RG_DEF_METHOD(initialize, -1);
         | 
| 78 | 
            +
                RG_DEF_SMETHOD(local, 0);
         | 
| 79 | 
            +
                RG_DEF_SMETHOD(utc, 0);
         | 
| 80 | 
            +
                RG_DEF_METHOD(abbreviation, 1);
         | 
| 81 | 
            +
                RG_DEF_METHOD(offset, 1);
         | 
| 82 | 
            +
            }
         | 
    
        data/ext/glib2/rbgprivate.h
    CHANGED
    
    | @@ -150,6 +150,8 @@ G_GNUC_INTERNAL void Init_glib_variant_type(void); | |
| 150 150 | 
             
            G_GNUC_INTERNAL void Init_glib_variant(void);
         | 
| 151 151 | 
             
            G_GNUC_INTERNAL void Init_glib_regex(void);
         | 
| 152 152 | 
             
            G_GNUC_INTERNAL void Init_glib_matchinfo(void);
         | 
| 153 | 
            +
            G_GNUC_INTERNAL void Init_glib_date_time(void);
         | 
| 154 | 
            +
            G_GNUC_INTERNAL void Init_glib_time_zone(void);
         | 
| 153 155 |  | 
| 154 156 | 
             
            G_GNUC_INTERNAL void Init_gobject_convert(void);
         | 
| 155 157 | 
             
            G_GNUC_INTERNAL void Init_gobject_gtype(void);
         | 
    
        data/lib/2.2/glib2.so
    CHANGED
    
    | Binary file | 
    
        data/lib/2.3/glib2.so
    CHANGED
    
    | Binary file | 
    
        data/lib/2.4/glib2.so
    ADDED
    
    | Binary file | 
    
        data/lib/glib2.rb
    CHANGED
    
    | @@ -187,7 +187,7 @@ module GLib | |
| 187 187 |  | 
| 188 188 | 
             
              module Log
         | 
| 189 189 | 
             
                DOMAIN = "Ruby/GLib"
         | 
| 190 | 
            -
                LEVELS = { | 
| 190 | 
            +
                LEVELS = {
         | 
| 191 191 | 
             
                  LEVEL_ERROR => "ERROR",
         | 
| 192 192 | 
             
                  LEVEL_CRITICAL => "CRITICAL",
         | 
| 193 193 | 
             
                  LEVEL_WARNING => "WARNING",
         | 
| @@ -207,15 +207,23 @@ module GLib | |
| 207 207 | 
             
                  log(DOMAIN, LEVEL_CRITICAL, caller(1)[0] << ": " << str)
         | 
| 208 208 | 
             
                end
         | 
| 209 209 | 
             
                def warning(str)
         | 
| 210 | 
            -
                  log(DOMAIN, | 
| 210 | 
            +
                  log(DOMAIN, LEVEL_WARNING, caller(1)[0] << ": " << str)
         | 
| 211 211 | 
             
                end
         | 
| 212 | 
            -
             | 
| 212 | 
            +
             | 
| 213 213 | 
             
                def set_log_domain(domain)
         | 
| 214 | 
            -
                  level = | 
| 214 | 
            +
                  level =
         | 
| 215 | 
            +
                    FLAG_RECURSION |
         | 
| 216 | 
            +
                    FLAG_FATAL |
         | 
| 217 | 
            +
                    LEVEL_ERROR |
         | 
| 218 | 
            +
                    LEVEL_CRITICAL |
         | 
| 219 | 
            +
                    LEVEL_WARNING
         | 
| 220 | 
            +
                  if $VERBOSE or $DEBUG
         | 
| 221 | 
            +
                    level |=
         | 
| 222 | 
            +
                      LEVEL_MESSAGE |
         | 
| 223 | 
            +
                      LEVEL_INFO
         | 
| 224 | 
            +
                  end
         | 
| 215 225 | 
             
                  if $DEBUG
         | 
| 216 | 
            -
                    level  | 
| 217 | 
            -
                  elsif $VERBOSE
         | 
| 218 | 
            -
                    level = 127
         | 
| 226 | 
            +
                    level |= LEVEL_DEBUG
         | 
| 219 227 | 
             
                  end
         | 
| 220 228 | 
             
                  GLib::Log.set_handler(domain, level)
         | 
| 221 229 | 
             
                end
         |