Sfoglia il codice sorgente

LibJS: Port to_temporal_disambiguation() to String

Linus Groh 2 anni fa
parent
commit
ec9f2013c9

+ 3 - 3
Userland/Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp

@@ -170,17 +170,17 @@ ThrowCompletionOr<String> to_temporal_overflow(VM& vm, Object const* options)
 }
 
 // 13.5 ToTemporalDisambiguation ( options ), https://tc39.es/proposal-temporal/#sec-temporal-totemporaldisambiguation
-ThrowCompletionOr<DeprecatedString> to_temporal_disambiguation(VM& vm, Object const* options)
+ThrowCompletionOr<String> to_temporal_disambiguation(VM& vm, Object const* options)
 {
     // 1. If options is undefined, return "compatible".
     if (options == nullptr)
-        return "compatible"sv;
+        return TRY_OR_THROW_OOM(vm, String::from_utf8("compatible"sv));
 
     // 2. Return ? GetOption(options, "disambiguation", "string", « "compatible", "earlier", "later", "reject" », "compatible").
     auto option = TRY(get_option(vm, *options, vm.names.disambiguation, OptionType::String, { "compatible"sv, "earlier"sv, "later"sv, "reject"sv }, "compatible"sv));
 
     VERIFY(option.is_string());
-    return TRY(option.as_string().deprecated_string());
+    return option.as_string().utf8_string();
 }
 
 // 13.6 ToTemporalRoundingMode ( normalizedOptions, fallback ), https://tc39.es/proposal-temporal/#sec-temporal-totemporalroundingmode

+ 1 - 1
Userland/Libraries/LibJS/Runtime/Temporal/AbstractOperations.h

@@ -136,7 +136,7 @@ ThrowCompletionOr<MarkedVector<Value>> iterable_to_list_of_type(VM&, Value items
 ThrowCompletionOr<Object*> get_options_object(VM&, Value options);
 ThrowCompletionOr<Value> get_option(VM&, Object const& options, PropertyKey const& property, OptionType type, Span<StringView const> values, OptionDefault const&);
 ThrowCompletionOr<String> to_temporal_overflow(VM&, Object const* options);
-ThrowCompletionOr<DeprecatedString> to_temporal_disambiguation(VM&, Object const* options);
+ThrowCompletionOr<String> to_temporal_disambiguation(VM&, Object const* options);
 ThrowCompletionOr<DeprecatedString> to_temporal_rounding_mode(VM&, Object const& normalized_options, DeprecatedString const& fallback);
 StringView negate_temporal_rounding_mode(DeprecatedString const& rounding_mode);
 ThrowCompletionOr<DeprecatedString> to_temporal_offset(VM&, Object const* options, DeprecatedString const& fallback);