
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.
25 lines
430 B
C++
25 lines
430 B
C++
/*
|
|
* Copyright (c) 2021, Tim Flynn <trflynn89@pm.me>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <AK/Types.h>
|
|
|
|
namespace Unicode {
|
|
|
|
enum class Condition : u8;
|
|
enum class GeneralCategory : u8;
|
|
enum class Language : u8;
|
|
enum class Locale : u16;
|
|
enum class Property : u8;
|
|
enum class Script : u8;
|
|
enum class Territory : u8;
|
|
enum class WordBreakProperty : u8;
|
|
|
|
struct SpecialCasing;
|
|
struct UnicodeData;
|
|
|
|
}
|