ICU 70.1  70.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 
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
Replaceable is an abstract base class representing a string of characters that supports the replaceme...
Definition: rep.h:77
UnicodeReplacer defines a protocol for objects that replace a range of characters in a Replaceable st...
Definition: unirepl.h:40
virtual void addReplacementSetTo(UnicodeSet &toUnionTo) const =0
Union the set of all characters that may output by this object into the given set.
virtual int32_t replace(Replaceable &text, int32_t start, int32_t limit, int32_t &cursor)=0
Replace characters in 'text' from 'start' to 'limit' with the output text of this object.
virtual ~UnicodeReplacer()
Destructor.
virtual UnicodeString & toReplacerPattern(UnicodeString &result, UBool escapeUnprintable) const =0
Returns a string representation of this replacer.
A mutable set of Unicode characters and multicharacter strings.
Definition: uniset.h:285
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
Definition: unistr.h:296
int8_t UBool
The ICU boolean type, a signed-byte integer.
Definition: umachine.h:269
Basic definitions for ICU, for both C and C++ APIs.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside.
Definition: utypes.h:301