ICU 51.2
51.2
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
common
unicode
listformatter.h
Go to the documentation of this file.
1
/*
2
*******************************************************************************
3
*
4
* Copyright (C) 2012-2013, International Business Machines
5
* Corporation and others. All Rights Reserved.
6
*
7
*******************************************************************************
8
* file name: listformatter.h
9
* encoding: US-ASCII
10
* tab size: 8 (not used)
11
* indentation:4
12
*
13
* created on: 20120426
14
* created by: Umesh P. Nair
15
*/
16
17
#ifndef __LISTFORMATTER_H__
18
#define __LISTFORMATTER_H__
19
20
#include "
unicode/utypes.h
"
21
22
#ifndef U_HIDE_DRAFT_API
23
24
#include "
unicode/unistr.h
"
25
#include "
unicode/locid.h
"
26
27
U_NAMESPACE_BEGIN
28
30
class
Hashtable;
31
33
struct
ListFormatData
:
public
UMemory
{
34
UnicodeString
twoPattern;
35
UnicodeString
startPattern;
36
UnicodeString
middlePattern;
37
UnicodeString
endPattern;
38
39
ListFormatData
(
const
UnicodeString
& two,
const
UnicodeString
& start,
const
UnicodeString
& middle,
const
UnicodeString
& end) :
40
twoPattern(two), startPattern(start), middlePattern(middle), endPattern(end) {}
41
};
42
43
60
class
U_COMMON_API
ListFormatter
:
public
UObject
{
61
62
public
:
71
static
ListFormatter
* createInstance(
UErrorCode
& errorCode);
72
82
static
ListFormatter
* createInstance(
const
Locale
& locale,
UErrorCode
& errorCode);
83
84
90
virtual
~
ListFormatter
();
91
92
103
UnicodeString
& format(
const
UnicodeString
items[], int32_t n_items,
104
UnicodeString
& appendTo,
UErrorCode
& errorCode)
const
;
105
109
ListFormatter
(
const
ListFormatData
& listFormatterData);
110
111
private
:
112
static
void
initializeHash(
UErrorCode
& errorCode);
113
static
const
ListFormatData
* getListFormatData(
const
Locale
& locale,
UErrorCode
& errorCode);
114
115
ListFormatter
();
116
ListFormatter
(
const
ListFormatter
&);
117
118
ListFormatter
& operator = (
const
ListFormatter
&);
119
void
addNewString(
const
UnicodeString
& pattern,
UnicodeString
& originalString,
120
const
UnicodeString
& newString,
UErrorCode
& errorCode)
const
;
121
122
const
ListFormatData
& data;
123
};
124
125
U_NAMESPACE_END
126
127
#endif
/* U_HIDE_DRAFT_API */
128
#endif
Generated on Thu May 23 2013 00:42:33 for ICU 51.2 by
1.8.1.2