[webkit-changes] [WebKit/WebKit] f44639: Support WTF::interleave() in makeString()

Commit Queue noreply at github.com
Sun Jul 7 16:59:05 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f4463967d4ce5f170b4fe47c856bea59c6f69de8
      https://github.com/WebKit/WebKit/commit/f4463967d4ce5f170b4fe47c856bea59c6f69de8
  Author: Sam Weinig <sam at webkit.org>
  Date:   2024-07-07 (Sun, 07 Jul 2024)

  Changed paths:
    M Source/WTF/wtf/text/MakeString.h
    M Source/WTF/wtf/text/StringBuilder.h
    M Source/WTF/wtf/text/StringConcatenate.h
    M Source/WebCore/Modules/fetch/FetchHeaders.cpp
    M Source/WebCore/Modules/indexeddb/IDBKeyData.cpp
    M Source/WebCore/Modules/websockets/WebSocketExtensionDispatcher.cpp
    M Source/WebCore/accessibility/AXLogger.cpp
    M Source/WebCore/accessibility/AXTextRun.cpp
    M Tools/TestWebKitAPI/Tests/WTF/MoveOnly.h
    M Tools/TestWebKitAPI/Tests/WTF/StringBuilder.cpp
    M Tools/TestWebKitAPI/Tests/WTF/StringConcatenate.cpp

  Log Message:
  -----------
  Support WTF::interleave() in makeString()
https://bugs.webkit.org/show_bug.cgi?id=276285

Reviewed by Darin Adler.

Added support for WTF::interleave() to makeString() by introducing support
for a "slow" path to makeString() that uses a StringBuilder rather than a
precise allocation.

* Source/WTF/wtf/text/MakeString.h:
    - Add slow path support, delegating to StringBuilder.

* Source/WTF/wtf/text/StringBuilder.h:
    - Expose appendFromAdapters() so that makeString() can directly
      invoke it after adapter construction.

* Source/WTF/wtf/text/StringConcatenate.h:
    - Add move constructor/assignment operator for interleave for
      cases where it is forwarded.

* Source/WebCore/Modules/fetch/FetchHeaders.cpp:
* Source/WebCore/Modules/indexeddb/IDBKeyData.cpp:
* Source/WebCore/Modules/websockets/WebSocketExtensionDispatcher.cpp:
* Source/WebCore/accessibility/AXLogger.cpp:
* Source/WebCore/accessibility/AXTextRun.cpp:
    - Adopt interleave in a few places to ensure it works.

* Tools/TestWebKitAPI/Tests/WTF/StringConcatenate.cpp:
(TestWebKitAPI::TEST(WTF, StringConcatenate_Interleave)):
(TestWebKitAPI::serializeOverloadBuilder):
(TestWebKitAPI::serializeOverloadReturn):
(TestWebKitAPI::TEST(WTF, StringConcatenate_InterleaveOverload)):
(TestWebKitAPI::TEST(WTF, StringConcatenate_InterleaveNoCopies)):
    - Add tests for the various forms of interleave.

Canonical link: https://commits.webkit.org/280721@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list