<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:doc="http://www.gtk.org/introspection/doc/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Gio" version="2.0"/>
  <include name="Gtk" version="3.0"/>
  <c:include name="gc.h"/>
  <doc:format name="unknown"/>
  <namespace name="Gc"
             version="1.0"
             shared-library="libgc.so"
             c:identifier-prefixes="Gc"
             c:symbol-prefixes="gc">
    <alias name="SearchResult" c:type="GcSearchResult">
      <source-position filename="lib/gc.h" line="45"/>
      <type name="GLib.Array" c:type="GArray"/>
    </alias>
    <enumeration name="Category" c:type="GcCategory">
      <source-position filename="lib/gc.h" line="38"/>
      <member name="none" value="0" c:identifier="GC_CATEGORY_NONE">
      </member>
      <member name="letter" value="1" c:identifier="GC_CATEGORY_LETTER">
      </member>
      <member name="letter_punctuation"
              value="2"
              c:identifier="GC_CATEGORY_LETTER_PUNCTUATION">
      </member>
      <member name="letter_arrow"
              value="3"
              c:identifier="GC_CATEGORY_LETTER_ARROW">
      </member>
      <member name="letter_bullet"
              value="4"
              c:identifier="GC_CATEGORY_LETTER_BULLET">
      </member>
      <member name="letter_picture"
              value="5"
              c:identifier="GC_CATEGORY_LETTER_PICTURE">
      </member>
      <member name="letter_currency"
              value="6"
              c:identifier="GC_CATEGORY_LETTER_CURRENCY">
      </member>
      <member name="letter_math"
              value="7"
              c:identifier="GC_CATEGORY_LETTER_MATH">
      </member>
      <member name="letter_latin"
              value="8"
              c:identifier="GC_CATEGORY_LETTER_LATIN">
      </member>
      <member name="emoji" value="9" c:identifier="GC_CATEGORY_EMOJI">
      </member>
      <member name="emoji_smileys"
              value="10"
              c:identifier="GC_CATEGORY_EMOJI_SMILEYS">
      </member>
      <member name="emoji_animals"
              value="11"
              c:identifier="GC_CATEGORY_EMOJI_ANIMALS">
      </member>
      <member name="emoji_food"
              value="12"
              c:identifier="GC_CATEGORY_EMOJI_FOOD">
      </member>
      <member name="emoji_activities"
              value="13"
              c:identifier="GC_CATEGORY_EMOJI_ACTIVITIES">
      </member>
      <member name="emoji_travel"
              value="14"
              c:identifier="GC_CATEGORY_EMOJI_TRAVEL">
      </member>
      <member name="emoji_objects"
              value="15"
              c:identifier="GC_CATEGORY_EMOJI_OBJECTS">
      </member>
      <member name="emoji_symbols"
              value="16"
              c:identifier="GC_CATEGORY_EMOJI_SYMBOLS">
      </member>
      <member name="emoji_flags"
              value="17"
              c:identifier="GC_CATEGORY_EMOJI_FLAGS">
      </member>
    </enumeration>
    <class name="SearchContext"
           c:symbol-prefix="search_context"
           c:type="GcSearchContext"
           parent="GObject.Object"
           glib:type-name="GcSearchContext"
           glib:get-type="gc_search_context_get_type"
           glib:type-struct="SearchContextClass">
      <source-position filename="lib/gc.h" line="67"/>
      <constructor name="new" c:identifier="gc_search_context_new">
        <source-position filename="lib/gc.h" line="90"/>
        <return-value transfer-ownership="full">
          <type name="SearchContext" c:type="GcSearchContext*"/>
        </return-value>
        <parameters>
          <parameter name="criteria" transfer-ownership="none">
            <type name="SearchCriteria" c:type="GcSearchCriteria*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <type name="SearchFlag" c:type="GcSearchFlag"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="is_finished" c:identifier="gc_search_context_is_finished">
        <source-position filename="lib/gc.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="SearchContext" c:type="GcSearchContext*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="search"
              c:identifier="gc_search_context_search"
              glib:finish-func="search_finish">
        <source-position filename="lib/gc.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <type name="SearchContext" c:type="GcSearchContext*"/>
          </instance-parameter>
          <parameter name="max_matches" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="search_finish"
              c:identifier="gc_search_context_search_finish"
              throws="1">
        <source-position filename="lib/gc.h" line="98"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="1169">an array of characters.</doc>
          <type name="SearchResult" c:type="GcSearchResult*"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lib/gc.c"
                 line="1165">a #GcSearchContext.</doc>
            <type name="SearchContext" c:type="GcSearchContext*"/>
          </instance-parameter>
          <parameter name="result" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lib/gc.c"
                 line="1166">a #GAsyncResult.</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <property name="criteria"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none">
        <type name="SearchCriteria"/>
      </property>
      <property name="flags"
                introspectable="0"
                readable="0"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="GC_SEARCH_FLAG_NONE">
        <type/>
      </property>
    </class>
    <record name="SearchContextClass"
            c:type="GcSearchContextClass"
            glib:is-gtype-struct-for="SearchContext">
      <source-position filename="lib/gc.h" line="67"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <record name="SearchCriteria"
            c:type="GcSearchCriteria"
            opaque="1"
            glib:type-name="GcSearchCriteria"
            glib:get-type="gc_search_criteria_get_type"
            c:symbol-prefix="search_criteria">
      <source-position filename="lib/gc.h" line="64"/>
      <constructor name="new_category"
                   c:identifier="gc_search_criteria_new_category">
        <source-position filename="lib/gc.h" line="78"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="650">a new #GcSearchCriteria</doc>
          <type name="SearchCriteria" c:type="GcSearchCriteria*"/>
        </return-value>
        <parameters>
          <parameter name="category" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lib/gc.c"
                 line="648">a #GcCategory</doc>
            <type name="Category" c:type="GcCategory"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_keywords"
                   c:identifier="gc_search_criteria_new_keywords">
        <source-position filename="lib/gc.h" line="81"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="665">a new #GcSearchCriteria</doc>
          <type name="SearchCriteria" c:type="GcSearchCriteria*"/>
        </return-value>
        <parameters>
          <parameter name="keywords" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lib/gc.c"
                 line="663">an array of keywords</doc>
            <array c:type="const gchar* const*">
              <type name="utf8"/>
            </array>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_related"
                   c:identifier="gc_search_criteria_new_related">
        <source-position filename="lib/gc.h" line="87"/>
        <return-value transfer-ownership="full">
          <type name="SearchCriteria" c:type="GcSearchCriteria*"/>
        </return-value>
        <parameters>
          <parameter name="uc" transfer-ownership="none">
            <type name="gunichar" c:type="gunichar"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_scripts"
                   c:identifier="gc_search_criteria_new_scripts">
        <source-position filename="lib/gc.h" line="84"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="680">a new #GcSearchCriteria</doc>
          <type name="SearchCriteria" c:type="GcSearchCriteria*"/>
        </return-value>
        <parameters>
          <parameter name="scripts" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lib/gc.c"
                 line="678">an array of scripts</doc>
            <array c:type="const gchar* const*">
              <type name="utf8"/>
            </array>
          </parameter>
        </parameters>
      </constructor>
    </record>
    <enumeration name="SearchError" c:type="GcSearchError">
      <source-position filename="lib/gc.h" line="54"/>
      <member name="failed" value="0" c:identifier="GC_SEARCH_ERROR_FAILED">
      </member>
      <member name="invalid_state"
              value="1"
              c:identifier="GC_SEARCH_ERROR_INVALID_STATE">
      </member>
    </enumeration>
    <bitfield name="SearchFlag" c:type="GcSearchFlag">
      <source-position filename="lib/gc.h" line="60"/>
      <member name="none" value="0" c:identifier="GC_SEARCH_FLAG_NONE">
      </member>
      <member name="word" value="1" c:identifier="GC_SEARCH_FLAG_WORD">
      </member>
    </bitfield>
    <callback name="SearchFunc" c:type="GcSearchFunc">
      <source-position filename="lib/gc.h" line="46"/>
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="uc" transfer-ownership="none">
          <type name="gunichar" c:type="gunichar"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1"
                   closure="1">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <function name="character_is_invisible"
              c:identifier="gc_character_is_invisible">
      <source-position filename="lib/gc.h" line="109"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lib/gc.c"
             line="564">%TRUE if @uc is an invisible character, %FALSE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="uc" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="562">a UCS-4 character</doc>
          <type name="gunichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="character_name" c:identifier="gc_character_name">
      <source-position filename="lib/gc.h" line="108"/>
      <return-value transfer-ownership="full" nullable="1">
        <doc xml:space="preserve"
             filename="lib/gc.c"
             line="530">a newly allocated character name of @uc.</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="uc" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="528">a UCS-4 character</doc>
          <type name="gunichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="character_width" c:identifier="gc_character_width">
      <source-position filename="lib/gc.h" line="111"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lib/gc.c"
             line="579">column width of @uc, or -1 if @uc is a control character.</doc>
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="uc" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="577">a UCS-4 character</doc>
          <type name="gunichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="filter_characters" c:identifier="gc_filter_characters">
      <source-position filename="lib/gc.h" line="105"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="lib/gc.c"
             line="1199">an array of characters.</doc>
        <type name="SearchResult" c:type="GcSearchResult*"/>
      </return-value>
      <parameters>
        <parameter name="category" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="1196">a #GcCategory.</doc>
          <type name="Category" c:type="GcCategory"/>
        </parameter>
        <parameter name="characters" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="1197">an array of characters</doc>
          <array c:type="const gchar* const*">
            <type name="utf8"/>
          </array>
        </parameter>
      </parameters>
    </function>
    <function name="get_current_language"
              c:identifier="gc_get_current_language">
      <source-position filename="lib/gc.h" line="128"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="lib/gc.c"
             line="1321">an ISO639 two-letter language code</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
    </function>
    <function name="get_scripts_for_language"
              c:identifier="gc_get_scripts_for_language">
      <source-position filename="lib/gc.h" line="130"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lib/gc.c"
             line="1368">a list of script names.</doc>
        <array c:type="const gchar* const*">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="language" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lib/gc.c"
               line="1366">a language name</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="gtk_clipboard_get" c:identifier="gc_gtk_clipboard_get">
      <source-position filename="lib/gc.h" line="117"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lib/gc.c"
             line="1256">a #GtkClipboard.</doc>
        <type name="Gtk.Clipboard" c:type="GtkClipboard*"/>
      </return-value>
    </function>
    <function name="pango_context_font_has_glyph"
              c:identifier="gc_pango_context_font_has_glyph">
      <source-position filename="lib/gc.h" line="123"/>
      <return-value transfer-ownership="none">
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="context" transfer-ownership="none">
          <type name="Pango.Context" c:type="PangoContext*"/>
        </parameter>
        <parameter name="font" transfer-ownership="none">
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
        <parameter name="uc" transfer-ownership="none">
          <type name="gunichar" c:type="gunichar"/>
        </parameter>
      </parameters>
    </function>
    <function name="pango_layout_disable_fallback"
              c:identifier="gc_pango_layout_disable_fallback">
      <source-position filename="lib/gc.h" line="120"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="layout" transfer-ownership="none">
          <type name="Pango.Layout" c:type="PangoLayout*"/>
        </parameter>
      </parameters>
    </function>
    <function name="search_result_get" c:identifier="gc_search_result_get">
      <source-position filename="lib/gc.h" line="72"/>
      <return-value transfer-ownership="none">
        <type name="gunichar" c:type="gunichar"/>
      </return-value>
      <parameters>
        <parameter name="result" transfer-ownership="none">
          <type name="SearchResult" c:type="GcSearchResult*"/>
        </parameter>
        <parameter name="index" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="search_result_get_type"
              c:identifier="gc_search_result_get_type">
      <source-position filename="lib/gc.h" line="70"/>
      <return-value transfer-ownership="none">
        <type name="GType" c:type="GType"/>
      </return-value>
    </function>
  </namespace>
</repository>
