]> git.wh0rd.org - fontconfig.git/blame - doc/fclangset.fncs
Bump libtool revision in preparation for release
[fontconfig.git] / doc / fclangset.fncs
CommitLineData
a190678e
KP
1/*
2 * Copyright © 2007 Keith Packard
3 *
4 * Permission to use, copy, modify, distribute, and sell this software and its
5 * documentation for any purpose is hereby granted without fee, provided that
6 * the above copyright notice appear in all copies and that both that copyright
7 * notice and this permission notice appear in supporting documentation, and
8 * that the name of the copyright holders not be used in advertising or
9 * publicity pertaining to distribution of the software without specific,
10 * written prior permission. The copyright holders make no representations
11 * about the suitability of this software for any purpose. It is provided "as
12 * is" without express or implied warranty.
13 *
14 * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
15 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
16 * EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
17 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
18 * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
19 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
20 * OF THIS SOFTWARE.
21 */
22
23@RET@ FcLangSet *
24@FUNC@ FcLangSetCreate
25@TYPE1@ void
26@PURPOSE@ create a langset object
27@DESC@
28<function>FcLangSetCreate</function> creates a new FcLangSet object.
29@@
30
31@RET@ void
32@FUNC@ FcLangSetDestroy
33@TYPE1@ FcLangSet * @ARG1@ ls
34@PURPOSE@ destroy a langset object
35@DESC@
36<function>FcLangSetDestroy</function> destroys a FcLangSet object, freeing
37all memory associated with it.
38@@
39
40@RET@ FcLangSet *
41@FUNC@ FcLangSetCopy
42@TYPE1@ const FcLangSet * @ARG1@ ls
43@PURPOSE@ copy a langset object
44@DESC@
45<function>FcLangSetCopy</function> creates a new FcLangSet object and
46populates it with the contents of <parameter>ls</parameter>.
47@@
48
49@RET@ FcBool
50@FUNC@ FcLangSetAdd
51@TYPE1@ FcLangSet * @ARG1@ ls
52@TYPE2@ const FcChar8 * @ARG2@ lang
53@PURPOSE@ add a language to a langset
54@DESC@
55<parameter>lang</parameter> is added to <parameter>ls</parameter>.
56<parameter>lang</parameter> should be of the form Ll-Tt where Ll is a
57two or three letter language from ISO 639 and Tt is a territory from ISO
583166.
59@@
60
61@RET@ FcLangResult
62@FUNC@ FcLangSetCompare
63@TYPE1@ const FcLangSet * @ARG1@ ls_a
64@TYPE2@ const FcLangSet * @ARG2@ ls_b
65@PURPOSE@ compare language sets
66@DESC@
67<function>FcLangSetCompare</function> compares language coverage for
68<parameter>ls_a</parameter> and <parameter>ls_b</parameter>. If they share
69any language and territory pair, this function returns FcLangEqual. If they
70share a language but differ in which territory that language is for, this
71function returns FcLangDiffentTerritory. If they share no languages in
72common, this function returns FcLangDifferentLang.
73@@
74
75@RET@ FcBool
76@FUNC@ FcLangSetContains
77@TYPE1@ const FcLangSet * @ARG1@ ls_a
78@TYPE2@ const FcLangSet * @ARG2@ ls_b
79@PURPOSE@ check langset subset relation
80@DESC@
81<function>FcLangSetContains</function> returns FcTrue if
82<parameter>ls_a</parameter> contains every language in
83<parameter>ls_b</parameter>. <parameter>ls_a</parameter> will 'contain' a
84language from <parameter>ls_b</parameter> if <parameter>ls_a</parameter>
85has exactly the language, or either the language or
86<parameter>ls_a</parameter> has no territory.
87@@
88
89@RET@ FcBool
90@FUNC@ FcLangSetEqual
91@TYPE1@ const FcLangSet * @ARG1@ ls_a
92@TYPE2@ const FcLangSet * @ARG2@ ls_b
93@PURPOSE@ test for matching langsets
94@DESC@
95Returns FcTrue if and only if <parameter>ls_a</parameter> supports precisely
96the same language and territory combinations as <parameter>ls_b</parameter>.
97@@
98
99@RET@ FcChar32
100@FUNC@ FcLangSetHash
101@TYPE1@ const FcLangSet * @ARG1@ ls
102@PURPOSE@ return a hash value for a langset
103@DESC@
104This function returns a value which depends solely on the languages
105supported by <parameter>ls</parameter>. Any language which equals
dac27f2f 106<parameter>ls</parameter> will have the same result from
a190678e
KP
107<function>FcLangSetHash</function>. However, two langsets with the same hash
108value may not be equal.
109@@
110
111@RET@ FcLangResult
112@FUNC@ FcLangSetHasLang
113@TYPE1@ const FcLangSet * @ARG1@ ls
114@TYPE2@ const FcChar8 * @ARG2@ lang
115@PURPOSE@ test langset for language support
116@DESC@
117<function>FcLangSetHasLang</function> checks whether
118<parameter>ls</parameter> supports <parameter>lang</parameter>. If
119<parameter>ls</parameter> has a matching language and territory pair,
120this function returns FcLangEqual. If <parameter>ls</parameter> has
121a matching language but differs in which territory that language is for, this
122function returns FcLangDiffentTerritory. If <parameter>ls</parameter>
123has no matching language, this function returns FcLangDifferentLang.
124@@
cf223cc7 125
d62b85af
BE
126@RET@ FcStrSet *
127@FUNC@ FcLangSetGetLangs
128@TYPE1@ const FcLangSet * @ARG1@ ls
129@PURPOSE@ get the list of languages in the langset
130@DESC@
131Returns a string set of all languages in <parameter>langset</parameter>.
132@@
133
cf223cc7
BE
134@RET@ FcStrSet *
135@FUNC@ FcGetLangs
136@TYPE1@ void
137@PURPOSE@ Get list of languages
138@DESC@
139Returns a string set of all known languages.
140@@
141
142@RET@ const FcCharSet *
143@FUNC@ FcLangGetCharSet
144@TYPE1@ const FcChar8 * @ARG1@ lang
145@PURPOSE@ Get character map for a language
146@DESC@
147Returns the FcCharMap for a language.
148@@