30 class RBBIRuleScanner;
32 class UnicodeSetStringSpan;
34 class RuleCharacterIterator;
283 int32_t bufferCapacity;
297 UnicodeSetStringSpan *stringSpan;
314 inline UBool isBogus(
void)
const;
383 #ifndef U_HIDE_INTERNAL_API 477 virtual int32_t hashCode(
void)
const;
506 inline USet *toUSet();
516 inline const USet * toUSet()
const;
531 inline UBool isFrozen()
const;
597 #ifndef U_HIDE_INTERNAL_API 740 virtual int32_t size(
void)
const;
748 virtual UBool isEmpty(
void)
const;
938 int32_t spanUTF8(
const char *s, int32_t length,
USetSpanCondition spanCondition)
const;
957 int32_t spanBackUTF8(
const char *s, int32_t length,
USetSpanCondition spanCondition)
const;
992 int32_t start, int32_t limit,
1004 int32_t findCodePoint(
UChar32 c)
const;
1025 int32_t indexOf(
UChar32 c)
const;
1036 UChar32 charAt(int32_t index)
const;
1353 virtual int32_t getRangeCount(
void)
const;
1362 virtual UChar32 getRangeStart(int32_t index)
const;
1371 virtual UChar32 getRangeEnd(int32_t index)
const;
1421 int32_t serialize(uint16_t *dest, int32_t destCapacity,
UErrorCode& ec)
const;
1458 friend class USetAccess;
1460 int32_t getStringCount()
const;
1478 friend class RBBIRuleScanner;
1495 void applyPattern(RuleCharacterIterator& chars,
1506 void ensureCapacity(int32_t newLen,
UErrorCode& ec);
1508 void ensureBufferCapacity(int32_t newLen,
UErrorCode& ec);
1510 void swapBuffers(
void);
1515 UBool escapeUnprintable)
const;
1518 UBool escapeUnprintable)
const;
1528 void exclusiveOr(
const UChar32* other, int32_t otherLen, int8_t polarity);
1530 void add(
const UChar32* other, int32_t otherLen, int8_t polarity);
1532 void retain(
const UChar32* other, int32_t otherLen, int8_t polarity);
1542 static UBool resemblesPropertyPattern(RuleCharacterIterator& chars,
1588 void applyPropertyPattern(RuleCharacterIterator& chars,
1599 typedef UBool (*Filter)(
UChar32 codePoint,
void* context);
1610 void applyFilter(Filter filter,
1622 void releasePattern();
1638 return !containsNone(start, end);
1642 return !containsNone(s);
1646 return !containsNone(s);
1650 return (
UBool)(fFlags & kIsBogus);
1658 return reinterpret_cast<const UnicodeSet *
>(uset);
1662 return reinterpret_cast<USet *
>(
this);
1666 return reinterpret_cast<const USet *
>(
this);
1670 int32_t sLength=s.
length();
1673 }
else if(start>sLength) {
1676 return start+span(s.
getBuffer()+start, sLength-start, spanCondition);
1680 int32_t sLength=s.
length();
1683 }
else if(limit>sLength) {
1686 return spanBack(s.
getBuffer(), limit, spanCondition);
UBool containsSome(UChar32 start, UChar32 end) const
Returns true if this set contains one or more of the characters in the given range.
int32_t spanBack(const UChar *s, int32_t length, USetSpanCondition spanCondition) const
Returns the start of the trailing substring of the input string which consists only of characters and...
static UClassID getStaticClassID()
ICU "poor man's RTTI", returns a UClassID for this class.
UMatchDegree
Constants returned by UnicodeMatcher::matches() indicating the degree of match.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
UnicodeSetIterator iterates over the contents of a UnicodeSet.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
UBool isFrozen() const
Determines whether the set has been frozen (made immutable) or not.
static UnicodeSet * fromUSet(USet *uset)
Get a UnicodeSet pointer from a USet.
UBool operator!=(const UnicodeSet &o) const
Compares the specified object with this set for equality.
virtual UBool matchesIndexValue(uint8_t v) const =0
Returns TRUE if this matcher will match a character c, where c & 0xFF == v, at offset, in the forward direction (with limit > offset).
An interface that defines both lookup protocol and parsing of symbolic names.
UBool isBogus(void) const
Determine if this object contains a valid set.
virtual UClassID getDynamicClassID(void) const =0
Returns a unique class ID polymorphically.
virtual UnicodeFunctor * clone() const =0
Return a copy of this object.
Replaceable is an abstract base class representing a string of characters that supports the replaceme...
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
UnicodeFilter defines a protocol for selecting a subset of the full range (U+0000 to U+10FFFF) of Uni...
UChar * getBuffer(int32_t minCapacity)
Get a read/write pointer to the internal buffer.
virtual void addMatchSetTo(UnicodeSet &toUnionTo) const =0
Union the set of all characters that may be matched by this object into the given set...
UBool operator!=(const StringPiece &x, const StringPiece &y)
Global operator != for StringPiece.
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
#define NULL
Define NULL if necessary, to 0 for C++ and to ((void *)0) for C.
UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on ...
virtual UMatchDegree matches(const Replaceable &text, int32_t &offset, int32_t limit, UBool incremental)
Implement UnicodeMatcher API.
A mutable set of Unicode characters and multicharacter strings.
USetSpanCondition
Argument values for whether span() and similar functions continue while the current character is cont...
int32_t span(const UChar *s, int32_t length, USetSpanCondition spanCondition) const
Returns the length of the initial substring of the input string which consists only of characters and...
uint16_t UChar
Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
UProperty
Selection constants for Unicode properties.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...
void UnicodeSet_initInclusion(int32_t src, UErrorCode &status)
virtual UnicodeString & toPattern(UnicodeString &result, UBool escapeUnprintable=FALSE) const =0
Returns a string representation of this matcher.
virtual UBool contains(UChar32 c) const =0
Returns true for characters that are in the selected subset.
#define FALSE
The FALSE value of a UBool.
#define U_COMMON_API
Set to export library symbols from inside the common library, and to import them from outside...
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
USet * toUSet()
Produce a USet * pointer for this UnicodeSet.
int32_t length(void) const
Return the length of the UnicodeString object.
int8_t UBool
The ICU boolean type.