1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-06-01 07:28:11 +00:00

LibJS: Make PrimitiveString::create() infallible

Work towards #20449.
This commit is contained in:
Andreas Kling 2023-08-08 18:25:57 +02:00
parent b7b02693b9
commit 1a27c525d5
69 changed files with 185 additions and 198 deletions

View file

@ -38,19 +38,6 @@ public:
return Array::create_from(realm, values);
}
// Non-standard but equivalent to CreateArrayFromList.
template<typename T, FallibleFunction<T const&> Callback>
static ThrowCompletionOr<NonnullGCPtr<Array>> try_create_from(VM& vm, Realm& realm, ReadonlySpan<T> elements, Callback map_fn)
{
auto values = MarkedVector<Value> { realm.heap() };
TRY_OR_THROW_OOM(vm, values.try_ensure_capacity(elements.size()));
for (auto const& element : elements)
TRY_OR_THROW_OOM(vm, values.try_append(TRY(map_fn(element))));
return Array::create_from(realm, values);
}
virtual ~Array() override = default;
virtual ThrowCompletionOr<Optional<PropertyDescriptor>> internal_get_own_property(PropertyKey const&) const override;