ladybird/AK
Timothy Flynn 1869399fd1 AK: Specialize Optional for Utf16String and Utf16FlyString
We added this for String some time ago, so let's give Utf16String the
same optimization. Note that Utf16String was already handling its data
member potentially being null as of 5af99f4dd0.
2025-08-19 06:24:09 -04:00
..
.clang-tidy
AK+Swift.swift AK: Add an extension to construct an AK.String from a Swift.String 2024-11-19 14:32:11 -07:00
AllOf.h AK: Make it possible to not using AK classes into the global namespace 2022-11-26 15:51:34 +01:00
AnyOf.h AK: Make it possible to not using AK classes into the global namespace 2022-11-26 15:51:34 +01:00
Array.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
Assertions.cpp AK: Expose ak_assertion_handler weak symbol for custom death handling 2025-05-16 13:23:32 -06:00
Assertions.h AK: Expose dump_backtrace() publicly for debugging purposes 2025-05-06 10:03:57 -04:00
Atomic.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
AtomicRefCounted.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
Backtrace.h.in AK+CMake: Use the find module to find the correct backtrace(3) header 2024-07-01 10:15:24 -06:00
Badge.h AK: Use Noncopyable.h in Badge 2024-12-04 16:45:58 +00:00
Base64.cpp AK: Remove some now-unnecessary workarounds for simdutf base64 usage 2025-06-01 08:03:00 -04:00
Base64.h AK+LibJS: Use simdutf for all base64 operations 2025-05-03 11:21:10 -04:00
BigIntBase.h Revert "AK: Work around Apple Clang __builtin_subc codegen issue" 2025-04-22 22:31:28 -06:00
BinaryHeap.h AK: Introduce IntrusiveBinaryHeap and reimplement BinaryHeap using it 2024-02-25 17:24:36 -07:00
BinarySearch.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
BitCast.h AK: Use bit_cast in SIMDExtras.h/AK::Detail::byte_reverse_impl 2024-07-17 09:56:13 -06:00
Bitmap.h LibGfx: Clean up #include directives 2024-11-20 21:13:23 +01:00
BitmapView.h AK: Define operator== for BitmapView 2025-01-04 20:32:35 +01:00
BitStream.h AK: Add BigEndianInputBitStream::bits_until_next_byte_boundary() 2024-02-12 14:08:56 +01:00
BufferedStream.h AK: Don't move trivially copyable types in BufferedStream methods 2024-04-30 13:22:56 +02:00
BuiltinWrappers.h AK: Fix doc comment for bit_scan_forward 2023-10-11 14:36:48 -04:00
BumpAllocator.h AK: Fix BumpAllocator.h compilation errors on Windows 2024-12-14 16:12:12 +01:00
ByteBuffer.h AK: Use simdutf when appending UTF-16 to StringBuilder 2024-10-30 10:28:24 +01:00
ByteReader.h AK: Make it possible to not using AK classes into the global namespace 2022-11-26 15:51:34 +01:00
ByteString.cpp AK: Remove unused UTF-8 / other factory methods from ByteString 2025-04-07 17:44:38 +02:00
ByteString.h AK: Add a parameter to to_number methods to change the parsed base 2025-08-07 02:05:50 +02:00
ByteStringImpl.cpp AK: Rename StringImpl to ByteStringImpl 2025-04-07 17:44:38 +02:00
ByteStringImpl.h AK: Rename StringImpl to ByteStringImpl 2025-04-07 17:44:38 +02:00
CharacterTypes.h AK: Add is_ascii_c0_control_or_space 2024-08-05 17:21:26 +01:00
Checked.h AK/Checked: Dont verify overflow bit in lvalue operations 2025-02-25 11:20:13 +00:00
CheckedFormatString.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
CircularBuffer.cpp AK: Use hashing to accelerate searching a CircularBuffer 2023-07-06 15:06:20 +01:00
CircularBuffer.h AK: Use hashing to accelerate searching a CircularBuffer 2023-07-06 15:06:20 +01:00
CircularQueue.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
CMakeLists.txt AK: Implement a flyweight string for Utf16String 2025-07-18 12:45:38 -04:00
Concepts.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
ConstrainedStream.cpp AK: Make some Stream::read* functions available inline 2025-08-08 12:54:06 +02:00
ConstrainedStream.h AK: Make some Stream::read* functions available inline 2025-08-08 12:54:06 +02:00
CopyOnWrite.h AK+LibURL: Move CopyOnWrite<T> from LibURL to AK 2024-09-10 13:51:28 +02:00
CountingStream.cpp AK: Let CountingStream take an initial value for the counter 2025-06-11 18:16:29 +02:00
CountingStream.h AK: Let CountingStream take an initial value for the counter 2025-06-11 18:16:29 +02:00
COWVector.h LibRegex: Flatten capture group list in MatchState 2025-04-18 17:09:27 +02:00
DateConstants.h AK: Make it possible to not using AK classes into the global namespace 2022-11-26 15:51:34 +01:00
Debug.h.in LibWeb/IDB: Add some debug output 2025-04-09 11:48:49 -06:00
DefaultDelete.h AK+Everywhere: Move custom deleter capability to OwnPtr 2022-12-17 16:00:08 -05:00
Demangle.h AK: Implement demangle() for MSVC ABI 2025-06-17 18:39:18 -06:00
DemangleWindows.cpp AK: Implement demangle() for MSVC ABI 2025-06-17 18:39:18 -06:00
Diagnostics.h AK: Add a helper macro to temporarily ignore diagnostics with _Pragma() 2022-12-06 21:31:00 +00:00
DisjointChunks.h LibRegex: Use ReadonlySpan to peek into OpCode_Compare LUTs 2025-04-14 17:40:13 +02:00
DistinctNumeric.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
DoublyLinkedList.h AK: Add some higher-level operations to DoublyLinkedList<T> 2025-08-08 12:54:06 +02:00
Endian.h AK: Support non-native endianness in Utf16View 2024-07-18 19:43:57 +02:00
EnumBits.h Everywhere: Remove unused includes of AK/StdLibExtras.h 2023-01-02 20:27:20 -05:00
Enumerate.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
Error.cpp AK: Define some simple getters in a single line 2025-05-10 21:19:46 -04:00
Error.h AK/Error: Add value_or convenience method 2025-05-26 18:48:09 +02:00
Find.h AK: Add an AK::find helper to return a reference to the found value 2025-04-06 13:45:10 +02:00
FixedArray.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
FixedPoint.h AK: Stop exporting AK::FixedPoint into the global namespace 2024-07-18 09:43:38 +01:00
FloatingPoint.h Meta: Update my email address everywhere 2024-11-01 12:14:53 +01:00
FlyString.cpp Everywhere: Remove DeprecatedFlyString + any remaining references to it 2025-04-02 11:43:13 +02:00
FlyString.h AK: Remove errant did_destroy_fly_string_data declaration 2025-07-03 09:51:56 -04:00
Format.cpp AK: Format floats with precision in scientific notation where applicable 2025-08-11 17:10:04 +01:00
Format.h AK: Add dbgln_dump() macro 2025-07-18 14:40:00 -04:00
Forward.h AK: Templatize GenericLexer for UTF-16 strings 2025-08-13 09:56:13 -04:00
Function.h AK: Replace CallableWrapper::destroy() with a destructor 2025-05-17 15:07:42 -06:00
GenericLexer.cpp AK: Templatize GenericLexer for UTF-16 strings 2025-08-13 09:56:13 -04:00
GenericLexer.h AK: Templatize GenericLexer for UTF-16 strings 2025-08-13 09:56:13 -04:00
GenericShorthands.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
HashFunctions.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
HashMap.h AK: Implement take_all_matching(predicate) API in HashMap 2025-08-08 13:09:58 -04:00
HashTable.h AK: Implement take_all_matching(predicate) API in HashTable 2025-08-08 13:09:58 -04:00
Hex.cpp AK: Remove Error::from_string_view_or_print_error_and_return_errno 2025-05-10 21:19:46 -04:00
Hex.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
IDAllocator.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
InsertionSort.h AK: Fix InsertionSort to respect specified bounds 2024-12-06 06:44:27 +00:00
IntegralMath.h AK: Add lowest common multiple and greatest common divisor functions 2025-04-23 09:13:45 +01:00
IntrusiveDetails.h Everywhere: Remove all KERNEL #defines 2024-06-18 09:36:25 +02:00
IntrusiveList.h AK: Annotate [[no_unique_address]] members with NO_UNIQUE_ADDRESS macro 2025-04-15 02:19:06 -06:00
IntrusiveListRelaxedConst.h Everywhere: Run clang-format 2024-12-28 05:39:32 -08:00
IntrusiveRedBlackTree.h AK: Annotate [[no_unique_address]] members with NO_UNIQUE_ADDRESS macro 2025-04-15 02:19:06 -06:00
IPv4Address.h AK+Meta+LibCore+Tests: Remove unused SipHash implementation 2025-04-06 01:47:50 +02:00
IPv6Address.h AK: Validate compressed tags in IPv4-mapped IPv6 address 2025-07-30 00:53:10 +02:00
IterationDecision.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
Iterator.h AK+LibJS: Add [[nodiscard]] to operator* in common types 2024-10-25 09:15:28 +02:00
JsonArray.cpp AK+Everywhere: Convert JSON value serialization to String 2025-02-20 19:27:51 -05:00
JsonArray.h AK: Fix the JsonArray constructor for accepting an iterable type 2025-03-04 15:33:39 -05:00
JsonArraySerializer.h Everywhere: Remove all KERNEL #defines 2024-06-18 09:36:25 +02:00
JsonObject.cpp AK+Everywhere: Convert JSON value serialization to String 2025-02-20 19:27:51 -05:00
JsonObject.h AK+Everywhere: Convert JSON value serialization to String 2025-02-20 19:27:51 -05:00
JsonObjectSerializer.h AK+Everywhere: Store JSON strings as String 2025-02-20 19:27:51 -05:00
JsonParser.cpp AK+Everywhere: Replace custom number parsers with fast_float 2025-07-03 09:51:56 -04:00
JsonParser.h AK: Disallow construction of JsonParser 2025-03-20 10:50:24 +01:00
JsonValue.cpp AK: Disallow construction of JsonParser 2025-03-20 10:50:24 +01:00
JsonValue.h AK+Everywhere: Convert JSON value serialization to String 2025-02-20 19:27:51 -05:00
kmalloc.cpp Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
kmalloc.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
LEB128.h AK: Skip vcalls to Stream::read_value and read_until_filled in LEB128 2025-08-08 12:54:06 +02:00
LexicalPath.cpp AK: Add LexicalPath::is_root() 2024-11-19 22:07:01 -07:00
LexicalPath.h AK: Add LexicalPath::is_root() 2024-11-19 22:07:01 -07:00
LexicalPathWindows.cpp AK: Don't crash on empty extension in LexicalPath::has_extension 2025-02-17 14:57:00 +01:00
LsanSuppressions.h LibGfx+LibWeb: Replace remaining OpenType implementation with Skia 2024-09-05 19:21:52 +02:00
Math.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
MaybeOwned.h AK: Allow creating a MaybeOwned<Superclass> from a MaybeOwned<Subclass> 2024-03-25 20:35:00 +01:00
MemMem.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
Memory.h AK: Remove fast_u32_xxx apis from Memory.h 2025-03-03 15:58:27 +01:00
MemoryStream.cpp AK: Make some Stream::read* functions available inline 2025-08-08 12:54:06 +02:00
MemoryStream.h AK: Make some Stream::read* functions available inline 2025-08-08 12:54:06 +02:00
NeverDestroyed.h AK: Include missing StdLibExtras from NeverDestroyed 2024-11-19 14:32:11 -07:00
NoAllocationGuard.h Everywhere: Remove all KERNEL #defines 2024-06-18 09:36:25 +02:00
Noncopyable.h AK: Loosen the restrictions on non-copyable/non-movable containers 2025-04-22 21:19:31 -06:00
NonnullOwnPtr.h AK: Remove clang-specific templates 2024-12-12 15:12:27 -07:00
NonnullRawPtr.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
NonnullRefPtr.h AK: Demote VERIFY in NonnullRefPtr to ASSERT 2025-04-28 10:39:42 -04:00
NumberFormat.cpp AK+LibJS: Don't use Temporal for console.time() and console.timeLog() 2024-11-18 17:46:41 -05:00
NumberFormat.h AK+LibJS: Don't use Temporal for console.time() and console.timeLog() 2024-11-18 17:46:41 -05:00
NumericLimits.h AK: Add 16-bit float type 2024-11-10 14:48:20 -07:00
Optional.h AK: Add hash traits for Optional<T> 2025-07-07 20:24:47 +01:00
OptionParser.cpp AK: Update OptionParser::m_arg_index by substracting skipped args 2024-02-06 00:08:30 +01:00
OptionParser.h Userland+AK: Stop using getopt() for ArgsParser 2023-02-28 15:52:24 +03:30
OwnPtr.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
Platform.h AK: Add abstraction for forcing empty base optimization on Windows 2025-06-17 15:33:26 -06:00
Queue.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
QuickSort.h AK: Remove redundant condition from Quick Sort 2024-12-22 12:33:41 +01:00
Random.cpp AK: Add windows support in AK/Random 2025-05-15 07:41:02 -06:00
Random.h AK: Add windows support in AK/Random 2025-05-15 07:41:02 -06:00
RedBlackTree.h Everywhere: Run clang-format 2024-12-28 05:39:32 -08:00
RefCounted.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
RefPtr.h AK: Disallow constness laundering in RefPtr and NonnullRefPtr 2025-04-16 10:41:44 -06:00
Result.h Everywhere: Run clang-format 2024-12-28 05:39:32 -08:00
ReverseIterator.h Everywhere: Rename {Deprecated => Byte}String 2023-12-17 18:25:10 +03:30
ScopedValueRollback.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
ScopeGuard.h AK: Make ScopeGuard and ArmedScopeGuard [[nodiscard]] 2025-01-09 18:36:34 +00:00
ScopeLogger.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
SegmentedVector.h AK: Define ConstIterator for SegmentedVector 2025-07-13 19:15:05 +02:00
SIMD.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
SIMDExtras.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
SIMDMath.h AK: Remove the SIMD version of rsqrt() too, for good measure 2024-01-30 10:02:33 +01:00
Singleton.h Everywhere: Remove all KERNEL #defines 2024-06-18 09:36:25 +02:00
SinglyLinkedList.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
SinglyLinkedListSizePolicy.h AK: Combine SinglyLinkedList and SinglyLinkedListWithCount 2023-01-02 20:13:24 +00:00
SourceGenerator.h AK: Copy escape char when forking SourceGenerator 2025-06-30 11:39:16 -06:00
SourceLocation.h AK: Add copy assignment operator for SourceLocation 2023-09-24 14:55:32 +02:00
Span.h AK: Add Span::ends_with() 2025-07-24 07:18:25 -04:00
Stack.h Everywhere: Run clang-format 2022-12-03 23:52:23 +00:00
StackInfo.cpp AK: Use getrlimit() to find the correct main thread stack size on macOS 2024-11-10 19:12:59 +01:00
StackInfo.h AK: Use __builtin_frame_address to find current stack depth remaining 2023-07-01 07:03:11 +02:00
StdLibExtraDetails.h AK: Use __is_trivially_destructible built-in with new enough GCC 2025-06-14 16:02:40 -04:00
StdLibExtras.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
Stream.cpp AK: Make some Stream::read* functions available inline 2025-08-08 12:54:06 +02:00
Stream.h AK: Make some Stream::read* functions available inline 2025-08-08 12:54:06 +02:00
String.cpp AK+LibWeb/CSS: Add lower-greek counter style 2025-07-21 15:18:17 +01:00
String.h AK: Add a parameter to to_number methods to change the parsed base 2025-08-07 02:05:50 +02:00
StringBase.cpp Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
StringBase.h AK: Make hashing of UTF-16 strings cheaper 2025-08-07 02:05:50 +02:00
StringBuilder.cpp AK+LibJS+LibWeb: Recognize that our UTF-16 string is actually WTF-16 2025-08-13 09:56:13 -04:00
StringBuilder.h AK+LibJS+LibWeb: Recognize that our UTF-16 string is actually WTF-16 2025-08-13 09:56:13 -04:00
StringConversions.cpp AK: Rename Utf16View::trim_whitespace() to ::trim_ascii_whitespace() 2025-07-24 07:18:25 -04:00
StringConversions.h AK: Implement UTF-16 string-to-number conversions 2025-07-18 12:45:38 -04:00
StringData.h AK: Support UTF-16 string formatting 2025-07-18 12:45:38 -04:00
StringFloatingPointConversions.cpp AK+LibCrypto: Delete 64x64 wide multiplication workarounds 2023-03-04 22:10:03 -07:00
StringFloatingPointConversions.h Everywhere: Remove all KERNEL #defines 2024-06-18 09:36:25 +02:00
StringHash.h AK: Make hashing of UTF-16 strings cheaper 2025-08-07 02:05:50 +02:00
StringUtils.cpp AK: Use simdutf for searching strings for a single code unit 2025-08-11 16:55:37 +02:00
StringUtils.h AK+Everywhere: Replace custom number parsers with fast_float 2025-07-03 09:51:56 -04:00
StringView.cpp AK+Everywhere: Prepare Utf16View for integration with a UTF-16 string 2025-07-03 09:51:56 -04:00
StringView.h AK: Add a parameter to to_number methods to change the parsed base 2025-08-07 02:05:50 +02:00
Swift.h AK: Add cxxCast template to allow Swift to perform simple checked casts 2025-04-03 16:47:48 -06:00
TemporaryChange.h AK: Fully qualify use of move in TemporaryChange 2025-03-22 17:27:45 +01:00
Time.cpp AK/Time+LibWeb/HTML: Fix ISO8601 week conversions 2025-08-14 11:05:28 -04:00
Time.h AK/Time+LibWeb/HTML: Fix ISO8601 week conversions 2025-08-14 11:05:28 -04:00
Traits.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
Trie.h Everywhere: Remove all KERNEL #defines 2024-06-18 09:36:25 +02:00
Try.h AK+LibJS: Allow {TRY,MUST}{,_OR_THROW_OOM} on list-initializers 2024-12-04 16:45:58 +00:00
Tuple.h AK: Add abstraction for forcing empty base optimization on Windows 2025-06-17 15:33:26 -06:00
TypeCasts.h AK: Add cast using objective-c __bridge qualifier 2025-03-18 17:15:08 -06:00
TypedTransfer.h AK: Compare pointers in TypedTransfer<T>::compare() 2025-07-24 07:18:25 -04:00
TypeList.h AK: Make IndexSequence use size_t 2024-02-11 18:53:00 +01:00
Types.h AK: Remove unnecessary Aarch64 wchar_t handling 2025-05-18 19:18:13 -06:00
UFixedBigInt.h Meta: Enforce newlines around namespaces 2025-05-14 02:01:59 -06:00
UFixedBigIntDivision.h AK: Move generalized internals of UFixedBigIntDivision to BigIntBase 2024-03-25 14:26:29 -06:00
UnicodeUtils.h AK: Fix usage of constexpr within Utf16View and related utilities 2025-07-05 01:25:22 +12:00
Utf8View.cpp AK: Allow indexing at length in Utf8View::byte_offset_of() 2025-07-22 09:10:32 -04:00
Utf8View.h AK+Everywhere: Allow lonely UTF-16 surrogates by default 2025-07-03 09:51:56 -04:00
Utf16FlyString.cpp AK+LibJS+LibWeb: Recognize that our UTF-16 string is actually WTF-16 2025-08-13 09:56:13 -04:00
Utf16FlyString.h AK: Specialize Optional for Utf16String and Utf16FlyString 2025-08-19 06:24:09 -04:00
Utf16String.cpp AK+LibJS+LibWeb: Recognize that our UTF-16 string is actually WTF-16 2025-08-13 09:56:13 -04:00
Utf16String.h AK: Specialize Optional for Utf16String and Utf16FlyString 2025-08-19 06:24:09 -04:00
Utf16StringBase.h AK: Specialize Optional for Utf16String and Utf16FlyString 2025-08-19 06:24:09 -04:00
Utf16StringData.cpp AK+LibJS+LibWeb: Recognize that our UTF-16 string is actually WTF-16 2025-08-13 09:56:13 -04:00
Utf16StringData.h AK: Make hashing of UTF-16 strings cheaper 2025-08-07 02:05:50 +02:00
Utf16View.cpp AK+LibJS+LibWeb: Recognize that our UTF-16 string is actually WTF-16 2025-08-13 09:56:13 -04:00
Utf16View.h AK+LibJS+LibWeb: Recognize that our UTF-16 string is actually WTF-16 2025-08-13 09:56:13 -04:00
Utf32View.cpp AK: Add a comparison operator for Utf32View 2024-10-20 08:50:01 +02:00
Utf32View.h AK: Add a UTF-16 string with optimized short- and ASCII-string storage 2025-07-18 12:45:38 -04:00
Variant.h AK: Add abstraction for forcing empty base optimization on Windows 2025-06-17 15:33:26 -06:00
Vector.h AK: Optionally keep track of the last slot in Vector 2025-08-08 12:54:06 +02:00
Weakable.h Meta: Update my e-mail address everywhere 2024-10-04 13:19:50 +02:00
WeakPtr.h AK: Define hash() and equals() for WeakPtr 2025-02-11 10:22:23 +01:00
Windows.h AK: Simplify usage of windows.h and winsock2.h 2025-01-02 10:17:51 -07:00