ushort tailoringIndex;
ushort tailoringCount;
short reverseAccentOrder; /* 1:French sort. 0:Normal */
- } CollationSource;
+ } TailoringInfo;
Those [*] characters will be compressed using CodePointIndexer
whose max value is char.MaxValue+1.
// Holds sortkey basis.
- char [*] category;
- char [*] level1;
- char [*] level2;
- char [*] level3;
- char [*] ignorableFlags; // 1:complete, 2:symbol, 3:nonspace
+ guint8 [*] category;
+ guint8 [*] level1;
+ guint8 [*] level2;
+ guint8 [*] level3;
+ guint8 [*] ignorableFlags; // 1:complete, 2:symbol, 3:nonspace
gunichar [*] widthCompat;
// Holds special arrays for CJK order which is culture dependent.
- ushort [*] cjkCHS;
- ushort [*] cjkCHT;
- ushort [*] cjkJA;
- ushort [*] cjkKO;
- char [*] cjkKOlv2;
+ guint16 [*] cjkCHS;
+ guint16 [*] cjkCHT;
+ guint16 [*] cjkJA;
+ guint16 [*] cjkKO;
+ guint8 [*] cjkKOlv2;
gunichar [whole_tailoring_count] tailorings;
CollationSource [culture_count] collationSources;
static CodePointIndexer Ignorable;
static CodePointIndexer WidthCompat;
static CodePointIndexer CjkCHS;
- static CodePointIndexer CjkCHT;
- static CodePointIndexer CjkJA;
- static CodePointIndexer CjkKO;
- static CodePointIndexer CjkKOLevel1;
+ static CodePointIndexer Cjk;
** CollatorSource.cs
static ushort [] cjkKO;
static byte [] cjkKOlv2;
- class CollationSource // instantiated for each CultureInfo
+ class TailoringInfo // instantiated for each CultureInfo
{
// Primary constants
int tailoringIndex;
int tailoringCount;
- bool reverseAccentOrder;
+ bool frenchSort;
+/*
// This array is set according to CJK type, and CJK type
// will be hardcoded, being identified from LCID.
ushort [] cjk;
-
// For Korean, level2 table is specially treated.
-
- // Computed values for optimization in use.
- byte [*] hasTailoringHead;
- byte [*] hasTailoringTail;
+ byte [] cjkLevel2;
+*/
}