ICU 50.1.2  50.1.2
unifunct.h
Go to the documentation of this file.
1 /*
2 **********************************************************************
3 * Copyright (c) 2002-2005, International Business Machines Corporation
4 * and others. All Rights Reserved.
5 **********************************************************************
6 * Date Name Description
7 * 01/14/2002 aliu Creation.
8 **********************************************************************
9 */
10 #ifndef UNIFUNCT_H
11 #define UNIFUNCT_H
12 
13 #include "unicode/utypes.h"
14 #include "unicode/uobject.h"
15 
22 
23 class UnicodeMatcher;
24 class UnicodeReplacer;
25 class TransliterationRuleData;
26 
34 
35 public:
36 
41  virtual ~UnicodeFunctor();
42 
49  virtual UnicodeFunctor* clone() const = 0;
50 
61  virtual UnicodeMatcher* toMatcher() const;
62 
73  virtual UnicodeReplacer* toReplacer() const;
74 
81  static UClassID U_EXPORT2 getStaticClassID(void);
82 
98  virtual UClassID getDynamicClassID(void) const = 0;
99 
108  virtual void setData(const TransliterationRuleData*) = 0;
109 
110 protected:
111 
117  /*UnicodeFunctor();*/
118 
119 };
120 
121 /*inline UnicodeFunctor::UnicodeFunctor() {}*/
122 
124 
125 #endif
UnicodeMatcher defines a protocol for objects that can match a range of characters in a Replaceable s...
Definition: unimatch.h:68
virtual UClassID getDynamicClassID() const =0
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Definition: uobject.h:96
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:129
UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on ...
Definition: unifunct.h:33
C++ API: Common ICU base class UObject.
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:130
UnicodeReplacer defines a protocol for objects that replace a range of characters in a Replaceable st...
Definition: unirepl.h:36
Basic definitions for ICU, for both C and C++ APIs.
#define U_COMMON_API
Set to export library symbols from inside the common library, and to import them from outside...
Definition: utypes.h:357
UObject is the common ICU "boilerplate" class.
Definition: uobject.h:229