1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 03:17:35 +00:00
serenity/Userland/Libraries
Timothy Flynn 6719e5cb17 LibUnicode: Generate locale subtag data as multiple smaller tables
This commit is preemptive to upcoming commits which add more subtags to
the CLDR generator. Rather than generating a giant HashMap containing
all data, generate more (smaller) Array-based tables. This mimics the
UCD generator. This also allows simpler lookups at runtime since we can
generate index-based lookups into the smaller tables rather easily.

Without this change, adding the remaining locale subtags would result
in the generation and compilation of UnicodeLocale.cpp taking about 30s
on my machine. With this change, it takes about half that. Additionally,
the size of the generated file reduces by about 1.5MB.
2021-08-27 12:32:24 +01:00
..
LibArchive LibArchive: Move method implementations away from header 2021-05-17 18:14:05 +01:00
LibAudio LibAudio: Resample FLAC audio data 2021-08-18 18:16:48 +02:00
LibC LibC: Check for expected size of struct __jmp_buf 2021-08-26 00:54:23 +02:00
LibCards LibGfx: Use "try_" prefix for static factory functions 2021-07-21 18:02:15 +02:00
LibChess LibChess: Fix hashing of the chess board 2021-07-30 20:49:18 +02:00
LibCompress LibCompress: Discard GZip NAME & COMMENT optional strings 2021-05-18 08:09:21 +02:00
LibConfig ConfigServer+LibConfig: Add way for clients to listen for config changes 2021-08-26 23:41:38 +02:00
LibCore LibCore: Add Core::EventLoop::has_been_instantiated() 2021-08-26 00:54:27 +02:00
LibCoredump Everywhere: Core dump => Coredump 2021-08-23 00:02:09 +02:00
LibCpp LibCpp: Use lex_iterable() where applicable 2021-08-21 22:09:56 +02:00
LibCrypt Everywhere: Add a blank line after copyright header where missing 2021-05-15 00:27:09 +01:00
LibCrypto AK: Move FormatParser definition from header to implementation file 2021-08-19 23:49:25 +02:00
LibDebug LibDebug: Store 64-bit numbers in AttributeValue 2021-08-08 10:55:36 +02:00
LibDesktop Userland: Use Core::Process::spawn() instead of posix_spawn() in places 2021-08-06 01:06:42 +02:00
LibDiff AK+Everywhere: Consolidate String::index_of() and String::find() 2021-05-24 11:59:18 +02:00
LibDl Toolchain+Userland: Enable TLS for x86_64 2021-07-04 01:07:28 +02:00
LibELF Everywhere: Core dump => Coredump 2021-08-23 00:02:09 +02:00
LibFileSystemAccessClient FileSystemAccessServer: Add window title as parameter for opening file 2021-08-07 12:48:22 +02:00
LibGemini AK: Implement String::find_any_of() and StringView::find_any_of() 2021-07-02 21:54:21 +02:00
LibGfx WindowServer+LibGfx: Move CursorParams to LibGfx 2021-08-23 01:41:53 +02:00
LibGL LibGL: Implement glTexEnvf 2021-08-26 19:54:31 +02:00
LibGUI LibGUI: Make Ctrl+Shift+Right select text 2021-08-22 15:31:27 +02:00
LibHTTP LibCore+LibHTTP: Check the status of the socket after EINPROGRESS 2021-08-13 20:30:19 +04:30
LibImageDecoderClient Userland: Remove dummy IPC methods 2021-06-24 00:38:58 +02:00
LibIMAP Everywhere: Make use of container version of all_of 2021-08-03 10:46:43 +02:00
LibIPC LibIPC: Pass only message size to decoder 2021-08-11 18:28:59 +02:00
LibJS LibJS: Implement Intl.DisplayNames.prototype.resolvedOptions 2021-08-26 22:04:09 +01:00
LibKeyboard LibKeyboard: Remove an unnecessary #include when building with KERNEL 2021-06-30 11:30:28 +02:00
LibLine Everywhere: Rename get in ConfigFile::get_for_{lib,app,system} to open 2021-08-22 01:32:25 +02:00
LibM AK: Introduce Math.h 2021-07-19 16:34:21 +04:30
LibMarkdown LibMarkdown: Wrap non-inline code blocks in <pre> 2021-06-09 18:06:54 +01:00
LibPCIDB Everywhere: "file name" => "filename" 2021-04-29 22:16:18 +02:00
LibPDF Everywhere: Use AK/Math.h if applicable 2021-07-19 16:34:21 +04:30
LibProtocol LibProtocol: Use URL class in RequestClient::start_request argument 2021-06-06 16:00:11 +02:00
LibPthread Kernel+Userland: Remove global futexes 2021-08-17 01:21:47 +02:00
LibRegex LibRegex: Treat pattern string characters as unsigned 2021-08-20 19:16:33 +02:00
LibSanitizer LibSanitizer+AK: Add float cast overflow handler 2021-08-08 10:55:36 +02:00
LibSQL LibSQL: Introduce Serializer as a mediator between Heap and client code 2021-08-21 22:03:30 +02:00
LibSymbolication LibDebug+Everywhere: Make DebugInfo not own the ELF image 2021-08-06 01:14:03 +02:00
LibSyntax LibWeb+LibSyntax: Implement nested syntax highlighters 2021-06-07 14:45:49 +04:30
LibSystem Kernel+LibSystem: Add a 4th syscall argument 2021-07-25 14:08:50 +02:00
LibTest LibTest+Utilities: Print a start message before each test in run-tests 2021-08-19 18:42:34 +02:00
LibTextCodec LibTextCodec: Remove unused is_standardized_encoding() 2021-08-20 15:31:46 +02:00
LibThreading Revert "LibThreading: Fix BackgroundAction result use-after-free" 2021-07-12 11:29:37 +02:00
LibTLS Everywhere: Rename get in ConfigFile::get_for_{lib,app,system} to open 2021-08-22 01:32:25 +02:00
LibUnicode LibUnicode: Generate locale subtag data as multiple smaller tables 2021-08-27 12:32:24 +01:00
LibUSBDB LibUSBDB: Fix vendor id decoding 2021-06-18 19:41:25 +04:30
LibVideo Userland: Use kmalloc_array() where appropriate 2021-08-08 00:03:45 +02:00
LibVT Terminal+LibVT: Use LibConfig instead of Core::ConfigFile 2021-08-26 00:54:27 +02:00
LibWasm LibWasm: Use Operators::BitShiftRight for i64.shru 2021-08-26 00:51:30 +02:00
LibWeb LibWeb: Remove outdated FIXME about ACID2 2021-08-26 23:41:37 +02:00
LibWebSocket AK+Everywhere: Disallow constructing Functions from incompatible types 2021-06-06 00:27:30 +04:30
LibX86 LibX86: Stub out Disassembler::next() for x86_64 2021-08-02 17:11:47 +02:00
CMakeLists.txt Userland: Introduce ConfigServer and LibConfig 2021-08-26 00:54:27 +02:00