Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields   Globals  

unifunct.h

00001 /*
00002 **********************************************************************
00003 *   Copyright (c) 2002, International Business Machines Corporation
00004 *   and others.  All Rights Reserved.
00005 **********************************************************************
00006 *   Date        Name        Description
00007 *   01/14/2002  aliu        Creation.
00008 **********************************************************************
00009 */
00010 #ifndef UNIFUNCT_H
00011 #define UNIFUNCT_H
00012 
00013 #include "unicode/utypes.h"
00014 
00015 U_NAMESPACE_BEGIN
00016 
00017 class UnicodeMatcher;
00018 class UnicodeReplacer;
00019 
00025 class U_I18N_API UnicodeFunctor {
00026 
00027  public:
00028 
00032     virtual ~UnicodeFunctor();
00033 
00039     virtual UnicodeFunctor* clone() const = 0;
00040 
00050     virtual UnicodeMatcher* toMatcher() const;
00051 
00061     virtual UnicodeReplacer* toReplacer() const;
00062 
00074     static UClassID getStaticClassID(void) { return (UClassID)&fgClassID; }
00075 
00098     virtual UClassID getDynamicClassID(void) const { return getStaticClassID(); };
00099 
00100  protected:
00101 
00102     UnicodeFunctor();
00103 
00104  private:
00105 
00110     static const char fgClassID;
00111 };
00112 
00113 inline UnicodeFunctor::UnicodeFunctor() {}
00114 inline UnicodeFunctor::~UnicodeFunctor() {}
00115 
00116 U_NAMESPACE_END
00117 
00118 #endif

Generated on Tue Mar 5 06:25:00 2002 for ICU 2.0 by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002