ICU 72.1 72.1
Public Member Functions | Friends
icu::FormattedRelativeDateTime Class Reference

An immutable class containing the result of a relative datetime formatting operation. More...

#include <reldatefmt.h>

Inheritance diagram for icu::FormattedRelativeDateTime:
icu::UMemory icu::FormattedValue

Public Member Functions

 FormattedRelativeDateTime ()
 Default constructor; makes an empty FormattedRelativeDateTime. More...
 
 FormattedRelativeDateTime (FormattedRelativeDateTime &&src) U_NOEXCEPT
 Move constructor: Leaves the source FormattedRelativeDateTime in an undefined state. More...
 
virtual ~FormattedRelativeDateTime () U_OVERRIDE
 Destruct an instance of FormattedRelativeDateTime. More...
 
 FormattedRelativeDateTime (const FormattedRelativeDateTime &)=delete
 Copying not supported; use move constructor instead.
 
FormattedRelativeDateTimeoperator= (const FormattedRelativeDateTime &)=delete
 Copying not supported; use move assignment instead.
 
FormattedRelativeDateTimeoperator= (FormattedRelativeDateTime &&src) U_NOEXCEPT
 Move assignment: Leaves the source FormattedRelativeDateTime in an undefined state. More...
 
UnicodeString toString (UErrorCode &status) const U_OVERRIDE
 Returns the formatted string as a self-contained UnicodeString. More...
 
UnicodeString toTempString (UErrorCode &status) const U_OVERRIDE
 Returns the formatted string as a read-only alias to memory owned by the FormattedValue. More...
 
AppendableappendTo (Appendable &appendable, UErrorCode &status) const U_OVERRIDE
 Appends the formatted string to an Appendable. More...
 
UBool nextPosition (ConstrainedFieldPosition &cfpos, UErrorCode &status) const U_OVERRIDE
 Iterates over field positions in the FormattedValue. More...
 
- Public Member Functions inherited from icu::FormattedValue
virtual ~FormattedValue ()
 
virtual UnicodeString toString (UErrorCode &status) const =0
 Returns the formatted string as a self-contained UnicodeString. More...
 
virtual UnicodeString toTempString (UErrorCode &status) const =0
 Returns the formatted string as a read-only alias to memory owned by the FormattedValue. More...
 
virtual AppendableappendTo (Appendable &appendable, UErrorCode &status) const =0
 Appends the formatted string to an Appendable. More...
 
virtual UBool nextPosition (ConstrainedFieldPosition &cfpos, UErrorCode &status) const =0
 Iterates over field positions in the FormattedValue. More...
 

Friends

class RelativeDateTimeFormatter
 

Detailed Description

An immutable class containing the result of a relative datetime formatting operation.

Instances of this class are immutable and thread-safe.

Not intended for public subclassing.

Stable:
ICU 64

Definition at line 274 of file reldatefmt.h.

Constructor & Destructor Documentation

◆ FormattedRelativeDateTime() [1/2]

icu::FormattedRelativeDateTime::FormattedRelativeDateTime ( )
inline

Default constructor; makes an empty FormattedRelativeDateTime.

Stable:
ICU 64

Definition at line 280 of file reldatefmt.h.

◆ FormattedRelativeDateTime() [2/2]

icu::FormattedRelativeDateTime::FormattedRelativeDateTime ( FormattedRelativeDateTime &&  src)

Move constructor: Leaves the source FormattedRelativeDateTime in an undefined state.

Stable:
ICU 64

◆ ~FormattedRelativeDateTime()

virtual icu::FormattedRelativeDateTime::~FormattedRelativeDateTime ( )
virtual

Destruct an instance of FormattedRelativeDateTime.

Stable:
ICU 64

Member Function Documentation

◆ appendTo()

Appendable & icu::FormattedRelativeDateTime::appendTo ( Appendable appendable,
UErrorCode status 
) const
virtual

Appends the formatted string to an Appendable.

Parameters
appendableThe Appendable to which to append the string output.
statusSet if an error occurs.
Returns
The same Appendable, for chaining.
Stable:
ICU 64
See also
Appendable

Implements icu::FormattedValue.

◆ nextPosition()

UBool icu::FormattedRelativeDateTime::nextPosition ( ConstrainedFieldPosition cfpos,
UErrorCode status 
) const
virtual

Iterates over field positions in the FormattedValue.

This lets you determine the position of specific types of substrings, like a month or a decimal separator.

To loop over all field positions:

ConstrainedFieldPosition cfpos;
while (fmtval.nextPosition(cfpos, status)) {
    // handle the field position; get information from cfpos
}
Parameters
cfposThe object used for iteration state. This can provide constraints to iterate over only one specific category or field; see ConstrainedFieldPosition::constrainCategory and ConstrainedFieldPosition::constrainField.
statusSet if an error occurs.
Returns
true if a new occurrence of the field was found; false otherwise or if an error was set.
Stable:
ICU 64

Implements icu::FormattedValue.

◆ operator=()

FormattedRelativeDateTime & icu::FormattedRelativeDateTime::operator= ( FormattedRelativeDateTime &&  src)

Move assignment: Leaves the source FormattedRelativeDateTime in an undefined state.

Stable:
ICU 64

◆ toString()

UnicodeString icu::FormattedRelativeDateTime::toString ( UErrorCode status) const
virtual

Returns the formatted string as a self-contained UnicodeString.

If you need the string within the current scope only, consider toTempString.

Parameters
statusSet if an error occurs.
Returns
a UnicodeString containing the formatted string.
Stable:
ICU 64

Implements icu::FormattedValue.

◆ toTempString()

UnicodeString icu::FormattedRelativeDateTime::toTempString ( UErrorCode status) const
virtual

Returns the formatted string as a read-only alias to memory owned by the FormattedValue.

The return value is valid only as long as this FormattedValue is present and unchanged in memory. If you need the string outside the current scope, consider toString.

The buffer returned by calling UnicodeString::getBuffer() on the return value is guaranteed to be NUL-terminated.

Parameters
statusSet if an error occurs.
Returns
a temporary UnicodeString containing the formatted string.
Stable:
ICU 64

Implements icu::FormattedValue.

Friends And Related Function Documentation

◆ RelativeDateTimeFormatter

friend class RelativeDateTimeFormatter
friend

Definition at line 325 of file reldatefmt.h.


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