1 /** 2 *** Transcoding support declarations. 3 *** 4 *** See Copyright for the status of this software. 5 *** 6 *** Author: Patrick Monnerat <pm (at) datasphere.ch>, DATASPHERE S.A. 7 **/ 8 9 #ifndef _TRANSCODE_H_ 10 #define _TRANSCODE_H_ 11 12 #include <stdarg.h> 13 #include <libxml/dict.h> 14 15 16 XMLPUBFUN void xmlZapDict(xmlDictPtr * dict); 17 XMLPUBFUN const char * xmlTranscodeResult(const xmlChar * s, 18 const char * encoding, xmlDictPtr * dict, 19 void (*freeproc)(const void *)); 20 XMLPUBFUN const xmlChar * xmlTranscodeString(const char * s, 21 const char * encoding, xmlDictPtr * dict); 22 XMLPUBFUN const xmlChar * xmlTranscodeWString(const char * s, 23 const char * encoding, xmlDictPtr * dict); 24 XMLPUBFUN const xmlChar * xmlTranscodeHString(const char * s, 25 const char * encoding, xmlDictPtr * dict); 26 27 #ifndef XML_NO_SHORT_NAMES 28 /** 29 *** Since the above functions are generally called "inline" (i.e.: several 30 *** times nested in a single expression), define shorthand names 31 *** to minimize calling statement length. 32 **/ 33 34 #define xmlTR xmlTranscodeResult 35 #define xmlTS xmlTranscodeString 36 #define xmlTW xmlTranscodeWString 37 #define xmlTH xmlTranscodeHstring 38 #endif 39 40 XMLPUBFUN const char * xmlVasprintf(xmlDictPtr * dict, const char * encoding, 41 const xmlChar * fmt, va_list args); 42 43 #endif 44