Annotation of embedaddon/libxml2/include/libxml/xmlstring.h, revision 1.1
1.1 ! misho 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: const 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__ */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>