aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/icu/include/unicode/reldatefmt.h
diff options
context:
space:
mode:
authormcheshkov <mcheshkov@yandex-team.ru>2022-02-10 16:46:15 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:46:15 +0300
commite9d19cec64684c9c1e6b0c98297e5b895cf904fe (patch)
tree2768b1223e96a8a0610a93d18425d9647c1123c8 /contrib/libs/icu/include/unicode/reldatefmt.h
parent60040c91ffe701a84689b2c6310ff845e65cff42 (diff)
downloadydb-e9d19cec64684c9c1e6b0c98297e5b895cf904fe.tar.gz
Restoring authorship annotation for <mcheshkov@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/icu/include/unicode/reldatefmt.h')
-rw-r--r--contrib/libs/icu/include/unicode/reldatefmt.h476
1 files changed, 238 insertions, 238 deletions
diff --git a/contrib/libs/icu/include/unicode/reldatefmt.h b/contrib/libs/icu/include/unicode/reldatefmt.h
index d5533bb379..88c870dc9c 100644
--- a/contrib/libs/icu/include/unicode/reldatefmt.h
+++ b/contrib/libs/icu/include/unicode/reldatefmt.h
@@ -1,4 +1,4 @@
-// © 2016 and later: Unicode, Inc. and others.
+// © 2016 and later: Unicode, Inc. and others.
// License & terms of use: http://www.unicode.org/copyright.html
/*
*****************************************************************************
@@ -15,14 +15,14 @@
#define __RELDATEFMT_H
#include "unicode/utypes.h"
-
-#if U_SHOW_CPLUSPLUS_API
-
+
+#if U_SHOW_CPLUSPLUS_API
+
#include "unicode/uobject.h"
#include "unicode/udisplaycontext.h"
#include "unicode/ureldatefmt.h"
#include "unicode/locid.h"
-#include "unicode/formattedvalue.h"
+#include "unicode/formattedvalue.h"
/**
* \file
@@ -169,32 +169,32 @@ typedef enum UDateAbsoluteUnit {
*/
UDAT_ABSOLUTE_NOW,
- /**
- * Quarter
- * @stable ICU 63
- */
- UDAT_ABSOLUTE_QUARTER,
-
-#ifndef U_HIDE_DRAFT_API
- /**
- * Hour
- * @draft ICU 65
- */
- UDAT_ABSOLUTE_HOUR,
-
- /**
- * Minute
- * @draft ICU 65
- */
- UDAT_ABSOLUTE_MINUTE,
-#endif // U_HIDE_DRAFT_API
-
+ /**
+ * Quarter
+ * @stable ICU 63
+ */
+ UDAT_ABSOLUTE_QUARTER,
+
+#ifndef U_HIDE_DRAFT_API
+ /**
+ * Hour
+ * @draft ICU 65
+ */
+ UDAT_ABSOLUTE_HOUR,
+
+ /**
+ * Minute
+ * @draft ICU 65
+ */
+ UDAT_ABSOLUTE_MINUTE,
+#endif // U_HIDE_DRAFT_API
+
#ifndef U_HIDE_DEPRECATED_API
/**
* One more than the highest normal UDateAbsoluteUnit value.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
- UDAT_ABSOLUTE_UNIT_COUNT = UDAT_ABSOLUTE_NOW + 4
+ UDAT_ABSOLUTE_UNIT_COUNT = UDAT_ABSOLUTE_NOW + 4
#endif // U_HIDE_DEPRECATED_API
} UDateAbsoluteUnit;
@@ -254,80 +254,80 @@ typedef enum UDateDirection {
U_NAMESPACE_BEGIN
-class BreakIterator;
+class BreakIterator;
class RelativeDateTimeCacheData;
class SharedNumberFormat;
class SharedPluralRules;
class SharedBreakIterator;
class NumberFormat;
class UnicodeString;
-class FormattedRelativeDateTime;
-class FormattedRelativeDateTimeData;
-
-/**
- * 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
- */
-class U_I18N_API FormattedRelativeDateTime : public UMemory, public FormattedValue {
- public:
- /**
- * Default constructor; makes an empty FormattedRelativeDateTime.
- * @stable ICU 64
- */
- FormattedRelativeDateTime() : fData(nullptr), fErrorCode(U_INVALID_STATE_ERROR) {}
-
- /**
- * Move constructor: Leaves the source FormattedRelativeDateTime in an undefined state.
- * @stable ICU 64
- */
- FormattedRelativeDateTime(FormattedRelativeDateTime&& src) U_NOEXCEPT;
-
- /**
- * Destruct an instance of FormattedRelativeDateTime.
- * @stable ICU 64
- */
- virtual ~FormattedRelativeDateTime() U_OVERRIDE;
-
- /** Copying not supported; use move constructor instead. */
- FormattedRelativeDateTime(const FormattedRelativeDateTime&) = delete;
-
- /** Copying not supported; use move assignment instead. */
- FormattedRelativeDateTime& operator=(const FormattedRelativeDateTime&) = delete;
-
- /**
- * Move assignment: Leaves the source FormattedRelativeDateTime in an undefined state.
- * @stable ICU 64
- */
- FormattedRelativeDateTime& operator=(FormattedRelativeDateTime&& src) U_NOEXCEPT;
-
- /** @copydoc FormattedValue::toString() */
- UnicodeString toString(UErrorCode& status) const U_OVERRIDE;
-
- /** @copydoc FormattedValue::toTempString() */
- UnicodeString toTempString(UErrorCode& status) const U_OVERRIDE;
-
- /** @copydoc FormattedValue::appendTo() */
- Appendable &appendTo(Appendable& appendable, UErrorCode& status) const U_OVERRIDE;
-
- /** @copydoc FormattedValue::nextPosition() */
- UBool nextPosition(ConstrainedFieldPosition& cfpos, UErrorCode& status) const U_OVERRIDE;
-
- private:
- FormattedRelativeDateTimeData *fData;
- UErrorCode fErrorCode;
- explicit FormattedRelativeDateTime(FormattedRelativeDateTimeData *results)
- : fData(results), fErrorCode(U_ZERO_ERROR) {}
- explicit FormattedRelativeDateTime(UErrorCode errorCode)
- : fData(nullptr), fErrorCode(errorCode) {}
- friend class RelativeDateTimeFormatter;
-};
+class FormattedRelativeDateTime;
+class FormattedRelativeDateTimeData;
/**
+ * 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
+ */
+class U_I18N_API FormattedRelativeDateTime : public UMemory, public FormattedValue {
+ public:
+ /**
+ * Default constructor; makes an empty FormattedRelativeDateTime.
+ * @stable ICU 64
+ */
+ FormattedRelativeDateTime() : fData(nullptr), fErrorCode(U_INVALID_STATE_ERROR) {}
+
+ /**
+ * Move constructor: Leaves the source FormattedRelativeDateTime in an undefined state.
+ * @stable ICU 64
+ */
+ FormattedRelativeDateTime(FormattedRelativeDateTime&& src) U_NOEXCEPT;
+
+ /**
+ * Destruct an instance of FormattedRelativeDateTime.
+ * @stable ICU 64
+ */
+ virtual ~FormattedRelativeDateTime() U_OVERRIDE;
+
+ /** Copying not supported; use move constructor instead. */
+ FormattedRelativeDateTime(const FormattedRelativeDateTime&) = delete;
+
+ /** Copying not supported; use move assignment instead. */
+ FormattedRelativeDateTime& operator=(const FormattedRelativeDateTime&) = delete;
+
+ /**
+ * Move assignment: Leaves the source FormattedRelativeDateTime in an undefined state.
+ * @stable ICU 64
+ */
+ FormattedRelativeDateTime& operator=(FormattedRelativeDateTime&& src) U_NOEXCEPT;
+
+ /** @copydoc FormattedValue::toString() */
+ UnicodeString toString(UErrorCode& status) const U_OVERRIDE;
+
+ /** @copydoc FormattedValue::toTempString() */
+ UnicodeString toTempString(UErrorCode& status) const U_OVERRIDE;
+
+ /** @copydoc FormattedValue::appendTo() */
+ Appendable &appendTo(Appendable& appendable, UErrorCode& status) const U_OVERRIDE;
+
+ /** @copydoc FormattedValue::nextPosition() */
+ UBool nextPosition(ConstrainedFieldPosition& cfpos, UErrorCode& status) const U_OVERRIDE;
+
+ private:
+ FormattedRelativeDateTimeData *fData;
+ UErrorCode fErrorCode;
+ explicit FormattedRelativeDateTime(FormattedRelativeDateTimeData *results)
+ : fData(results), fErrorCode(U_ZERO_ERROR) {}
+ explicit FormattedRelativeDateTime(UErrorCode errorCode)
+ : fData(nullptr), fErrorCode(errorCode) {}
+ friend class RelativeDateTimeFormatter;
+};
+
+/**
* Formats simple relative dates. There are two types of relative dates that
* it handles:
* <ul>
@@ -417,7 +417,7 @@ public:
* @param nfToAdopt Constructed object takes ownership of this pointer.
* It is an error for caller to delete this pointer or change its
* contents after calling this constructor.
- * @param status Any error is returned here.
+ * @param status Any error is returned here.
* @stable ICU 53
*/
RelativeDateTimeFormatter(
@@ -435,7 +435,7 @@ public:
* @param style the format style. The UDAT_RELATIVE bit field has no effect.
* @param capitalizationContext A value from UDisplayContext that pertains to
* capitalization.
- * @param status Any error is returned here.
+ * @param status Any error is returned here.
* @stable ICU 54
*/
RelativeDateTimeFormatter(
@@ -467,10 +467,10 @@ public:
/**
* Formats a relative date with a quantity such as "in 5 days" or
* "3 months ago"
- *
- * This method returns a String. To get more information about the
- * formatting result, use formatToValue().
- *
+ *
+ * This method returns a String. To get more information about the
+ * formatting result, use formatToValue().
+ *
* @param quantity The numerical amount e.g 5. This value is formatted
* according to this object's NumberFormat object.
* @param direction NEXT means a future relative date; LAST means a past
@@ -491,34 +491,34 @@ public:
UErrorCode& status) const;
/**
- * Formats a relative date with a quantity such as "in 5 days" or
- * "3 months ago"
- *
- * This method returns a FormattedRelativeDateTime, which exposes more
- * information than the String returned by format().
- *
- * @param quantity The numerical amount e.g 5. This value is formatted
- * according to this object's NumberFormat object.
- * @param direction NEXT means a future relative date; LAST means a past
- * relative date. If direction is anything else, this method sets
- * status to U_ILLEGAL_ARGUMENT_ERROR.
- * @param unit the unit e.g day? month? year?
- * @param status ICU error code returned here.
- * @return The formatted relative datetime
- * @stable ICU 64
- */
- FormattedRelativeDateTime formatToValue(
- double quantity,
- UDateDirection direction,
- UDateRelativeUnit unit,
- UErrorCode& status) const;
-
- /**
+ * Formats a relative date with a quantity such as "in 5 days" or
+ * "3 months ago"
+ *
+ * This method returns a FormattedRelativeDateTime, which exposes more
+ * information than the String returned by format().
+ *
+ * @param quantity The numerical amount e.g 5. This value is formatted
+ * according to this object's NumberFormat object.
+ * @param direction NEXT means a future relative date; LAST means a past
+ * relative date. If direction is anything else, this method sets
+ * status to U_ILLEGAL_ARGUMENT_ERROR.
+ * @param unit the unit e.g day? month? year?
+ * @param status ICU error code returned here.
+ * @return The formatted relative datetime
+ * @stable ICU 64
+ */
+ FormattedRelativeDateTime formatToValue(
+ double quantity,
+ UDateDirection direction,
+ UDateRelativeUnit unit,
+ UErrorCode& status) const;
+
+ /**
* Formats a relative date without a quantity.
- *
- * This method returns a String. To get more information about the
- * formatting result, use formatToValue().
- *
+ *
+ * This method returns a String. To get more information about the
+ * formatting result, use formatToValue().
+ *
* @param direction NEXT, LAST, THIS, etc.
* @param unit e.g SATURDAY, DAY, MONTH
* @param appendTo The string to which the formatted result will be
@@ -536,32 +536,32 @@ public:
UErrorCode& status) const;
/**
- * Formats a relative date without a quantity.
- *
- * This method returns a FormattedRelativeDateTime, which exposes more
- * information than the String returned by format().
- *
- * If the string is not available in the requested locale, the return
- * value will be empty (calling toString will give an empty string).
- *
- * @param direction NEXT, LAST, THIS, etc.
- * @param unit e.g SATURDAY, DAY, MONTH
- * @param status ICU error code returned here.
- * @return The formatted relative datetime
- * @stable ICU 64
- */
- FormattedRelativeDateTime formatToValue(
- UDateDirection direction,
- UDateAbsoluteUnit unit,
- UErrorCode& status) const;
-
- /**
+ * Formats a relative date without a quantity.
+ *
+ * This method returns a FormattedRelativeDateTime, which exposes more
+ * information than the String returned by format().
+ *
+ * If the string is not available in the requested locale, the return
+ * value will be empty (calling toString will give an empty string).
+ *
+ * @param direction NEXT, LAST, THIS, etc.
+ * @param unit e.g SATURDAY, DAY, MONTH
+ * @param status ICU error code returned here.
+ * @return The formatted relative datetime
+ * @stable ICU 64
+ */
+ FormattedRelativeDateTime formatToValue(
+ UDateDirection direction,
+ UDateAbsoluteUnit unit,
+ UErrorCode& status) const;
+
+ /**
* Format a combination of URelativeDateTimeUnit and numeric offset
* using a numeric style, e.g. "1 week ago", "in 1 week",
* "5 weeks ago", "in 5 weeks".
- *
- * This method returns a String. To get more information about the
- * formatting result, use formatNumericToValue().
+ *
+ * This method returns a String. To get more information about the
+ * formatting result, use formatNumericToValue().
*
* @param offset The signed offset for the specified unit. This
* will be formatted according to this object's
@@ -573,7 +573,7 @@ public:
* appended.
* @param status ICU error code returned here.
* @return appendTo
- * @stable ICU 57
+ * @stable ICU 57
*/
UnicodeString& formatNumeric(
double offset,
@@ -583,37 +583,37 @@ public:
/**
* Format a combination of URelativeDateTimeUnit and numeric offset
- * using a numeric style, e.g. "1 week ago", "in 1 week",
- * "5 weeks ago", "in 5 weeks".
- *
- * This method returns a FormattedRelativeDateTime, which exposes more
- * information than the String returned by formatNumeric().
+ * using a numeric style, e.g. "1 week ago", "in 1 week",
+ * "5 weeks ago", "in 5 weeks".
*
- * @param offset The signed offset for the specified unit. This
- * will be formatted according to this object's
- * NumberFormat object.
- * @param unit The unit to use when formatting the relative
- * date, e.g. UDAT_REL_UNIT_WEEK,
- * UDAT_REL_UNIT_FRIDAY.
- * @param status ICU error code returned here.
- * @return The formatted relative datetime
- * @stable ICU 64
- */
- FormattedRelativeDateTime formatNumericToValue(
- double offset,
- URelativeDateTimeUnit unit,
- UErrorCode& status) const;
-
- /**
- * Format a combination of URelativeDateTimeUnit and numeric offset
+ * This method returns a FormattedRelativeDateTime, which exposes more
+ * information than the String returned by formatNumeric().
+ *
+ * @param offset The signed offset for the specified unit. This
+ * will be formatted according to this object's
+ * NumberFormat object.
+ * @param unit The unit to use when formatting the relative
+ * date, e.g. UDAT_REL_UNIT_WEEK,
+ * UDAT_REL_UNIT_FRIDAY.
+ * @param status ICU error code returned here.
+ * @return The formatted relative datetime
+ * @stable ICU 64
+ */
+ FormattedRelativeDateTime formatNumericToValue(
+ double offset,
+ URelativeDateTimeUnit unit,
+ UErrorCode& status) const;
+
+ /**
+ * Format a combination of URelativeDateTimeUnit and numeric offset
* using a text style if possible, e.g. "last week", "this week",
* "next week", "yesterday", "tomorrow". Falls back to numeric
* style if no appropriate text term is available for the specified
* offset in the object's locale.
*
- * This method returns a String. To get more information about the
- * formatting result, use formatToValue().
- *
+ * This method returns a String. To get more information about the
+ * formatting result, use formatToValue().
+ *
* @param offset The signed offset for the specified unit.
* @param unit The unit to use when formatting the relative
* date, e.g. UDAT_REL_UNIT_WEEK,
@@ -622,7 +622,7 @@ public:
* appended.
* @param status ICU error code returned here.
* @return appendTo
- * @stable ICU 57
+ * @stable ICU 57
*/
UnicodeString& format(
double offset,
@@ -631,29 +631,29 @@ public:
UErrorCode& status) const;
/**
- * Format a combination of URelativeDateTimeUnit and numeric offset
- * using a text style if possible, e.g. "last week", "this week",
- * "next week", "yesterday", "tomorrow". Falls back to numeric
- * style if no appropriate text term is available for the specified
- * offset in the object's locale.
- *
- * This method returns a FormattedRelativeDateTime, which exposes more
- * information than the String returned by format().
- *
- * @param offset The signed offset for the specified unit.
- * @param unit The unit to use when formatting the relative
- * date, e.g. UDAT_REL_UNIT_WEEK,
- * UDAT_REL_UNIT_FRIDAY.
- * @param status ICU error code returned here.
- * @return The formatted relative datetime
- * @stable ICU 64
- */
- FormattedRelativeDateTime formatToValue(
- double offset,
- URelativeDateTimeUnit unit,
- UErrorCode& status) const;
-
- /**
+ * Format a combination of URelativeDateTimeUnit and numeric offset
+ * using a text style if possible, e.g. "last week", "this week",
+ * "next week", "yesterday", "tomorrow". Falls back to numeric
+ * style if no appropriate text term is available for the specified
+ * offset in the object's locale.
+ *
+ * This method returns a FormattedRelativeDateTime, which exposes more
+ * information than the String returned by format().
+ *
+ * @param offset The signed offset for the specified unit.
+ * @param unit The unit to use when formatting the relative
+ * date, e.g. UDAT_REL_UNIT_WEEK,
+ * UDAT_REL_UNIT_FRIDAY.
+ * @param status ICU error code returned here.
+ * @return The formatted relative datetime
+ * @stable ICU 64
+ */
+ FormattedRelativeDateTime formatToValue(
+ double offset,
+ URelativeDateTimeUnit unit,
+ UErrorCode& status) const;
+
+ /**
* Combines a relative date string and a time string in this object's
* locale. This is done with the same date-time separator used for the
* default calendar in this locale.
@@ -704,50 +704,50 @@ private:
NumberFormat *nfToAdopt,
BreakIterator *brkIter,
UErrorCode &status);
- UnicodeString& adjustForContext(UnicodeString &) const;
- UBool checkNoAdjustForContext(UErrorCode& status) const;
-
- template<typename F, typename... Args>
- UnicodeString& doFormat(
- F callback,
- UnicodeString& appendTo,
- UErrorCode& status,
- Args... args) const;
-
- template<typename F, typename... Args>
- FormattedRelativeDateTime doFormatToValue(
- F callback,
- UErrorCode& status,
- Args... args) const;
-
- void formatImpl(
- double quantity,
- UDateDirection direction,
- UDateRelativeUnit unit,
- FormattedRelativeDateTimeData& output,
- UErrorCode& status) const;
- void formatAbsoluteImpl(
- UDateDirection direction,
- UDateAbsoluteUnit unit,
- FormattedRelativeDateTimeData& output,
- UErrorCode& status) const;
- void formatNumericImpl(
- double offset,
- URelativeDateTimeUnit unit,
- FormattedRelativeDateTimeData& output,
- UErrorCode& status) const;
- void formatRelativeImpl(
- double offset,
- URelativeDateTimeUnit unit,
- FormattedRelativeDateTimeData& output,
- UErrorCode& status) const;
+ UnicodeString& adjustForContext(UnicodeString &) const;
+ UBool checkNoAdjustForContext(UErrorCode& status) const;
+
+ template<typename F, typename... Args>
+ UnicodeString& doFormat(
+ F callback,
+ UnicodeString& appendTo,
+ UErrorCode& status,
+ Args... args) const;
+
+ template<typename F, typename... Args>
+ FormattedRelativeDateTime doFormatToValue(
+ F callback,
+ UErrorCode& status,
+ Args... args) const;
+
+ void formatImpl(
+ double quantity,
+ UDateDirection direction,
+ UDateRelativeUnit unit,
+ FormattedRelativeDateTimeData& output,
+ UErrorCode& status) const;
+ void formatAbsoluteImpl(
+ UDateDirection direction,
+ UDateAbsoluteUnit unit,
+ FormattedRelativeDateTimeData& output,
+ UErrorCode& status) const;
+ void formatNumericImpl(
+ double offset,
+ URelativeDateTimeUnit unit,
+ FormattedRelativeDateTimeData& output,
+ UErrorCode& status) const;
+ void formatRelativeImpl(
+ double offset,
+ URelativeDateTimeUnit unit,
+ FormattedRelativeDateTimeData& output,
+ UErrorCode& status) const;
};
U_NAMESPACE_END
#endif /* !UCONFIG_NO_BREAK_ITERATION */
#endif /* !UCONFIG_NO_FORMATTING */
-
-#endif /* U_SHOW_CPLUSPLUS_API */
-
+
+#endif /* U_SHOW_CPLUSPLUS_API */
+
#endif /* __RELDATEFMT_H */