ICU 60.2  60.2
fpositer.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) 2010-2012, International Business Machines
6 * Corporation and others. All Rights Reserved.
7 ********************************************************************************
8 *
9 * File attiter.h
10 *
11 * Modification History:
12 *
13 * Date Name Description
14 * 12/15/2009 dougfelt Created
15 ********************************************************************************
16 */
17 
18 #ifndef FPOSITER_H
19 #define FPOSITER_H
20 
21 #include "unicode/utypes.h"
22 #include "unicode/uobject.h"
23 
29 #if UCONFIG_NO_FORMATTING
30 
32 
33 /*
34  * Allow the declaration of APIs with pointers to FieldPositionIterator
35  * even when formatting is removed from the build.
36  */
37 class FieldPositionIterator;
38 
40 
41 #else
42 
43 #include "unicode/fieldpos.h"
44 #include "unicode/umisc.h"
45 
47 
48 class UVector32;
49 
50 // Forward declaration for number formatting:
51 namespace number {
52 namespace impl {
53 class NumberStringBuilder;
54 }
55 }
56 
63 public:
69 
75 
82 
92 
99  UBool operator!=(const FieldPositionIterator& rhs) const { return !operator==(rhs); }
100 
106  UBool next(FieldPosition& fp);
107 
108 private:
114  void setData(UVector32 *adopt, UErrorCode& status);
115 
116  friend class FieldPositionIteratorHandler;
117  friend class number::impl::NumberStringBuilder;
118 
119  UVector32 *data;
120  int32_t pos;
121 };
122 
124 
125 #endif /* #if !UCONFIG_NO_FORMATTING */
126 
127 #endif // FPOSITER_H
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
C API:misc definitions.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside...
Definition: utypes.h:360
C++ API: FieldPosition identifies the fields in a formatted output.
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition: uversion.h:131
FieldPositionIterator returns the field ids and their start/limit positions generated by a call to Fo...
Definition: fpositer.h:62
UBool operator!=(const FieldPositionIterator &rhs) const
Returns the complement of the result of operator==.
Definition: fpositer.h:99
C++ API: Common ICU base class UObject.
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition: uversion.h:132
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers...
Definition: utypes.h:396
FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...
Definition: fieldpos.h:108
Basic definitions for ICU, for both C and C++ APIs.
UObject is the common ICU "boilerplate" class.
Definition: uobject.h:223
int8_t UBool
The ICU boolean type.
Definition: umachine.h:236