UCharsTrieElement;
141 virtualint32_t getElementStringLength(int32_t i)
const override;
142 virtualchar16_t getElementUnit(int32_t i, int32_t unitIndex)
const override;
143 virtualint32_t getElementValue(int32_t i)
const override;
145 virtualint32_t getLimitOfLinearMatch(int32_t first, int32_t last, int32_t unitIndex)
const override;
147 virtualint32_t countElementUnits(int32_t start, int32_t limit, int32_t unitIndex)
const override;
148 virtualint32_t skipElementsBySomeUnits(int32_t i, int32_t unitIndex, int32_t count)
const override;
149 virtualint32_t indexOfElementWithNextUnit(int32_t i, int32_t unitIndex, char16_t unit)
const override;
151 virtual UBoolmatchNodesCanHaveValues()
const override{
return true; }
153 virtualint32_t getMaxBranchLinearSubNodeLength()
const override{
returnUCharsTrie::kMaxBranchLinearSubNodeLength; }
154 virtualint32_t getMinLinearMatch()
const override{
returnUCharsTrie::kMinLinearMatch; }
155 virtualint32_t getMaxLinearMatchLength()
const override{
returnUCharsTrie::kMaxLinearMatchLength; }
157 classUCTLinearMatchNode :
publicLinearMatchNode {
159UCTLinearMatchNode(
constchar16_t *units, int32_t len, Node *nextNode);
160 virtual bool operator==(
constNode &other)
const override;
161 virtual voidwrite(StringTrieBuilder &builder)
override;
166 virtualNode *createLinearMatchNode(int32_t i, int32_t unitIndex, int32_t length,
167Node *nextNode)
const override;
169 UBoolensureCapacity(int32_t length);
170 virtualint32_t write(int32_t unit)
override;
171int32_t write(
constchar16_t *s, int32_t length);
172 virtualint32_t writeElementUnits(int32_t i, int32_t unitIndex, int32_t length)
override;
173 virtualint32_t writeValueAndFinal(int32_t i,
UBoolisFinal)
override;
174 virtualint32_t writeValueAndType(
UBoolhasValue, int32_t value, int32_t node)
override;
175 virtualint32_t writeDeltaTo(int32_t jumpTarget)
override;
177UnicodeString strings;
178UCharsTrieElement *elements;
179int32_t elementsCapacity;
180int32_t elementsLength;
185int32_t ucharsCapacity;
186int32_t ucharsLength;
Builder class for UCharsTrie.
UCharsTrie * build(UStringTrieBuildOption buildOption, UErrorCode &errorCode)
Builds a UCharsTrie for the add()ed data.
virtual ~UCharsTrieBuilder()
Destructor.
UnicodeString & buildUnicodeString(UStringTrieBuildOption buildOption, UnicodeString &result, UErrorCode &errorCode)
Builds a UCharsTrie for the add()ed data and char16_t-serializes it.
UCharsTrieBuilder(UErrorCode &errorCode)
Constructs an empty builder.
UCharsTrieBuilder & clear()
Removes all (string, value) pairs.
UCharsTrieBuilder & add(const UnicodeString &s, int32_t value, UErrorCode &errorCode)
Adds a (string, value) pair.
Light-weight, non-const reader class for a UCharsTrie.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
C++ API: Builder API for trie builders.
UStringTrieBuildOption
Build options for BytesTrieBuilder and CharsTrieBuilder.
C++ API: Trie for mapping Unicode strings (or 16-bit-unit sequences) to integer values.
int8_t UBool
The ICU boolean type, a signed-byte integer.
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
#define U_COMMON_API
Set to export library symbols from inside the common library, and to import them from outside.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4