Logo Search packages:      
Sourcecode: icu version File versions  Download package

Public Member Functions | Static Public Member Functions

UnicodeFilter Class Reference

#include <unifilt.h>

Inheritance diagram for UnicodeFilter:
Inheritance graph
Collaboration diagram for UnicodeFilter:
Collaboration graph

List of all members.

Public Member Functions

virtual void addMatchSetTo (UnicodeSet &toUnionTo) const =0
virtual UnicodeFunctorclone () const =0
virtual UBool contains (UChar32 c) const =0
virtual UClassID getDynamicClassID () const =0
virtual UMatchDegree matches (const Replaceable &text, int32_t &offset, int32_t limit, UBool incremental)
virtual UBool matchesIndexValue (uint8_t v) const =0
virtual void setData (const TransliterationRuleData *)
virtual UnicodeMatchertoMatcher () const
virtual UnicodeStringtoPattern (UnicodeString &result, UBool escapeUnprintable=FALSE) const =0
virtual UnicodeReplacertoReplacer () const
virtual ~UnicodeFilter ()

Static Public Member Functions

static UClassID U_EXPORT2 getStaticClassID ()
static void U_EXPORT2 operator delete (void *p) U_NO_THROW
static void U_EXPORT2 operator delete (void *, void *) U_NO_THROW
static void U_EXPORT2 operator delete[] (void *p) U_NO_THROW
static void *U_EXPORT2 operator new (size_t size) U_NO_THROW
static void *U_EXPORT2 operator new (size_t, void *ptr) U_NO_THROW
static void *U_EXPORT2 operator new[] (size_t size) U_NO_THROW

Detailed Description

UnicodeFilter defines a protocol for selecting a subset of the full range (U+0000 to U+10FFFF) of Unicode characters. Currently, filters are used in conjunction with classes like Transliterator to only process selected characters through a transformation.

Note: UnicodeFilter currently stubs out two pure virtual methods of its base class, UnicodeMatcher. These methods are toPattern() and matchesIndexValue(). This is done so that filter classes that are not actually used as matchers -- specifically, those in the UnicodeFilterLogic component, and those in tests -- can continue to work without defining these methods. As long as a filter is not used in an RBT during real transliteration, these methods will not be called. However, this breaks the UnicodeMatcher base class protocol, and it is not a correct solution.

In the future we may revisit the UnicodeMatcher / UnicodeFilter hierarchy and either redesign it, or simply remove the stubs in UnicodeFilter and force subclasses to implement the full UnicodeMatcher protocol.

See also:
UnicodeFilterLogic ICU 2.0

Definition at line 59 of file unifilt.h.

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

Generated by  Doxygen 1.6.0   Back to index