CFStringEncodingConverterPriv.h [plain text]
#if !defined(__COREFOUNDATION_CFSTRINGENCODINGCONVERTERPRIV__)
#define __COREFOUNDATION_CFSTRINGENCODINGCONVERTERPRIV__ 1
#include <CoreFoundation/CFBase.h>
#include "CFStringEncodingConverterExt.h"
#define MAX_IANA_ALIASES (4)
typedef UInt32 (*_CFToBytesProc)(const void *converter, UInt32 flags, const UniChar *characters, UInt32 numChars, UInt8 *bytes, UInt32 maxByteLen, UInt32 *usedByteLen);
typedef UInt32 (*_CFToUnicodeProc)(const void *converter, UInt32 flags, const UInt8 *bytes, UInt32 numBytes, UniChar *characters, UInt32 maxCharLen, UInt32 *usedCharLen);
typedef struct {
_CFToBytesProc toBytes;
_CFToUnicodeProc toUnicode;
_CFToUnicodeProc toCanonicalUnicode;
void *_toBytes; void *_toUnicode; UInt16 maxLen;
UInt16 :16;
CFStringEncodingToBytesLenProc toBytesLen;
CFStringEncodingToUnicodeLenProc toUnicodeLen;
CFStringEncodingToBytesFallbackProc toBytesFallback;
CFStringEncodingToUnicodeFallbackProc toUnicodeFallback;
CFStringEncodingToBytesPrecomposeProc toBytesPrecompose;
CFStringEncodingIsValidCombiningCharacterProc isValidCombiningChar;
} _CFEncodingConverter;
typedef struct {
UInt32 encoding;
_CFEncodingConverter *converter;
const char *encodingName;
const char *ianaNames[MAX_IANA_ALIASES];
const char *loadablePath;
CFStringEncodingBootstrapProc bootstrap;
CFStringEncodingToBytesFallbackProc toBytesFallback;
CFStringEncodingToUnicodeFallbackProc toUnicodeFallback;
UInt32 scriptCode;
} _CFConverterEntry;
extern CFStringEncodingConverter __CFConverterASCII;
extern CFStringEncodingConverter __CFConverterISOLatin1;
extern CFStringEncodingConverter __CFConverterMacRoman;
extern CFStringEncodingConverter __CFConverterWinLatin1;
extern CFStringEncodingConverter __CFConverterNextStepLatin;
extern CFStringEncodingConverter __CFConverterUTF8;
#endif