Index: public/i18n/unicode/tmutfmt.h |
diff --git a/public/i18n/unicode/tmutfmt.h b/public/i18n/unicode/tmutfmt.h |
deleted file mode 100644 |
index 540be3f7eb6dbe8a1f9ac9dcceec91fda6df3714..0000000000000000000000000000000000000000 |
--- a/public/i18n/unicode/tmutfmt.h |
+++ /dev/null |
@@ -1,272 +0,0 @@ |
-/* |
- ******************************************************************************* |
- * Copyright (C) 2010, Google, International Business Machines Corporation and * |
- * others. All Rights Reserved. * |
- ******************************************************************************* |
- */ |
- |
-#ifndef __TMUTFMT_H__ |
-#define __TMUTFMT_H__ |
- |
-#include "unicode/utypes.h" |
- |
-/** |
- * \file |
- * \brief C++ API: Format and parse duration in single time unit |
- */ |
- |
- |
-#if !UCONFIG_NO_FORMATTING |
- |
-#include "unicode/unistr.h" |
-#include "unicode/tmunit.h" |
-#include "unicode/tmutamt.h" |
-#include "unicode/measfmt.h" |
-#include "unicode/numfmt.h" |
-#include "unicode/plurrule.h" |
- |
-/** |
- * @internal ICU 4.2 |
- */ |
- |
-union UHashTok; |
- |
-U_NAMESPACE_BEGIN |
- |
-class Hashtable; |
- |
- |
-/** |
- * Format or parse a TimeUnitAmount, using plural rules for the units where available. |
- * |
- * <P> |
- * Code Sample: |
- * <pre> |
- * // create time unit amount instance - a combination of Number and time unit |
- * UErrorCode status = U_ZERO_ERROR; |
- * TimeUnitAmount* source = new TimeUnitAmount(2, TimeUnit::UTIMEUNIT_YEAR, status); |
- * // create time unit format instance |
- * TimeUnitFormat* format = new TimeUnitFormat(Locale("en"), status); |
- * // format a time unit amount |
- * UnicodeString formatted; |
- * Formattable formattable; |
- * if (U_SUCCESS(status)) { |
- * formattable.adoptObject(source); |
- * formatted = ((Format*)format)->format(formattable, formatted, status); |
- * Formattable result; |
- * ((Format*)format)->parseObject(formatted, result, status); |
- * if (U_SUCCESS(status)) { |
- * assert (result == formattable); |
- * } |
- * } |
- * </pre> |
- * |
- * <P> |
- * @see TimeUnitAmount |
- * @see TimeUnitFormat |
- * @draft ICU 4.2 |
- */ |
-class U_I18N_API TimeUnitFormat: public MeasureFormat { |
-public: |
- |
- /** |
- * Constants for various styles. |
- * There are 2 styles: full name and abbreviated name. |
- * For example, for English, the full name for hour duration is "3 hours", |
- * and the abbreviated name is "3 hrs". |
- * @draft ICU 4.2 |
- */ |
- enum EStyle { |
- kFull = 0, |
- kAbbreviate = 1, |
- kTotal = kAbbreviate + 1 |
- }; |
- |
- /** |
- * Create TimeUnitFormat with default locale, and full name style. |
- * Use setLocale and/or setFormat to modify. |
- * @stable ICU 4.2 |
- */ |
- TimeUnitFormat(UErrorCode& status); |
- |
- /** |
- * Create TimeUnitFormat given locale, and full name style. |
- * @stable ICU 4.2 |
- */ |
- TimeUnitFormat(const Locale& locale, UErrorCode& status); |
- |
- /** |
- * Create TimeUnitFormat given locale and style. |
- * @draft ICU 4.2 |
- */ |
- TimeUnitFormat(const Locale& locale, EStyle style, UErrorCode& status); |
- |
- /** |
- * Copy constructor. |
- * @stable ICU 4.2 |
- */ |
- TimeUnitFormat(const TimeUnitFormat&); |
- |
- /** |
- * deconstructor |
- * @stable ICU 4.2 |
- */ |
- virtual ~TimeUnitFormat(); |
- |
- /** |
- * Clone this Format object polymorphically. The caller owns the result and |
- * should delete it when done. |
- * @return A copy of the object. |
- * @stable ICU 4.2 |
- */ |
- virtual Format* clone(void) const; |
- |
- /** |
- * Assignment operator |
- * @stable ICU 4.2 |
- */ |
- TimeUnitFormat& operator=(const TimeUnitFormat& other); |
- |
- |
- /** |
- * Return true if the given Format objects are semantically equal. Objects |
- * of different subclasses are considered unequal. |
- * @param other the object to be compared with. |
- * @return true if the given Format objects are semantically equal. |
- * @stable ICU 4.2 |
- */ |
- virtual UBool operator==(const Format& other) const; |
- |
- /** |
- * Return true if the given Format objects are not semantically equal. |
- * Objects of different subclasses are considered unequal. |
- * @param other the object to be compared with. |
- * @return true if the given Format objects are not semantically equal. |
- * @stable ICU 4.2 |
- */ |
- UBool operator!=(const Format& other) const; |
- |
- /** |
- * Set the locale used for formatting or parsing. |
- * @param locale the locale to be set |
- * @param status output param set to success/failure code on exit |
- * @stable ICU 4.2 |
- */ |
- void setLocale(const Locale& locale, UErrorCode& status); |
- |
- |
- /** |
- * Set the number format used for formatting or parsing. |
- * @param format the number formatter to be set |
- * @param status output param set to success/failure code on exit |
- * @stable ICU 4.2 |
- */ |
- void setNumberFormat(const NumberFormat& format, UErrorCode& status); |
- |
- |
- using MeasureFormat::format; |
- |
- /** |
- * Format a TimeUnitAmount. |
- * If the formattable object is not a time unit amount object, |
- * or the number in time unit amount is not a double type or long type |
- * numeric, it returns a failing status: U_ILLEGAL_ARGUMENT_ERROR. |
- * @see Format#format(const Formattable&, UnicodeString&, FieldPosition&, UErrorCode&) const |
- * @stable ICU 4.2 |
- */ |
- virtual UnicodeString& format(const Formattable& obj, |
- UnicodeString& toAppendTo, |
- FieldPosition& pos, |
- UErrorCode& status) const; |
- |
- /** |
- * Parse a TimeUnitAmount. |
- * @see Format#parseObject(const UnicodeString&, Formattable&, ParsePosition&) const; |
- * @stable ICU 4.2 |
- */ |
- virtual void parseObject(const UnicodeString& source, |
- Formattable& result, |
- ParsePosition& pos) const; |
- |
- /** |
- * Return the class ID for this class. This is useful only for comparing to |
- * a return value from getDynamicClassID(). For example: |
- * <pre> |
- * . Base* polymorphic_pointer = createPolymorphicObject(); |
- * . if (polymorphic_pointer->getDynamicClassID() == |
- * . erived::getStaticClassID()) ... |
- * </pre> |
- * @return The class ID for all objects of this class. |
- * @stable ICU 4.2 |
- */ |
- static UClassID U_EXPORT2 getStaticClassID(void); |
- |
- /** |
- * Returns a unique class ID POLYMORPHICALLY. Pure virtual override. This |
- * method is to implement a simple version of RTTI, since not all C++ |
- * compilers support genuine RTTI. Polymorphic operator==() and clone() |
- * methods call this method. |
- * |
- * @return The class ID for this object. All objects of a |
- * given class have the same class ID. Objects of |
- * other classes have different class IDs. |
- * @stable ICU 4.2 |
- */ |
- virtual UClassID getDynamicClassID(void) const; |
- |
-private: |
- NumberFormat* fNumberFormat; |
- Locale fLocale; |
- Hashtable* fTimeUnitToCountToPatterns[TimeUnit::UTIMEUNIT_FIELD_COUNT]; |
- PluralRules* fPluralRules; |
- EStyle fStyle; |
- |
- void create(const Locale& locale, EStyle style, UErrorCode& status); |
- |
- // it might actually be simpler to make them Decimal Formats later. |
- // initialize all private data members |
- void setup(UErrorCode& status); |
- |
- // initialize data member without fill in data for fTimeUnitToCountToPattern |
- void initDataMembers(UErrorCode& status); |
- |
- // initialize fTimeUnitToCountToPatterns from current locale's resource. |
- void readFromCurrentLocale(EStyle style, const char* key, UErrorCode& status); |
- |
- // check completeness of fTimeUnitToCountToPatterns against all time units, |
- // and all plural rules, fill in fallback as necessary. |
- void checkConsistency(EStyle style, const char* key, UErrorCode& status); |
- |
- // fill in fTimeUnitToCountToPatterns from locale fall-back chain |
- void searchInLocaleChain(EStyle style, const char* key, const char* localeName, |
- TimeUnit::UTimeUnitFields field, const char*, |
- const char*, Hashtable*, UErrorCode&); |
- |
- // initialize hash table |
- Hashtable* initHash(UErrorCode& status); |
- |
- // delete hash table |
- void deleteHash(Hashtable* htable); |
- |
- // copy hash table |
- void copyHash(const Hashtable* source, Hashtable* target, UErrorCode& status); |
- // get time unit name, such as "year", from time unit field enum, such as |
- // UTIMEUNIT_YEAR. |
- static const char* getTimeUnitName(TimeUnit::UTimeUnitFields field, UErrorCode& status); |
-}; |
- |
- |
- |
-inline UBool |
-TimeUnitFormat::operator!=(const Format& other) const { |
- return !operator==(other); |
-} |
- |
- |
- |
-U_NAMESPACE_END |
- |
-#endif /* #if !UCONFIG_NO_FORMATTING */ |
- |
-#endif // __TMUTFMT_H__ |
-//eof |