carb::l10n::LanguageTableData
Defined in carb/l10n/IL10n.h
-
struct LanguageTableData
A definition that can be used for loading a language table embedded in C++ code.
Public Members
-
size_t languagesLength
The number of languages in the table.
-
size_t keysLength
The number of translation entries in the table.
Any valid language table will have at least 4 rows, since the first 4 rows have special meanings.
-
const char *const *languages
The list of translation languages.
These are specified as POSIX locale identifiers. The length of this array is languagesLength. The first language in this array must be “en_US*”
-
const uint64_t *keys
The hashes of the key strings for the translations.
The length of this array is keysLength. Note that this contains keys for the first 4 rows in the table, even though the first 4 rows have a special purpose. The first 4 keys are never read.
-
const char *const *languageTable
The translation table.
This is a matrix with languagesLength columns and keysLength rows. languageTable[i][j] refers to the translation of keys[i] in languages[j]. The first 4 rows have special usages: 0: The language names for each column in US English 1: The territory names for each column in US English 2: The language names for each column in the language for that column 3: The territory names for each column in the language for that column
-
size_t languagesLength