Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

name: type-set-u8
kind: type
description: 1-byte multi-select bitmask over an inline dictionary of up to 8 labels.
type: reference
applies_to: inspect, predict

Bytes

Fixed-width: 1 byte per record. Not bit-packed (the byte is consumed atomically as a bitmask, not bit-cursor-shared). Stride contributes 1 byte. Bit i of the byte corresponds to dictionary entry i — bit set means “label i selected”.

Range

Up to MaxSetEntries() = 8 distinct labels in the inline dictionary. The on-wire value is any 8-bit bitmask, so 2^8 = 256 distinct selection patterns are representable. Empty mask (0x00) is a valid value meaning “no labels selected” — it is NOT null. Overflow on import → PULSE_IMPORT_SET_OVERFLOW.

Null

Orthogonal — and the empty-vs-null distinction is load-bearing. Nullable: true participates in the per-record null bitmap; null is signaled there alone. Mask 0x00 = “no selections present”. Decimal128 and set_* are the two types where in-band sentinels are explicitly disallowed.

Dictionary

Present (HasDictionary() = true). Inline schema block, shared across all records; MaxDictEntries() = 8. Shard cohesion: union-merge under the 8-label cap; width overflow → PULSE_SHARD_DICT_WIDTH_OVERFLOW. An SPSS multiple-DICHOTOMY response set imports as one of these, with the constituent variables’ field names as the entries — additively, beside the constituent columns themselves (cohort-schema-design, SPSS import).

See