aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/icu/i18n/formattedvalue.cpp
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/i18n/formattedvalue.cpp
parent60040c91ffe701a84689b2c6310ff845e65cff42 (diff)
downloadydb-e9d19cec64684c9c1e6b0c98297e5b895cf904fe.tar.gz
Restoring authorship annotation for <mcheshkov@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'contrib/libs/icu/i18n/formattedvalue.cpp')
-rw-r--r--contrib/libs/icu/i18n/formattedvalue.cpp464
1 files changed, 232 insertions, 232 deletions
diff --git a/contrib/libs/icu/i18n/formattedvalue.cpp b/contrib/libs/icu/i18n/formattedvalue.cpp
index e2c9c42fc8..aada0f903f 100644
--- a/contrib/libs/icu/i18n/formattedvalue.cpp
+++ b/contrib/libs/icu/i18n/formattedvalue.cpp
@@ -1,232 +1,232 @@
-// © 2018 and later: Unicode, Inc. and others.
-// License & terms of use: http://www.unicode.org/copyright.html
-
-#include "unicode/utypes.h"
-
-#if !UCONFIG_NO_FORMATTING
-
-#include "unicode/formattedvalue.h"
-#include "formattedval_impl.h"
-#include "capi_helper.h"
-
-U_NAMESPACE_BEGIN
-
-
-ConstrainedFieldPosition::ConstrainedFieldPosition() {}
-
-ConstrainedFieldPosition::~ConstrainedFieldPosition() {}
-
-void ConstrainedFieldPosition::reset() {
- fContext = 0LL;
- fField = 0;
- fStart = 0;
- fLimit = 0;
- fConstraint = UCFPOS_CONSTRAINT_NONE;
- fCategory = UFIELD_CATEGORY_UNDEFINED;
-}
-
-void ConstrainedFieldPosition::constrainCategory(int32_t category) {
- fConstraint = UCFPOS_CONSTRAINT_CATEGORY;
- fCategory = category;
-}
-
-void ConstrainedFieldPosition::constrainField(int32_t category, int32_t field) {
- fConstraint = UCFPOS_CONSTRAINT_FIELD;
- fCategory = category;
- fField = field;
-}
-
-void ConstrainedFieldPosition::setInt64IterationContext(int64_t context) {
- fContext = context;
-}
-
-UBool ConstrainedFieldPosition::matchesField(int32_t category, int32_t field) const {
- switch (fConstraint) {
- case UCFPOS_CONSTRAINT_NONE:
- return TRUE;
- case UCFPOS_CONSTRAINT_CATEGORY:
- return fCategory == category;
- case UCFPOS_CONSTRAINT_FIELD:
- return fCategory == category && fField == field;
- default:
- UPRV_UNREACHABLE;
- }
-}
-
-void ConstrainedFieldPosition::setState(
- int32_t category,
- int32_t field,
- int32_t start,
- int32_t limit) {
- fCategory = category;
- fField = field;
- fStart = start;
- fLimit = limit;
-}
-
-
-FormattedValue::~FormattedValue() = default;
-
-
-///////////////////////
-/// C API FUNCTIONS ///
-///////////////////////
-
-struct UConstrainedFieldPositionImpl : public UMemory,
- // Magic number as ASCII == "UCF"
- public IcuCApiHelper<UConstrainedFieldPosition, UConstrainedFieldPositionImpl, 0x55434600> {
- ConstrainedFieldPosition fImpl;
-};
-
-U_CAPI UConstrainedFieldPosition* U_EXPORT2
-ucfpos_open(UErrorCode* ec) {
- auto* impl = new UConstrainedFieldPositionImpl();
- if (impl == nullptr) {
- *ec = U_MEMORY_ALLOCATION_ERROR;
- return nullptr;
- }
- return impl->exportForC();
-}
-
-U_CAPI void U_EXPORT2
-ucfpos_reset(UConstrainedFieldPosition* ptr, UErrorCode* ec) {
- auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return;
- }
- impl->fImpl.reset();
-}
-
-U_CAPI void U_EXPORT2
-ucfpos_constrainCategory(UConstrainedFieldPosition* ptr, int32_t category, UErrorCode* ec) {
- auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return;
- }
- impl->fImpl.constrainCategory(category);
-}
-
-U_CAPI void U_EXPORT2
-ucfpos_constrainField(UConstrainedFieldPosition* ptr, int32_t category, int32_t field, UErrorCode* ec) {
- auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return;
- }
- impl->fImpl.constrainField(category, field);
-}
-
-U_CAPI int32_t U_EXPORT2
-ucfpos_getCategory(const UConstrainedFieldPosition* ptr, UErrorCode* ec) {
- const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return UFIELD_CATEGORY_UNDEFINED;
- }
- return impl->fImpl.getCategory();
-}
-
-U_CAPI int32_t U_EXPORT2
-ucfpos_getField(const UConstrainedFieldPosition* ptr, UErrorCode* ec) {
- const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return 0;
- }
- return impl->fImpl.getField();
-}
-
-U_CAPI void U_EXPORT2
-ucfpos_getIndexes(const UConstrainedFieldPosition* ptr, int32_t* pStart, int32_t* pLimit, UErrorCode* ec) {
- const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return;
- }
- *pStart = impl->fImpl.getStart();
- *pLimit = impl->fImpl.getLimit();
-}
-
-U_CAPI int64_t U_EXPORT2
-ucfpos_getInt64IterationContext(const UConstrainedFieldPosition* ptr, UErrorCode* ec) {
- const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return 0;
- }
- return impl->fImpl.getInt64IterationContext();
-}
-
-U_CAPI void U_EXPORT2
-ucfpos_setInt64IterationContext(UConstrainedFieldPosition* ptr, int64_t context, UErrorCode* ec) {
- auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return;
- }
- impl->fImpl.setInt64IterationContext(context);
-}
-
-U_CAPI UBool U_EXPORT2
-ucfpos_matchesField(const UConstrainedFieldPosition* ptr, int32_t category, int32_t field, UErrorCode* ec) {
- const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return 0;
- }
- return impl->fImpl.matchesField(category, field);
-}
-
-U_CAPI void U_EXPORT2
-ucfpos_setState(
- UConstrainedFieldPosition* ptr,
- int32_t category,
- int32_t field,
- int32_t start,
- int32_t limit,
- UErrorCode* ec) {
- auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
- if (U_FAILURE(*ec)) {
- return;
- }
- impl->fImpl.setState(category, field, start, limit);
-}
-
-U_CAPI void U_EXPORT2
-ucfpos_close(UConstrainedFieldPosition* ptr) {
- UErrorCode localStatus = U_ZERO_ERROR;
- auto* impl = UConstrainedFieldPositionImpl::validate(ptr, localStatus);
- delete impl;
-}
-
-
-U_DRAFT const UChar* U_EXPORT2
-ufmtval_getString(
- const UFormattedValue* ufmtval,
- int32_t* pLength,
- UErrorCode* ec) {
- const auto* impl = UFormattedValueApiHelper::validate(ufmtval, *ec);
- if (U_FAILURE(*ec)) {
- return nullptr;
- }
- UnicodeString readOnlyAlias = impl->fFormattedValue->toTempString(*ec);
- if (U_FAILURE(*ec)) {
- return nullptr;
- }
- if (pLength != nullptr) {
- *pLength = readOnlyAlias.length();
- }
- return readOnlyAlias.getBuffer();
-}
-
-
-U_DRAFT UBool U_EXPORT2
-ufmtval_nextPosition(
- const UFormattedValue* ufmtval,
- UConstrainedFieldPosition* ucfpos,
- UErrorCode* ec) {
- const auto* fmtval = UFormattedValueApiHelper::validate(ufmtval, *ec);
- auto* cfpos = UConstrainedFieldPositionImpl::validate(ucfpos, *ec);
- if (U_FAILURE(*ec)) {
- return FALSE;
- }
- return fmtval->fFormattedValue->nextPosition(cfpos->fImpl, *ec);
-}
-
-
-U_NAMESPACE_END
-
-#endif /* #if !UCONFIG_NO_FORMATTING */
+// © 2018 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
+
+#include "unicode/utypes.h"
+
+#if !UCONFIG_NO_FORMATTING
+
+#include "unicode/formattedvalue.h"
+#include "formattedval_impl.h"
+#include "capi_helper.h"
+
+U_NAMESPACE_BEGIN
+
+
+ConstrainedFieldPosition::ConstrainedFieldPosition() {}
+
+ConstrainedFieldPosition::~ConstrainedFieldPosition() {}
+
+void ConstrainedFieldPosition::reset() {
+ fContext = 0LL;
+ fField = 0;
+ fStart = 0;
+ fLimit = 0;
+ fConstraint = UCFPOS_CONSTRAINT_NONE;
+ fCategory = UFIELD_CATEGORY_UNDEFINED;
+}
+
+void ConstrainedFieldPosition::constrainCategory(int32_t category) {
+ fConstraint = UCFPOS_CONSTRAINT_CATEGORY;
+ fCategory = category;
+}
+
+void ConstrainedFieldPosition::constrainField(int32_t category, int32_t field) {
+ fConstraint = UCFPOS_CONSTRAINT_FIELD;
+ fCategory = category;
+ fField = field;
+}
+
+void ConstrainedFieldPosition::setInt64IterationContext(int64_t context) {
+ fContext = context;
+}
+
+UBool ConstrainedFieldPosition::matchesField(int32_t category, int32_t field) const {
+ switch (fConstraint) {
+ case UCFPOS_CONSTRAINT_NONE:
+ return TRUE;
+ case UCFPOS_CONSTRAINT_CATEGORY:
+ return fCategory == category;
+ case UCFPOS_CONSTRAINT_FIELD:
+ return fCategory == category && fField == field;
+ default:
+ UPRV_UNREACHABLE;
+ }
+}
+
+void ConstrainedFieldPosition::setState(
+ int32_t category,
+ int32_t field,
+ int32_t start,
+ int32_t limit) {
+ fCategory = category;
+ fField = field;
+ fStart = start;
+ fLimit = limit;
+}
+
+
+FormattedValue::~FormattedValue() = default;
+
+
+///////////////////////
+/// C API FUNCTIONS ///
+///////////////////////
+
+struct UConstrainedFieldPositionImpl : public UMemory,
+ // Magic number as ASCII == "UCF"
+ public IcuCApiHelper<UConstrainedFieldPosition, UConstrainedFieldPositionImpl, 0x55434600> {
+ ConstrainedFieldPosition fImpl;
+};
+
+U_CAPI UConstrainedFieldPosition* U_EXPORT2
+ucfpos_open(UErrorCode* ec) {
+ auto* impl = new UConstrainedFieldPositionImpl();
+ if (impl == nullptr) {
+ *ec = U_MEMORY_ALLOCATION_ERROR;
+ return nullptr;
+ }
+ return impl->exportForC();
+}
+
+U_CAPI void U_EXPORT2
+ucfpos_reset(UConstrainedFieldPosition* ptr, UErrorCode* ec) {
+ auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return;
+ }
+ impl->fImpl.reset();
+}
+
+U_CAPI void U_EXPORT2
+ucfpos_constrainCategory(UConstrainedFieldPosition* ptr, int32_t category, UErrorCode* ec) {
+ auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return;
+ }
+ impl->fImpl.constrainCategory(category);
+}
+
+U_CAPI void U_EXPORT2
+ucfpos_constrainField(UConstrainedFieldPosition* ptr, int32_t category, int32_t field, UErrorCode* ec) {
+ auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return;
+ }
+ impl->fImpl.constrainField(category, field);
+}
+
+U_CAPI int32_t U_EXPORT2
+ucfpos_getCategory(const UConstrainedFieldPosition* ptr, UErrorCode* ec) {
+ const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return UFIELD_CATEGORY_UNDEFINED;
+ }
+ return impl->fImpl.getCategory();
+}
+
+U_CAPI int32_t U_EXPORT2
+ucfpos_getField(const UConstrainedFieldPosition* ptr, UErrorCode* ec) {
+ const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return 0;
+ }
+ return impl->fImpl.getField();
+}
+
+U_CAPI void U_EXPORT2
+ucfpos_getIndexes(const UConstrainedFieldPosition* ptr, int32_t* pStart, int32_t* pLimit, UErrorCode* ec) {
+ const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return;
+ }
+ *pStart = impl->fImpl.getStart();
+ *pLimit = impl->fImpl.getLimit();
+}
+
+U_CAPI int64_t U_EXPORT2
+ucfpos_getInt64IterationContext(const UConstrainedFieldPosition* ptr, UErrorCode* ec) {
+ const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return 0;
+ }
+ return impl->fImpl.getInt64IterationContext();
+}
+
+U_CAPI void U_EXPORT2
+ucfpos_setInt64IterationContext(UConstrainedFieldPosition* ptr, int64_t context, UErrorCode* ec) {
+ auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return;
+ }
+ impl->fImpl.setInt64IterationContext(context);
+}
+
+U_CAPI UBool U_EXPORT2
+ucfpos_matchesField(const UConstrainedFieldPosition* ptr, int32_t category, int32_t field, UErrorCode* ec) {
+ const auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return 0;
+ }
+ return impl->fImpl.matchesField(category, field);
+}
+
+U_CAPI void U_EXPORT2
+ucfpos_setState(
+ UConstrainedFieldPosition* ptr,
+ int32_t category,
+ int32_t field,
+ int32_t start,
+ int32_t limit,
+ UErrorCode* ec) {
+ auto* impl = UConstrainedFieldPositionImpl::validate(ptr, *ec);
+ if (U_FAILURE(*ec)) {
+ return;
+ }
+ impl->fImpl.setState(category, field, start, limit);
+}
+
+U_CAPI void U_EXPORT2
+ucfpos_close(UConstrainedFieldPosition* ptr) {
+ UErrorCode localStatus = U_ZERO_ERROR;
+ auto* impl = UConstrainedFieldPositionImpl::validate(ptr, localStatus);
+ delete impl;
+}
+
+
+U_DRAFT const UChar* U_EXPORT2
+ufmtval_getString(
+ const UFormattedValue* ufmtval,
+ int32_t* pLength,
+ UErrorCode* ec) {
+ const auto* impl = UFormattedValueApiHelper::validate(ufmtval, *ec);
+ if (U_FAILURE(*ec)) {
+ return nullptr;
+ }
+ UnicodeString readOnlyAlias = impl->fFormattedValue->toTempString(*ec);
+ if (U_FAILURE(*ec)) {
+ return nullptr;
+ }
+ if (pLength != nullptr) {
+ *pLength = readOnlyAlias.length();
+ }
+ return readOnlyAlias.getBuffer();
+}
+
+
+U_DRAFT UBool U_EXPORT2
+ufmtval_nextPosition(
+ const UFormattedValue* ufmtval,
+ UConstrainedFieldPosition* ucfpos,
+ UErrorCode* ec) {
+ const auto* fmtval = UFormattedValueApiHelper::validate(ufmtval, *ec);
+ auto* cfpos = UConstrainedFieldPositionImpl::validate(ucfpos, *ec);
+ if (U_FAILURE(*ec)) {
+ return FALSE;
+ }
+ return fmtval->fFormattedValue->nextPosition(cfpos->fImpl, *ec);
+}
+
+
+U_NAMESPACE_END
+
+#endif /* #if !UCONFIG_NO_FORMATTING */