ICU 57.1 57.1
unirepl.h
Go to the documentation of this file.
1/*
2**********************************************************************
3* Copyright (c) 2002-2005, International Business Machines Corporation
4* and others. All Rights Reserved.
5**********************************************************************
6* Date Name Description
7* 01/14/2002 aliu Creation.
8**********************************************************************
9*/
10#ifndef UNIREPL_H
11#define UNIREPL_H
12
13#include "unicode/utypes.h"
14
21
22class Replaceable;
23class UnicodeString;
24class UnicodeSet;
25
36class U_I18N_API UnicodeReplacer /* not : public UObject because this is an interface/mixin class */ {
37
38 public:
39
45
65 int32_t start,
66 int32_t limit,
67 int32_t& cursor) = 0;
68
84 UBool escapeUnprintable) const = 0;
85
92 virtual void addReplacementSetTo(UnicodeSet& toUnionTo) const = 0;
93};
94
96
97#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:71
UnicodeReplacer defines a protocol for objects that replace a range of characters in a Replaceable st...
Definition unirepl.h:36
virtual void addReplacementSetTo(UnicodeSet &toUnionTo) const =0
Union the set of all characters that may output by this object into the given set.
virtual UnicodeString & toReplacerPattern(UnicodeString &result, UBool escapeUnprintable) const =0
Returns a string representation of this replacer.
virtual ~UnicodeReplacer()
Destructor.
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.
A mutable set of Unicode characters and multicharacter strings.
Definition uniset.h:276
UnicodeString is a string class that stores Unicode characters directly and provides similar function...
Definition unistr.h:294
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:358
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition uversion.h:130
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition uversion.h:129