11 return &
ns(internal_utf8_encoding).enc;
18 return &
ns(internal_little2_encoding).enc;
19#elif BYTEORDER == 4321
20 return &
ns(internal_big2_encoding).enc;
23 return (*(
const char *)&n
24 ? &
ns(internal_little2_encoding).enc
25 : &
ns(internal_big2_encoding).enc);
29static const ENCODING *
const NS(encodings)[] = {
30 &
ns(latin1_encoding).enc,
31 &
ns(ascii_encoding).enc,
32 &
ns(utf8_encoding).enc,
33 &
ns(big2_encoding).enc,
34 &
ns(big2_encoding).enc,
35 &
ns(little2_encoding).enc,
36 &
ns(utf8_encoding).enc
40NS(initScanProlog)(
const ENCODING *enc,
const char *ptr,
const char *end,
41 const char **nextTokPtr)
48NS(initScanContent)(
const ENCODING *enc,
const char *ptr,
const char *end,
49 const char **nextTokPtr)
59 int i = getEncodingIndex(name);
65 p->initEnc.updatePosition = initUpdatePosition;
67 *encPtr = &(p->initEnc);
72NS(findEncoding)(
const ENCODING *enc,
const char *ptr,
const char *end)
74#define ENCODING_MAX 128
75 char buf[ENCODING_MAX];
82 if (streqci(buf, KW_UTF_16) && enc->minBytesPerChar == 2)
84 i = getEncodingIndex(buf);
87 return NS(encodings)[i];
96 const char **versionPtr,
97 const char **versionEndPtr,
98 const char **encodingName,
102 return doParseXmlDecl(
NS(findEncoding),
#define SET_INIT_ENC_INDEX(enc, i)
int XmlParseXmlDecl(int isGeneralTextEntity, const ENCODING *enc, const char *ptr, const char *end, const char **badPtr, const char **versionPtr, const char **versionEndPtr, const char **encodingNamePtr, const ENCODING **namedEncodingPtr, int *standalonePtr)
#define XML_CONTENT_STATE
#define XmlUtf8Convert(enc, fromP, fromLim, toP, toLim)
const ENCODING * XmlGetUtf8InternalEncoding(void)
const ENCODING * XmlGetUtf16InternalEncoding(void)
int XmlInitEncoding(INIT_ENCODING *, const ENCODING **, const char *name)