diff --git a/Meta/Lagom/Tools/CodeGenerators/LibLocale/GenerateRelativeTimeFormatData.cpp b/Meta/Lagom/Tools/CodeGenerators/LibLocale/GenerateRelativeTimeFormatData.cpp index f1d7eca969..a57bb06fee 100644 --- a/Meta/Lagom/Tools/CodeGenerators/LibLocale/GenerateRelativeTimeFormatData.cpp +++ b/Meta/Lagom/Tools/CodeGenerators/LibLocale/GenerateRelativeTimeFormatData.cpp @@ -245,7 +245,7 @@ static constexpr Array<@relative_time_format_index_type@, @size@> @name@ { {)~~~ generate_mapping(generator, cldr.locales, cldr.unique_formats.type_that_fits(), "s_locale_relative_time_formats"sv, "s_number_systems_digits_{}"sv, nullptr, [&](auto const& name, auto const& value) { append_list(name, value.time_units); }); generator.append(R"~~~( -ErrorOr> get_relative_time_format_patterns(StringView locale, TimeUnit time_unit, StringView tense_or_number, Style style) +Vector get_relative_time_format_patterns(StringView locale, TimeUnit time_unit, StringView tense_or_number, Style style) { Vector formats; @@ -266,7 +266,7 @@ ErrorOr> get_relative_time_format_patterns(StringView if (decode_string(locale_format.tense_or_number) != tense_or_number) continue; - TRY(formats.try_append(locale_format.to_relative_time_format())); + formats.append(locale_format.to_relative_time_format()); } return formats; diff --git a/Userland/Libraries/LibJS/Runtime/Intl/RelativeTimeFormat.cpp b/Userland/Libraries/LibJS/Runtime/Intl/RelativeTimeFormat.cpp index e34bdaedd9..54a7089f65 100644 --- a/Userland/Libraries/LibJS/Runtime/Intl/RelativeTimeFormat.cpp +++ b/Userland/Libraries/LibJS/Runtime/Intl/RelativeTimeFormat.cpp @@ -117,20 +117,20 @@ ThrowCompletionOr> partition_relative_time_patt // then filtering the large set of locale data down to the pattern we are looking for. Instead, // LibUnicode expects the individual options as enumeration values, and returns the couple of // patterns that match those options. - auto find_patterns_for_tense_or_number = [&](StringView tense_or_number) -> ThrowCompletionOr> { + auto find_patterns_for_tense_or_number = [&](StringView tense_or_number) { // 10. If style is equal to "short", then // a. Let entry be the string-concatenation of unit and "-short". // 11. Else if style is equal to "narrow", then // a. Let entry be the string-concatenation of unit and "-narrow". // 12. Else, // a. Let entry be unit. - auto patterns = TRY_OR_THROW_OOM(vm, ::Locale::get_relative_time_format_patterns(data_locale, time_unit, tense_or_number, style)); + auto patterns = ::Locale::get_relative_time_format_patterns(data_locale, time_unit, tense_or_number, style); // 13. If fields doesn't have a field [[]], then if (patterns.is_empty()) { // a. Let entry be unit. // NOTE: In the CLDR, the lack of "short" or "narrow" in the key implies "long". - patterns = TRY_OR_THROW_OOM(vm, ::Locale::get_relative_time_format_patterns(data_locale, time_unit, tense_or_number, ::Locale::Style::Long)); + patterns = ::Locale::get_relative_time_format_patterns(data_locale, time_unit, tense_or_number, ::Locale::Style::Long); } // 14. Let patterns be fields.[[]]. @@ -144,7 +144,7 @@ ThrowCompletionOr> partition_relative_time_patt auto value_string = MUST(Value(value).to_string(vm)); // b. If patterns has a field [[]], then - if (auto patterns = MUST_OR_THROW_OOM(find_patterns_for_tense_or_number(value_string)); !patterns.is_empty()) { + if (auto patterns = find_patterns_for_tense_or_number(value_string); !patterns.is_empty()) { VERIFY(patterns.size() == 1); // i. Let result be patterns.[[]]. @@ -173,7 +173,7 @@ ThrowCompletionOr> partition_relative_time_patt } // 19. Let po be patterns.[[]]. - auto patterns = MUST_OR_THROW_OOM(find_patterns_for_tense_or_number(tense)); + auto patterns = find_patterns_for_tense_or_number(tense); // 20. Let fv be ! PartitionNumberPattern(relativeTimeFormat.[[NumberFormat]], value). auto value_partitions = MUST_OR_THROW_OOM(partition_number_pattern(vm, relative_time_format.number_format(), Value(value))); diff --git a/Userland/Libraries/LibLocale/RelativeTimeFormat.cpp b/Userland/Libraries/LibLocale/RelativeTimeFormat.cpp index dcf5ac856b..8fd447a24d 100644 --- a/Userland/Libraries/LibLocale/RelativeTimeFormat.cpp +++ b/Userland/Libraries/LibLocale/RelativeTimeFormat.cpp @@ -53,6 +53,6 @@ StringView time_unit_to_string(TimeUnit time_unit) } } -ErrorOr> __attribute__((weak)) get_relative_time_format_patterns(StringView, TimeUnit, StringView, Style) { return Vector {}; } +Vector __attribute__((weak)) get_relative_time_format_patterns(StringView, TimeUnit, StringView, Style) { return {}; } } diff --git a/Userland/Libraries/LibLocale/RelativeTimeFormat.h b/Userland/Libraries/LibLocale/RelativeTimeFormat.h index 437c560c61..0d16a57db7 100644 --- a/Userland/Libraries/LibLocale/RelativeTimeFormat.h +++ b/Userland/Libraries/LibLocale/RelativeTimeFormat.h @@ -34,6 +34,6 @@ struct RelativeTimeFormat { Optional time_unit_from_string(StringView time_unit); StringView time_unit_to_string(TimeUnit time_unit); -ErrorOr> get_relative_time_format_patterns(StringView locale, TimeUnit time_unit, StringView tense_or_number, Style style); +Vector get_relative_time_format_patterns(StringView locale, TimeUnit time_unit, StringView tense_or_number, Style style); }