ICU 54.1 54.1

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- File List
- Globals

All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
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
21 U_NAMESPACE_BEGIN
22
31 #define U_ETHER ((UChar)0xFFFF)
32
59 class U_COMMON_API UnicodeFilter : public UnicodeFunctor, public UnicodeMatcher {
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
118 U_NAMESPACE_END
119
120 #endif