Imported Upstream version 2.9.2
[platform/upstream/libxml2.git] / os400 / transcode.h
1 /**
2 ***     Transcoding support declarations.
3 ***
4 ***     See Copyright for the status of this software.
5 ***
6 ***     Author: Patrick Monnerat <pm@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