Added ICU library
This commit is contained in:
117
project/jni/icuuc/include/unicode/fpositer.h
Normal file
117
project/jni/icuuc/include/unicode/fpositer.h
Normal file
@@ -0,0 +1,117 @@
|
||||
/*
|
||||
********************************************************************************
|
||||
* Copyright (C) 2010-2012, International Business Machines
|
||||
* Corporation and others. All Rights Reserved.
|
||||
********************************************************************************
|
||||
*
|
||||
* File attiter.h
|
||||
*
|
||||
* Modification History:
|
||||
*
|
||||
* Date Name Description
|
||||
* 12/15/2009 dougfelt Created
|
||||
********************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef FPOSITER_H
|
||||
#define FPOSITER_H
|
||||
|
||||
#include "unicode/utypes.h"
|
||||
#include "unicode/uobject.h"
|
||||
|
||||
/**
|
||||
* \file
|
||||
* \brief C++ API: FieldPosition Iterator.
|
||||
*/
|
||||
|
||||
#if UCONFIG_NO_FORMATTING
|
||||
|
||||
U_NAMESPACE_BEGIN
|
||||
|
||||
/*
|
||||
* Allow the declaration of APIs with pointers to FieldPositionIterator
|
||||
* even when formatting is removed from the build.
|
||||
*/
|
||||
class FieldPositionIterator;
|
||||
|
||||
U_NAMESPACE_END
|
||||
|
||||
#else
|
||||
|
||||
#include "unicode/fieldpos.h"
|
||||
#include "unicode/umisc.h"
|
||||
|
||||
U_NAMESPACE_BEGIN
|
||||
|
||||
class UVector32;
|
||||
|
||||
/**
|
||||
* FieldPositionIterator returns the field ids and their start/limit positions generated
|
||||
* by a call to Format::format. See Format, NumberFormat, DecimalFormat.
|
||||
* @stable ICU 4.4
|
||||
*/
|
||||
class U_I18N_API FieldPositionIterator : public UObject {
|
||||
public:
|
||||
/**
|
||||
* Destructor.
|
||||
* @stable ICU 4.4
|
||||
*/
|
||||
~FieldPositionIterator();
|
||||
|
||||
/**
|
||||
* Constructs a new, empty iterator.
|
||||
* @stable ICU 4.4
|
||||
*/
|
||||
FieldPositionIterator(void);
|
||||
|
||||
/**
|
||||
* Copy constructor. If the copy failed for some reason, the new iterator will
|
||||
* be empty.
|
||||
* @stable ICU 4.4
|
||||
*/
|
||||
FieldPositionIterator(const FieldPositionIterator&);
|
||||
|
||||
/**
|
||||
* Return true if another object is semantically equal to this
|
||||
* one.
|
||||
* <p>
|
||||
* Return true if this FieldPositionIterator is at the same position in an
|
||||
* equal array of run values.
|
||||
* @stable ICU 4.4
|
||||
*/
|
||||
UBool operator==(const FieldPositionIterator&) const;
|
||||
|
||||
/**
|
||||
* Returns the complement of the result of operator==
|
||||
* @param rhs The FieldPositionIterator to be compared for inequality
|
||||
* @return the complement of the result of operator==
|
||||
* @stable ICU 4.4
|
||||
*/
|
||||
UBool operator!=(const FieldPositionIterator& rhs) const { return !operator==(rhs); }
|
||||
|
||||
/**
|
||||
* If the current position is valid, updates the FieldPosition values, advances the iterator,
|
||||
* and returns TRUE, otherwise returns FALSE.
|
||||
* @stable ICU 4.4
|
||||
*/
|
||||
UBool next(FieldPosition& fp);
|
||||
|
||||
private:
|
||||
friend class FieldPositionIteratorHandler;
|
||||
|
||||
/**
|
||||
* Sets the data used by the iterator, and resets the position.
|
||||
* Returns U_ILLEGAL_ARGUMENT_ERROR in status if the data is not valid
|
||||
* (length is not a multiple of 3, or start >= limit for any run).
|
||||
*/
|
||||
void setData(UVector32 *adopt, UErrorCode& status);
|
||||
|
||||
UVector32 *data;
|
||||
int32_t pos;
|
||||
};
|
||||
|
||||
U_NAMESPACE_END
|
||||
|
||||
#endif /* #if !UCONFIG_NO_FORMATTING */
|
||||
|
||||
#endif // FPOSITER_H
|
||||
Reference in New Issue
Block a user