ICU 64.2  64.2
Public Member Functions | Static Public Member Functions | Protected Member Functions
icu::FilteredBreakIteratorBuilder Class Referenceabstract

The BreakIteratorFilter is used to modify the behavior of a BreakIterator by constructing a new BreakIterator which suppresses certain segment boundaries. More...

#include <filteredbrk.h>

Inheritance diagram for icu::FilteredBreakIteratorBuilder:
icu::UObject icu::UMemory

Public Member Functions

virtual ~FilteredBreakIteratorBuilder ()
 destructor. More...
 
virtual UBool suppressBreakAfter (const UnicodeString &string, UErrorCode &status)=0
 Suppress a certain string from being the end of a segment. More...
 
virtual UBool unsuppressBreakAfter (const UnicodeString &string, UErrorCode &status)=0
 Stop suppressing a certain string from being the end of the segment. More...
 
virtual BreakIteratorbuild (BreakIterator *adoptBreakIterator, UErrorCode &status)=0
 This function has been deprecated in favor of wrapIteratorWithFilter() The behavior is identical. More...
 
BreakIteratorwrapIteratorWithFilter (BreakIterator *adoptBreakIterator, UErrorCode &status)
 Wrap (adopt) an existing break iterator in a new filtered instance. More...
 
- Public Member Functions inherited from icu::UObject
virtual ~UObject ()
 Destructor. More...
 
virtual UClassID getDynamicClassID () const
 ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class. More...
 

Static Public Member Functions

static FilteredBreakIteratorBuildercreateInstance (const Locale &where, UErrorCode &status)
 Construct a FilteredBreakIteratorBuilder based on rules in a locale. More...
 
static FilteredBreakIteratorBuildercreateInstance (UErrorCode &status)
 This function has been deprecated in favor of createEmptyInstance, which has identical behavior. More...
 
static FilteredBreakIteratorBuildercreateEmptyInstance (UErrorCode &status)
 Construct an empty FilteredBreakIteratorBuilder. More...
 

Protected Member Functions

 FilteredBreakIteratorBuilder ()
 For subclass use. More...
 

Detailed Description

The BreakIteratorFilter is used to modify the behavior of a BreakIterator by constructing a new BreakIterator which suppresses certain segment boundaries.

See http://www.unicode.org/reports/tr35/tr35-general.html#Segmentation_Exceptions . For example, a typical English Sentence Break Iterator would break on the space in the string "Mr. Smith" (resulting in two segments), but with "Mr." as an exception, a filtered break iterator would consider the string "Mr. Smith" to be a single segment.

Stable:
ICU 56

Definition at line 36 of file filteredbrk.h.

Constructor & Destructor Documentation

◆ ~FilteredBreakIteratorBuilder()

virtual icu::FilteredBreakIteratorBuilder::~FilteredBreakIteratorBuilder ( )
virtual

destructor.

Stable:
ICU 56

◆ FilteredBreakIteratorBuilder()

icu::FilteredBreakIteratorBuilder::FilteredBreakIteratorBuilder ( )
protected

For subclass use.

Stable:
ICU 56

Member Function Documentation

◆ build()

virtual BreakIterator* icu::FilteredBreakIteratorBuilder::build ( BreakIterator adoptBreakIterator,
UErrorCode status 
)
pure virtual

This function has been deprecated in favor of wrapIteratorWithFilter() The behavior is identical.

Parameters
adoptBreakIteratorthe break iterator to adopt
statuserror code
Returns
the new BreakIterator, owned by the caller.
Deprecated:
ICU 60 use wrapIteratorWithFilter() instead
See also
wrapBreakIteratorWithFilter()

◆ createEmptyInstance()

static FilteredBreakIteratorBuilder* icu::FilteredBreakIteratorBuilder::createEmptyInstance ( UErrorCode status)
static

Construct an empty FilteredBreakIteratorBuilder.

In this state, it will not suppress any segment boundaries.

Parameters
statusThe error code.
Returns
the new builder
Stable:
ICU 60

◆ createInstance() [1/2]

static FilteredBreakIteratorBuilder* icu::FilteredBreakIteratorBuilder::createInstance ( const Locale where,
UErrorCode status 
)
static

Construct a FilteredBreakIteratorBuilder based on rules in a locale.

The rules are taken from CLDR exception data for the locale, see http://www.unicode.org/reports/tr35/tr35-general.html#Segmentation_Exceptions This is the equivalent of calling createInstance(UErrorCode&) and then repeatedly calling addNoBreakAfter(...) with the contents of the CLDR exception data.

Parameters
wherethe locale.
statusThe error code.
Returns
the new builder
Stable:
ICU 56

◆ createInstance() [2/2]

static FilteredBreakIteratorBuilder* icu::FilteredBreakIteratorBuilder::createInstance ( UErrorCode status)
static

This function has been deprecated in favor of createEmptyInstance, which has identical behavior.

Parameters
statusThe error code.
Returns
the new builder
Deprecated:
ICU 60 use createEmptyInstance instead
See also
createEmptyInstance()

◆ suppressBreakAfter()

virtual UBool icu::FilteredBreakIteratorBuilder::suppressBreakAfter ( const UnicodeString string,
UErrorCode status 
)
pure virtual

Suppress a certain string from being the end of a segment.

For example, suppressing "Mr.", then segments ending in "Mr." will not be returned by the iterator.

Parameters
stringthe string to suppress, such as "Mr."
statuserror code
Returns
returns TRUE if the string was not present and now added, FALSE if the call was a no-op because the string was already being suppressed.
Stable:
ICU 56

◆ unsuppressBreakAfter()

virtual UBool icu::FilteredBreakIteratorBuilder::unsuppressBreakAfter ( const UnicodeString string,
UErrorCode status 
)
pure virtual

Stop suppressing a certain string from being the end of the segment.

This function does not create any new segment boundaries, but only serves to un-do the effect of earlier calls to suppressBreakAfter, or to un-do the effect of locale data which may be suppressing certain strings.

Parameters
stringthe exception to remove
statuserror code
Returns
returns TRUE if the string was present and now removed, FALSE if the call was a no-op because the string was not being suppressed.
Stable:
ICU 56

◆ wrapIteratorWithFilter()

BreakIterator* icu::FilteredBreakIteratorBuilder::wrapIteratorWithFilter ( BreakIterator adoptBreakIterator,
UErrorCode status 
)
inline

Wrap (adopt) an existing break iterator in a new filtered instance.

The resulting BreakIterator is owned by the caller. The BreakIteratorFilter may be destroyed before the BreakIterator is destroyed. Note that the adoptBreakIterator is adopted by the new BreakIterator and should no longer be used by the caller. The FilteredBreakIteratorBuilder may be reused. This function is an alias for build()

Parameters
adoptBreakIteratorthe break iterator to adopt
statuserror code
Returns
the new BreakIterator, owned by the caller.
Stable:
ICU 60

Definition at line 128 of file filteredbrk.h.

References U_NAMESPACE_END.


The documentation for this class was generated from the following file: