#include "unicode/utypes.h"
#if !UCONFIG_NO_COLLATION
#include "unicode/localpointer.h"
#include "unicode/uchar.h"
#include "unicode/ucharstrie.h"
#include "unicode/ucharstriebuilder.h"
#include "unicode/uniset.h"
#include "unicode/unistr.h"
#include "unicode/usetiter.h"
#include "unicode/utf16.h"
#include "cmemory.h"
#include "collation.h"
#include "collationdata.h"
#include "collationdatabuilder.h"
#include "collationfastlatinbuilder.h"
#include "collationiterator.h"
#include "normalizer2impl.h"
#include "utrie2.h"
#include "uvectr32.h"
#include "uvectr64.h"
#include "uvector.h"
U_NAMESPACE_BEGIN
CollationDataBuilder::CEModifier::~CEModifier() { … }
struct ConditionalCE32 : public UMemory { … };
U_CDECL_BEGIN
void U_CALLCONV
uprv_deleteConditionalCE32(void *obj) { … }
U_CDECL_END
class DataBuilderCollationIterator : public CollationIterator { … };
DataBuilderCollationIterator::DataBuilderCollationIterator(CollationDataBuilder &b)
: … { … }
DataBuilderCollationIterator::~DataBuilderCollationIterator() { … }
int32_t
DataBuilderCollationIterator::fetchCEs(const UnicodeString &str, int32_t start,
int64_t ces[], int32_t cesLength) { … }
void
DataBuilderCollationIterator::resetToOffset(int32_t newOffset) { … }
int32_t
DataBuilderCollationIterator::getOffset() const { … }
UChar32
DataBuilderCollationIterator::nextCodePoint(UErrorCode & ) { … }
UChar32
DataBuilderCollationIterator::previousCodePoint(UErrorCode & ) { … }
void
DataBuilderCollationIterator::forwardNumCodePoints(int32_t num, UErrorCode & ) { … }
void
DataBuilderCollationIterator::backwardNumCodePoints(int32_t num, UErrorCode & ) { … }
uint32_t
DataBuilderCollationIterator::getDataCE32(UChar32 c) const { … }
uint32_t
DataBuilderCollationIterator::getCE32FromBuilderData(uint32_t ce32, UErrorCode &errorCode) { … }
CollationDataBuilder::CollationDataBuilder(UBool icu4xMode, UErrorCode &errorCode)
: … { … }
CollationDataBuilder::~CollationDataBuilder() { … }
void
CollationDataBuilder::initForTailoring(const CollationData *b, UErrorCode &errorCode) { … }
UBool
CollationDataBuilder::maybeSetPrimaryRange(UChar32 start, UChar32 end,
uint32_t primary, int32_t step,
UErrorCode &errorCode) { … }
uint32_t
CollationDataBuilder::setPrimaryRangeAndReturnNext(UChar32 start, UChar32 end,
uint32_t primary, int32_t step,
UErrorCode &errorCode) { … }
uint32_t
CollationDataBuilder::getCE32FromOffsetCE32(UBool fromBase, UChar32 c, uint32_t ce32) const { … }
UBool
CollationDataBuilder::isCompressibleLeadByte(uint32_t b) const { … }
UBool
CollationDataBuilder::isAssigned(UChar32 c) const { … }
uint32_t
CollationDataBuilder::getLongPrimaryIfSingleCE(UChar32 c) const { … }
int64_t
CollationDataBuilder::getSingleCE(UChar32 c, UErrorCode &errorCode) const { … }
int32_t
CollationDataBuilder::addCE(int64_t ce, UErrorCode &errorCode) { … }
int32_t
CollationDataBuilder::addCE32(uint32_t ce32, UErrorCode &errorCode) { … }
int32_t
CollationDataBuilder::addConditionalCE32(const UnicodeString &context, uint32_t ce32,
UErrorCode &errorCode) { … }
void
CollationDataBuilder::add(const UnicodeString &prefix, const UnicodeString &s,
const int64_t ces[], int32_t cesLength,
UErrorCode &errorCode) { … }
void
CollationDataBuilder::addCE32(const UnicodeString &prefix, const UnicodeString &s,
uint32_t ce32, UErrorCode &errorCode) { … }
uint32_t
CollationDataBuilder::encodeOneCEAsCE32(int64_t ce) { … }
uint32_t
CollationDataBuilder::encodeOneCE(int64_t ce, UErrorCode &errorCode) { … }
uint32_t
CollationDataBuilder::encodeCEs(const int64_t ces[], int32_t cesLength,
UErrorCode &errorCode) { … }
uint32_t
CollationDataBuilder::encodeExpansion(const int64_t ces[], int32_t length, UErrorCode &errorCode) { … }
uint32_t
CollationDataBuilder::encodeExpansion32(const int32_t newCE32s[], int32_t length,
UErrorCode &errorCode) { … }
uint32_t
CollationDataBuilder::copyFromBaseCE32(UChar32 c, uint32_t ce32, UBool withContext,
UErrorCode &errorCode) { … }
int32_t
CollationDataBuilder::copyContractionsFromBaseCE32(UnicodeString &context, UChar32 c, uint32_t ce32,
ConditionalCE32 *cond, UErrorCode &errorCode) { … }
class CopyHelper { … };
U_CDECL_BEGIN
static UBool U_CALLCONV
enumRangeForCopy(const void *context, UChar32 start, UChar32 end, uint32_t value) { … }
U_CDECL_END
void
CollationDataBuilder::copyFrom(const CollationDataBuilder &src, const CEModifier &modifier,
UErrorCode &errorCode) { … }
void
CollationDataBuilder::optimize(const UnicodeSet &set, UErrorCode &errorCode) { … }
void
CollationDataBuilder::suppressContractions(const UnicodeSet &set, UErrorCode &errorCode) { … }
UBool
CollationDataBuilder::getJamoCE32s(uint32_t jamoCE32s[], UErrorCode &errorCode) { … }
void
CollationDataBuilder::setDigitTags(UErrorCode &errorCode) { … }
U_CDECL_BEGIN
static UBool U_CALLCONV
enumRangeLeadValue(const void *context, UChar32 , UChar32 , uint32_t value) { … }
U_CDECL_END
void
CollationDataBuilder::setLeadSurrogates(UErrorCode &errorCode) { … }
void
CollationDataBuilder::build(CollationData &data, UErrorCode &errorCode) { … }
void
CollationDataBuilder::buildMappings(CollationData &data, UErrorCode &errorCode) { … }
void
CollationDataBuilder::clearContexts() { … }
void
CollationDataBuilder::buildContexts(UErrorCode &errorCode) { … }
uint32_t
CollationDataBuilder::buildContext(ConditionalCE32 *head, UErrorCode &errorCode) { … }
int32_t
CollationDataBuilder::addContextTrie(uint32_t defaultCE32, UCharsTrieBuilder &trieBuilder,
UErrorCode &errorCode) { … }
void
CollationDataBuilder::buildFastLatinTable(CollationData &data, UErrorCode &errorCode) { … }
int32_t
CollationDataBuilder::getCEs(const UnicodeString &s, int64_t ces[], int32_t cesLength) { … }
int32_t
CollationDataBuilder::getCEs(const UnicodeString &prefix, const UnicodeString &s,
int64_t ces[], int32_t cesLength) { … }
int32_t
CollationDataBuilder::getCEs(const UnicodeString &s, int32_t start,
int64_t ces[], int32_t cesLength) { … }
U_NAMESPACE_END
#endif