LibJS+LibWeb: Replace JS::Utf16String with AK::Utf16String

This commit is contained in:
Timothy Flynn 2025-07-09 14:13:22 -04:00 committed by Tim Flynn
parent d40e3af697
commit a43cb15e81
Notes: github-actions[bot] 2025-07-18 16:46:59 +00:00
24 changed files with 172 additions and 526 deletions

View file

@ -57,13 +57,13 @@ ThrowCompletionOr<GC::Ref<Object>> create_segment_data_object(VM& vm, Unicode::S
auto segment = string.substring_view(start_index, end_index - start_index);
// 7. Perform ! CreateDataPropertyOrThrow(result, "segment", segment).
MUST(result->create_data_property_or_throw(vm.names.segment, PrimitiveString::create(vm, Utf16String::create(segment))));
MUST(result->create_data_property_or_throw(vm.names.segment, PrimitiveString::create(vm, segment)));
// 8. Perform ! CreateDataPropertyOrThrow(result, "index", 𝔽(startIndex)).
MUST(result->create_data_property_or_throw(vm.names.index, Value(start_index)));
// 9. Perform ! CreateDataPropertyOrThrow(result, "input", string).
MUST(result->create_data_property_or_throw(vm.names.input, PrimitiveString::create(vm, Utf16String::create(string))));
MUST(result->create_data_property_or_throw(vm.names.input, PrimitiveString::create(vm, string)));
// 10. Let granularity be segmenter.[[SegmenterGranularity]].
auto granularity = segmenter.segmenter_granularity();

View file

@ -29,7 +29,7 @@ Segments::Segments(Realm& realm, Unicode::Segmenter const& segmenter, Utf16Strin
, m_segments_segmenter(segmenter.clone())
, m_segments_string(move(string))
{
m_segments_segmenter->set_segmented_text(m_segments_string.view());
m_segments_segmenter->set_segmented_text(m_segments_string);
}
}

View file

@ -24,7 +24,7 @@ public:
Unicode::Segmenter& segments_segmenter() const { return *m_segments_segmenter; }
Utf16View segments_string() const { return m_segments_string.view(); }
Utf16String const& segments_string() const { return m_segments_string; }
private:
Segments(Realm&, Unicode::Segmenter const&, Utf16String);

View file

@ -76,7 +76,7 @@ JS_DEFINE_NATIVE_FUNCTION(SegmentsPrototype::symbol_iterator)
auto& segmenter = segments->segments_segmenter();
// 4. Let string be segments.[[SegmentsString]].
auto string = segments->segments_string();
auto const& string = segments->segments_string();
// 5. Return ! CreateSegmentIterator(segmenter, string).
return SegmentIterator::create(realm, segmenter, string, segments);