icu::FilteredBreakIteratorBuilder Class Reference

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.
virtual UBool suppressBreakAfter (const UnicodeString &string, UErrorCode &status)=0
 Suppress a certain string from being the end of a segment.
virtual UBool unsuppressBreakAfter (const UnicodeString &string, UErrorCode &status)=0
 Stop suppressing a certain string from being the end of the segment.
virtual BreakIteratorbuild (BreakIterator *adoptBreakIterator, UErrorCode &status)=0
 This function has been deprecated in favor of wrapIteratorWithFilter() The behavior is identical.
BreakIteratorwrapIteratorWithFilter (BreakIterator *adoptBreakIterator, UErrorCode &status)
 Wrap (adopt) an existing break iterator in a new filtered instance.

Static Public Member Functions

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

Protected Member Functions

 FilteredBreakIteratorBuilder ()
 For subclass use.

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

virtual icu::FilteredBreakIteratorBuilder::~FilteredBreakIteratorBuilder (  )  [virtual]

destructor.

Stable:
ICU 56
icu::FilteredBreakIteratorBuilder::FilteredBreakIteratorBuilder (  )  [protected]

For subclass use.

Stable:
ICU 56

Member Function Documentation

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:
adoptBreakIterator the break iterator to adopt
status error code
Returns:
the new BreakIterator, owned by the caller.
Deprecated:
ICU 60 use wrapIteratorWithFilter() instead
See also:
wrapBreakIteratorWithFilter()
static FilteredBreakIteratorBuilder* icu::FilteredBreakIteratorBuilder::createEmptyInstance ( UErrorCode status  )  [static]

Construct an empty FilteredBreakIteratorBuilder.

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

Parameters:
status The error code.
Returns:
the new builder
Stable:
ICU 60
static FilteredBreakIteratorBuilder* icu::FilteredBreakIteratorBuilder::createInstance ( UErrorCode status  )  [static]

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

Parameters:
status The error code.
Returns:
the new builder
Deprecated:
ICU 60 use createEmptyInstance instead
See also:
createEmptyInstance()
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:
where the locale.
status The error code.
Returns:
the new builder
Stable:
ICU 56
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:
string the string to suppress, such as "Mr."
status error 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
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:
string the exception to remove
status error 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
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:
adoptBreakIterator the break iterator to adopt
status error code
Returns:
the new BreakIterator, owned by the caller.
Stable:
ICU 60

Definition at line 128 of file filteredbrk.h.


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

Generated on 23 Jul 2019 for ICU 63.1 by  doxygen 1.6.1