Logo Search packages:      
Sourcecode: icu version File versions  Download package

anonymous enum

Trie constants, defining shift widths, index array lengths, etc.

Enumerator:
UTRIE_SHIFT 

Shift size for shifting right the input index. 1..9

UTRIE_DATA_BLOCK_LENGTH 

Number of data values in a stage 2 (data array) block. 2, 4, 8, .., 0x200

UTRIE_MASK 

Mask for getting the lower bits from the input index.

UTRIE_LEAD_INDEX_DISP 

Lead surrogate code points' index displacement in the index array. 0x10000-0xd800=0x2800

UTRIE_INDEX_SHIFT 

Shift size for shifting left the index array values. Increases possible data size with 16-bit index values at the cost of compactability. This requires blocks of stage 2 data to be aligned by UTRIE_DATA_GRANULARITY. 0..UTRIE_SHIFT

UTRIE_DATA_GRANULARITY 

The alignment size of a stage 2 data block. Also the granularity for compaction.

UTRIE_SURROGATE_BLOCK_BITS 

Number of bits of a trail surrogate that are used in index table lookups.

UTRIE_SURROGATE_BLOCK_COUNT 

Number of index (stage 1) entries per lead surrogate. Same as number of index entries for 1024 trail surrogates, ==0x400>>UTRIE_SHIFT

UTRIE_BMP_INDEX_LENGTH 

Length of the BMP portion of the index (stage 1) array.

Definition at line 51 of file utrie.h.

     {
    /** Shift size for shifting right the input index. 1..9 */
    UTRIE_SHIFT=5,

    /** Number of data values in a stage 2 (data array) block. 2, 4, 8, .., 0x200 */
    UTRIE_DATA_BLOCK_LENGTH=1<<UTRIE_SHIFT,

    /** Mask for getting the lower bits from the input index. */
    UTRIE_MASK=UTRIE_DATA_BLOCK_LENGTH-1,

    /**
     * Lead surrogate code points' index displacement in the index array.
     * 0x10000-0xd800=0x2800
     */
    UTRIE_LEAD_INDEX_DISP=0x2800>>UTRIE_SHIFT,

    /**
     * Shift size for shifting left the index array values.
     * Increases possible data size with 16-bit index values at the cost
     * of compactability.
     * This requires blocks of stage 2 data to be aligned by UTRIE_DATA_GRANULARITY.
     * 0..UTRIE_SHIFT
     */
    UTRIE_INDEX_SHIFT=2,

    /** The alignment size of a stage 2 data block. Also the granularity for compaction. */
    UTRIE_DATA_GRANULARITY=1<<UTRIE_INDEX_SHIFT,

    /** Number of bits of a trail surrogate that are used in index table lookups. */
    UTRIE_SURROGATE_BLOCK_BITS=10-UTRIE_SHIFT,

    /**
     * Number of index (stage 1) entries per lead surrogate.
     * Same as number of index entries for 1024 trail surrogates,
     * ==0x400>>UTRIE_SHIFT
     */
    UTRIE_SURROGATE_BLOCK_COUNT=(1<<UTRIE_SURROGATE_BLOCK_BITS),

    /** Length of the BMP portion of the index (stage 1) array. */
    UTRIE_BMP_INDEX_LENGTH=0x10000>>UTRIE_SHIFT
};

Generated by  Doxygen 1.6.0   Back to index