Commit Graph

11 Commits

Author SHA1 Message Date
Emmanuele Bassi
13f09c5594 Add GI_TYPE_TAG_IS_BASIC
And deprecate G_TYPE_TAG_IS_BASIC. Let's avoid hijacking
the G namespace any further.
2022-02-13 14:33:10 +00:00
Philip Chimento
8f047f11f6 gitypeinfo: Add GI_TYPE_TAG_IS_CONTAINER macro
Like GI_TYPE_TAG_IS_NUMERIC, this is a convenience for bindings that want
to perform a similar action for all container types.
2022-02-13 12:25:18 +00:00
Philip Chimento
75b48f1dbe gitypeinfo: Add GI_TYPE_TAG_IS_NUMERIC macro
This is a convenience for bindings that want to perform a similar action
for all numeric types. It allows more expressive code in some cases:

if (GI_TYPE_TAG_IS_NUMERIC(tag)) {
  do_one_thing();
  return;
}

switch (tag) {
  case GI_TYPE_TAG_ARRAY:
    do_other_thing();
    return;
  /* ... */
  default:
    g_assert_not_reached();
}

instead of listing out all of the numeric types in the switch statement.
2022-02-13 12:25:18 +00:00
Philip Chimento
7daee7b90a girepository: Add GITypeInfo utility functions for storing values in pointers
This functionality is used in both PyGObject and GJS, and if not done
correctly can lead to architecture-specific bugs. It seems best to add
API in gobject-introspection for the correct way to do it.

See also: GNOME/gjs#309
2020-04-26 10:24:26 -07:00
Chun-wei Fan
265ea792c1 girepository: Add Header for Version Macros
This adds a header to the girepository library, which is then included
either directly or indirectly by the other headers so that all the public
symbols (and the 2 symbols in gitypelib-internal.h used by the tools) are
decorated by a macro, that can later be used to export the symbols and also
to be used to display compile-time warnings for usage of deprecated APIs,
which is like what is now being done in GLib (and GTK+, Clutter, and so
on).

This marks the first step that we begin to stop depending on the .symbols/
.def files to export the symbols.

https://bugzilla.gnome.org/show_bug.cgi?id=732669
2014-08-15 09:45:41 +08:00
Dieter Verfaillie
bb7f8d57c2 docs: fix up reference docs a bit
- require GTK-Doc 1.19
      - remove sgml mode
      - automatically generate gi.types (needs GTK-Doc 1.19)
      - fix https://bugzilla.gnome.org/show_bug.cgi?id=700025
[WIP] - rearange sections a bit
[WIP] - add gi-building, gi-programming sections
[WIP] - mark missing docs with TODO, which is only marginaly
        better than nothing but at least can be grepped :)

https://bugzilla.gnome.org/show_bug.cgi?id=571648
2013-10-10 16:48:51 -04:00
Colin Walters
e865dcb7b4 Add Emacs mode lines to C sources 2012-02-03 13:42:56 -05:00
Dan Winship
f9ebb4e99d Deprecate ErrorDomain
The previous ErrorDomain blob was never actually scanned or used, and
it was kind of a lame API conceptually.

To keep some compatibility, rather than removing the enumeration
values, rename them to _INVALID, and don't bump the typelib version.
This should in theory allow a new libgirepository to read an old
typelib.

Based on a patch from Colin Walters

https://bugzilla.gnome.org/show_bug.cgi?id=602516
2011-08-12 11:10:43 -04:00
Colin Walters
f9a3bb7300 Add support for gunichar in typelib
Some API such as gtk_text_iter_get_char returns an individual
"gunichar"; we should support this.

https://bugzilla.gnome.org/show_bug.cgi?id=633197
2010-11-12 16:00:10 -05:00
Tomeu Vizoso
da698167a0 Add g_info_type_to_string (GIInfoType type) 2010-07-28 12:24:10 +02:00
Johan Dahlin
edcce0af88 [girepository] Move GITypeInfo out of ginfo.ch 2010-06-06 12:58:28 -03:00