#include "unicode/utypes.h"
#include "unicode/ucharstrie.h"
#include "unicode/ucharstriebuilder.h"
#include "unicode/unistr.h"
#include "unicode/ustring.h"
#include "cmemory.h"
#include "uarrsort.h"
#include "uassert.h"
#include "uhash.h"
#include "ustr_imp.h"
U_NAMESPACE_BEGIN
class UCharsTrieElement : public UMemory { … };
void
UCharsTrieElement::setTo(const UnicodeString &s, int32_t val,
UnicodeString &strings, UErrorCode &errorCode) { … }
int32_t
UCharsTrieElement::compareStringTo(const UCharsTrieElement &other, const UnicodeString &strings) const { … }
UCharsTrieBuilder::UCharsTrieBuilder(UErrorCode & )
: … { … }
UCharsTrieBuilder::~UCharsTrieBuilder() { … }
UCharsTrieBuilder &
UCharsTrieBuilder::add(const UnicodeString &s, int32_t value, UErrorCode &errorCode) { … }
U_CDECL_BEGIN
static int32_t U_CALLCONV
compareElementStrings(const void *context, const void *left, const void *right) { … }
U_CDECL_END
UCharsTrie *
UCharsTrieBuilder::build(UStringTrieBuildOption buildOption, UErrorCode &errorCode) { … }
UnicodeString &
UCharsTrieBuilder::buildUnicodeString(UStringTrieBuildOption buildOption, UnicodeString &result,
UErrorCode &errorCode) { … }
void
UCharsTrieBuilder::buildUChars(UStringTrieBuildOption buildOption, UErrorCode &errorCode) { … }
int32_t
UCharsTrieBuilder::getElementStringLength(int32_t i) const { … }
char16_t
UCharsTrieBuilder::getElementUnit(int32_t i, int32_t unitIndex) const { … }
int32_t
UCharsTrieBuilder::getElementValue(int32_t i) const { … }
int32_t
UCharsTrieBuilder::getLimitOfLinearMatch(int32_t first, int32_t last, int32_t unitIndex) const { … }
int32_t
UCharsTrieBuilder::countElementUnits(int32_t start, int32_t limit, int32_t unitIndex) const { … }
int32_t
UCharsTrieBuilder::skipElementsBySomeUnits(int32_t i, int32_t unitIndex, int32_t count) const { … }
int32_t
UCharsTrieBuilder::indexOfElementWithNextUnit(int32_t i, int32_t unitIndex, char16_t unit) const { … }
UCharsTrieBuilder::UCTLinearMatchNode::UCTLinearMatchNode(const char16_t *units, int32_t len, Node *nextNode)
: … { … }
bool
UCharsTrieBuilder::UCTLinearMatchNode::operator==(const Node &other) const { … }
void
UCharsTrieBuilder::UCTLinearMatchNode::write(StringTrieBuilder &builder) { … }
StringTrieBuilder::Node *
UCharsTrieBuilder::createLinearMatchNode(int32_t i, int32_t unitIndex, int32_t length,
Node *nextNode) const { … }
UBool
UCharsTrieBuilder::ensureCapacity(int32_t length) { … }
int32_t
UCharsTrieBuilder::write(int32_t unit) { … }
int32_t
UCharsTrieBuilder::write(const char16_t *s, int32_t length) { … }
int32_t
UCharsTrieBuilder::writeElementUnits(int32_t i, int32_t unitIndex, int32_t length) { … }
int32_t
UCharsTrieBuilder::writeValueAndFinal(int32_t i, UBool isFinal) { … }
int32_t
UCharsTrieBuilder::writeValueAndType(UBool hasValue, int32_t value, int32_t node) { … }
int32_t
UCharsTrieBuilder::writeDeltaTo(int32_t jumpTarget) { … }
U_NAMESPACE_END