ICU 62.1 62.1
unimatch.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* Copyright (C) 2001-2005, International Business Machines Corporation and others. All Rights Reserved.
5**********************************************************************
6* Date Name Description
7* 07/18/01 aliu Creation.
8**********************************************************************
9*/
10#ifndef UNIMATCH_H
11#define UNIMATCH_H
12
13#include "unicode/utypes.h"
14
22
23class Replaceable;
24class UnicodeString;
25class UnicodeSet;
26
64
70class U_COMMON_API UnicodeMatcher /* not : public UObject because this is an interface/mixin class */ {
71
72public:
77 virtual ~UnicodeMatcher();
78
125 virtual UMatchDegree matches(const Replaceable& text,
126 int32_t& offset,
127 int32_t limit,
128 UBool incremental) = 0;
129
143 UBool escapeUnprintable = FALSE) const = 0;
144
152 virtual UBool matchesIndexValue(uint8_t v) const = 0;
153
160 virtual void addMatchSetTo(UnicodeSet& toUnionTo) const = 0;
161};
162
164
165#endif
"Smart pointer" base class; do not use directly: use LocalPointer etc.
Replaceable is an abstract base class representing a string of characters that supports the replaceme...
Definition rep.h:73
UnicodeMatcher defines a protocol for objects that can match a range of characters in a Replaceable s...
Definition unimatch.h:70
virtual ~UnicodeMatcher()
Destructor.
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.
virtual void addMatchSetTo(UnicodeSet &toUnionTo) const =0
Union the set of all characters that may be matched by this object into the given set.
virtual UnicodeString & toPattern(UnicodeString &result, UBool escapeUnprintable=FALSE) const =0
Returns a string representation of this matcher.
virtual UBool matchesIndexValue(uint8_t v) const =0
Returns TRUE if this matcher will match a character c, where c & 0xFF == v, at offset,...
A mutable set of Unicode characters and multicharacter strings.
Definition uniset.h:278
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
Definition unistr.h:287
UMatchDegree
Constants returned by UnicodeMatcher::matches() indicating the degree of match.
Definition unimatch.h:32
@ U_MISMATCH
Constant returned by matches() indicating a mismatch between the text and this matcher.
Definition unimatch.h:40
@ U_PARTIAL_MATCH
Constant returned by matches() indicating a partial match between the text and this matcher.
Definition unimatch.h:52
@ U_MATCH
Constant returned by matches() indicating a complete match between the text and this matcher.
Definition unimatch.h:62
int8_t UBool
The ICU boolean type.
Definition umachine.h:236
#define FALSE
The FALSE value of a UBool.
Definition umachine.h:244
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