34#if U_SHOW_CPLUSPLUS_API
36#if UCONFIG_NO_BREAK_ITERATION
222 DONE =
static_cast<int32_t
>(-1)
301 virtual int32_t
next(int32_t n) = 0;
437#ifndef U_HIDE_DEPRECATED_API
485 const Locale& displayLocale,
499#ifndef U_FORCE_HIDE_DEPRECATED_API
524#ifndef U_HIDE_DEPRECATED_API
536#if !UCONFIG_NO_SERVICE
587#ifndef U_HIDE_INTERNAL_API
629 friend class ICUBreakIteratorFactory;
630 friend class ICUBreakIteratorService;
639#ifndef U_HIDE_INTERNAL_API
654#ifndef U_HIDE_DEPRECATED_API
C++ API: Character Iterator.
virtual bool operator==(const BreakIterator &) const =0
Return true if another object is semantically equal to this one.
static StringEnumeration * getAvailableLocales()
Return a StringEnumeration over the locales available at the time of the call, including registered l...
virtual ~BreakIterator()
destructor
BreakIterator(const Locale &valid, const Locale &actual)
BreakIterator(const BreakIterator &other)
virtual int32_t previous()=0
Set the iterator position to the boundary preceding the current boundary.
virtual int32_t getRuleStatus() const
For RuleBasedBreakIterators, return the status tag from the break rule that determined the boundary a...
virtual void adoptText(CharacterIterator *it)=0
Change the text over which this operates.
virtual CharacterIterator & getText() const =0
Return a CharacterIterator over the text being analyzed.
static BreakIterator * createCharacterInstance(const Locale &where, UErrorCode &status)
Create BreakIterator for character-breaks using specified locale Returns an instance of a BreakIterat...
virtual void setText(UText *text, UErrorCode &status)=0
Reset the break iterator to operate over the text represented by the UText.
virtual int32_t last()=0
Set the iterator position to the index immediately BEYOND the last character in the text being scanne...
virtual BreakIterator * clone() const =0
Return a polymorphic copy of this object.
virtual int32_t next()=0
Advance the iterator to the boundary following the current boundary.
static BreakIterator * createWordInstance(const Locale &where, UErrorCode &status)
Create BreakIterator for word-breaks using the given locale.
virtual int32_t first()=0
Sets the current iteration position to the beginning of the text, position zero.
const char * getLocaleID(ULocDataLocaleType type, UErrorCode &status) const
Get the locale for this break iterator object.
static UnicodeString & getDisplayName(const Locale &objectLocale, const Locale &displayLocale, UnicodeString &name)
Get name of the object for the desired Locale, in the desired language.
Locale getLocale(ULocDataLocaleType type, UErrorCode &status) const
Returns the locale for this break iterator.
bool operator!=(const BreakIterator &rhs) const
Returns the complement of the result of operator==.
virtual void setText(const UnicodeString &text)=0
Change the text over which this operates.
static BreakIterator * createTitleInstance(const Locale &where, UErrorCode &status)
Create BreakIterator for title-casing breaks using the specified locale Returns an instance of a Brea...
virtual int32_t next(int32_t n)=0
Set the iterator position to the nth boundary from the current boundary.
virtual int32_t preceding(int32_t offset)=0
Set the iterator position to the first boundary preceding the specified offset.
virtual int32_t current() const =0
Return character index of the current iterator position within the text.
virtual UBool isBoundary(int32_t offset)=0
Return true if the specified position is a boundary position.
static UnicodeString & getDisplayName(const Locale &objectLocale, UnicodeString &name)
Get name of the object for the desired Locale, in the language of the default locale.
virtual UClassID getDynamicClassID() const override=0
Return a polymorphic class ID for this object.
static BreakIterator * createSentenceInstance(const Locale &where, UErrorCode &status)
Create BreakIterator for sentence-breaks using specified locale Returns an instance of a BreakIterato...
virtual BreakIterator & refreshInputText(UText *input, UErrorCode &status)=0
Set the subject text string upon which the break iterator is operating without changing any other asp...
UBool isBufferClone()
Determine whether the BreakIterator was created in user memory by createBufferClone(),...
static UBool unregister(URegistryKey key, UErrorCode &status)
Unregister a previously-registered BreakIterator using the key returned from the register call.
virtual UText * getUText(UText *fillIn, UErrorCode &status) const =0
Get a UText for the text being analyzed.
static BreakIterator * createLineInstance(const Locale &where, UErrorCode &status)
Create BreakIterator for line-breaks using specified locale.
virtual BreakIterator * createBufferClone(void *stackBuffer, int32_t &BufferSize, UErrorCode &status)=0
Deprecated functionality.
virtual int32_t following(int32_t offset)=0
Advance the iterator to the first boundary following the specified offset.
@ DONE
DONE is returned by previous() and next() after all valid boundaries have been returned.
static URegistryKey registerInstance(BreakIterator *toAdopt, const Locale &locale, UBreakIteratorType kind, UErrorCode &status)
Register a new break iterator of the indicated kind, to use in the given locale.
static const Locale * getAvailableLocales(int32_t &count)
Get the set of Locales for which TextBoundaries are installed.
virtual int32_t getRuleStatusVec(int32_t *fillInVec, int32_t capacity, UErrorCode &status)
For RuleBasedBreakIterators, get the status (tag) values from the break rule(s) that determined the b...
Abstract class that defines an API for iteration on text objects.
A Locale object represents a specific geographical, political, or cultural region.
Base class for 'pure' C++ implementations of uenum api.
UObject is the common ICU "boilerplate" class.
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
C++ API: Locale ID object.
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
C++ API: String Enumeration.
UBreakIteratorType
The possible types of text boundaries.
#define ULOC_FULLNAME_CAPACITY
Useful constant for the maximum size of the whole locale ID (including the terminating NULL and all k...
ULocDataLocaleType
Constants for *_getLocale() Allow user to select whether she wants information on requested,...
int8_t UBool
The ICU boolean type, a signed-byte integer.
C API: Miscellaneous definitions.
const void * URegistryKey
Opaque type returned by registerInstance, registerFactory and unregister for service registration.
C++ API: Common ICU base class UObject.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
C API: Abstract Unicode Text API.
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.