<?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="GLib" version="2.0"/>
  <include name="GObject" version="2.0"/>
  <doc:format name="unknown"/>
  <namespace name="LangTag"
             version="0.6"
             shared-library="liblangtag-gobject.so.0"
             c:identifier-prefixes="Lt"
             c:symbol-prefixes="lt">
    <alias name="Bool" c:type="LtBool">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="351">The type of boolean value.</doc>
      <source-position filename="lt-macros.gir.h" line="356"/>
      <type name="gint" c:type="int"/>
    </alias>
    <alias name="Pointer" c:type="LtPointer">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="345">The type of object pointer.</doc>
      <source-position filename="lt-macros.gir.h" line="350"/>
      <type name="gpointer" c:type="void*"/>
    </alias>
    <function-macro name="ALIGNED_TO"
                    c:identifier="LT_ALIGNED_TO"
                    introspectable="0">
      <source-position filename="lt-macros.gir.h" line="283"/>
      <parameters>
        <parameter name="_x_">
        </parameter>
        <parameter name="_y_">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ALIGNED_TO_POINTER"
                    c:identifier="LT_ALIGNED_TO_POINTER"
                    introspectable="0">
      <source-position filename="lt-macros.gir.h" line="284"/>
      <parameters>
        <parameter name="_x_">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="ASSERT_STATIC"
                    c:identifier="LT_ASSERT_STATIC"
                    introspectable="0">
      <source-position filename="lt-macros.gir.h" line="322"/>
      <parameters>
        <parameter name="_x_">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="BREAKPOINT"
                    c:identifier="LT_BREAKPOINT"
                    introspectable="0">
      <source-position filename="lt-macros.gir.h" line="302"/>
    </function-macro>
    <callback name="CompareFunc" c:type="LtCompareFunc">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="371">The type of callback function used for comparing objects.</doc>
      <source-position filename="lt-macros.gir.h" line="378"/>
      <return-value transfer-ownership="none">
        <type name="gint" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="v1" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-macros.gir.h"
               line="373">the object to compare with @v2.</doc>
          <type name="Pointer" c:type="const LtPointer"/>
        </parameter>
        <parameter name="v2" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-macros.gir.h"
               line="374">the object to compare with @v1.</doc>
          <type name="Pointer" c:type="const LtPointer"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="CopyFunc" c:type="LtCopyFunc">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="357">The type of callback function used for copying @data.</doc>
      <source-position filename="lt-macros.gir.h" line="363"/>
      <return-value transfer-ownership="none">
        <type name="Pointer" c:type="LtPointer"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-macros.gir.h"
               line="359">the object to be copied.</doc>
          <type name="Pointer" c:type="LtPointer"/>
        </parameter>
      </parameters>
    </callback>
    <constant name="DIR_SEPARATOR" value="92" c:type="LT_DIR_SEPARATOR">
      <source-position filename="lt-macros.gir.h" line="257"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="DIR_SEPARATOR_S" value="\" c:type="LT_DIR_SEPARATOR_S">
      <source-position filename="lt-macros.gir.h" line="256"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <record name="DbVal" c:type="LtDbVal">
      <doc xml:space="preserve"
           filename="lt-database.gir.h"
           line="35">The database set of structure to peek instances of them. this is useful
for the debugging purpose only.</doc>
      <source-position filename="lt-database.gir.h" line="58"/>
      <field name="lang" writable="1">
        <doc xml:space="preserve"
             filename="lt-database.gir.h"
             line="37">The placeholder to store the object of #LtLangDb.</doc>
        <type name="LangDb" c:type="LtLangDb*"/>
      </field>
      <field name="extlang" writable="1">
        <doc xml:space="preserve"
             filename="lt-database.gir.h"
             line="38">The placeholder to store the object of #LtExtlangDb.</doc>
        <type name="ExtlangDb" c:type="LtExtlangDb*"/>
      </field>
      <field name="script" writable="1">
        <doc xml:space="preserve"
             filename="lt-database.gir.h"
             line="39">The placeholder to sthre the object of #LtScriptDb.</doc>
        <type name="ScriptDb" c:type="LtScriptDb*"/>
      </field>
      <field name="region" writable="1">
        <doc xml:space="preserve"
             filename="lt-database.gir.h"
             line="40">The placeholder to store the object of #LtRegionDb.</doc>
        <type name="RegionDb" c:type="LtRegionDb*"/>
      </field>
      <field name="variant" writable="1">
        <doc xml:space="preserve"
             filename="lt-database.gir.h"
             line="41">The placeholder to store the object of #LtVariantDb.</doc>
        <type name="VariantDb" c:type="LtVariantDb*"/>
      </field>
      <field name="grandfathered" writable="1">
        <doc xml:space="preserve"
             filename="lt-database.gir.h"
             line="42">The placeholder to store the object of #LtGrandfatheredDb.</doc>
        <type name="GrandfatheredDb" c:type="LtGrandfatheredDb*"/>
      </field>
      <field name="redundant" writable="1">
        <doc xml:space="preserve"
             filename="lt-database.gir.h"
             line="43">The placeholder to store the object of #LtRedundantDb.</doc>
        <type name="RedundantDb" c:type="LtRedundantDb*"/>
      </field>
      <field name="relation" writable="1">
        <doc xml:space="preserve"
             filename="lt-database.gir.h"
             line="44">The placeholder to store the object of #LtRelationDb.</doc>
        <type name="RelationDb" c:type="LtRelationDb*"/>
      </field>
    </record>
    <callback name="DestroyFunc" c:type="LtDestroyFunc">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="364">The type of callback function used for destroying @data.</doc>
      <source-position filename="lt-macros.gir.h" line="370"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-macros.gir.h"
               line="366">the object to be destroyed.</doc>
          <type name="Pointer" c:type="LtPointer"/>
        </parameter>
      </parameters>
    </callback>
    <constant name="EXT_MODULE_VERSION"
              value="1"
              c:type="LT_EXT_MODULE_VERSION">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="28">Static variable for the module version. this is used to ensure if the built
module is compatible with the runtime library.</doc>
      <source-position filename="lt-ext-module.gir.h" line="34"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <record name="Error"
            c:type="LtError"
            opaque="1"
            glib:type-name="LtError"
            glib:get-type="lt_error_get_type"
            c:symbol-prefix="error">
      <doc xml:space="preserve"
           filename="lt-error.gir.h"
           line="52">All the fields in the &lt;structname&gt;LtError&lt;/structname&gt;
structure are private to the #LtError implementation.</doc>
      <source-position filename="lt-error.gir.h" line="58"/>
      <constructor name="new" c:identifier="lt_error_new">
        <doc xml:space="preserve"
             filename="lt-error.gir.c"
             line="49">Creates #LtError object. this function is protected and not supposed
to use in applications directly. Use lt_error_set().</doc>
        <source-position filename="lt-error.gir.h" line="61"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-error.gir.c"
               line="55">a newly allocated #LtError. it has to be freed
         with lt_error_unref().</doc>
          <type name="Error" c:type="LtError*"/>
        </return-value>
      </constructor>
      <method name="clear" c:identifier="lt_error_clear">
        <doc xml:space="preserve"
             filename="lt-error.gir.c"
             line="165">Clean up all of the errors in @error.</doc>
        <source-position filename="lt-error.gir.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="error" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="167">a #LtError</doc>
            <type name="Error" c:type="LtError*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="is_set" c:identifier="lt_error_is_set">
        <doc xml:space="preserve"
             filename="lt-error.gir.c"
             line="181">Checks if @error contains @type of errors. if #LT_ERR_ANY is set to @type,
all the types of the errors are targeted. otherwise the result is filtered
out by @type.</doc>
        <source-position filename="lt-error.gir.h" line="69"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-error.gir.c"
               line="190">%TRUE if any, otherwise %FALSE</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="error" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="183">a #LtError</doc>
            <type name="Error" c:type="LtError*"/>
          </instance-parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="184">a #LtErrorype_t</doc>
            <type name="ErrorType" c:type="LtErrorType"/>
          </parameter>
        </parameters>
      </method>
      <method name="print" c:identifier="lt_error_print">
        <doc xml:space="preserve"
             filename="lt-error.gir.c"
             line="214">Output the error messages in @error according to @type.</doc>
        <source-position filename="lt-error.gir.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="error" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="216">a #LtError</doc>
            <type name="Error" c:type="LtError*"/>
          </instance-parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="217">a #LtErrorype_t</doc>
            <type name="ErrorType" c:type="LtErrorType"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_error_ref">
        <doc xml:space="preserve"
             filename="lt-error.gir.c"
             line="66">Inscreases the reference count of @error.</doc>
        <source-position filename="lt-error.gir.h" line="62"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-error.gir.c"
               line="72">the same @error object.</doc>
          <type name="Error" c:type="LtError*"/>
        </return-value>
        <parameters>
          <instance-parameter name="error" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="68">a #LtError</doc>
            <type name="Error" c:type="LtError*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_error_unref">
        <doc xml:space="preserve"
             filename="lt-error.gir.c"
             line="82">Decreases the reference count of @error. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-error.gir.h" line="63"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="error" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="84">a #LtError</doc>
            <type name="Error" c:type="LtError*"/>
          </instance-parameter>
        </parameters>
      </method>
      <function name="set" c:identifier="lt_error_set" introspectable="0">
        <doc xml:space="preserve"
             filename="lt-error.gir.c"
             line="96">Sets the error into @error according to the given parameters.</doc>
        <source-position filename="lt-error.gir.h" line="64"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-error.gir.c"
               line="105">an instance of #LtError</doc>
          <type name="Error" c:type="LtError*"/>
        </return-value>
        <parameters>
          <parameter name="error" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="98">a return location for a #LtError</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
          <parameter name="type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="99">a #LtErrorype_t</doc>
            <type name="ErrorType" c:type="LtErrorType"/>
          </parameter>
          <parameter name="message" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="100">the string format to output the error messages</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-error.gir.c"
                 line="101">the parameters to insert into the format string</doc>
            <varargs/>
          </parameter>
        </parameters>
      </function>
    </record>
    <enumeration name="ErrorType" c:type="LtErrorType">
      <doc xml:space="preserve"
           filename="lt-error.gir.h"
           line="25">Error code used in this library.</doc>
      <source-position filename="lt-error.gir.h" line="59"/>
    </enumeration>
    <record name="ExtModule"
            c:type="LtExtModule"
            opaque="1"
            glib:type-name="LtExtModule"
            glib:get-type="lt_ext_module_get_type"
            c:symbol-prefix="ext_module">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="36">All the fields in the &lt;structname&gt;LtExtModule&lt;/structname&gt;
structure are private to the #LtExtModule implementation.</doc>
      <source-position filename="lt-ext-module.gir.h" line="42"/>
      <method name="ref" c:identifier="lt_ext_module_ref">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.c"
             line="698">Increases the reference count of @module.</doc>
        <source-position filename="lt-ext-module.gir.h" line="166"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-ext-module.gir.c"
               line="704">the same @module object.</doc>
          <type name="ExtModule" c:type="LtExtModule*"/>
        </return-value>
        <parameters>
          <instance-parameter name="module" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-ext-module.gir.c"
                 line="700">a #lt_ext_module_t.</doc>
            <type name="ExtModule" c:type="LtExtModule*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_ext_module_unref">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.c"
             line="714">Decreases the reference count of @module. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-ext-module.gir.h" line="167"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="module" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-ext-module.gir.c"
                 line="716">a #lt_ext_module_t.</doc>
            <type name="ExtModule" c:type="LtExtModule*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="ExtModuleData"
            c:type="LtExtModuleData"
            glib:type-name="LtExtModuleData"
            glib:get-type="lt_ext_module_data_get_type"
            c:symbol-prefix="ext_module_data">
      <doc xml:space="preserve"
           filename="lt-ext-module-data.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtExtModuleData&lt;/structname&gt;
structure are private to the #LtExtModuleData implementation.</doc>
      <source-position filename="lt-ext-module-data.gir.h" line="34"/>
      <field name="dummy" writable="1">
        <doc xml:space="preserve"
             filename="lt-ext-module-data.gir.h"
             line="27">a dummy pointer for alignment.</doc>
        <array zero-terminated="0" fixed-size="8">
          <type name="Pointer" c:type="LtPointer"/>
        </array>
      </field>
      <constructor name="new" c:identifier="lt_ext_module_data_new">
        <doc xml:space="preserve"
             filename="lt-ext-module-data.gir.c"
             line="42">Create a new instance of #LtExtModuleData. this function allows
to create an inherited instance like:
|[
struct _my_module_data_t {
LtExtModuleData  parent;
...own members...
};
]|</doc>
        <source-position filename="lt-ext-module-data.gir.h" line="39"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-ext-module-data.gir.c"
               line="56">a #LtExtModuleData.</doc>
          <type name="ExtModuleData" c:type="LtExtModuleData*"/>
        </return-value>
        <parameters>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-ext-module-data.gir.c"
                 line="44">real size to allocate memory for the object.</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
          <parameter name="finalizer" transfer-ownership="none" scope="async">
            <doc xml:space="preserve"
                 filename="lt-ext-module-data.gir.c"
                 line="45">a callback function to destroy the content.</doc>
            <type name="DestroyFunc" c:type="LtDestroyFunc"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="ref" c:identifier="lt_ext_module_data_ref">
        <doc xml:space="preserve"
             filename="lt-ext-module-data.gir.c"
             line="77">Increases the reference count of @data.</doc>
        <source-position filename="lt-ext-module-data.gir.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-ext-module-data.gir.c"
               line="83">the same @data object.</doc>
          <type name="ExtModuleData" c:type="LtExtModuleData*"/>
        </return-value>
        <parameters>
          <instance-parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-ext-module-data.gir.c"
                 line="79">a #LtExtModuleData.</doc>
            <type name="ExtModuleData" c:type="LtExtModuleData*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_ext_module_data_unref">
        <doc xml:space="preserve"
             filename="lt-ext-module-data.gir.c"
             line="95">Decreases the reference count of @data. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-ext-module-data.gir.h" line="42"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-ext-module-data.gir.c"
                 line="97">a #LtExtModuleData.</doc>
            <type name="ExtModuleData" c:type="LtExtModuleData*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <callback name="ExtModuleDataNewFunc" c:type="LtExtModuleDataNewFunc">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="74">The type of the callback function used to create a new instance of
#LtExtModuleData.
This is invoked when new Extension subtag appears and keep data.</doc>
      <source-position filename="lt-ext-module.gir.h" line="83"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="81">a new instance of #LtExtModuleData.</doc>
        <type name="ExtModuleData" c:type="LtExtModuleData*"/>
      </return-value>
    </callback>
    <record name="ExtModuleFuncs" c:type="LtExtModuleFuncs">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="139">The &lt;structname&gt;LtExtModuleFuncs&lt;/structname&gt; struct is a callback
collection to provide an accessor between #lt_extension_t
and #LtExtModule and extend features.</doc>
      <source-position filename="lt-ext-module.gir.h" line="161"/>
      <field name="get_singleton" writable="1">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="141">A callback function to obtain the singleton character
                that are supposed in the module.</doc>
        <type name="ExtModuleSingletonFunc"
              c:type="const LtExtModuleSingletonFunc"/>
      </field>
      <field name="create_data" writable="1">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="143">A callback function to create a new instance of
              #LtExtModuleData for the module.</doc>
        <type name="ExtModuleDataNewFunc"
              c:type="const LtExtModuleDataNewFunc"/>
      </field>
      <field name="precheck_tag" writable="1">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="145">A callback function to check tags prior to parse subtags.</doc>
        <type name="ExtModulePrecheckFunc"
              c:type="const LtExtModulePrecheckFunc"/>
      </field>
      <field name="parse_tag" writable="1">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="146">A callback function to parse a tag.</doc>
        <type name="ExtModuleParseFunc" c:type="const LtExtModuleParseFunc"/>
      </field>
      <field name="get_tag" writable="1">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="147">A callback function to obtain the tag string.</doc>
        <type name="ExtModuleGetTagFunc" c:type="const LtExtModuleGetTagFunc"/>
      </field>
      <field name="validate_tag" writable="1">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="148">A callback function to validate the tag.</doc>
        <type name="ExtModuleValidateFunc"
              c:type="const LtExtModuleValidateFunc"/>
      </field>
    </record>
    <callback name="ExtModuleGetFuncsFunc" c:type="LtExtModuleGetFuncsFunc">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="55">The type of the module_get_funcs() that is required to implement
an extension module.</doc>
      <source-position filename="lt-ext-module.gir.h" line="63"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="61">a #LtExtModuleFuncs.</doc>
        <type name="ExtModuleFuncs" c:type="const LtExtModuleFuncs*"/>
      </return-value>
    </callback>
    <callback name="ExtModuleGetTagFunc" c:type="LtExtModuleGetTagFunc">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="112">The type of the callback function used to obtain the tag.</doc>
      <source-position filename="lt-ext-module.gir.h" line="120"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="118">a tag string.</doc>
        <type name="utf8" c:type="char*"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-ext-module.gir.h"
               line="114">a #LtExtModuleData.</doc>
          <type name="ExtModuleData" c:type="LtExtModuleData*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="ExtModuleParseFunc" c:type="LtExtModuleParseFunc">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="99">The type of the callback function used to parse tags.</doc>
      <source-position filename="lt-ext-module.gir.h" line="109"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="107">%TRUE if the @subtag is valid for Extension. otherwise %FALSE.</doc>
        <type name="Bool" c:type="LtBool"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-ext-module.gir.h"
               line="101">a #LtExtModuleData.</doc>
          <type name="ExtModuleData" c:type="LtExtModuleData*"/>
        </parameter>
        <parameter name="subtag" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-ext-module.gir.h"
               line="102">a subtag string to parse.</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="error"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="lt-ext-module.gir.h"
               line="103">a #LtError.</doc>
          <type name="Error" c:type="LtError**"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="ExtModulePrecheckFunc" c:type="LtExtModulePrecheckFunc">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="84">The type of the callback function used to check @tag prior to process
parsing subtags for the extension.</doc>
      <source-position filename="lt-ext-module.gir.h" line="96"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="93">%TRUE if @tag is valid to process parsing subtags for the extension.
         otherwise %FALSE.</doc>
        <type name="Bool" c:type="LtBool"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-ext-module.gir.h"
               line="86">a #LtExtModuleData.</doc>
          <type name="ExtModuleData" c:type="LtExtModuleData*"/>
        </parameter>
        <parameter name="tag" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-ext-module.gir.h"
               line="87">a #LtTag.</doc>
          <type name="Tag" c:type="const LtTag*"/>
        </parameter>
        <parameter name="error"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="lt-ext-module.gir.h"
               line="88">a #LtError.</doc>
          <type name="Error" c:type="LtError**"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="ExtModuleSingletonFunc" c:type="LtExtModuleSingletonFunc">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="65">The type of the callback function used to obtain a singleton character
for Extension subtag that the module would support.</doc>
      <source-position filename="lt-ext-module.gir.h" line="73"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="71">a singleton character.</doc>
        <type name="gchar" c:type="char"/>
      </return-value>
    </callback>
    <callback name="ExtModuleValidateFunc" c:type="LtExtModuleValidateFunc">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="121">The type of the callback function used to validate the tags in @data.</doc>
      <source-position filename="lt-ext-module.gir.h" line="129"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="127">%TRUE if it's valid, otherwise %FALSE.</doc>
        <type name="Bool" c:type="LtBool"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-ext-module.gir.h"
               line="123">a #LtExtModuleData.</doc>
          <type name="ExtModuleData" c:type="LtExtModuleData*"/>
        </parameter>
      </parameters>
    </callback>
    <callback name="ExtModuleVersionFunc" c:type="LtExtModuleVersionFunc">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.h"
           line="45">The type of the module_get_version() that is required to implement
an extension module.</doc>
      <source-position filename="lt-ext-module.gir.h" line="54"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lt-ext-module.gir.h"
             line="51">a version number. this is the same to #LT_EXT_MODULE_VERSION
         when the module was built.</doc>
        <type name="gint" c:type="int"/>
      </return-value>
    </callback>
    <record name="Extension"
            c:type="LtExtension"
            opaque="1"
            glib:type-name="LtExtension"
            glib:get-type="lt_extension_get_type"
            c:symbol-prefix="extension">
      <doc xml:space="preserve"
           filename="lt-extension.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtExtension&lt;/structname&gt;
structure are private to the #LtExtension implementation.</doc>
      <source-position filename="lt-extension.gir.h" line="31"/>
      <method name="compare" c:identifier="lt_extension_compare">
        <doc xml:space="preserve"
             filename="lt-extension.gir.c"
             line="390">Compare if @v1 and @v2 is the same object or not.</doc>
        <source-position filename="lt-extension.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extension.gir.c"
               line="397">%TRUE if it's the same, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extension.gir.c"
                 line="392">a #LtExtension.</doc>
            <type name="Extension" c:type="const LtExtension*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extension.gir.c"
                 line="393">a #LtExtension.</doc>
            <type name="Extension" c:type="const LtExtension*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="lt_extension_dump">
        <doc xml:space="preserve"
             filename="lt-extension.gir.c"
             line="350">Dumps the container information to the standard output.</doc>
        <source-position filename="lt-extension.gir.h" line="38"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="extension" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extension.gir.c"
                 line="352">a #LtExtension.</doc>
            <type name="Extension" c:type="LtExtension*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_canonicalized_tag"
              c:identifier="lt_extension_get_canonicalized_tag">
        <doc xml:space="preserve"
             filename="lt-extension.gir.c"
             line="306">Generate a canonicalized tag.</doc>
        <source-position filename="lt-extension.gir.h" line="37"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-extension.gir.c"
               line="312">a string. this must be freed.</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extension" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extension.gir.c"
                 line="308">a #LtExtension.</doc>
            <type name="Extension" c:type="LtExtension*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tag" c:identifier="lt_extension_get_tag">
        <doc xml:space="preserve"
             filename="lt-extension.gir.c"
             line="290">Obtain the tag string.</doc>
        <source-position filename="lt-extension.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extension.gir.c"
               line="296">the tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extension" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extension.gir.c"
                 line="292">a #LtExtension.</doc>
            <type name="Extension" c:type="LtExtension*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_extension_ref">
        <doc xml:space="preserve"
             filename="lt-extension.gir.c"
             line="260">Increases the reference count of @extension.</doc>
        <source-position filename="lt-extension.gir.h" line="34"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extension.gir.c"
               line="266">the same @extension object.</doc>
          <type name="Extension" c:type="LtExtension*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extension" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extension.gir.c"
                 line="262">a #LtExtension.</doc>
            <type name="Extension" c:type="LtExtension*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="truncate" c:identifier="lt_extension_truncate">
        <source-position filename="lt-extension.gir.h" line="41"/>
        <return-value transfer-ownership="none">
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="extension" transfer-ownership="none">
            <type name="Extension" c:type="LtExtension*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_extension_unref">
        <doc xml:space="preserve"
             filename="lt-extension.gir.c"
             line="276">Decreases the reference count of @extension. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-extension.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="extension" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extension.gir.c"
                 line="278">a #LtExtension.</doc>
            <type name="Extension" c:type="LtExtension*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="Extlang"
            c:type="LtExtlang"
            opaque="1"
            glib:type-name="LtExtlang"
            glib:get-type="lt_extlang_get_type"
            c:symbol-prefix="extlang">
      <doc xml:space="preserve"
           filename="lt-extlang.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtExtlang&lt;/structname&gt;
structure are private to the #LtExtlang implementation.</doc>
      <source-position filename="lt-extlang.gir.h" line="31"/>
      <method name="compare" c:identifier="lt_extlang_compare">
        <doc xml:space="preserve"
             filename="lt-extlang.gir.c"
             line="285">Compares if @v1 and @v2 is the same object or not.</doc>
        <source-position filename="lt-extlang.gir.h" line="42"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extlang.gir.c"
               line="292">%TRUE if it's the same, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="287">a #LtExtlang.</doc>
            <type name="Extlang" c:type="const LtExtlang*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="288">a #LtExtlang.</doc>
            <type name="Extlang" c:type="const LtExtlang*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="lt_extlang_dump">
        <doc xml:space="preserve"
             filename="lt-extlang.gir.c"
             line="239">Dumps the container information to the standard output.</doc>
        <source-position filename="lt-extlang.gir.h" line="41"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="241">a #LtExtlang.</doc>
            <type name="Extlang" c:type="const LtExtlang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_macro_language"
              c:identifier="lt_extlang_get_macro_language">
        <doc xml:space="preserve"
             filename="lt-extlang.gir.c"
             line="203">Obtains the macrolanguage being assigned for the subtag.
This is available only when the subtag is registered as the macrolanguage
in ISO 639-3.</doc>
        <source-position filename="lt-extlang.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extlang.gir.c"
               line="211">a macrolanguage string or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="205">a #LtExtlang.</doc>
            <type name="Extlang" c:type="const LtExtlang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="lt_extlang_get_name">
        <doc xml:space="preserve"
             filename="lt-extlang.gir.c"
             line="187">Obtains the description of the subtag.</doc>
        <source-position filename="lt-extlang.gir.h" line="38"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extlang.gir.c"
               line="193">a description string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="189">a #LtExtlang.</doc>
            <type name="Extlang" c:type="const LtExtlang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_preferred_tag"
              c:identifier="lt_extlang_get_preferred_tag">
        <doc xml:space="preserve"
             filename="lt-extlang.gir.c"
             line="170">Obtains the preferred-value. this is available only when the subtag is
marked as deprecated.</doc>
        <source-position filename="lt-extlang.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extlang.gir.c"
               line="177">a preferred-value for the subtag or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="172">a #LtExtlang.</doc>
            <type name="Extlang" c:type="const LtExtlang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_prefix" c:identifier="lt_extlang_get_prefix">
        <doc xml:space="preserve"
             filename="lt-extlang.gir.c"
             line="221">Obtains the prefix being assigned to the subtag.
This is available only when the subtag has a particular seqnence of
subgtags that form a meaningful tag with the subtag.</doc>
        <source-position filename="lt-extlang.gir.h" line="40"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extlang.gir.c"
               line="229">a prefix string or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="223">a #LtExtlang.</doc>
            <type name="Extlang" c:type="const LtExtlang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tag" c:identifier="lt_extlang_get_tag">
        <doc xml:space="preserve"
             filename="lt-extlang.gir.c"
             line="154">Obtains the subtag that is registered as ISO 639 code.</doc>
        <source-position filename="lt-extlang.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extlang.gir.c"
               line="160">a subtag name.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="156">a #LtExtlang.</doc>
            <type name="Extlang" c:type="const LtExtlang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_extlang_ref">
        <doc xml:space="preserve"
             filename="lt-extlang.gir.c"
             line="124">Increases the reference count of @extlang.</doc>
        <source-position filename="lt-extlang.gir.h" line="34"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extlang.gir.c"
               line="130">the same @extlang object.</doc>
          <type name="Extlang" c:type="LtExtlang*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="126">a #LtExtlang.</doc>
            <type name="Extlang" c:type="LtExtlang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_extlang_unref">
        <doc xml:space="preserve"
             filename="lt-extlang.gir.c"
             line="140">Decreases the reference count of @extlang. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-extlang.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang.gir.c"
                 line="142">a #LtExtlang.</doc>
            <type name="Extlang" c:type="LtExtlang*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="ExtlangDb"
            c:type="LtExtlangDb"
            opaque="1"
            glib:type-name="LtExtlangDb"
            glib:get-type="lt_extlang_db_get_type"
            c:symbol-prefix="extlang_db">
      <doc xml:space="preserve"
           filename="lt-extlang-db.gir.h"
           line="26">All the fields in the &lt;structname&gt;LtExtlangDb&lt;/structname&gt;
structure are private to the #LtExtlangDb implementation.</doc>
      <source-position filename="lt-extlang-db.gir.h" line="32"/>
      <constructor name="new" c:identifier="lt_extlang_db_new">
        <doc xml:space="preserve"
             filename="lt-extlang-db.gir.c"
             line="269">Create a new instance of a #LtExtlangDb.</doc>
        <source-position filename="lt-extlang-db.gir.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-extlang-db.gir.c"
               line="274">a new instance of #LtExtlangDb.</doc>
          <type name="ExtlangDb" c:type="LtExtlangDb*"/>
        </return-value>
      </constructor>
      <method name="lookup" c:identifier="lt_extlang_db_lookup">
        <doc xml:space="preserve"
             filename="lt-extlang-db.gir.c"
             line="317">Lookup @LtExtlang if @subtag is valid and registered into the database.</doc>
        <source-position filename="lt-extlang-db.gir.h" line="38"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-extlang-db.gir.c"
               line="324">a #LtExtlang that meets with @subtag.
                          otherwise %NULL.</doc>
          <type name="Extlang" c:type="LtExtlang*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlangdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang-db.gir.c"
                 line="319">a #LtExtlangDb.</doc>
            <type name="ExtlangDb" c:type="LtExtlangDb*"/>
          </instance-parameter>
          <parameter name="subtag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang-db.gir.c"
                 line="320">a subtag name to lookup.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_extlang_db_ref">
        <doc xml:space="preserve"
             filename="lt-extlang-db.gir.c"
             line="287">Increases the reference count of @extlangdb.</doc>
        <source-position filename="lt-extlang-db.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-extlang-db.gir.c"
               line="293">the same @extlangdb object.</doc>
          <type name="ExtlangDb" c:type="LtExtlangDb*"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlangdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang-db.gir.c"
                 line="289">a #LtExtlangDb.</doc>
            <type name="ExtlangDb" c:type="LtExtlangDb*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_extlang_db_unref">
        <doc xml:space="preserve"
             filename="lt-extlang-db.gir.c"
             line="303">Decreases the reference count of @extlangdb. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-extlang-db.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="extlangdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-extlang-db.gir.c"
                 line="305">a #LtExtlangDb.</doc>
            <type name="ExtlangDb" c:type="LtExtlangDb*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <function-macro name="GNUC_DEPRECATED_FOR"
                    c:identifier="LT_GNUC_DEPRECATED_FOR"
                    introspectable="0">
      <source-position filename="lt-macros.gir.h" line="228"/>
      <parameters>
        <parameter name="f">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GNUC_PRINTF"
                    c:identifier="LT_GNUC_PRINTF"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="112">Expands to the GNU C &lt;literal&gt;format&lt;/literal&gt; function attribute if
the compiler is &lt;command&gt;gcc&lt;/command&gt;. This is used for declaring
functions which take a variable number of arguments, with the same
syntax as &lt;function&gt;printf()&lt;/function&gt;.
It allows the compiler to type-check the arguments passed to the function.
See the GNU C documentation for details.</doc>
      <source-position filename="lt-macros.gir.h" line="144"/>
      <parameters>
        <parameter name="format_idx">
          <doc xml:space="preserve"
               filename="lt-macros.gir.h"
               line="114">the index of the argument corresponding to the format string.
             (The arguments are numberered from 1).</doc>
        </parameter>
        <parameter name="arg_idx">
          <doc xml:space="preserve"
               filename="lt-macros.gir.h"
               line="116">the index of the first of the format arguments.</doc>
        </parameter>
      </parameters>
    </function-macro>
    <record name="Grandfathered"
            c:type="LtGrandfathered"
            opaque="1"
            glib:type-name="LtGrandfathered"
            glib:get-type="lt_grandfathered_get_type"
            c:symbol-prefix="grandfathered">
      <doc xml:space="preserve"
           filename="lt-grandfathered.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtGrandfathered&lt;/structname&gt;
structure are private to the #LtGrandfathered implementation.</doc>
      <source-position filename="lt-grandfathered.gir.h" line="31"/>
      <method name="compare" c:identifier="lt_grandfathered_compare">
        <doc xml:space="preserve"
             filename="lt-grandfathered.gir.c"
             line="223">Compare if @v1 and @v2 is the same object or not.</doc>
        <source-position filename="lt-grandfathered.gir.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-grandfathered.gir.c"
               line="230">%TRUE if it's the same. otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered.gir.c"
                 line="225">a #LtGrandfathered.</doc>
            <type name="Grandfathered" c:type="const LtGrandfathered*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered.gir.c"
                 line="226">a #LtGrandfathered.</doc>
            <type name="Grandfathered" c:type="const LtGrandfathered*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="lt_grandfathered_dump">
        <doc xml:space="preserve"
             filename="lt-grandfathered.gir.c"
             line="194">Dumps the container information to the standard output.</doc>
        <source-position filename="lt-grandfathered.gir.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathered" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered.gir.c"
                 line="196">a #LtGrandfathered.</doc>
            <type name="Grandfathered" c:type="const LtGrandfathered*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_better_tag"
              c:identifier="lt_grandfathered_get_better_tag">
        <doc xml:space="preserve"
             filename="lt-grandfathered.gir.c"
             line="125">Obtains the better tag for use. this is a convenient function to get
the preferred-value if available.</doc>
        <source-position filename="lt-grandfathered.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-grandfathered.gir.c"
               line="132">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathered" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered.gir.c"
                 line="127">a #LtGrandfathered.</doc>
            <type name="Grandfathered" c:type="const LtGrandfathered*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="lt_grandfathered_get_name">
        <doc xml:space="preserve"
             filename="lt-grandfathered.gir.c"
             line="161">Obtains the description of the tag.</doc>
        <source-position filename="lt-grandfathered.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-grandfathered.gir.c"
               line="167">a description string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathered" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered.gir.c"
                 line="163">a #LtGrandfathered.</doc>
            <type name="Grandfathered" c:type="const LtGrandfathered*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_preferred_tag"
              c:identifier="lt_grandfathered_get_preferred_tag">
        <doc xml:space="preserve"
             filename="lt-grandfathered.gir.c"
             line="177">Obtains the preferred-value. this is available only when the tag is
marked as deprecated.</doc>
        <source-position filename="lt-grandfathered.gir.h" line="38"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-grandfathered.gir.c"
               line="184">a preferred-value for the tag or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathered" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered.gir.c"
                 line="179">a #LtGrandfathered.</doc>
            <type name="Grandfathered" c:type="const LtGrandfathered*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tag" c:identifier="lt_grandfathered_get_tag">
        <doc xml:space="preserve"
             filename="lt-grandfathered.gir.c"
             line="145">Obtains the tag name.</doc>
        <source-position filename="lt-grandfathered.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-grandfathered.gir.c"
               line="151">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathered" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered.gir.c"
                 line="147">a #LtGrandfathered.</doc>
            <type name="Grandfathered" c:type="const LtGrandfathered*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_grandfathered_ref">
        <doc xml:space="preserve"
             filename="lt-grandfathered.gir.c"
             line="95">Increases the reference count of @grandfathered.</doc>
        <source-position filename="lt-grandfathered.gir.h" line="34"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-grandfathered.gir.c"
               line="101">the same @grandfathered object.</doc>
          <type name="Grandfathered" c:type="LtGrandfathered*"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathered" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered.gir.c"
                 line="97">a #LtGrandfathered.</doc>
            <type name="Grandfathered" c:type="LtGrandfathered*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_grandfathered_unref">
        <doc xml:space="preserve"
             filename="lt-grandfathered.gir.c"
             line="111">Decreases the reference count of @grandfathered. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-grandfathered.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathered" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered.gir.c"
                 line="113">a #LtGrandfathered.</doc>
            <type name="Grandfathered" c:type="LtGrandfathered*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="GrandfatheredDb"
            c:type="LtGrandfatheredDb"
            opaque="1"
            glib:type-name="LtGrandfatheredDb"
            glib:get-type="lt_grandfathered_db_get_type"
            c:symbol-prefix="grandfathered_db">
      <doc xml:space="preserve"
           filename="lt-grandfathered-db.gir.h"
           line="26">All the fields in the &lt;structname&gt;LtGrandfatheredDb&lt;/structname&gt;
structure are private to the #LtGrandfatheredDb implementation.</doc>
      <source-position filename="lt-grandfathered-db.gir.h" line="32"/>
      <constructor name="new" c:identifier="lt_grandfathered_db_new">
        <doc xml:space="preserve"
             filename="lt-grandfathered-db.gir.c"
             line="233">Create a new instance of a #LtGrandfatheredDb.</doc>
        <source-position filename="lt-grandfathered-db.gir.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-grandfathered-db.gir.c"
               line="238">a new instance of #LtGrandfatheredDb.</doc>
          <type name="GrandfatheredDb" c:type="LtGrandfatheredDb*"/>
        </return-value>
      </constructor>
      <method name="lookup" c:identifier="lt_grandfathered_db_lookup">
        <doc xml:space="preserve"
             filename="lt-grandfathered-db.gir.c"
             line="281">Lookup @LtGrandfathered if @tag is valid and registered into the database.</doc>
        <source-position filename="lt-grandfathered-db.gir.h" line="38"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-grandfathered-db.gir.c"
               line="288">a #LtGrandfathered that meets with @tag.
                          otherwise %NULL.</doc>
          <type name="Grandfathered" c:type="LtGrandfathered*"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathereddb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered-db.gir.c"
                 line="283">a #LtGrandfatheredDb.</doc>
            <type name="GrandfatheredDb" c:type="LtGrandfatheredDb*"/>
          </instance-parameter>
          <parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered-db.gir.c"
                 line="284">a tag name to lookup.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_grandfathered_db_ref">
        <doc xml:space="preserve"
             filename="lt-grandfathered-db.gir.c"
             line="251">Increases the reference count of @grandfathereddb.</doc>
        <source-position filename="lt-grandfathered-db.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-grandfathered-db.gir.c"
               line="257">the same @grandfathereddb object.</doc>
          <type name="GrandfatheredDb" c:type="LtGrandfatheredDb*"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathereddb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered-db.gir.c"
                 line="253">a #LtGrandfatheredDb.</doc>
            <type name="GrandfatheredDb" c:type="LtGrandfatheredDb*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_grandfathered_db_unref">
        <doc xml:space="preserve"
             filename="lt-grandfathered-db.gir.c"
             line="267">Decreases the reference count of @grandfathereddb. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-grandfathered-db.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="grandfathereddb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-grandfathered-db.gir.c"
                 line="269">a #LtGrandfatheredDb.</doc>
            <type name="GrandfatheredDb" c:type="LtGrandfatheredDb*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <function-macro name="ITER_INIT"
                    c:identifier="LT_ITER_INIT"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="lt-iter.gir.h"
           line="25">This is a convenient macro to call lt_iter_init().</doc>
      <source-position filename="lt-iter.gir.h" line="33"/>
      <parameters>
        <parameter name="_obj_">
          <doc xml:space="preserve"
               filename="lt-iter.gir.h"
               line="27">an object that initialize the iterator with.</doc>
        </parameter>
      </parameters>
    </function-macro>
    <record name="Iter"
            c:type="LtIter"
            opaque="1"
            glib:type-name="LtIter"
            glib:get-type="lt_iter_get_type"
            c:symbol-prefix="iter">
      <doc xml:space="preserve"
           filename="lt-iter.gir.h"
           line="42">All the fields in the &lt;structname&gt;LtIter&lt;/structname&gt;
structure are private to the #LtIter implementation.</doc>
      <source-position filename="lt-iter.gir.h" line="48"/>
      <method name="finish" c:identifier="lt_iter_finish">
        <doc xml:space="preserve"
             filename="lt-iter.gir.c"
             line="118">Finalize the iterator and free its memory.</doc>
        <source-position filename="lt-iter.gir.h" line="53"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="iter" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-iter.gir.c"
                 line="120">a #LtIter</doc>
            <type name="Iter" c:type="LtIter*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="next" c:identifier="lt_iter_next">
        <doc xml:space="preserve"
             filename="lt-iter.gir.c"
             line="135">Advances @iter and retrieves the key and/or value that are now
pointed to as a result of this advancement. If %FALSE is returned,
@key and @value are not set, and the iterator becomes invalid.</doc>
        <source-position filename="lt-iter.gir.h" line="54"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-iter.gir.c"
               line="145">%FALSE if the end of the object that the iterator is adapted
         has been reached.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="iter" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-iter.gir.c"
                 line="137">a #LtIter</doc>
            <type name="Iter" c:type="LtIter*"/>
          </instance-parameter>
          <parameter name="key"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-iter.gir.c"
                 line="138">a location to store the key, or %NULL</doc>
            <type name="Pointer" c:type="LtPointer*"/>
          </parameter>
          <parameter name="val"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-iter.gir.c"
                 line="139">a location to store the value, or %NULL</doc>
            <type name="Pointer" c:type="LtPointer*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_iter_ref">
        <doc xml:space="preserve"
             filename="lt-iter.gir.c"
             line="46">Increases the reference count of @iter.</doc>
        <source-position filename="lt-iter.gir.h" line="50"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-iter.gir.c"
               line="52">the same @iter object.</doc>
          <type name="Iter" c:type="LtIter*"/>
        </return-value>
        <parameters>
          <instance-parameter name="iter" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-iter.gir.c"
                 line="48">a #LtIter</doc>
            <type name="Iter" c:type="LtIter*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_iter_unref">
        <doc xml:space="preserve"
             filename="lt-iter.gir.c"
             line="66">Decreases the reference count of @iter. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-iter.gir.h" line="51"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="iter" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-iter.gir.c"
                 line="68">a #LtIter</doc>
            <type name="Iter" c:type="LtIter*"/>
          </instance-parameter>
        </parameters>
      </method>
      <function name="init" c:identifier="lt_iter_init">
        <doc xml:space="preserve"
             filename="lt-iter.gir.c"
             line="81">Initialize the iterator with @tmpl object. this function has to be called
before performing any opperation with the iterator and lt_iter_finish()
when the iterator isn't needed anymore.
|[
lt_lang_db *lang = lt_lang_db_new();
LtPointer *key, *val;
LtIter *iter;

iter = LT_ITER_INIT (lang);
while (lt_iter_next(iter, &amp;key, &amp;val)) {
  /&amp;ast; do something with key and value &amp;ast;/
}
lt_iter_finish(iter);
]|</doc>
        <source-position filename="lt-iter.gir.h" line="52"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-iter.gir.c"
               line="100">the initialized iterator object.</doc>
          <type name="Iter" c:type="LtIter*"/>
        </return-value>
        <parameters>
          <parameter name="tmpl" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-iter.gir.c"
                 line="83">a #LtItermpl_t</doc>
            <type name="IterTmpl" c:type="LtIterTmpl*"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <record name="IterTmpl" c:type="LtIterTmpl" disguised="1" opaque="1">
      <doc xml:space="preserve"
           filename="lt-iter.gir.h"
           line="35">All the fields in the &lt;structname&gt;LtIterTmpl&lt;/structname&gt;
structure are private to the #LtIterTmpl implementation.</doc>
      <source-position filename="lt-iter.gir.h" line="41"/>
    </record>
    <function-macro name="LIKELY" c:identifier="LT_LIKELY" introspectable="0">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="177">Hints the compiler that the expression is likely to evaluate to a true value.
The compiler may use this information for optimizations.</doc>
      <source-position filename="lt-macros.gir.h" line="203"/>
      <parameters>
        <parameter name="_e_">
          <doc xml:space="preserve"
               filename="lt-macros.gir.h"
               line="179">the expression</doc>
        </parameter>
      </parameters>
    </function-macro>
    <record name="Lang"
            c:type="LtLang"
            opaque="1"
            glib:type-name="LtLang"
            glib:get-type="lt_lang_get_type"
            c:symbol-prefix="lang">
      <doc xml:space="preserve"
           filename="lt-lang.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtLang&lt;/structname&gt;
structure are private to the #LtLang implementation.</doc>
      <source-position filename="lt-lang.gir.h" line="31"/>
      <method name="compare" c:identifier="lt_lang_compare">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="342">Compare if @v1 and @v2 is the same object or not.</doc>
        <source-position filename="lt-lang.gir.h" line="44"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang.gir.c"
               line="349">%TRUE if it's the same, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="344">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="345">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="lt_lang_dump">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="286">Dumps the container information to the standard output.</doc>
        <source-position filename="lt-lang.gir.h" line="43"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="288">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_better_tag" c:identifier="lt_lang_get_better_tag">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="181">Obtains the better tag for use. this is a convenient function to get
the preferred-value if available.</doc>
        <source-position filename="lt-lang.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang.gir.c"
               line="188">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="183">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_macro_language"
              c:identifier="lt_lang_get_macro_language">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="251">Obtains the macrolanguage being assigned for the subtag.
This is available only when the subtag is registered as the macrolanguage
in ISO 639-3.</doc>
        <source-position filename="lt-lang.gir.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang.gir.c"
               line="259">a macrolanguage string or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="253">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="lt_lang_get_name">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="165">Obtains the description of the subtag.</doc>
        <source-position filename="lt-lang.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang.gir.c"
               line="171">a description string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="167">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_preferred_tag"
              c:identifier="lt_lang_get_preferred_tag">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="217">Obtains the preferred-value. this is available only when the tag is
marked as deprecated.</doc>
        <source-position filename="lt-lang.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang.gir.c"
               line="224">a preferred-value for the tag or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="219">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scope" c:identifier="lt_lang_get_scope">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="269">Obtains the scope value indicating the type of language code according
to ISO 639.</doc>
        <source-position filename="lt-lang.gir.h" line="42"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang.gir.c"
               line="276">a scope string or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="271">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_suppress_script"
              c:identifier="lt_lang_get_suppress_script">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="234">Obtains the suppress-script value. which shouldn't be used to form
language tags with the associated primary or extended language subtag.</doc>
        <source-position filename="lt-lang.gir.h" line="40"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang.gir.c"
               line="241">a suppress-script string or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="236">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tag" c:identifier="lt_lang_get_tag">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="201">Obtains the tag name.</doc>
        <source-position filename="lt-lang.gir.h" line="38"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang.gir.c"
               line="207">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="203">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_lang_ref">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="135">Increases the reference count of @lang.</doc>
        <source-position filename="lt-lang.gir.h" line="34"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang.gir.c"
               line="141">the same @lang object.</doc>
          <type name="Lang" c:type="LtLang*"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="137">a #LtLang.</doc>
            <type name="Lang" c:type="LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_lang_unref">
        <doc xml:space="preserve"
             filename="lt-lang.gir.c"
             line="151">Decreases the reference count of @lang. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-lang.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang.gir.c"
                 line="153">a #LtLang.</doc>
            <type name="Lang" c:type="LtLang*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="LangDb"
            c:type="LtLangDb"
            opaque="1"
            glib:type-name="LtLangDb"
            glib:get-type="lt_lang_db_get_type"
            c:symbol-prefix="lang_db">
      <doc xml:space="preserve"
           filename="lt-lang-db.gir.h"
           line="27">All the fields in the &lt;structname&gt;LtLangDb&lt;/structname&gt;
structure are private to the #LtLangDb implementation.</doc>
      <source-position filename="lt-lang-db.gir.h" line="33"/>
      <constructor name="new" c:identifier="lt_lang_db_new">
        <doc xml:space="preserve"
             filename="lt-lang-db.gir.c"
             line="274">Create a new instance of a #LtLangDb.</doc>
        <source-position filename="lt-lang-db.gir.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-lang-db.gir.c"
               line="279">a new instance of #LtLangDb.</doc>
          <type name="LangDb" c:type="LtLangDb*"/>
        </return-value>
      </constructor>
      <method name="lookup" c:identifier="lt_lang_db_lookup">
        <doc xml:space="preserve"
             filename="lt-lang-db.gir.c"
             line="322">Lookup @LtLang if @subtag is valid and registered into the database.</doc>
        <source-position filename="lt-lang-db.gir.h" line="38"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-lang-db.gir.c"
               line="329">a #LtLang that meets with @subtag.
                          otherwise %NULL.</doc>
          <type name="Lang" c:type="LtLang*"/>
        </return-value>
        <parameters>
          <instance-parameter name="langdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang-db.gir.c"
                 line="324">a #LtLangDb.</doc>
            <type name="LangDb" c:type="LtLangDb*"/>
          </instance-parameter>
          <parameter name="subtag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang-db.gir.c"
                 line="325">a subtag name to lookup.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_lang_db_ref">
        <doc xml:space="preserve"
             filename="lt-lang-db.gir.c"
             line="292">Increases the reference count of @langdb.</doc>
        <source-position filename="lt-lang-db.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-lang-db.gir.c"
               line="298">the same @langdb object.</doc>
          <type name="LangDb" c:type="LtLangDb*"/>
        </return-value>
        <parameters>
          <instance-parameter name="langdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang-db.gir.c"
                 line="294">a #LtLangDb.</doc>
            <type name="LangDb" c:type="LtLangDb*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_lang_db_unref">
        <doc xml:space="preserve"
             filename="lt-lang-db.gir.c"
             line="308">Decreases the reference count of @langdb. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-lang-db.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="langdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-lang-db.gir.c"
                 line="310">a #LtLangDb.</doc>
            <type name="LangDb" c:type="LtLangDb*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="List"
            c:type="LtList"
            opaque="1"
            glib:type-name="LtList"
            glib:get-type="lt_list_get_type"
            c:symbol-prefix="list">
      <doc xml:space="preserve"
           filename="lt-list.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtList&lt;/structname&gt;
structure are private to the #LtList implementation.</doc>
      <source-position filename="lt-list.gir.h" line="31"/>
      <constructor name="new" c:identifier="lt_list_new">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="79">Creates #LtList object. this function is protected and not supposed
to use in applications directly. Use lt_list_append() or lt_list_prepend()
with %NULL as the first argument to newly allocate the object.</doc>
        <source-position filename="lt-list.gir.h" line="33"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="86">a newly allocated #LtList. it has to be freed
         with lt_list_unref().</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
      </constructor>
      <method name="append" c:identifier="lt_list_append">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="251">Adds a new element on to the end of the list.</doc>
        <source-position filename="lt-list.gir.h" line="43"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="259">the new start of the #LtList.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="253">a #LtList.</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="254">the data for the new element</doc>
            <type name="Pointer" c:type="LtPointer"/>
          </parameter>
          <parameter name="func" transfer-ownership="none" scope="async">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="255">the call back function to destroy @data or %NULL</doc>
            <type name="DestroyFunc" c:type="LtDestroyFunc"/>
          </parameter>
        </parameters>
      </method>
      <method name="delete" c:identifier="lt_list_delete">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="353">Removes an element from a #LtList.
If two elements contain the same data, only the first is removed.
If none of the elements contain the data, the #LtList is unchanged.</doc>
        <source-position filename="lt-list.gir.h" line="51"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="362">the new start of the #LtList.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="355">a #LtList.</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="356">the data of the element to remove.</doc>
            <type name="Pointer" c:type="LtPointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="delete_link" c:identifier="lt_list_delete_link">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="383">Removes the node @link_ from the @list and frees it.</doc>
        <source-position filename="lt-list.gir.h" line="53"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="390">the new head of @list</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="385">a #LtList</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
          <parameter name="link_" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="386">node to delete from @list</doc>
            <type name="List" c:type="LtList*"/>
          </parameter>
        </parameters>
      </method>
      <method name="find" c:identifier="lt_list_find">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="405">Finds the element in a #LtList which
contains the given data.</doc>
        <source-position filename="lt-list.gir.h" line="55"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="413">the found #LtList element, or %NULL if it's not found</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="407">a #LtList</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="408">the element data to find</doc>
            <type name="Pointer" c:type="const LtPointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="find_custom" c:identifier="lt_list_find_custom">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="428">Finds an element in a #LtList, using a supplied function to
find the desired element. It iterates over the list, calling
the given function which should return 0 when the desired
element is found. The function takes two const #LtPointer
arguments, the #LtList element's data as the first argument
and the given data.</doc>
        <source-position filename="lt-list.gir.h" line="57"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="442">the found #LtList element, or %NULL if it's not found</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="430">a #LtList</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="431">the data passed to the function</doc>
            <type name="Pointer" c:type="const LtPointer"/>
          </parameter>
          <parameter name="func" transfer-ownership="none" scope="call">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="432">the function to call for each element.
       It should return 0 when the desired element is found</doc>
            <type name="CompareFunc" c:type="LtCompareFunc"/>
          </parameter>
        </parameters>
      </method>
      <method name="first" c:identifier="lt_list_first">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="145">Gets the first element in a #LtList.</doc>
        <source-position filename="lt-list.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="151">the first element in the #LtList
         or %NULL if the #LtList has no elements.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="147">a #LtList.</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="last" c:identifier="lt_list_last">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="165">Gets the last element in a #LtList.</doc>
        <source-position filename="lt-list.gir.h" line="38"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="171">the last element in the #LtList
         or %NULL if the #LtList has no elements.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="167">a #LtList.</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="length" c:identifier="lt_list_length">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="229">Gets the number of elements in a #LtList.</doc>
        <source-position filename="lt-list.gir.h" line="42"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="235">the number of elements in the #LtList.</doc>
          <type name="gsize" c:type="gsize"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="231">a #LtList.</doc>
            <type name="List" c:type="const LtList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="next" c:identifier="lt_list_next">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="199">Gets the next element in a #LtList.</doc>
        <source-position filename="lt-list.gir.h" line="40"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="205">the next element, or %NULL if there are no more elements.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="201">a #LtList.</doc>
            <type name="List" c:type="const LtList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="pop" c:identifier="lt_list_pop">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="503">Sets the data in the first element to @data and drop the element.</doc>
        <source-position filename="lt-list.gir.h" line="62"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="510">the new head of @list.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="505">a #LtList</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="506">a pointer to set the data in the first element</doc>
            <type name="Pointer" c:type="LtPointer*"/>
          </parameter>
        </parameters>
      </method>
      <method name="prepend" c:identifier="lt_list_prepend">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="286">Adds a new element on to the start of the list.</doc>
        <source-position filename="lt-list.gir.h" line="46"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="294">the new start of the #LtList.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="288">a #LtList</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="289">the data for the new element</doc>
            <type name="Pointer" c:type="LtPointer"/>
          </parameter>
          <parameter name="func" transfer-ownership="none" scope="async">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="290">the call back function to destroy @data or %NULL</doc>
            <type name="DestroyFunc" c:type="LtDestroyFunc"/>
          </parameter>
        </parameters>
      </method>
      <method name="previous" c:identifier="lt_list_previous">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="185">Gets the previous element in a #LtList.</doc>
        <source-position filename="lt-list.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="191">the previous element, or %NULL if there are no previous elements.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="187">a #LtList.</doc>
            <type name="List" c:type="const LtList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_list_ref">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="97">Increases the reference count of @list.</doc>
        <source-position filename="lt-list.gir.h" line="34"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="103">the same @list object.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="99">a #LtList.</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove" c:identifier="lt_list_remove">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="321">Removes an element from a #LtList.
If two elements contain the same data, only the first is removed.
If none of the elements contain the data, the #LtList is unchanged.
This works similar to lt_list_delete() though, the difference is
this won't calls the finalizer to destroy the data in the element.</doc>
        <source-position filename="lt-list.gir.h" line="49"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="332">the new start of the #LtList.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="323">a #LtList.</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="324">the data of the element to remove.</doc>
            <type name="Pointer" c:type="LtPointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="sort" c:identifier="lt_list_sort">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="460">Sorts a #LtList using the given comparison function.</doc>
        <source-position filename="lt-list.gir.h" line="60"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="471">the start of the sorted #LtList</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="462">a #LtList</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
          <parameter name="func" transfer-ownership="none" scope="call">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="463">the comparison function used to sort the #LtList.
       This function is passed the data from 2 elements of the #LtList
       and should return 0 if they are equal, a negative value if the
       first element comes before the second, or a positive value if
       the first element comes after the second.</doc>
            <type name="CompareFunc" c:type="LtCompareFunc"/>
          </parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_list_unref">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="113">Decreases the reference count of @list. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-list.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="115">a #LtList.</doc>
            <type name="List" c:type="LtList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="value" c:identifier="lt_list_value">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="213">Gets a value in a #LtList.</doc>
        <source-position filename="lt-list.gir.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="219">a pointer to be set to the #LtList.</doc>
          <type name="Pointer" c:type="LtPointer"/>
        </return-value>
        <parameters>
          <instance-parameter name="list" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="215">a #LtList.</doc>
            <type name="List" c:type="const LtList*"/>
          </instance-parameter>
        </parameters>
      </method>
      <function name="free" c:identifier="lt_list_free">
        <doc xml:space="preserve"
             filename="lt-list.gir.c"
             line="127">Frees all of the memory used by a #LtList.</doc>
        <source-position filename="lt-list.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-list.gir.c"
                 line="129">a #LtList.</doc>
            <type name="Pointer" c:type="LtPointer"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <function-macro name="MAX" c:identifier="LT_MAX" introspectable="0">
      <source-position filename="lt-macros.gir.h" line="271"/>
      <parameters>
        <parameter name="a">
        </parameter>
        <parameter name="b">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MIN" c:identifier="LT_MIN" introspectable="0">
      <source-position filename="lt-macros.gir.h" line="276"/>
      <parameters>
        <parameter name="a">
        </parameter>
        <parameter name="b">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MODULE_SYMBOL"
                    c:identifier="LT_MODULE_SYMBOL"
                    introspectable="0">
      <source-position filename="lt-ext-module.gir.h" line="170"/>
      <parameters>
        <parameter name="__sym__">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MODULE_SYMBOL_"
                    c:identifier="LT_MODULE_SYMBOL_"
                    introspectable="0">
      <source-position filename="lt-ext-module.gir.h" line="174"/>
      <parameters>
        <parameter name="__prefix__">
        </parameter>
        <parameter name="__sym__">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="MODULE_SYMBOL__"
                    c:identifier="LT_MODULE_SYMBOL__"
                    introspectable="0">
      <source-position filename="lt-ext-module.gir.h" line="175"/>
      <parameters>
        <parameter name="__prefix__">
        </parameter>
        <parameter name="__sym__">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="N_ELEMENTS"
                    c:identifier="LT_N_ELEMENTS"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="298">Determines the number of elements in an array. The array must be
declared so the compiler knows its size at compile-time; this
macro will not work on an array allocated on the heap, only static
arrays or arrays on the stack.</doc>
      <source-position filename="lt-macros.gir.h" line="298"/>
      <parameters>
        <parameter name="_x_">
          <doc xml:space="preserve"
               filename="lt-macros.gir.h"
               line="300">the array</doc>
        </parameter>
      </parameters>
    </function-macro>
    <constant name="PATH_MAX" value="512" c:type="LT_PATH_MAX">
      <source-position filename="lt-macros.gir.h" line="280"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <record name="Redundant"
            c:type="LtRedundant"
            opaque="1"
            glib:type-name="LtRedundant"
            glib:get-type="lt_redundant_get_type"
            c:symbol-prefix="redundant">
      <doc xml:space="preserve"
           filename="lt-redundant.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtRedundant&lt;/structname&gt;
structure are private to the #LtRedundant implementation.</doc>
      <source-position filename="lt-redundant.gir.h" line="31"/>
      <method name="compare" c:identifier="lt_redundant_compare">
        <doc xml:space="preserve"
             filename="lt-redundant.gir.c"
             line="223">Compare if @v1 and @v2 is the same object or not.</doc>
        <source-position filename="lt-redundant.gir.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-redundant.gir.c"
               line="230">%TRUE if it's the same. otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant.gir.c"
                 line="225">a #LtRedundant.</doc>
            <type name="Redundant" c:type="const LtRedundant*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant.gir.c"
                 line="226">a #LtRedundant.</doc>
            <type name="Redundant" c:type="const LtRedundant*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="lt_redundant_dump">
        <doc xml:space="preserve"
             filename="lt-redundant.gir.c"
             line="194">Dumps the container information to the standard output.</doc>
        <source-position filename="lt-redundant.gir.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant.gir.c"
                 line="196">a #LtRedundant.</doc>
            <type name="Redundant" c:type="const LtRedundant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_better_tag" c:identifier="lt_redundant_get_better_tag">
        <doc xml:space="preserve"
             filename="lt-redundant.gir.c"
             line="125">Obtains the better tag for use. this is a convenient function to get
the preferred-value if available.</doc>
        <source-position filename="lt-redundant.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-redundant.gir.c"
               line="132">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant.gir.c"
                 line="127">a #LtRedundant.</doc>
            <type name="Redundant" c:type="const LtRedundant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="lt_redundant_get_name">
        <doc xml:space="preserve"
             filename="lt-redundant.gir.c"
             line="161">Obtains the description of the tag.</doc>
        <source-position filename="lt-redundant.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-redundant.gir.c"
               line="167">a description string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant.gir.c"
                 line="163">a #LtRedundant.</doc>
            <type name="Redundant" c:type="const LtRedundant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_preferred_tag"
              c:identifier="lt_redundant_get_preferred_tag">
        <doc xml:space="preserve"
             filename="lt-redundant.gir.c"
             line="177">Obtains the preferred-value. this is available only when the tag is
marked as deprecated.</doc>
        <source-position filename="lt-redundant.gir.h" line="38"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-redundant.gir.c"
               line="184">a preferred-value for the tag or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant.gir.c"
                 line="179">a #LtRedundant.</doc>
            <type name="Redundant" c:type="const LtRedundant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tag" c:identifier="lt_redundant_get_tag">
        <doc xml:space="preserve"
             filename="lt-redundant.gir.c"
             line="145">Obtains the tag name.</doc>
        <source-position filename="lt-redundant.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-redundant.gir.c"
               line="151">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant.gir.c"
                 line="147">a #LtRedundant.</doc>
            <type name="Redundant" c:type="const LtRedundant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_redundant_ref">
        <doc xml:space="preserve"
             filename="lt-redundant.gir.c"
             line="95">Increases the reference count of @redundant.</doc>
        <source-position filename="lt-redundant.gir.h" line="34"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-redundant.gir.c"
               line="101">the same @redundant object.</doc>
          <type name="Redundant" c:type="LtRedundant*"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant.gir.c"
                 line="97">a #LtRedundant.</doc>
            <type name="Redundant" c:type="LtRedundant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_redundant_unref">
        <doc xml:space="preserve"
             filename="lt-redundant.gir.c"
             line="111">Decreases the reference count of @redundant. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-redundant.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant.gir.c"
                 line="113">a #LtRedundant.</doc>
            <type name="Redundant" c:type="LtRedundant*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="RedundantDb"
            c:type="LtRedundantDb"
            opaque="1"
            glib:type-name="LtRedundantDb"
            glib:get-type="lt_redundant_db_get_type"
            c:symbol-prefix="redundant_db">
      <doc xml:space="preserve"
           filename="lt-redundant-db.gir.h"
           line="26">All the fields in the &lt;structname&gt;LtRedundantDb&lt;/structname&gt;
structure are private to the #LtRedundantDb implementation.</doc>
      <source-position filename="lt-redundant-db.gir.h" line="32"/>
      <constructor name="new" c:identifier="lt_redundant_db_new">
        <doc xml:space="preserve"
             filename="lt-redundant-db.gir.c"
             line="233">Create a new instance of a #LtRedundantDb.</doc>
        <source-position filename="lt-redundant-db.gir.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-redundant-db.gir.c"
               line="238">a new instance of #LtRedundantDb.</doc>
          <type name="RedundantDb" c:type="LtRedundantDb*"/>
        </return-value>
      </constructor>
      <method name="lookup" c:identifier="lt_redundant_db_lookup">
        <doc xml:space="preserve"
             filename="lt-redundant-db.gir.c"
             line="281">Lookup @LtRedundant if @tag is valid and registered into the database.</doc>
        <source-position filename="lt-redundant-db.gir.h" line="38"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-redundant-db.gir.c"
               line="288">a #LtRedundant that meets with @tag.
                          otherwise %NULL.</doc>
          <type name="Redundant" c:type="LtRedundant*"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundantdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant-db.gir.c"
                 line="283">a #LtRedundantDb.</doc>
            <type name="RedundantDb" c:type="LtRedundantDb*"/>
          </instance-parameter>
          <parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant-db.gir.c"
                 line="284">a tag name to lookup.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_redundant_db_ref">
        <doc xml:space="preserve"
             filename="lt-redundant-db.gir.c"
             line="251">Increases the reference count of @redundantdb.</doc>
        <source-position filename="lt-redundant-db.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-redundant-db.gir.c"
               line="257">the same @redundantdb object.</doc>
          <type name="RedundantDb" c:type="LtRedundantDb*"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundantdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant-db.gir.c"
                 line="253">a #LtRedundantDb.</doc>
            <type name="RedundantDb" c:type="LtRedundantDb*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_redundant_db_unref">
        <doc xml:space="preserve"
             filename="lt-redundant-db.gir.c"
             line="267">Decreases the reference count of @redundantdb. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-redundant-db.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="redundantdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-redundant-db.gir.c"
                 line="269">a #LtRedundantDb.</doc>
            <type name="RedundantDb" c:type="LtRedundantDb*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="Region"
            c:type="LtRegion"
            opaque="1"
            glib:type-name="LtRegion"
            glib:get-type="lt_region_get_type"
            c:symbol-prefix="region">
      <doc xml:space="preserve"
           filename="lt-region.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtRegion&lt;/structname&gt;
structure are private to the #LtRegion implementation.</doc>
      <source-position filename="lt-region.gir.h" line="31"/>
      <method name="compare" c:identifier="lt_region_compare">
        <doc xml:space="preserve"
             filename="lt-region.gir.c"
             line="221">Compare if @v1 and @v2 is the same object or not.</doc>
        <source-position filename="lt-region.gir.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-region.gir.c"
               line="228">%TRUE if it's the same, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region.gir.c"
                 line="223">a #LtRegion.</doc>
            <type name="Region" c:type="const LtRegion*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region.gir.c"
                 line="224">a #LtRegion.</doc>
            <type name="Region" c:type="const LtRegion*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="lt_region_dump">
        <doc xml:space="preserve"
             filename="lt-region.gir.c"
             line="193">Dumps the container information to the standard output.</doc>
        <source-position filename="lt-region.gir.h" line="40"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="region" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region.gir.c"
                 line="195">a #LtRegion.</doc>
            <type name="Region" c:type="const LtRegion*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_better_tag" c:identifier="lt_region_get_better_tag">
        <doc xml:space="preserve"
             filename="lt-region.gir.c"
             line="140">Obtains the better tag for use. this is a convenient function to get
the preferred-value if available.</doc>
        <source-position filename="lt-region.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-region.gir.c"
               line="147">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="region" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region.gir.c"
                 line="142">a #LtRegion.</doc>
            <type name="Region" c:type="const LtRegion*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="lt_region_get_name">
        <doc xml:space="preserve"
             filename="lt-region.gir.c"
             line="124">Obtains the description of the subtag.</doc>
        <source-position filename="lt-region.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-region.gir.c"
               line="130">a description string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="region" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region.gir.c"
                 line="126">a #LtRegion.</doc>
            <type name="Region" c:type="const LtRegion*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_preferred_tag"
              c:identifier="lt_region_get_preferred_tag">
        <doc xml:space="preserve"
             filename="lt-region.gir.c"
             line="176">Obtains the preferred-value. this is available only when the tag is
marked as deprecated.</doc>
        <source-position filename="lt-region.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-region.gir.c"
               line="183">a preferred-value for the tag or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="region" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region.gir.c"
                 line="178">a #LtRegion.</doc>
            <type name="Region" c:type="const LtRegion*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tag" c:identifier="lt_region_get_tag">
        <doc xml:space="preserve"
             filename="lt-region.gir.c"
             line="160">Obtains the tag name.</doc>
        <source-position filename="lt-region.gir.h" line="38"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-region.gir.c"
               line="166">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="region" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region.gir.c"
                 line="162">a #LtRegion.</doc>
            <type name="Region" c:type="const LtRegion*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_region_ref">
        <doc xml:space="preserve"
             filename="lt-region.gir.c"
             line="94">Increases the reference count of @region.</doc>
        <source-position filename="lt-region.gir.h" line="34"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-region.gir.c"
               line="100">the same @region object.</doc>
          <type name="Region" c:type="LtRegion*"/>
        </return-value>
        <parameters>
          <instance-parameter name="region" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region.gir.c"
                 line="96">a #LtRegion.</doc>
            <type name="Region" c:type="LtRegion*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_region_unref">
        <doc xml:space="preserve"
             filename="lt-region.gir.c"
             line="110">Decreases the reference count of @region. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-region.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="region" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region.gir.c"
                 line="112">a #LtRegion.</doc>
            <type name="Region" c:type="LtRegion*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="RegionDb"
            c:type="LtRegionDb"
            opaque="1"
            glib:type-name="LtRegionDb"
            glib:get-type="lt_region_db_get_type"
            c:symbol-prefix="region_db">
      <doc xml:space="preserve"
           filename="lt-region-db.gir.h"
           line="26">All the fields in the &lt;structname&gt;LtRegionDb&lt;/structname&gt;
structure are private to the #LtRegionDb implementation.</doc>
      <source-position filename="lt-region-db.gir.h" line="32"/>
      <constructor name="new" c:identifier="lt_region_db_new">
        <doc xml:space="preserve"
             filename="lt-region-db.gir.c"
             line="248">Create a new instance of a #LtRegionDb.</doc>
        <source-position filename="lt-region-db.gir.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-region-db.gir.c"
               line="253">a new instance of #LtRegionDb.</doc>
          <type name="RegionDb" c:type="LtRegionDb*"/>
        </return-value>
      </constructor>
      <method name="lookup" c:identifier="lt_region_db_lookup">
        <doc xml:space="preserve"
             filename="lt-region-db.gir.c"
             line="296">Lookup @LtRegion if @language_or_code is valid and registered into
the database.</doc>
        <source-position filename="lt-region-db.gir.h" line="38"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-region-db.gir.c"
               line="304">a #LtRegion that meets with @language_or_code.
                          otherwise %NULL.</doc>
          <type name="Region" c:type="LtRegion*"/>
        </return-value>
        <parameters>
          <instance-parameter name="regiondb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region-db.gir.c"
                 line="298">a #LtRegionDb.</doc>
            <type name="RegionDb" c:type="LtRegionDb*"/>
          </instance-parameter>
          <parameter name="language_or_code" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region-db.gir.c"
                 line="299">a region code to lookup.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_region_db_ref">
        <doc xml:space="preserve"
             filename="lt-region-db.gir.c"
             line="266">Increases the reference count of @regiondb.</doc>
        <source-position filename="lt-region-db.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-region-db.gir.c"
               line="272">the same @regiondb object.</doc>
          <type name="RegionDb" c:type="LtRegionDb*"/>
        </return-value>
        <parameters>
          <instance-parameter name="regiondb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region-db.gir.c"
                 line="268">a #LtRegionDb.</doc>
            <type name="RegionDb" c:type="LtRegionDb*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_region_db_unref">
        <doc xml:space="preserve"
             filename="lt-region-db.gir.c"
             line="282">Decreases the reference count of @regiondb. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-region-db.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="regiondb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-region-db.gir.c"
                 line="284">a #LtRegionDb.</doc>
            <type name="RegionDb" c:type="LtRegionDb*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="RelationDb"
            c:type="LtRelationDb"
            opaque="1"
            glib:type-name="LtRelationDb"
            glib:get-type="lt_relation_db_get_type"
            c:symbol-prefix="relation_db">
      <doc xml:space="preserve"
           filename="lt-relation-db.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtRelationDb&lt;/structname&gt;
structure are private to the #LtRelationDb implementation.</doc>
      <source-position filename="lt-relation-db.gir.h" line="31"/>
      <constructor name="new" c:identifier="lt_relation_db_new">
        <doc xml:space="preserve"
             filename="lt-relation-db.gir.c"
             line="175">Create a new instance of a #LtRelationDb.</doc>
        <source-position filename="lt-relation-db.gir.h" line="34"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-relation-db.gir.c"
               line="180">a new instance of #LtRelationDb.</doc>
          <type name="RelationDb" c:type="LtRelationDb*"/>
        </return-value>
      </constructor>
      <method name="lookup_lang_from_script"
              c:identifier="lt_relation_db_lookup_lang_from_script">
        <doc xml:space="preserve"
             filename="lt-relation-db.gir.c"
             line="220">Look up the languages corresponding to the script @script.</doc>
        <source-position filename="lt-relation-db.gir.h" line="37"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-relation-db.gir.c"
               line="227">a #LtList containing #LtLang object.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="relationdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-relation-db.gir.c"
                 line="222">a #LtRelationDb.</doc>
            <type name="RelationDb" c:type="LtRelationDb*"/>
          </instance-parameter>
          <parameter name="script" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-relation-db.gir.c"
                 line="223">a #LtScript.</doc>
            <type name="Script" c:type="const LtScript*"/>
          </parameter>
        </parameters>
      </method>
      <method name="lookup_script_from_lang"
              c:identifier="lt_relation_db_lookup_script_from_lang">
        <doc xml:space="preserve"
             filename="lt-relation-db.gir.c"
             line="262">Look up the scripts corresponding to the language @lang.</doc>
        <source-position filename="lt-relation-db.gir.h" line="39"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-relation-db.gir.c"
               line="269">a #LtList containing #LtScript objects.</doc>
          <type name="List" c:type="LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="relationdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-relation-db.gir.c"
                 line="264">a #LtRelationDb.</doc>
            <type name="RelationDb" c:type="LtRelationDb*"/>
          </instance-parameter>
          <parameter name="lang" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-relation-db.gir.c"
                 line="265">a #LtLang.</doc>
            <type name="Lang" c:type="const LtLang*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_relation_db_ref">
        <doc xml:space="preserve"
             filename="lt-relation-db.gir.c"
             line="190">Increases the reference count of @relationdb.</doc>
        <source-position filename="lt-relation-db.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-relation-db.gir.c"
               line="196">the same @relationddb object.</doc>
          <type name="RelationDb" c:type="LtRelationDb*"/>
        </return-value>
        <parameters>
          <instance-parameter name="relationdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-relation-db.gir.c"
                 line="192">a #LtRelationDb.</doc>
            <type name="RelationDb" c:type="LtRelationDb*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_relation_db_unref">
        <doc xml:space="preserve"
             filename="lt-relation-db.gir.c"
             line="206">Decreases the reference count of @relationdb. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-relation-db.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="relationdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-relation-db.gir.c"
                 line="208">a #LtRelationDb.</doc>
            <type name="RelationDb" c:type="LtRelationDb*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <constant name="SEARCHPATH_SEPARATOR"
              value="59"
              c:type="LT_SEARCHPATH_SEPARATOR">
      <source-position filename="lt-macros.gir.h" line="259"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="SEARCHPATH_SEPARATOR_S"
              value=";"
              c:type="LT_SEARCHPATH_SEPARATOR_S">
      <source-position filename="lt-macros.gir.h" line="258"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <record name="Script"
            c:type="LtScript"
            opaque="1"
            glib:type-name="LtScript"
            glib:get-type="lt_script_get_type"
            c:symbol-prefix="script">
      <doc xml:space="preserve"
           filename="lt-script.gir.h"
           line="25">All the fields in the &lt;structname&gt;LtScript&lt;/structname&gt;
structure are private to the #LtScript implementation.</doc>
      <source-position filename="lt-script.gir.h" line="31"/>
      <method name="compare" c:identifier="lt_script_compare">
        <doc xml:space="preserve"
             filename="lt-script.gir.c"
             line="197">Compare if @v1 and @v2 is the same object or not.</doc>
        <source-position filename="lt-script.gir.h" line="40"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-script.gir.c"
               line="204">%TRUE if it's the same, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script.gir.c"
                 line="199">a #LtScript.</doc>
            <type name="Script" c:type="const LtScript*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script.gir.c"
                 line="200">a #LtScript.</doc>
            <type name="Script" c:type="const LtScript*"/>
          </parameter>
        </parameters>
      </method>
      <method name="convert_to_modifier"
              c:identifier="lt_script_convert_to_modifier">
        <doc xml:space="preserve"
             filename="lt-script.gir.c"
             line="155">Convert the script subtag to the locale variant modifier.</doc>
        <source-position filename="lt-script.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-script.gir.c"
               line="161">a modifier string or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="script" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script.gir.c"
                 line="157">a #LtScript.</doc>
            <type name="Script" c:type="const LtScript*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="lt_script_dump">
        <doc xml:space="preserve"
             filename="lt-script.gir.c"
             line="141">Dumps the container information to the standard output.</doc>
        <source-position filename="lt-script.gir.h" line="38"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="script" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script.gir.c"
                 line="143">a #LtScript.</doc>
            <type name="Script" c:type="const LtScript*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="lt_script_get_name">
        <doc xml:space="preserve"
             filename="lt-script.gir.c"
             line="109">Obtains the description of the subtag.</doc>
        <source-position filename="lt-script.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-script.gir.c"
               line="115">a description string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="script" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script.gir.c"
                 line="111">a #LtScript.</doc>
            <type name="Script" c:type="const LtScript*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tag" c:identifier="lt_script_get_tag">
        <doc xml:space="preserve"
             filename="lt-script.gir.c"
             line="125">Obtains the tag name.</doc>
        <source-position filename="lt-script.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-script.gir.c"
               line="131">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="script" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script.gir.c"
                 line="127">a #LtScript.</doc>
            <type name="Script" c:type="const LtScript*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_script_ref">
        <doc xml:space="preserve"
             filename="lt-script.gir.c"
             line="79">Increases the reference count of @script.</doc>
        <source-position filename="lt-script.gir.h" line="34"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-script.gir.c"
               line="85">the same @script object.</doc>
          <type name="Script" c:type="LtScript*"/>
        </return-value>
        <parameters>
          <instance-parameter name="script" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script.gir.c"
                 line="81">a #LtScript.</doc>
            <type name="Script" c:type="LtScript*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_script_unref">
        <doc xml:space="preserve"
             filename="lt-script.gir.c"
             line="95">Decreases the reference count of @script. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-script.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="script" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script.gir.c"
                 line="97">a #LtScript.</doc>
            <type name="Script" c:type="LtScript*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="ScriptDb"
            c:type="LtScriptDb"
            opaque="1"
            glib:type-name="LtScriptDb"
            glib:get-type="lt_script_db_get_type"
            c:symbol-prefix="script_db">
      <doc xml:space="preserve"
           filename="lt-script-db.gir.h"
           line="26">All the fields in the &lt;structname&gt;LtScriptDb&lt;/structname&gt;
structure are private to the #LtScriptDb implementation.</doc>
      <source-position filename="lt-script-db.gir.h" line="32"/>
      <constructor name="new" c:identifier="lt_script_db_new">
        <doc xml:space="preserve"
             filename="lt-script-db.gir.c"
             line="239">Create a new instance of a #LtScriptDb.</doc>
        <source-position filename="lt-script-db.gir.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-script-db.gir.c"
               line="244">a new instance of #LtScriptDb.</doc>
          <type name="ScriptDb" c:type="LtScriptDb*"/>
        </return-value>
      </constructor>
      <method name="lookup" c:identifier="lt_script_db_lookup">
        <doc xml:space="preserve"
             filename="lt-script-db.gir.c"
             line="287">Lookup @LtScript if @subtag is valid and registered into the database.</doc>
        <source-position filename="lt-script-db.gir.h" line="38"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-script-db.gir.c"
               line="294">a #LtScript that meets with @subtag.
                          otherwise %NULL.</doc>
          <type name="Script" c:type="LtScript*"/>
        </return-value>
        <parameters>
          <instance-parameter name="scriptdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script-db.gir.c"
                 line="289">a #LtScriptDb.</doc>
            <type name="ScriptDb" c:type="LtScriptDb*"/>
          </instance-parameter>
          <parameter name="subtag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script-db.gir.c"
                 line="290">a subtag name to lookup.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_script_db_ref">
        <doc xml:space="preserve"
             filename="lt-script-db.gir.c"
             line="257">Increases the reference count of @scriptdb.</doc>
        <source-position filename="lt-script-db.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-script-db.gir.c"
               line="263">the same @scriptdb object.</doc>
          <type name="ScriptDb" c:type="LtScriptDb*"/>
        </return-value>
        <parameters>
          <instance-parameter name="scriptdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script-db.gir.c"
                 line="259">a #LtScriptDb.</doc>
            <type name="ScriptDb" c:type="LtScriptDb*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_script_db_unref">
        <doc xml:space="preserve"
             filename="lt-script-db.gir.c"
             line="273">Decreases the reference count of @scriptdb. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-script-db.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="scriptdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-script-db.gir.c"
                 line="275">a #LtScriptDb.</doc>
            <type name="ScriptDb" c:type="LtScriptDb*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="String"
            c:type="LtString"
            opaque="1"
            glib:type-name="LtString"
            glib:get-type="lt_string_get_type"
            c:symbol-prefix="string">
      <doc xml:space="preserve"
           filename="lt-string.gir.h"
           line="26">All the fields in the &lt;structname&gt;LtString&lt;/structname&gt;
structure are private to the #LtString implementation.</doc>
      <source-position filename="lt-string.gir.h" line="32"/>
      <constructor name="new" c:identifier="lt_string_new">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="72">Creates an instance of #LtString with @string.</doc>
        <source-position filename="lt-string.gir.h" line="34"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="78">a new instance of #LtString.</doc>
          <type name="String" c:type="LtString*"/>
        </return-value>
        <parameters>
          <parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="74">an initial string to set</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="append" c:identifier="lt_string_append">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="260">Adds a string onto the end of a #LtString, expanding
it if necessary.</doc>
        <source-position filename="lt-string.gir.h" line="46"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="268">the same @string object</doc>
          <type name="String" c:type="LtString*"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="262">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
          <parameter name="str" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="263">the string to append onto the end of @string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="append_c" c:identifier="lt_string_append_c">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="234">Adds a byte onto the end of a #LtString, expanding
it if necessary.</doc>
        <source-position filename="lt-string.gir.h" line="44"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="242">the same @string object.</doc>
          <type name="String" c:type="LtString*"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="236">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
          <parameter name="c" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="237">the byte to append onto the end of @string</doc>
            <type name="gchar" c:type="char"/>
          </parameter>
        </parameters>
      </method>
      <method name="append_filename"
              c:identifier="lt_string_append_filename"
              introspectable="0">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="291">Adds a string onto the end of a #LtString as a file path.</doc>
        <source-position filename="lt-string.gir.h" line="48"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="299">the same @string object</doc>
          <type name="String" c:type="LtString*"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="293">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="294">the string to append onto the end of @string as a file path</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="295">a %NULL-terminated list of strings to append onto the end of @string as a file path</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="append_printf"
              c:identifier="lt_string_append_printf"
              introspectable="0">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="332">Appends a formatted string onto the end of a #LtString.
This is similar to the standard sprintf() function,
except that the text is appended to the #LtString.</doc>
        <source-position filename="lt-string.gir.h" line="51"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="334">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
          <parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="335">the string format. See the printf() documentation</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="336">the parameters to insert into the format string</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="at" c:identifier="lt_string_at">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="385">Obtain a byte in a #LtString at @pos. If @pos is a negative,
the position is calculated from current size. i.e. if the buffer
contains "abc", and @pos is -1, this will returns 'c' then.</doc>
        <source-position filename="lt-string.gir.h" line="57"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="394">the byte in @string at @pos</doc>
          <type name="gchar" c:type="char"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="387">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
          <parameter name="pos" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="388">position in @string where to obtain the byte</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
        </parameters>
      </method>
      <method name="clear" c:identifier="lt_string_clear">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="222">Clean up the buffer in @string.</doc>
        <source-position filename="lt-string.gir.h" line="43"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="224">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="lt_string_free">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="133">Frees the memory allocated for the #LtString.
If @free_segment is %TRUE it also frees the character data.  If
it's %FALSE, the caller gains ownership of the buffer and must
free it after use with free().</doc>
        <source-position filename="lt-string.gir.h" line="37"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="143">the character data of @string
         (i.e. %NULL if @free_segment is %TRUE)</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="135">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
          <parameter name="free_segment" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="136">if %TRUE, the actual character data is freed as well</doc>
            <type name="Bool" c:type="LtBool"/>
          </parameter>
        </parameters>
      </method>
      <method name="length" c:identifier="lt_string_length">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="163">Returns the number of characters in buffer for @string.</doc>
        <source-position filename="lt-string.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="169">the number of characters</doc>
          <type name="gsize" c:type="gsize"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="165">a #LtString</doc>
            <type name="String" c:type="const LtString*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_string_ref">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="103">Increases the reference count of @string.</doc>
        <source-position filename="lt-string.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="109">the same @string object.</doc>
          <type name="String" c:type="LtString*"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="105">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="replace_c" c:identifier="lt_string_replace_c">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="361">Replaces a character in @string at @pos.</doc>
        <source-position filename="lt-string.gir.h" line="54"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="369">the same @string object</doc>
          <type name="String" c:type="LtString*"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="363">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
          <parameter name="pos" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="364">position in @string where replacement should happen</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
          <parameter name="c" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="365">the byte to replace</doc>
            <type name="gchar" c:type="char"/>
          </parameter>
        </parameters>
      </method>
      <method name="truncate" c:identifier="lt_string_truncate">
        <source-position filename="lt-string.gir.h" line="41"/>
        <return-value transfer-ownership="full">
          <type name="String" c:type="LtString*"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
          <parameter name="len" transfer-ownership="none">
            <type name="gssize" c:type="gssize"/>
          </parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_string_unref">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="119">Decreases the reference count of @string. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-string.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="121">a #LtString</doc>
            <type name="String" c:type="LtString*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="value" c:identifier="lt_string_value">
        <doc xml:space="preserve"
             filename="lt-string.gir.c"
             line="179">Returns the buffer in @string.</doc>
        <source-position filename="lt-string.gir.h" line="40"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-string.gir.c"
               line="185">a string which @string has.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-string.gir.c"
                 line="181">a #LtString</doc>
            <type name="String" c:type="const LtString*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="Tag"
            c:type="LtTag"
            opaque="1"
            glib:type-name="LtTag"
            glib:get-type="lt_tag_get_type"
            c:symbol-prefix="tag">
      <doc xml:space="preserve"
           filename="lt-tag.gir.h"
           line="33">All the fields in the &lt;structname&gt;LtTag&lt;/structname&gt;
structure are private to the #LtTag implementation.</doc>
      <source-position filename="lt-tag.gir.h" line="39"/>
      <constructor name="new" c:identifier="lt_tag_new">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1630">Create a new instance of #LtTag.</doc>
        <source-position filename="lt-tag.gir.h" line="72"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="1635">a new instance of #LtTag.</doc>
          <type name="Tag" c:type="LtTag*"/>
        </return-value>
      </constructor>
      <method name="canonicalize" c:identifier="lt_tag_canonicalize">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1966">Canonicalize the language tag according to various information of subtags.</doc>
        <source-position filename="lt-tag.gir.h" line="88"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="1973">a language tag string.</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1968">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
          <parameter name="error"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1969">a #LtError or %NULL.</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </method>
      <method name="canonicalize_in_extlang_form"
              c:identifier="lt_tag_canonicalize_in_extlang_form">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1982">Canonicalize the language tag in the extlang form
according to various information of subtags.</doc>
        <source-position filename="lt-tag.gir.h" line="90"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="1990">a language tag string.</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1984">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
          <parameter name="error"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1985">a #LtError or %NULL.</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </method>
      <method name="clear" c:identifier="lt_tag_clear">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1683">(Re-)Initialize all of the subtag information stored in @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1685">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="compare" c:identifier="lt_tag_compare">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2143">Compare if @v1 and @v2 is the same object or not.</doc>
        <source-position filename="lt-tag.gir.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2150">%TRUE if it's the same, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2145">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2146">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </parameter>
        </parameters>
      </method>
      <method name="convert_to_locale" c:identifier="lt_tag_convert_to_locale">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2036">Convert the language tag to the locale.</doc>
        <source-position filename="lt-tag.gir.h" line="92"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2043">a locale string or %NULL if fails</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2038">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
          <parameter name="error"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2039">a #LtError or %NULL.</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </method>
      <method name="copy" c:identifier="lt_tag_copy">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1749">Create a copy instance of @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="82"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="1755">a new instance of #LtTag or %NULL if fails.</doc>
          <type name="Tag" c:type="LtTag*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1751">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="lt_tag_dump">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2108">Dumps the container information to the standard output.</doc>
        <source-position filename="lt-tag.gir.h" line="97"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2110">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_extension" c:identifier="lt_tag_get_extension">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2630">Obtain a #LtExtension instance in @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="113"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2636">a #LtExtension.</doc>
          <type name="Extension" c:type="const LtExtension*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2632">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_extlang" c:identifier="lt_tag_get_extlang">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2594">Obtain a #LtExtlang instance in @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="109"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2600">a #LtExtlang.</doc>
          <type name="Extlang" c:type="const LtExtlang*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2596">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_grandfathered" c:identifier="lt_tag_get_grandfathered">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2648">Obtain a #LtGrandfathered instance in @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="115"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2654">a #LtGrandfathered.</doc>
          <type name="Grandfathered" c:type="const LtGrandfathered*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2650">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_language" c:identifier="lt_tag_get_language">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2585">Obtain a #LtLang instance in @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="108"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2591">a #LtLang.</doc>
          <type name="Lang" c:type="const LtLang*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2587">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_privateuse" c:identifier="lt_tag_get_privateuse">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2639">Obtain a #LtString instance in @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="114"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2645">a #LtString.</doc>
          <type name="String" c:type="const LtString*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2641">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_region" c:identifier="lt_tag_get_region">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2612">Obtain a #LtRegion instance in @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="111"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2618">a #LtRegion.</doc>
          <type name="Region" c:type="const LtRegion*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2614">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_script" c:identifier="lt_tag_get_script">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2603">Obtain a #LtScript instance in @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="110"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2609">a #LtScript.</doc>
          <type name="Script" c:type="const LtScript*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2605">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_string" c:identifier="lt_tag_get_string">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1952">Obtains a language tag in string.</doc>
        <source-position filename="lt-tag.gir.h" line="87"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="1958">a language tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1954">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_string_with_filter"
              c:identifier="lt_tag_get_string_with_filter">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1893">Obtains a language tag in string against @filter.</doc>
        <source-position filename="lt-tag.gir.h" line="85"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="1900">a language tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1895">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
          <parameter name="filter" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1896">a binary count sequence of #lt_tag_filter_t.</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_variants" c:identifier="lt_tag_get_variants">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2621">Obtain a list of #LtVariant instance in @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="112"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2627">a #LtList containing #LtVariant.</doc>
          <type name="List" c:type="const LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2623">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="lookup" c:identifier="lt_tag_lookup">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2233">Lookup the language tag that @tag meets with @pattern.
Any of subtags in @pattern is allowed to use the wildcard according to
the syntax in RFC 4647.</doc>
        <source-position filename="lt-tag.gir.h" line="103"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2243">a language tag string if any matches, otherwise %NULL.</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2235">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
          <parameter name="pattern" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2236">a language range string.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="error"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2237">a #LtError or %NULL.</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </method>
      <method name="match" c:identifier="lt_tag_match">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2190">Try matching of @v1 and @v2. any of subtags in @v2 is allowed to use
the wildcard according to the syntax in RFC 4647.</doc>
        <source-position filename="lt-tag.gir.h" line="100"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2199">%TRUE if it matches, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2192">a #LtTag.</doc>
            <type name="Tag" c:type="const LtTag*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2193">a language range string.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="error"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2194">a #LtError or %NULL.</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </method>
      <method name="parse" c:identifier="lt_tag_parse">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1707">Parse @tag_string and create appropriate instances for subtags.</doc>
        <source-position filename="lt-tag.gir.h" line="75"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="1715">%TRUE if it's successfully completed, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1709">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
          <parameter name="tag_string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1710">language tag to be parsed.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="error"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1711">a #LtError or %NULL.</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </method>
      <method name="parse_with_extra_token"
              c:identifier="lt_tag_parse_with_extra_token">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1727">Continue to parse a language tag with @tag_string. please use lt_tag_parse()
at first.</doc>
        <source-position filename="lt-tag.gir.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="1736">%TRUE if it's successfully completed, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1729">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
          <parameter name="tag_string" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1730">a language tag to be parsed much more.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="error"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1731">a #LtError or %NULL.</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_tag_ref">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1653">Increases the reference count of @tag.</doc>
        <source-position filename="lt-tag.gir.h" line="73"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="1659">the same @tag object.</doc>
          <type name="Tag" c:type="LtTag*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1655">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="transform" c:identifier="lt_tag_transform">
        <source-position filename="lt-tag.gir.h" line="106"/>
        <return-value transfer-ownership="full">
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
          <parameter name="error" transfer-ownership="none">
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </method>
      <method name="truncate" c:identifier="lt_tag_truncate">
        <source-position filename="lt-tag.gir.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
          <parameter name="error" transfer-ownership="none">
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_tag_unref">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1669">Decreases the reference count of @tag. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-tag.gir.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="1671">a #LtTag.</doc>
            <type name="Tag" c:type="LtTag*"/>
          </instance-parameter>
        </parameters>
      </method>
      <function name="convert_from_locale"
                c:identifier="lt_tag_convert_from_locale">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="1999">Convert current locale to the language tag.</doc>
        <source-position filename="lt-tag.gir.h" line="94"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2005">a #LtTag, %NULL if fails.</doc>
          <type name="Tag" c:type="LtTag*"/>
        </return-value>
        <parameters>
          <parameter name="error"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2001">a #LtError.</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </function>
      <function name="convert_from_locale_string"
                c:identifier="lt_tag_convert_from_locale_string">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2018">Convert @locale to the language tag.</doc>
        <source-position filename="lt-tag.gir.h" line="95"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2025">a #LtTag, %NULL if fails.</doc>
          <type name="Tag" c:type="LtTag*"/>
        </return-value>
        <parameters>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2020">a locale string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="error"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="lt-tag.gir.c"
                 line="2021">a #LtError or %NULL.</doc>
            <type name="Error" c:type="LtError**"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <enumeration name="TagFilter" c:type="LtTagFilter">
      <doc xml:space="preserve"
           filename="lt-tag.gir.h"
           line="54">This is used as a binary count sequence with lt_tag_get_string_with_filter()
to allow only given tags to be the outcome.</doc>
      <source-position filename="lt-tag.gir.h" line="70"/>
    </enumeration>
    <function-macro name="UNLIKELY"
                    c:identifier="LT_UNLIKELY"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="186">Hints the compiler that the expression is unlikely to evaluate to a true
value. The compiler may use this information for optimizations.</doc>
      <source-position filename="lt-macros.gir.h" line="204"/>
      <parameters>
        <parameter name="_e_">
          <doc xml:space="preserve"
               filename="lt-macros.gir.h"
               line="188">the expression</doc>
        </parameter>
      </parameters>
    </function-macro>
    <record name="Variant"
            c:type="LtVariant"
            opaque="1"
            glib:type-name="LtVariant"
            glib:get-type="lt_variant_get_type"
            c:symbol-prefix="variant">
      <doc xml:space="preserve"
           filename="lt-variant.gir.h"
           line="26">All the fields in the &lt;structname&gt;LtVariant&lt;/structname&gt;
structure are private to the #LtVariant implementation.</doc>
      <source-position filename="lt-variant.gir.h" line="32"/>
      <method name="compare" c:identifier="lt_variant_compare">
        <doc xml:space="preserve"
             filename="lt-variant.gir.c"
             line="271">Compare if @v1 and @v2 is the same object or not.</doc>
        <source-position filename="lt-variant.gir.h" line="43"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-variant.gir.c"
               line="278">%TRUE if it's the same, otherwise %FALSE.</doc>
          <type name="Bool" c:type="LtBool"/>
        </return-value>
        <parameters>
          <instance-parameter name="v1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="273">a #LtVariant.</doc>
            <type name="Variant" c:type="const LtVariant*"/>
          </instance-parameter>
          <parameter name="v2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="274">a #LtVariant.</doc>
            <type name="Variant" c:type="const LtVariant*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dump" c:identifier="lt_variant_dump">
        <doc xml:space="preserve"
             filename="lt-variant.gir.c"
             line="229">Dumps the container information to the standard output.</doc>
        <source-position filename="lt-variant.gir.h" line="42"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="variant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="231">a #LtVariant.</doc>
            <type name="Variant" c:type="const LtVariant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_better_tag" c:identifier="lt_variant_get_better_tag">
        <doc xml:space="preserve"
             filename="lt-variant.gir.c"
             line="141">Obtains the better tag for use. this is a convenient function to get
the preferred-value if available.</doc>
        <source-position filename="lt-variant.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-variant.gir.c"
               line="148">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="variant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="143">a #LtVariant.</doc>
            <type name="Variant" c:type="const LtVariant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="lt_variant_get_name">
        <doc xml:space="preserve"
             filename="lt-variant.gir.c"
             line="194">Obtains the description of the subtag.</doc>
        <source-position filename="lt-variant.gir.h" line="40"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-variant.gir.c"
               line="200">a description string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="variant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="196">a #LtVariant.</doc>
            <type name="Variant" c:type="const LtVariant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_preferred_tag"
              c:identifier="lt_variant_get_preferred_tag">
        <doc xml:space="preserve"
             filename="lt-variant.gir.c"
             line="177">Obtains the preferred-value. this is available only when the tag is
marked as deprecated.</doc>
        <source-position filename="lt-variant.gir.h" line="39"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-variant.gir.c"
               line="184">a preferred-value for the tag or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="variant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="179">a #LtVariant.</doc>
            <type name="Variant" c:type="const LtVariant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_prefix" c:identifier="lt_variant_get_prefix">
        <doc xml:space="preserve"
             filename="lt-variant.gir.c"
             line="210">Obtains the prefix being assigned to the subtag.
This is available only when the subtag has any suitable sequence of
subtags for forming (with other subtags, as appropriate) a language
tag when using the variant.</doc>
        <source-position filename="lt-variant.gir.h" line="41"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-variant.gir.c"
               line="219">a #LtList contains prefix strings or %NULL.</doc>
          <type name="List" c:type="const LtList*"/>
        </return-value>
        <parameters>
          <instance-parameter name="variant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="212">a #LtVariant.</doc>
            <type name="Variant" c:type="const LtVariant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_tag" c:identifier="lt_variant_get_tag">
        <doc xml:space="preserve"
             filename="lt-variant.gir.c"
             line="161">Obtains the tag name.</doc>
        <source-position filename="lt-variant.gir.h" line="38"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-variant.gir.c"
               line="167">a tag string.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="variant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="163">a #LtVariant.</doc>
            <type name="Variant" c:type="const LtVariant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_variant_ref">
        <doc xml:space="preserve"
             filename="lt-variant.gir.c"
             line="111">Increases the reference count of @variant.</doc>
        <source-position filename="lt-variant.gir.h" line="35"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-variant.gir.c"
               line="117">the same @variant object.</doc>
          <type name="Variant" c:type="LtVariant*"/>
        </return-value>
        <parameters>
          <instance-parameter name="variant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="113">a #LtVariant.</doc>
            <type name="Variant" c:type="LtVariant*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_variant_unref">
        <doc xml:space="preserve"
             filename="lt-variant.gir.c"
             line="127">Decreases the reference count of @variant. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-variant.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="variant" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant.gir.c"
                 line="129">a #LtVariant.</doc>
            <type name="Variant" c:type="LtVariant*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <record name="VariantDb"
            c:type="LtVariantDb"
            opaque="1"
            glib:type-name="LtVariantDb"
            glib:get-type="lt_variant_db_get_type"
            c:symbol-prefix="variant_db">
      <doc xml:space="preserve"
           filename="lt-variant-db.gir.h"
           line="26">All the fields in the &lt;structname&gt;LtVariantDb&lt;/structname&gt;
structure are private to the #LtVariantDb implementation.</doc>
      <source-position filename="lt-variant-db.gir.h" line="32"/>
      <constructor name="new" c:identifier="lt_variant_db_new">
        <doc xml:space="preserve"
             filename="lt-variant-db.gir.c"
             line="258">Create a new instance of a #LtVariantDb.</doc>
        <source-position filename="lt-variant-db.gir.h" line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-variant-db.gir.c"
               line="263">a new instance of #LtVariantDb.</doc>
          <type name="VariantDb" c:type="LtVariantDb*"/>
        </return-value>
      </constructor>
      <method name="lookup" c:identifier="lt_variant_db_lookup">
        <doc xml:space="preserve"
             filename="lt-variant-db.gir.c"
             line="306">Lookup @LtVariant if @subtag is valid and registered into the database.</doc>
        <source-position filename="lt-variant-db.gir.h" line="38"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="lt-variant-db.gir.c"
               line="313">a #LtVariant that meets with @subtag.
                          otherwise %NULL.</doc>
          <type name="Variant" c:type="LtVariant*"/>
        </return-value>
        <parameters>
          <instance-parameter name="variantdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant-db.gir.c"
                 line="308">a #LtVariantDb.</doc>
            <type name="VariantDb" c:type="LtVariantDb*"/>
          </instance-parameter>
          <parameter name="subtag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant-db.gir.c"
                 line="309">a subtag name to lookup.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="lt_variant_db_ref">
        <doc xml:space="preserve"
             filename="lt-variant-db.gir.c"
             line="276">Increases the reference count of @variantdb.</doc>
        <source-position filename="lt-variant-db.gir.h" line="36"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-variant-db.gir.c"
               line="282">the same @variantdb object.</doc>
          <type name="VariantDb" c:type="LtVariantDb*"/>
        </return-value>
        <parameters>
          <instance-parameter name="variantdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant-db.gir.c"
                 line="278">a #LtVariantDb.</doc>
            <type name="VariantDb" c:type="LtVariantDb*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="lt_variant_db_unref">
        <doc xml:space="preserve"
             filename="lt-variant-db.gir.c"
             line="292">Decreases the reference count of @variantdb. when its reference count
drops to 0, the object is finalized (i.e. its memory is freed).</doc>
        <source-position filename="lt-variant-db.gir.h" line="37"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="variantdb" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="lt-variant-db.gir.c"
                 line="294">a #LtVariantDb.</doc>
            <type name="VariantDb" c:type="LtVariantDb*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <function name="db_finalize" c:identifier="lt_db_finalize">
      <source-position filename="lt-database.gir.h" line="64"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="db_get_datadir" c:identifier="lt_db_get_datadir">
      <source-position filename="lt-database.gir.h" line="61"/>
      <return-value transfer-ownership="none">
        <type name="utf8" c:type="const char*"/>
      </return-value>
    </function>
    <function name="db_get_extlang" c:identifier="lt_db_get_extlang">
      <source-position filename="lt-database.gir.h" line="66"/>
      <return-value transfer-ownership="full">
        <type name="ExtlangDb" c:type="LtExtlangDb*"/>
      </return-value>
    </function>
    <function name="db_get_grandfathered"
              c:identifier="lt_db_get_grandfathered">
      <source-position filename="lt-database.gir.h" line="70"/>
      <return-value transfer-ownership="full">
        <type name="GrandfatheredDb" c:type="LtGrandfatheredDb*"/>
      </return-value>
    </function>
    <function name="db_get_lang" c:identifier="lt_db_get_lang">
      <source-position filename="lt-database.gir.h" line="65"/>
      <return-value transfer-ownership="full">
        <type name="LangDb" c:type="LtLangDb*"/>
      </return-value>
    </function>
    <function name="db_get_redundant" c:identifier="lt_db_get_redundant">
      <source-position filename="lt-database.gir.h" line="71"/>
      <return-value transfer-ownership="full">
        <type name="RedundantDb" c:type="LtRedundantDb*"/>
      </return-value>
    </function>
    <function name="db_get_region" c:identifier="lt_db_get_region">
      <source-position filename="lt-database.gir.h" line="68"/>
      <return-value transfer-ownership="full">
        <type name="RegionDb" c:type="LtRegionDb*"/>
      </return-value>
    </function>
    <function name="db_get_relation" c:identifier="lt_db_get_relation">
      <source-position filename="lt-database.gir.h" line="72"/>
      <return-value transfer-ownership="full">
        <type name="RelationDb" c:type="LtRelationDb*"/>
      </return-value>
    </function>
    <function name="db_get_script" c:identifier="lt_db_get_script">
      <source-position filename="lt-database.gir.h" line="67"/>
      <return-value transfer-ownership="full">
        <type name="ScriptDb" c:type="LtScriptDb*"/>
      </return-value>
    </function>
    <function name="db_get_variant" c:identifier="lt_db_get_variant">
      <source-position filename="lt-database.gir.h" line="69"/>
      <return-value transfer-ownership="full">
        <type name="VariantDb" c:type="LtVariantDb*"/>
      </return-value>
    </function>
    <function name="db_initialize" c:identifier="lt_db_initialize">
      <source-position filename="lt-database.gir.h" line="63"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="db_set_datadir" c:identifier="lt_db_set_datadir">
      <source-position filename="lt-database.gir.h" line="60"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="path" transfer-ownership="none">
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="db_set_val" c:identifier="lt_db_set_val">
      <source-position filename="lt-database.gir.h" line="62"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="val" transfer-ownership="none">
          <type name="DbVal" c:type="LtDbVal*"/>
        </parameter>
      </parameters>
    </function>
    <function name="ext_modules_load" c:identifier="lt_ext_modules_load">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.c"
           line="570">Load all of the modules on the system, including the internal accessor.
This has to be invoked before processing something with #lt_extension_t.
or lt_db_initialize() does.</doc>
      <source-position filename="lt-ext-module.gir.h" line="164"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="ext_modules_unload" c:identifier="lt_ext_modules_unload">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.c"
           line="678">Unload all of the modules already loaded.</doc>
      <source-position filename="lt-ext-module.gir.h" line="165"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
    <function name="iter_init"
              c:identifier="lt_iter_init"
              moved-to="Iter.init">
      <doc xml:space="preserve"
           filename="lt-iter.gir.c"
           line="81">Initialize the iterator with @tmpl object. this function has to be called
before performing any opperation with the iterator and lt_iter_finish()
when the iterator isn't needed anymore.
|[
lt_lang_db *lang = lt_lang_db_new();
LtPointer *key, *val;
LtIter *iter;

iter = LT_ITER_INIT (lang);
while (lt_iter_next(iter, &amp;key, &amp;val)) {
  /&amp;ast; do something with key and value &amp;ast;/
}
lt_iter_finish(iter);
]|</doc>
      <source-position filename="lt-iter.gir.h" line="52"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="lt-iter.gir.c"
             line="100">the initialized iterator object.</doc>
        <type name="Iter" c:type="LtIter*"/>
      </return-value>
      <parameters>
        <parameter name="tmpl" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-iter.gir.c"
               line="83">a #LtItermpl_t</doc>
          <type name="IterTmpl" c:type="LtIterTmpl*"/>
        </parameter>
      </parameters>
    </function>
    <function name="list_free"
              c:identifier="lt_list_free"
              moved-to="List.free">
      <doc xml:space="preserve"
           filename="lt-list.gir.c"
           line="127">Frees all of the memory used by a #LtList.</doc>
      <source-position filename="lt-list.gir.h" line="36"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-list.gir.c"
               line="129">a #LtList.</doc>
          <type name="Pointer" c:type="LtPointer"/>
        </parameter>
      </parameters>
    </function>
    <docsection name="lt-error">
      <doc xml:space="preserve"
           filename="lt-error.gir.c"
           line="40">This section describes the error handling in this library.</doc>
    </docsection>
    <docsection name="lt-ext-module">
      <doc xml:space="preserve"
           filename="lt-ext-module.gir.c"
           line="41">This class provides functionality to extend features in #lt_extension_t,
such as validating tags more strictly.</doc>
    </docsection>
    <docsection name="lt-ext-module-data">
      <doc xml:space="preserve"
           filename="lt-ext-module-data.gir.c"
           line="25">This container class provides a data access for a specific data of
extension subtag.</doc>
    </docsection>
    <docsection name="lt-extension">
      <doc xml:space="preserve"
           filename="lt-extension.gir.c"
           line="29">This container class provides a data access to Extension subtag entry.</doc>
    </docsection>
    <docsection name="lt-extlang">
      <doc xml:space="preserve"
           filename="lt-extlang.gir.c"
           line="29">This container class provides a data access to Extlang subtag entry.</doc>
    </docsection>
    <docsection name="lt-extlang-db">
      <doc xml:space="preserve"
           filename="lt-extlang-db.gir.c"
           line="34">This class provides an interface to access Extlang database. which has been
registered as ISO 639 code.</doc>
    </docsection>
    <docsection name="lt-grandfathered">
      <doc xml:space="preserve"
           filename="lt-grandfathered.gir.c"
           line="28">This container class provides a data access to Grandfathered subtag entry.</doc>
    </docsection>
    <docsection name="lt-grandfathered-db">
      <doc xml:space="preserve"
           filename="lt-grandfathered-db.gir.c"
           line="34">This class provides an interface to access Grandfathered database.
which has been registered under RFC 3066 and mostly deprecated.</doc>
    </docsection>
    <docsection name="lt-iter">
      <doc xml:space="preserve"
           filename="lt-iter.gir.c"
           line="25">This class provides a common interface to iterate over the key/value pairs
in an initiated object.</doc>
    </docsection>
    <docsection name="lt-lang">
      <doc xml:space="preserve"
           filename="lt-lang.gir.c"
           line="28">This container class provides a data access to Language subtag entry.</doc>
    </docsection>
    <docsection name="lt-lang-db">
      <doc xml:space="preserve"
           filename="lt-lang-db.gir.c"
           line="33">This class provides an interface to access Language database. which has been
registered as ISO 639 code.</doc>
    </docsection>
    <docsection name="lt-list">
      <doc xml:space="preserve"
           filename="lt-list.gir.c"
           line="24">The #LtList object and its associated functions provide a standard
doubly-linked list data structure.</doc>
    </docsection>
    <docsection name="lt-macros">
      <doc xml:space="preserve"
           filename="lt-macros.gir.h"
           line="26">These macros provide more specialized features which are not needed so often
by application programmers.</doc>
    </docsection>
    <docsection name="lt-redundant">
      <doc xml:space="preserve"
           filename="lt-redundant.gir.c"
           line="28">This container class provides a data access to Redundant subtag entry.</doc>
    </docsection>
    <docsection name="lt-redundant-db">
      <doc xml:space="preserve"
           filename="lt-redundant-db.gir.c"
           line="34">This class provides an interface to access Redundant database.
which were mostly made redundant by the advent of either RFC 4646
or RFC 5646.</doc>
    </docsection>
    <docsection name="lt-region">
      <doc xml:space="preserve"
           filename="lt-region.gir.c"
           line="28">This container class provides a data access to Region subtag entry.</doc>
    </docsection>
    <docsection name="lt-region-db">
      <doc xml:space="preserve"
           filename="lt-region-db.gir.c"
           line="34">This class provides an interface to access Region database. which has been
registered as ISO 3166-1 and UN M.49 code.</doc>
    </docsection>
    <docsection name="lt-relation-db">
      <doc xml:space="preserve"
           filename="lt-relation-db.gir.c"
           line="32">This class providdes an interface to access Relation database.</doc>
    </docsection>
    <docsection name="lt-script">
      <doc xml:space="preserve"
           filename="lt-script.gir.c"
           line="27">This container class provides a data access to Script subtag entry.</doc>
    </docsection>
    <docsection name="lt-script-db">
      <doc xml:space="preserve"
           filename="lt-script-db.gir.c"
           line="33">This class provides an interface to access Script Database. which has been
registered as ISO 15924.</doc>
    </docsection>
    <docsection name="lt-string">
      <doc xml:space="preserve"
           filename="lt-string.gir.c"
           line="27">A #LtString is an object that handles the memory management of a C
string.</doc>
    </docsection>
    <docsection name="lt-tag">
      <doc xml:space="preserve"
           filename="lt-tag.gir.c"
           line="42">This container class provides an interface to deal with the language tag.</doc>
    </docsection>
    <docsection name="lt-variant">
      <doc xml:space="preserve"
           filename="lt-variant.gir.c"
           line="28">This container class provides a data access to Variant subtag entry.</doc>
    </docsection>
    <docsection name="lt-variant-db">
      <doc xml:space="preserve"
           filename="lt-variant-db.gir.c"
           line="35">This class provides an interface to access Variant database. which has been
registered with IANA.</doc>
    </docsection>
    <function name="tag_convert_from_locale"
              c:identifier="lt_tag_convert_from_locale"
              moved-to="Tag.convert_from_locale">
      <doc xml:space="preserve"
           filename="lt-tag.gir.c"
           line="1999">Convert current locale to the language tag.</doc>
      <source-position filename="lt-tag.gir.h" line="94"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2005">a #LtTag, %NULL if fails.</doc>
        <type name="Tag" c:type="LtTag*"/>
      </return-value>
      <parameters>
        <parameter name="error"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2001">a #LtError.</doc>
          <type name="Error" c:type="LtError**"/>
        </parameter>
      </parameters>
    </function>
    <function name="tag_convert_from_locale_string"
              c:identifier="lt_tag_convert_from_locale_string"
              moved-to="Tag.convert_from_locale_string">
      <doc xml:space="preserve"
           filename="lt-tag.gir.c"
           line="2018">Convert @locale to the language tag.</doc>
      <source-position filename="lt-tag.gir.h" line="95"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="lt-tag.gir.c"
             line="2025">a #LtTag, %NULL if fails.</doc>
        <type name="Tag" c:type="LtTag*"/>
      </return-value>
      <parameters>
        <parameter name="locale" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2020">a locale string</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="error"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="lt-tag.gir.c"
               line="2021">a #LtError or %NULL.</doc>
          <type name="Error" c:type="LtError**"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
