ICU 62.1 62.1
unifunct.h
Go to the documentation of this file.
1// © 2016 and later: Unicode, Inc. and others.
2// License & terms of use: http://www.unicode.org/copyright.html
3/*
4**********************************************************************
5* Copyright (c) 2002-2005, International Business Machines Corporation
6* and others. All Rights Reserved.
7**********************************************************************
8* Date Name Description
9* 01/14/2002 aliu Creation.
10**********************************************************************
11*/
12#ifndef UNIFUNCT_H
13#define UNIFUNCT_H
14
15#include "unicode/utypes.h"
16#include "unicode/uobject.h"
17
24
25class UnicodeMatcher;
26class UnicodeReplacer;
27class TransliterationRuleData;
28
36
37public:
38
43 virtual ~UnicodeFunctor();
44
51 virtual UnicodeFunctor* clone() const = 0;
52
63 virtual UnicodeMatcher* toMatcher() const;
64
75 virtual UnicodeReplacer* toReplacer() const;
76
84
100 virtual UClassID getDynamicClassID(void) const = 0;
101
110 virtual void setData(const TransliterationRuleData*) = 0;
111
112protected:
113
119 /*UnicodeFunctor();*/
120
121};
122
123/*inline UnicodeFunctor::UnicodeFunctor() {}*/
124
126
127#endif
"Smart pointer" base class; do not use directly: use LocalPointer etc.
UObject is the common ICU "boilerplate" class.
Definition uobject.h:223
UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on ...
Definition unifunct.h:35
virtual UClassID getDynamicClassID(void) const =0
Returns a unique class ID polymorphically.
virtual ~UnicodeFunctor()
Destructor.
static UClassID getStaticClassID(void)
Return the class ID for this class.
virtual UnicodeFunctor * clone() const =0
Return a copy of this object.
virtual UnicodeReplacer * toReplacer() const
Cast 'this' to a UnicodeReplacer* pointer and return the pointer, or null if this is not a UnicodeRep...
virtual void setData(const TransliterationRuleData *)=0
Set the data object associated with this functor.
virtual UnicodeMatcher * toMatcher() const
Cast 'this' to a UnicodeMatcher* pointer and return the pointer, or null if this is not a UnicodeMatc...
UnicodeMatcher defines a protocol for objects that can match a range of characters in a Replaceable s...
Definition unimatch.h:70
UnicodeReplacer defines a protocol for objects that replace a range of characters in a Replaceable st...
Definition unirepl.h:38
C++ API: Common ICU base class UObject.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Definition uobject.h:93
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:359
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition uversion.h:138
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition uversion.h:137