ICU 71.1 71.1

unirepl.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 UNIREPL_H
13 #define UNIREPL_H
14
15 #include "unicode/utypes.h"
16
17 #if U_SHOW_CPLUSPLUS_API
18
24 U_NAMESPACE_BEGIN
25
26 class Replaceable;
27 class UnicodeString;
28 class UnicodeSet;
29
40 class U_I18N_API UnicodeReplacer /* not : public UObject because this is an interface/mixin class */ {
41
42 public:
43
48 virtual ~UnicodeReplacer();
49
68 virtual int32_t replace(Replaceable& text,
69 int32_t start,
70 int32_t limit,
71 int32_t& cursor) = 0;
72
87 virtual UnicodeString& toReplacerPattern(UnicodeString& result,
88 UBool escapeUnprintable) const = 0;
89
96 virtual void addReplacementSetTo(UnicodeSet& toUnionTo) const = 0;
97 };
98
99 U_NAMESPACE_END
100
101 #endif /* U_SHOW_CPLUSPLUS_API */
102
103 #endif
utypes.h
Basic definitions for ICU, for both C and C++ APIs.
icu::UnicodeSet
A mutable set of Unicode characters and multicharacter strings.
Definition: uniset.h:285
U_I18N_API
#define U_I18N_API
Definition: utypes.h:301
UBool
int8_t UBool
The ICU boolean type, a signed-byte integer.
Definition: umachine.h:269
icu::Replaceable
Replaceable is an abstract base class representing a string of characters that supports the replaceme...
Definition: rep.h:77
icu::UnicodeString
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
Definition: unistr.h:295
icu::UnicodeReplacer
UnicodeReplacer defines a protocol for objects that replace a range of characters in a Replaceable st...
Definition: unirepl.h:40