ICU 78.3
78.3
Toggle main menu visibility
Loading...
Searching...
No Matches
common
unicode
appendable.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) 2011-2012, International Business Machines
6
* Corporation and others. All Rights Reserved.
7
*******************************************************************************
8
* file name: appendable.h
9
* encoding: UTF-8
10
* tab size: 8 (not used)
11
* indentation:4
12
*
13
* created on: 2010dec07
14
* created by: Markus W. Scherer
15
*/
16
17
#ifndef __APPENDABLE_H__
18
#define __APPENDABLE_H__
19
24
25
#include "
unicode/utypes.h
"
26
27
#if U_SHOW_CPLUSPLUS_API
28
29
#include "
unicode/uobject.h
"
30
31
U_NAMESPACE_BEGIN
32
33
class
UnicodeString;
34
54
class
U_COMMON_API
Appendable :
public
UObject {
55
public
:
60
~Appendable();
61
68
virtual
UBool
appendCodeUnit(
char16_t
c) = 0;
69
77
virtual
UBool
appendCodePoint(
UChar32
c);
78
87
virtual
UBool
appendString(
const
char16_t
*s, int32_t length);
88
98
virtual
UBool
reserveAppendCapacity(int32_t appendCapacity);
99
144
virtual
char16_t
*getAppendBuffer(int32_t minCapacity,
145
int32_t desiredCapacityHint,
146
char16_t
*scratch, int32_t scratchCapacity,
147
int32_t *resultCapacity);
148
};
149
156
class
U_COMMON_API
UnicodeStringAppendable :
public
Appendable {
157
public
:
163
explicit
UnicodeStringAppendable(UnicodeString &s) : str(s) {}
164
169
~UnicodeStringAppendable();
170
177
virtual
UBool
appendCodeUnit(
char16_t
c)
override
;
178
185
virtual
UBool
appendCodePoint(
UChar32
c)
override
;
186
194
virtual
UBool
appendString(
const
char16_t
*s, int32_t length)
override
;
195
203
virtual
UBool
reserveAppendCapacity(int32_t appendCapacity)
override
;
204
226
virtual
char16_t
*getAppendBuffer(int32_t minCapacity,
227
int32_t desiredCapacityHint,
228
char16_t
*scratch, int32_t scratchCapacity,
229
int32_t *resultCapacity)
override
;
230
231
private
:
232
UnicodeString &str;
233
};
234
235
U_NAMESPACE_END
236
237
#endif
/* U_SHOW_CPLUSPLUS_API */
238
239
#endif
// __APPENDABLE_H__
UChar32
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
Definition
umachine.h:449
UBool
int8_t UBool
The ICU boolean type, a signed-byte integer.
Definition
umachine.h:269
uobject.h
C++ API: Common ICU base class UObject.
utypes.h
Basic definitions for ICU, for both C and C++ APIs.
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:315
Generated by
1.17.0