ICU 72.1 72.1
Public Member Functions | Static Public Member Functions | Friends
icu::TimeUnitFormat Class Reference

Format or parse a TimeUnitAmount, using plural rules for the units where available. More...

#include <tmutfmt.h>

Inheritance diagram for icu::TimeUnitFormat:
icu::MeasureFormat icu::Format icu::UObject icu::UMemory

Public Member Functions

 TimeUnitFormat (UErrorCode &status)
 Create TimeUnitFormat with default locale, and full name style. More...
 
 TimeUnitFormat (const Locale &locale, UErrorCode &status)
 Create TimeUnitFormat given locale, and full name style. More...
 
 TimeUnitFormat (const Locale &locale, UTimeUnitFormatStyle style, UErrorCode &status)
 Create TimeUnitFormat given locale and style. More...
 
 TimeUnitFormat (const TimeUnitFormat &)
 Copy constructor. More...
 
virtual ~TimeUnitFormat ()
 deconstructor More...
 
virtual TimeUnitFormatclone () const override
 Clone this Format object polymorphically. More...
 
TimeUnitFormatoperator= (const TimeUnitFormat &other)
 Assignment operator. More...
 
void setLocale (const Locale &locale, UErrorCode &status)
 Set the locale used for formatting or parsing. More...
 
void setNumberFormat (const NumberFormat &format, UErrorCode &status)
 Set the number format used for formatting or parsing. More...
 
virtual void parseObject (const UnicodeString &source, Formattable &result, ParsePosition &pos) const override
 Parse a TimeUnitAmount. More...
 
virtual UClassID getDynamicClassID (void) const override
 Returns a unique class ID POLYMORPHICALLY. More...
 
- Public Member Functions inherited from icu::MeasureFormat
 MeasureFormat (const Locale &locale, UMeasureFormatWidth width, UErrorCode &status)
 Constructor. More...
 
 MeasureFormat (const Locale &locale, UMeasureFormatWidth width, NumberFormat *nfToAdopt, UErrorCode &status)
 Constructor. More...
 
 MeasureFormat (const MeasureFormat &other)
 Copy constructor. More...
 
MeasureFormatoperator= (const MeasureFormat &rhs)
 Assignment operator. More...
 
virtual ~MeasureFormat ()
 Destructor. More...
 
virtual bool operator== (const Format &other) const override
 Return true if given Format objects are semantically equal. More...
 
virtual MeasureFormatclone () const override
 Clones this object polymorphically. More...
 
virtual UnicodeStringformat (const Formattable &obj, UnicodeString &appendTo, FieldPosition &pos, UErrorCode &status) const override
 Formats object to produce a string. More...
 
virtual void parseObject (const UnicodeString &source, Formattable &reslt, ParsePosition &pos) const override
 Parse a string to produce an object. More...
 
UnicodeStringformatMeasures (const Measure *measures, int32_t measureCount, UnicodeString &appendTo, FieldPosition &pos, UErrorCode &status) const
 Formats measure objects to produce a string. More...
 
UnicodeStringformatMeasurePerUnit (const Measure &measure, const MeasureUnit &perUnit, UnicodeString &appendTo, FieldPosition &pos, UErrorCode &status) const
 Formats a single measure per unit. More...
 
UnicodeString getUnitDisplayName (const MeasureUnit &unit, UErrorCode &status) const
 Gets the display name of the specified MeasureUnit corresponding to the current locale and format width. More...
 
virtual UClassID getDynamicClassID (void) const override
 Returns a unique class ID POLYMORPHICALLY. More...
 
virtual void parseObject (const UnicodeString &source, Formattable &result, ParsePosition &parse_pos) const=0
 Parse a string to produce an object. More...
 
void parseObject (const UnicodeString &source, Formattable &result, UErrorCode &status) const
 Parses a string to produce an object. More...
 
UnicodeStringformat (const Formattable &obj, UnicodeString &appendTo, UErrorCode &status) const
 Formats an object to produce a string. More...
 
virtual UnicodeStringformat (const Formattable &obj, UnicodeString &appendTo, FieldPosition &pos, UErrorCode &status) const=0
 Format an object to produce a string. More...
 
virtual UnicodeStringformat (const Formattable &obj, UnicodeString &appendTo, FieldPositionIterator *posIter, UErrorCode &status) const
 Format an object to produce a string. More...
 
- Public Member Functions inherited from icu::Format
virtual ~Format ()
 Destructor. More...
 
virtual bool operator== (const Format &other) const =0
 Return true if the given Format objects are semantically equal. More...
 
bool operator!= (const Format &other) const
 Return true if the given Format objects are not semantically equal. More...
 
virtual Formatclone () const =0
 Clone this object polymorphically. More...
 
UnicodeStringformat (const Formattable &obj, UnicodeString &appendTo, UErrorCode &status) const
 Formats an object to produce a string. More...
 
virtual UnicodeStringformat (const Formattable &obj, UnicodeString &appendTo, FieldPosition &pos, UErrorCode &status) const =0
 Format an object to produce a string. More...
 
virtual UnicodeStringformat (const Formattable &obj, UnicodeString &appendTo, FieldPositionIterator *posIter, UErrorCode &status) const
 Format an object to produce a string. More...
 
virtual void parseObject (const UnicodeString &source, Formattable &result, ParsePosition &parse_pos) const =0
 Parse a string to produce an object. More...
 
void parseObject (const UnicodeString &source, Formattable &result, UErrorCode &status) const
 Parses a string to produce an object. More...
 
Locale getLocale (ULocDataLocaleType type, UErrorCode &status) const
 Get the locale for this format object. More...
 
const char * getLocaleID (ULocDataLocaleType type, UErrorCode &status) const
 Get the locale for this format object. More...
 
- Public Member Functions inherited from icu::UObject
virtual ~UObject ()
 Destructor. More...
 
virtual UClassID getDynamicClassID () const
 ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class. More...
 

Static Public Member Functions

static UClassID getStaticClassID (void)
 Return the class ID for this class. More...
 
- Static Public Member Functions inherited from icu::MeasureFormat
static MeasureFormatcreateCurrencyFormat (const Locale &locale, UErrorCode &ec)
 Return a formatter for CurrencyAmount objects in the given locale. More...
 
static MeasureFormatcreateCurrencyFormat (UErrorCode &ec)
 Return a formatter for CurrencyAmount objects in the default locale. More...
 
static UClassID getStaticClassID (void)
 Return the class ID for this class. More...
 

Friends

struct TimeUnitFormatReadSink
 

Additional Inherited Members

- Protected Member Functions inherited from icu::MeasureFormat
 MeasureFormat ()
 Default constructor. More...
 
void initMeasureFormat (const Locale &locale, UMeasureFormatWidth width, NumberFormat *nfToAdopt, UErrorCode &status)
 ICU use only. More...
 
UBool setMeasureFormatLocale (const Locale &locale, UErrorCode &status)
 ICU use only. More...
 
void adoptNumberFormat (NumberFormat *nfToAdopt, UErrorCode &status)
 ICU use only. More...
 
const NumberFormatgetNumberFormatInternal () const
 ICU use only. More...
 
const NumberFormatgetCurrencyFormatInternal () const
 ICU use only. More...
 
const PluralRulesgetPluralRules () const
 ICU use only. More...
 
Locale getLocale (UErrorCode &status) const
 ICU use only. More...
 
const char * getLocaleID (UErrorCode &status) const
 ICU use only. More...
 
- Protected Member Functions inherited from icu::Format
void setLocaleIDs (const char *valid, const char *actual)
 
 Format ()
 Default constructor for subclass use only. More...
 
 Format (const Format &)
 
Formatoperator= (const Format &)
 
- Static Protected Member Functions inherited from icu::Format
static void syntaxError (const UnicodeString &pattern, int32_t pos, UParseError &parseError)
 Simple function for initializing a UParseError from a UnicodeString. More...
 

Detailed Description

Format or parse a TimeUnitAmount, using plural rules for the units where available.

Code Sample:

  // 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);
      }
  }
See also
TimeUnitAmount
TimeUnitFormat
Deprecated:
ICU 53 Use the MeasureFormat class instead.

Definition at line 89 of file tmutfmt.h.

Constructor & Destructor Documentation

◆ TimeUnitFormat() [1/4]

icu::TimeUnitFormat::TimeUnitFormat ( UErrorCode status)

Create TimeUnitFormat with default locale, and full name style.

Use setLocale and/or setFormat to modify.

Deprecated:
ICU 53

◆ TimeUnitFormat() [2/4]

icu::TimeUnitFormat::TimeUnitFormat ( const Locale locale,
UErrorCode status 
)

Create TimeUnitFormat given locale, and full name style.

Deprecated:
ICU 53

◆ TimeUnitFormat() [3/4]

icu::TimeUnitFormat::TimeUnitFormat ( const Locale locale,
UTimeUnitFormatStyle  style,
UErrorCode status 
)

Create TimeUnitFormat given locale and style.

Deprecated:
ICU 53

◆ TimeUnitFormat() [4/4]

icu::TimeUnitFormat::TimeUnitFormat ( const TimeUnitFormat )

Copy constructor.

Deprecated:
ICU 53

◆ ~TimeUnitFormat()

virtual icu::TimeUnitFormat::~TimeUnitFormat ( )
virtual

deconstructor

Deprecated:
ICU 53

Member Function Documentation

◆ clone()

virtual TimeUnitFormat * icu::TimeUnitFormat::clone ( ) const
overridevirtual

Clone this Format object polymorphically.

The caller owns the result and should delete it when done.

Returns
A copy of the object.
Deprecated:
ICU 53

Reimplemented from icu::MeasureFormat.

◆ getDynamicClassID()

virtual UClassID icu::TimeUnitFormat::getDynamicClassID ( void  ) const
overridevirtual

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.

Returns
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.
Deprecated:
ICU 53

Reimplemented from icu::MeasureFormat.

◆ getStaticClassID()

static UClassID icu::TimeUnitFormat::getStaticClassID ( void  )
static

Return the class ID for this class.

This is useful only for comparing to a return value from getDynamicClassID(). For example:

.   Base* polymorphic_pointer = createPolymorphicObject();
.   if (polymorphic_pointer->getDynamicClassID() ==
.       erived::getStaticClassID()) ...
Returns
The class ID for all objects of this class.
Deprecated:
ICU 53

◆ operator=()

TimeUnitFormat & icu::TimeUnitFormat::operator= ( const TimeUnitFormat other)

Assignment operator.

Deprecated:
ICU 53

◆ parseObject()

virtual void icu::TimeUnitFormat::parseObject ( const UnicodeString source,
Formattable result,
ParsePosition pos 
) const
overridevirtual

◆ setLocale()

void icu::TimeUnitFormat::setLocale ( const Locale locale,
UErrorCode status 
)

Set the locale used for formatting or parsing.

Parameters
localethe locale to be set
statusoutput param set to success/failure code on exit
Deprecated:
ICU 53

◆ setNumberFormat()

void icu::TimeUnitFormat::setNumberFormat ( const NumberFormat format,
UErrorCode status 
)

Set the number format used for formatting or parsing.

Parameters
formatthe number formatter to be set
statusoutput param set to success/failure code on exit
Deprecated:
ICU 53

Friends And Related Function Documentation

◆ TimeUnitFormatReadSink

friend struct TimeUnitFormatReadSink
friend

Definition at line 227 of file tmutfmt.h.


The documentation for this class was generated from the following file: