imgtools/imgcheck/libxml/xmlstring.h
changeset 2 39c28ec933dd
equal deleted inserted replaced
1:820b22e13ff1 2:39c28ec933dd
       
     1 /*
       
     2  * Summary: set of routines to process strings
       
     3  * Description: type and interfaces needed for the internal string handling
       
     4  *              of the library, especially UTF8 processing.
       
     5  *
       
     6  * Copy: See Copyright for the status of this software.
       
     7  *
       
     8  * Author: Daniel Veillard
       
     9  */
       
    10 
       
    11 #ifndef __XML_STRING_H__
       
    12 #define __XML_STRING_H__
       
    13 
       
    14 #include <stdarg.h>
       
    15 #include <libxml/xmlversion.h>
       
    16 
       
    17 #ifdef __cplusplus
       
    18 extern "C" {
       
    19 #endif
       
    20 
       
    21 /**
       
    22  * xmlChar:
       
    23  *
       
    24  * This is a basic byte in an UTF-8 encoded string.
       
    25  * It's unsigned allowing to pinpoint case where char * are assigned
       
    26  * to xmlChar * (possibly making serialization back impossible).
       
    27  */
       
    28 typedef unsigned char xmlChar;
       
    29 
       
    30 /**
       
    31  * BAD_CAST:
       
    32  *
       
    33  * Macro to cast a string to an xmlChar * when one know its safe.
       
    34  */
       
    35 #define BAD_CAST (xmlChar *)
       
    36 
       
    37 /*
       
    38  * xmlChar handling
       
    39  */
       
    40 XMLPUBFUN xmlChar * XMLCALL
       
    41                 xmlStrdup                (const xmlChar *cur);
       
    42 XMLPUBFUN xmlChar * XMLCALL
       
    43                 xmlStrndup               (const xmlChar *cur,
       
    44                                          int len);
       
    45 XMLPUBFUN xmlChar * XMLCALL
       
    46                 xmlCharStrndup           (const char *cur,
       
    47                                          int len);
       
    48 XMLPUBFUN xmlChar * XMLCALL
       
    49                 xmlCharStrdup            (const char *cur);
       
    50 XMLPUBFUN xmlChar * XMLCALL
       
    51                 xmlStrsub                (const xmlChar *str,
       
    52                                          int start,
       
    53                                          int len);
       
    54 XMLPUBFUN const xmlChar * XMLCALL
       
    55                 xmlStrchr                (const xmlChar *str,
       
    56                                          xmlChar val);
       
    57 XMLPUBFUN const xmlChar * XMLCALL
       
    58                 xmlStrstr                (const xmlChar *str,
       
    59                                          const xmlChar *val);
       
    60 XMLPUBFUN const xmlChar * XMLCALL
       
    61                 xmlStrcasestr            (const xmlChar *str,
       
    62                                          xmlChar *val);
       
    63 XMLPUBFUN int XMLCALL
       
    64                 xmlStrcmp                (const xmlChar *str1,
       
    65                                          const xmlChar *str2);
       
    66 XMLPUBFUN int XMLCALL
       
    67                 xmlStrncmp               (const xmlChar *str1,
       
    68                                          const xmlChar *str2,
       
    69                                          int len);
       
    70 XMLPUBFUN int XMLCALL
       
    71                 xmlStrcasecmp            (const xmlChar *str1,
       
    72                                          const xmlChar *str2);
       
    73 XMLPUBFUN int XMLCALL
       
    74                 xmlStrncasecmp           (const xmlChar *str1,
       
    75                                          const xmlChar *str2,
       
    76                                          int len);
       
    77 XMLPUBFUN int XMLCALL
       
    78                 xmlStrEqual              (const xmlChar *str1,
       
    79                                          const xmlChar *str2);
       
    80 XMLPUBFUN int XMLCALL
       
    81                 xmlStrQEqual             (const xmlChar *pref,
       
    82                                          const xmlChar *name,
       
    83                                          const xmlChar *str);
       
    84 XMLPUBFUN int XMLCALL
       
    85                 xmlStrlen                (const xmlChar *str);
       
    86 XMLPUBFUN xmlChar * XMLCALL
       
    87                 xmlStrcat                (xmlChar *cur,
       
    88                                          const xmlChar *add);
       
    89 XMLPUBFUN xmlChar * XMLCALL
       
    90                 xmlStrncat               (xmlChar *cur,
       
    91                                          const xmlChar *add,
       
    92                                          int len);
       
    93 XMLPUBFUN xmlChar * XMLCALL
       
    94                 xmlStrncatNew            (const xmlChar *str1,
       
    95                                          const xmlChar *str2,
       
    96                                          int len);
       
    97 XMLPUBFUN int XMLCALL
       
    98                 xmlStrPrintf             (xmlChar *buf,
       
    99                                          int len,
       
   100                                          const xmlChar *msg,
       
   101                                          ...);
       
   102 XMLPUBFUN int XMLCALL
       
   103                 xmlStrVPrintf                (xmlChar *buf,
       
   104                                          int len,
       
   105                                          const xmlChar *msg,
       
   106                                          va_list ap);
       
   107 
       
   108 XMLPUBFUN int XMLCALL
       
   109         xmlGetUTF8Char                   (const unsigned char *utf,
       
   110                                          int *len);
       
   111 XMLPUBFUN int XMLCALL
       
   112         xmlCheckUTF8                     (const unsigned char *utf);
       
   113 XMLPUBFUN int XMLCALL
       
   114         xmlUTF8Strsize                   (const xmlChar *utf,
       
   115                                          int len);
       
   116 XMLPUBFUN xmlChar * XMLCALL 
       
   117         xmlUTF8Strndup                   (const xmlChar *utf,
       
   118                                          int len);
       
   119 XMLPUBFUN const xmlChar * XMLCALL 
       
   120         xmlUTF8Strpos                    (const xmlChar *utf,
       
   121                                          int pos);
       
   122 XMLPUBFUN int XMLCALL
       
   123         xmlUTF8Strloc                    (const xmlChar *utf,
       
   124                                          const xmlChar *utfchar);
       
   125 XMLPUBFUN xmlChar * XMLCALL 
       
   126         xmlUTF8Strsub                    (const xmlChar *utf,
       
   127                                          int start,
       
   128                                          int len);
       
   129 XMLPUBFUN int XMLCALL
       
   130         xmlUTF8Strlen                    (const xmlChar *utf);
       
   131 XMLPUBFUN int XMLCALL
       
   132         xmlUTF8Size                      (const xmlChar *utf);
       
   133 XMLPUBFUN int XMLCALL
       
   134         xmlUTF8Charcmp                   (const xmlChar *utf1,
       
   135                                          const xmlChar *utf2);
       
   136 
       
   137 #ifdef __cplusplus
       
   138 }
       
   139 #endif
       
   140 #endif /* __XML_STRING_H__ */