ICU 63.1 63.1

unifilt.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) 1999-2010, International Business Machines Corporation and others.
6 * All Rights Reserved.
7 **********************************************************************
8 * Date Name Description
9 * 11/17/99 aliu Creation.
10 **********************************************************************
11 */
12 #ifndef UNIFILT_H
13 #define UNIFILT_H
14
15 #include "unicode/unifunct.h"
16 #include "unicode/unimatch.h"
17
23 U_NAMESPACE_BEGIN
24
33 #define U_ETHER ((char16_t)0xFFFF)
34
61 class U_COMMON_API UnicodeFilter : public UnicodeFunctor, public UnicodeMatcher {
62
63 public:
68 virtual ~UnicodeFilter();
69
77 virtual UBool contains(UChar32 c) const = 0;
78
84 virtual UnicodeMatcher* toMatcher() const;
85
90 virtual UMatchDegree matches(const Replaceable& text,
91 int32_t& offset,
92 int32_t limit,
93 UBool incremental);
94
99 virtual void setData(const TransliterationRuleData*);
100
106 static UClassID U_EXPORT2 getStaticClassID();
107
108 protected:
109
110 /*
111 * Since this class has pure virtual functions,
112 * a constructor can't be used.
113 * @stable ICU 2.0
114 */
115 /* UnicodeFilter();*/
116 };
117
118 /*inline UnicodeFilter::UnicodeFilter() {}*/
119
120 U_NAMESPACE_END
121
122 #endif
icu::UnicodeMatcher
UnicodeMatcher defines a protocol for objects that can match a range of characters in a Replaceable s...
Definition: unimatch.h:70
icu::UMatchDegree
UMatchDegree
Constants returned by UnicodeMatcher::matches() indicating the degree of match.
Definition: unimatch.h:32
UClassID
void * UClassID
UClassID is used to identify classes without using the compiler&#39;s RTTI.
Definition: uobject.h:90
unifunct.h
C++ API: Unicode Functor.
icu::Replaceable
Replaceable is an abstract base class representing a string of characters that supports the replaceme...
Definition: rep.h:73
unimatch.h
C++ API: Unicode Matcher.
U_NAMESPACE_BEGIN
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:137
icu::UnicodeFilter
UnicodeFilter defines a protocol for selecting a subset of the full range (U+0000 to U+10FFFF) of Uni...
Definition: unifilt.h:61
UChar32
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
Definition: umachine.h:389
icu::UnicodeFunctor::setData
virtual void setData(const TransliterationRuleData *)=0
Set the data object associated with this functor.
icu::UnicodeFunctor
UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on ...
Definition: unifunct.h:35
U_NAMESPACE_END
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:138
icu::UnicodeFunctor::toMatcher
virtual UnicodeMatcher * toMatcher() const
Cast &#39;this&#39; to a UnicodeMatcher* pointer and return the pointer, or null if this is not a UnicodeMatc...
U_COMMON_API
#define U_COMMON_API
Set to export library symbols from inside the common library, and to import them from outside...
Definition: utypes.h:300
UBool
int8_t UBool
The ICU boolean type.
Definition: umachine.h:225
icu::UnicodeMatcher::matches
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...
icu::UnicodeFunctor::getStaticClassID
static UClassID getStaticClassID(void)
Return the class ID for this class.