wiki:ru/UCDReorganization

Version 1 (modified by vadim.godunko, 7 years ago) ( diff )

--

Реорганизация UCD

Назрел очередной пересмотр структуры данных UCD, поскольку размер таблиц данных превысил способности компилятора на 32-битных платформах.

Первой рассматриваемой возможностью является вынос всех "неизменных" свойств в отдельные таблицы. Это имеет несколько преимуществ:

  • разделение всех таблиц на две независимые группы;
  • сохранение "статического" хранение и доступа к неизменным свойствам;
  • упрощение последующей реализации локалей, которые могут переопределять значения свойств, доспускающих такую возможность.

Первый этап работ - пересмотр всех свойств в UCD на предмет допустимости переопределения и выделение свойств не допускающих переопределения.

Свойства UCD

На основании UAX #44 имеем:

Joining_Type N
Joining_Group N
Bidi_Paired_Bracket_Type N
Bidi_Paired_Bracket N
Bidi_Mirroring_Glyph I
Block N
Composition_Exclusion N
Simple_Case_Folding N
Case_Folding N
Age N/I
East_Asian_Width I
Hangul_Syllable_Type N
Indic_Matra_Category P
Indic_Syllabic_Category P
Jamo_Short_Name C
Line_Break N
Grapheme_Cluster_Break I
Sentence_Break I
Word_Break I
Name_Alias N
Script I
Script_Extensions I
Uppercase_Mapping I
Lowercase_Mapping I
Titlecase_Mapping I
Numeric_Type I
Numeric_Value I
Unicode_Radical_Stroke I
Lowercase I
Uppercase I
Cased I
Case_Ignorable I
Changes_When_Lowercased I
Changes_When_Uppercased I
Changes_When_Titlecased I
Changes_When_Casefolded I
Changes_When_Casemapped I
Alphabetic I
Default_Ignorable_Code_Point N
Grapheme_Base N
Grapheme_Extend N
Grapheme_Link N
Math I
ID_Start I
ID_Continue I
XID_Start I
XID_Continue I
Full_Composition_Exclusion N
Expands_On_NFC N
Expands_On_NFD N
Expands_On_NFKC N
Expands_On_NFKD N
FC_NFKC_Closure N
NFD_Quick_Check N
NFKD_Quick_Check N
NFC_Quick_Check N
NFKC_Quick_Check N
NFKC_Casefold I
Changes_When_NFKC_Casefolded I
ASCII_Hex_Digit N
Bidi_Control N
Dash I
Deprecated N
Diacritic I
Extender I
Hex_Digit I
Hyphen I
Ideographic I
IDS_Binary_Operator N
IDS_Trinary_Operator N
Join_Control N
Logical_Order_Exception N
Noncharacter_Code_Point N
Other_Alphabetic C
Other_Default_Ignorable_Code_Point C
Other_Grapheme_Extend C
Other_ID_Continue C
Other_ID_Start C
Other_Lowercase C
Other_Math C
Other_Uppercase C
Pattern_Syntax N
Pattern_White_Space N
Quotation_Mark I
Radical N
Soft_Dotted N
STerm I
Terminal_Punctuation I
Unified_Ideograph N
Variation_Selector N
White_Space N
Name N
General_Category N
Canonical_Combining_Class N
Bidi_Class N
Decomposition_Type N
Decomposition_Mapping N
Numeric_Type N
Numeric_Value N
Bidi_Mirrored N
Unicode_1_Name I
ISO_Comment I
Simple_Uppercase_Mapping N
Simple_Lowercase_Mapping N
Simple_Titlecase_Mapping N
Note: See TracWiki for help on using the wiki.