]> git.wh0rd.org - fontconfig.git/blobdiff - doc/fcpattern.fncs
Bug 41171 - Invalid use of memset
[fontconfig.git] / doc / fcpattern.fncs
index 74f367587d7293911386730cdac8da69603a7637..1df1c4f6184bfd9051b433cfb2e0f3d7e3751f42 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * $Id$
+ * fontconfig/doc/fcpattern.fncs
  *
  * Copyright © 2003 Keith Packard
  *
@@ -7,15 +7,15 @@
  * 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 Keith Packard not be used in
+ * documentation, and that the name of the author(s) not be used in
  * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission.  Keith Packard makes no
+ * specific, written prior permission.  The authors make no
  * representations about the suitability of this software for any purpose.  It
  * is provided "as is" without express or implied warranty.
  *
- * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
  * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * EVENT SHALL THE AUTHOR(S) 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
@@ -31,7 +31,7 @@ Creates a pattern with no properties; used to build patterns from scratch.
 
 @RET@          FcPattern *     
 @FUNC@         FcPatternDuplicate
-@TYPE1@                FcPattern *                     @ARG1@           p
+@TYPE1@                const FcPattern *               @ARG1@           p
 @PURPOSE@      Copy a pattern
 @DESC@
 Copy a pattern, returning a new pattern that matches
@@ -77,6 +77,18 @@ Returns whether <parameter>pa</parameter> and <parameter>pb</parameter> have exa
 objects in <parameter>os</parameter>.
 @@
 
+@RET@          FcPattern *
+@FUNC@         FcPatternFilter
+@TYPE1@                FcPattern *                     @ARG1@           p
+@TYPE2@                const FcObjectSet *             @ARG1@           os
+@PURPOSE@      Filter the objects of pattern
+@DESC@
+Returns a new pattern that only has those objects from
+<parameter>p</parameter> that are in <parameter>os</parameter>.
+If <parameter>os</parameter> is NULL, a duplicate of
+<parameter>p</parameter> is returned.
+@@
+
 @RET@          FcChar32
 @FUNC@         FcPatternHash
 @TYPE1@                const FcPattern *               @ARG1@          p
@@ -96,7 +108,7 @@ equal.
 @DESC@
 Adds a single value to the list of values associated with the property named
 `object<parameter>.  If `append</parameter> is FcTrue, the value is added at the end of any
-existing list, otherwise it is inserted at the begining.  `value' is saved
+existing list, otherwise it is inserted at the beginning.  `value' is saved
 (with FcValueSave) when inserted into the pattern so that the library
 retains no reference to any application-supplied data structure.
 @@
@@ -132,7 +144,7 @@ values added to the list have binding <parameter>weak</parameter> instead of <pa
 @FUNC++@       FcPatternAddString
 @TYPE1++@      FcPattern *                     @ARG1++@        p
 @TYPE2++@      const char *                    @ARG2++@        object
-@TYPE3++@      const char *                    @ARG3++@        s
+@TYPE3++@      const FcChar8 *                 @ARG3++@        s
 
 @PROTOTYPE+++@
 @RET+++@       FcBool
@@ -214,7 +226,7 @@ within the pattern directly.  Applications must not free this value.
 @TYPE1++@      FcPattern *                     @ARG1++@        p
 @TYPE2++@      const char *                    @ARG2++@        object
 @TYPE3++@      int%                            @ARG3++@        n
-@TYPE4++@      char **const                    @ARG4++@        s
+@TYPE4++@      FcChar8 **                      @ARG4++@        s
 
 @PROTOTYPE+++@
 @RET+++@       FcResult
@@ -241,18 +253,20 @@ within the pattern directly.  Applications must not free this value.
 @TYPE4+++++@   FcBool *                        @ARG4+++++@     b 
 
 @PROTOTYPE++++++@
-@RET++++++@    FcBool
+@RET++++++@    FcResult
 @FUNC++++++@   FcPatternGetFTFace
 @TYPE1++++++@  FcPattern *                     @ARG1++++++@    p
 @TYPE2++++++@  const char *                    @ARG2++++++@    object
-@TYPE3++++++@  const FT_Face *                 @ARG3++++++@    f
+@TYPE3+++++@   int%                            @ARG3+++++@     n
+@TYPE3++++++@  FT_Face *                       @ARG3++++++@    f
 
 @PROTOTYPE+++++++@
-@RET+++++++@   FcBool
+@RET+++++++@   FcResult
 @FUNC+++++++@  FcPatternGetLangSet
 @TYPE1+++++++@         FcPattern *                     @ARG1+++++++@   p
 @TYPE2+++++++@ const char *                    @ARG2+++++++@   object
-@TYPE3+++++++@ const FcLangSet **              @ARG3+++++++@   l
+@TYPE3+++++@   int%                            @ARG3+++++@     n
+@TYPE3+++++++@ FcLangSet **                    @ARG3+++++++@   l
 
 @PURPOSE@      Return a typed value from a pattern
 @DESC@
@@ -265,14 +279,22 @@ in preference to FcPatternGet to provide compile-time typechecking.
 
 @RET@          FcPattern *
 @FUNC@         FcPatternBuild
-@TYPE1@                FcPattern *                     @ARG1@          orig
+@TYPE1@                FcPattern *                     @ARG1@          pattern
 @TYPE2@        ...
 
 @PROTOTYPE+@
 @RET+@         FcPattern *
 @FUNC+@                FcPatternVaBuild
-@TYPE1+@       FcPattern *                     @ARG1+@         orig
+@TYPE1+@       FcPattern *                     @ARG1+@         pattern
 @TYPE2+@       va_list%                        @ARG2+@         va
+
+@PROTOTYPE++@
+@RET++@                void
+@FUNC++@       FcPatternVapBuild
+@TYPE1++@      FcPattern *                     @ARG1++@        result
+@TYPE2++@      FcPattern *                     @ARG2++@        pattern
+@TYPE3++@      va_list%                        @ARG3++@        va
+
 @PURPOSE@      Create patterns from arguments
 @DESC@
 Builds a pattern using a list of objects, types and values.  Each
@@ -300,7 +322,9 @@ pattern = FcPatternBuild (0, FC_FAMILY, FcTypeString, "Times", (char *) 0);
 </programlisting>
 <para>
 FcPatternVaBuild is used when the arguments are already in the form of a
-varargs value.
+varargs value. FcPatternVapBuild is a macro version of FcPatternVaBuild
+which returns its result directly in the <parameter>result</parameter>
+variable.
 @@
 
 @RET@          FcBool
@@ -356,7 +380,7 @@ specified point size (default 12), dpi (default 75) and scale (default 1).
 
 @RET@          FcPattern *
 @FUNC@         FcNameParse
-@TYPE1@                const char *                    @ARG1@          name 
+@TYPE1@                const FcChar8 *                 @ARG1@          name 
 @PURPOSE@      Parse a pattern string
 @DESC@
 Converts <parameter>name</parameter> from the standard text format described above into a pattern.
@@ -369,5 +393,5 @@ Converts <parameter>name</parameter> from the standard text format described abo
 @DESC@
 Converts the given pattern into the standard text format described above.
 The return value is not static, but instead refers to newly allocated memory
-which should be freed by the caller.
+which should be freed by the caller using free().
 @@