| /* |
| * Copyright © 2007 Keith Packard |
| * |
| * Permission to use, copy, modify, distribute, and sell this software and its |
| * documentation for any purpose is hereby granted without fee, provided that |
| * the above copyright notice appear in all copies and that both that copyright |
| * notice and this permission notice appear in supporting documentation, and |
| * that the name of the copyright holders not be used in advertising or |
| * publicity pertaining to distribution of the software without specific, |
| * written prior permission. The copyright holders make no representations |
| * about the suitability of this software for any purpose. It is provided "as |
| * is" without express or implied warranty. |
| * |
| * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, |
| * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO |
| * EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR |
| * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, |
| * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER |
| * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE |
| * OF THIS SOFTWARE. |
| */ |
| |
| @RET@ FcLangSet * |
| @FUNC@ FcLangSetCreate |
| @TYPE1@ void |
| @PURPOSE@ create a langset object |
| @DESC@ |
| <function>FcLangSetCreate</function> creates a new FcLangSet object. |
| @@ |
| |
| @RET@ void |
| @FUNC@ FcLangSetDestroy |
| @TYPE1@ FcLangSet * @ARG1@ ls |
| @PURPOSE@ destroy a langset object |
| @DESC@ |
| <function>FcLangSetDestroy</function> destroys a FcLangSet object, freeing |
| all memory associated with it. |
| @@ |
| |
| @RET@ FcLangSet * |
| @FUNC@ FcLangSetCopy |
| @TYPE1@ const FcLangSet * @ARG1@ ls |
| @PURPOSE@ copy a langset object |
| @DESC@ |
| <function>FcLangSetCopy</function> creates a new FcLangSet object and |
| populates it with the contents of <parameter>ls</parameter>. |
| @@ |
| |
| @RET@ FcBool |
| @FUNC@ FcLangSetAdd |
| @TYPE1@ FcLangSet * @ARG1@ ls |
| @TYPE2@ const FcChar8 * @ARG2@ lang |
| @PURPOSE@ add a language to a langset |
| @DESC@ |
| <parameter>lang</parameter> is added to <parameter>ls</parameter>. |
| <parameter>lang</parameter> should be of the form Ll-Tt where Ll is a |
| two or three letter language from ISO 639 and Tt is a territory from ISO |
| 3166. |
| @@ |
| |
| @RET@ FcBool |
| @FUNC@ FcLangSetDel |
| @TYPE1@ FcLangSet * @ARG1@ ls |
| @TYPE2@ const FcChar8 * @ARG2@ lang |
| @PURPOSE@ delete a language from a langset |
| @DESC@ |
| <parameter>lang</parameter> is removed from <parameter>ls</parameter>. |
| <parameter>lang</parameter> should be of the form Ll-Tt where Ll is a |
| two or three letter language from ISO 639 and Tt is a territory from ISO |
| 3166. |
| @SINCE@ 2.9.0 |
| @@ |
| |
| @RET@ FcLangSet * |
| @FUNC@ FcLangSetUnion |
| @TYPE1@ const FcLangSet * @ARG1@ ls_a |
| @TYPE2@ const FcLangSet * @ARG2@ ls_b |
| @PURPOSE@ Add langsets |
| @DESC@ |
| Returns a set including only those languages found in either <parameter>ls_a</parameter> or <parameter>ls_b</parameter>. |
| @SINCE@ 2.9.0 |
| @@ |
| |
| @RET@ FcLangSet * |
| @FUNC@ FcLangSetSubtract |
| @TYPE1@ const FcLangSet * @ARG1@ ls_a |
| @TYPE2@ const FcLangSet * @ARG2@ ls_b |
| @PURPOSE@ Subtract langsets |
| @DESC@ |
| Returns a set including only those languages found in <parameter>ls_a</parameter> but not in <parameter>ls_b</parameter>. |
| @SINCE@ 2.9.0 |
| @@ |
| |
| @RET@ FcLangResult |
| @FUNC@ FcLangSetCompare |
| @TYPE1@ const FcLangSet * @ARG1@ ls_a |
| @TYPE2@ const FcLangSet * @ARG2@ ls_b |
| @PURPOSE@ compare language sets |
| @DESC@ |
| <function>FcLangSetCompare</function> compares language coverage for |
| <parameter>ls_a</parameter> and <parameter>ls_b</parameter>. If they share |
| any language and territory pair, this function returns FcLangEqual. If they |
| share a language but differ in which territory that language is for, this |
| function returns FcLangDifferentTerritory. If they share no languages in |
| common, this function returns FcLangDifferentLang. |
| @@ |
| |
| @RET@ FcBool |
| @FUNC@ FcLangSetContains |
| @TYPE1@ const FcLangSet * @ARG1@ ls_a |
| @TYPE2@ const FcLangSet * @ARG2@ ls_b |
| @PURPOSE@ check langset subset relation |
| @DESC@ |
| <function>FcLangSetContains</function> returns FcTrue if |
| <parameter>ls_a</parameter> contains every language in |
| <parameter>ls_b</parameter>. <parameter>ls_a</parameter> will 'contain' a |
| language from <parameter>ls_b</parameter> if <parameter>ls_a</parameter> |
| has exactly the language, or either the language or |
| <parameter>ls_a</parameter> has no territory. |
| @@ |
| |
| @RET@ FcBool |
| @FUNC@ FcLangSetEqual |
| @TYPE1@ const FcLangSet * @ARG1@ ls_a |
| @TYPE2@ const FcLangSet * @ARG2@ ls_b |
| @PURPOSE@ test for matching langsets |
| @DESC@ |
| Returns FcTrue if and only if <parameter>ls_a</parameter> supports precisely |
| the same language and territory combinations as <parameter>ls_b</parameter>. |
| @@ |
| |
| @RET@ FcChar32 |
| @FUNC@ FcLangSetHash |
| @TYPE1@ const FcLangSet * @ARG1@ ls |
| @PURPOSE@ return a hash value for a langset |
| @DESC@ |
| This function returns a value which depends solely on the languages |
| supported by <parameter>ls</parameter>. Any language which equals |
| <parameter>ls</parameter> will have the same result from |
| <function>FcLangSetHash</function>. However, two langsets with the same hash |
| value may not be equal. |
| @@ |
| |
| @RET@ FcLangResult |
| @FUNC@ FcLangSetHasLang |
| @TYPE1@ const FcLangSet * @ARG1@ ls |
| @TYPE2@ const FcChar8 * @ARG2@ lang |
| @PURPOSE@ test langset for language support |
| @DESC@ |
| <function>FcLangSetHasLang</function> checks whether |
| <parameter>ls</parameter> supports <parameter>lang</parameter>. If |
| <parameter>ls</parameter> has a matching language and territory pair, |
| this function returns FcLangEqual. If <parameter>ls</parameter> has |
| a matching language but differs in which territory that language is for, this |
| function returns FcLangDifferentTerritory. If <parameter>ls</parameter> |
| has no matching language, this function returns FcLangDifferentLang. |
| @@ |
| |
| @RET@ FcStrSet * |
| @FUNC@ FcGetDefaultLangs |
| @TYPE1@ void |
| @PURPOSE@ Get the default languages list |
| @DESC@ |
| Returns a string set of the default languages according to the environment variables on the system. |
| This function looks for them in order of FC_LANG, LC_ALL, LC_CTYPE and LANG then. |
| If there are no valid values in those environment variables, "en" will be set as fallback. |
| @SINCE@ 2.9.91 |
| @@ |
| |
| @RET@ FcStrSet * |
| @FUNC@ FcLangSetGetLangs |
| @TYPE1@ const FcLangSet * @ARG1@ ls |
| @PURPOSE@ get the list of languages in the langset |
| @DESC@ |
| Returns a string set of all languages in <parameter>langset</parameter>. |
| @@ |
| |
| @RET@ FcStrSet * |
| @FUNC@ FcGetLangs |
| @TYPE1@ void |
| @PURPOSE@ Get list of languages |
| @DESC@ |
| Returns a string set of all known languages. |
| @@ |
| |
| @RET@ FcChar8 * |
| @FUNC@ FcLangNormalize |
| @TYPE1@ const FcChar8 * @ARG1@ lang |
| @PURPOSE@ Normalize the language string |
| @DESC@ |
| Returns a string to make <parameter>lang</parameter> suitable on fontconfig. |
| @SINCE@ 2.10.91 |
| @@ |
| |
| @RET@ const FcCharSet * |
| @FUNC@ FcLangGetCharSet |
| @TYPE1@ const FcChar8 * @ARG1@ lang |
| @PURPOSE@ Get character map for a language |
| @DESC@ |
| Returns the FcCharMap for a language. |
| @@ |