ICU 50.1.2  50.1.2
unifilt.h
Go to the documentation of this file.
1 /*
2 **********************************************************************
3 * Copyright (C) 1999-2010, International Business Machines Corporation and others.
4 * All Rights Reserved.
5 **********************************************************************
6 * Date Name Description
7 * 11/17/99 aliu Creation.
8 **********************************************************************
9 */
10 #ifndef UNIFILT_H
11 #define UNIFILT_H
12 
13 #include "unicode/unifunct.h"
14 #include "unicode/unimatch.h"
15 
22 
31 #define U_ETHER ((UChar)0xFFFF)
32 
60 
61 public:
66  virtual ~UnicodeFilter();
67 
75  virtual UBool contains(UChar32 c) const = 0;
76 
82  virtual UnicodeMatcher* toMatcher() const;
83 
88  virtual UMatchDegree matches(const Replaceable& text,
89  int32_t& offset,
90  int32_t limit,
91  UBool incremental);
92 
97  virtual void setData(const TransliterationRuleData*);
98 
104  static UClassID U_EXPORT2 getStaticClassID();
105 
106 protected:
107 
108  /*
109  * Since this class has pure virtual functions,
110  * a constructor can't be used.
111  * @stable ICU 2.0
112  */
113 /* UnicodeFilter();*/
114 };
115 
116 /*inline UnicodeFilter::UnicodeFilter() {}*/
117 
119 
120 #endif
UnicodeMatcher defines a protocol for objects that can match a range of characters in a Replaceable s...
Definition: unimatch.h:68
virtual UnicodeMatcher * toMatcher() const
Cast 'this' to a UnicodeMatcher* pointer and return the pointer, or null if this is not a UnicodeMatc...
UMatchDegree
Constants returned by UnicodeMatcher::matches() indicating the degree of match.
Definition: unimatch.h:30
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Definition: uobject.h:96
C++ API: Unicode Functor.
Replaceable is an abstract base class representing a string of characters that supports the replaceme...
Definition: rep.h:71
C++ API: Unicode Matcher.
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:129
UnicodeFilter defines a protocol for selecting a subset of the full range (U+0000 to U+10FFFF) of Uni...
Definition: unifilt.h:59
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
Definition: umachine.h:298
virtual void setData(const TransliterationRuleData *)=0
Set the data object associated with this functor.
UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on ...
Definition: unifunct.h:33
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:130
#define U_COMMON_API
Set to export library symbols from inside the common library, and to import them from outside...
Definition: utypes.h:357
int8_t UBool
The ICU boolean type.
Definition: umachine.h:200
virtual UMatchDegree matches(const Replaceable &text, int32_t &offset, int32_t limit, UBool incremental)=0
Return a UMatchDegree value indicating the degree of match for the given text at the given offset...
static UClassID getStaticClassID(void)
Return the class ID for this class.