Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

UnicodeFunctor Class Reference

UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on Unicode strings. More...

#include <unifunct.h>

Inheritance diagram for UnicodeFunctor::

UObject UMemory UnicodeFilter UnicodeSet List of all members.

Public Methods

virtual ~UnicodeFunctor ()
 Destructor. More...

virtual UnicodeFunctor * clone () const=0
 Return a copy of this object. More...

virtual UnicodeMatchertoMatcher () const
 Cast 'this' to a UnicodeMatcher* pointer and return the pointer, or null if this is not a UnicodeMatcher*. More...

virtual UnicodeReplacertoReplacer () const
 Cast 'this' to a UnicodeReplacer* pointer and return the pointer, or null if this is not a UnicodeReplacer*. More...

virtual UClassID getDynamicClassID (void) const=0
 Returns a unique class ID polymorphically. More...

virtual void setData (const TransliterationRuleData *)=0
 Set the data object associated with this functor. More...


Detailed Description

UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on Unicode strings.

Author:
Alan Liu
Draft:
This API has been introduced in ICU 2.4. It is still in draft state and may be modified in a future release.

Definition at line 28 of file unifunct.h.


Constructor & Destructor Documentation

virtual UnicodeFunctor::~UnicodeFunctor   [virtual]
 

Destructor.

Draft:
This API has been introduced in ICU 2.4. It is still in draft state and may be modified in a future release.


Member Function Documentation

virtual UnicodeFunctor* UnicodeFunctor::clone void    const [pure virtual]
 

Return a copy of this object.

All UnicodeFunctor objects have to support cloning in order to allow classes using UnicodeFunctor to implement cloning.

Draft:
This API has been introduced in ICU 2.4. It is still in draft state and may be modified in a future release.

Reimplemented in UnicodeSet.

virtual UClassID UnicodeFunctor::getDynamicClassID void    const [pure virtual]
 

Returns a unique class ID polymorphically.

This method is to implement a simple version of RTTI, since not all C++ compilers support genuine RTTI. Polymorphic operator==() and clone() methods call this method.

Concrete subclasses of UnicodeFunctor that wish clients to be able to identify them should implement getDynamicClassID() and also a static method and data member:

 static UClassID getStaticClassID() { return (UClassID)&fgClassID; }
 static char fgClassID;
 

Subclasses that do not implement this method will have a dynamic class ID of UnicodeFunctor::getStatisClassID().

Returns:
The class ID for this object. All objects of a given class have the same class ID. Objects of other classes have different class IDs.
Draft:
This API has been introduced in ICU 2.4. It is still in draft state and may be modified in a future release.

Reimplemented from UObject.

Reimplemented in UnicodeFilter, and UnicodeSet.

virtual void UnicodeFunctor::setData const TransliterationRuleData *    [pure virtual]
 

Set the data object associated with this functor.

The data object provides context for functor-to-standin mapping. This method is required when assigning a functor to a different data object. This function MAY GO AWAY later if the architecture is changed to pass data object pointers through the API.

Internal:
For internal use only.

Reimplemented in UnicodeFilter.

virtual UnicodeMatcher* UnicodeFunctor::toMatcher   const [virtual]
 

Cast 'this' to a UnicodeMatcher* pointer and return the pointer, or null if this is not a UnicodeMatcher*.

Subclasses that mix in UnicodeMatcher as a base class must override this. This protocol is required because a pointer to a UnicodeFunctor cannot be cast to a pointer to a UnicodeMatcher, since UnicodeMatcher is a mixin that does not derive from UnicodeFunctor.

Draft:
This API has been introduced in ICU 2.4. It is still in draft state and may be modified in a future release.

Reimplemented in UnicodeFilter.

virtual UnicodeReplacer* UnicodeFunctor::toReplacer   const [virtual]
 

Cast 'this' to a UnicodeReplacer* pointer and return the pointer, or null if this is not a UnicodeReplacer*.

Subclasses that mix in UnicodeReplacer as a base class must override this. This protocol is required because a pointer to a UnicodeFunctor cannot be cast to a pointer to a UnicodeReplacer, since UnicodeReplacer is a mixin that does not derive from UnicodeFunctor.

Draft:
This API has been introduced in ICU 2.4. It is still in draft state and may be modified in a future release.


The documentation for this class was generated from the following file:
Generated on Mon Nov 24 14:37:01 2003 for ICU 2.8 by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001