00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef FPOSITER_H
00019 #define FPOSITER_H
00020
00021 #include "unicode/utypes.h"
00022
00023 #if U_SHOW_CPLUSPLUS_API
00024
00025 #include "unicode/uobject.h"
00026
00032 #if UCONFIG_NO_FORMATTING
00033
00034 U_NAMESPACE_BEGIN
00035
00036
00037
00038
00039
00040 class FieldPositionIterator;
00041
00042 U_NAMESPACE_END
00043
00044 #else
00045
00046 #include "unicode/fieldpos.h"
00047 #include "unicode/umisc.h"
00048
00049 U_NAMESPACE_BEGIN
00050
00051 class UVector32;
00052
00058 class U_I18N_API FieldPositionIterator : public UObject {
00059 public:
00064 ~FieldPositionIterator();
00065
00070 FieldPositionIterator(void);
00071
00077 FieldPositionIterator(const FieldPositionIterator&);
00078
00087 UBool operator==(const FieldPositionIterator&) const;
00088
00095 UBool operator!=(const FieldPositionIterator& rhs) const { return !operator==(rhs); }
00096
00102 UBool next(FieldPosition& fp);
00103
00104 private:
00110 void setData(UVector32 *adopt, UErrorCode& status);
00111
00112 friend class FieldPositionIteratorHandler;
00113
00114 UVector32 *data;
00115 int32_t pos;
00116 };
00117
00118 U_NAMESPACE_END
00119
00120 #endif
00121
00122 #endif
00123
00124 #endif // FPOSITER_H