допустимые значения и применимые к ним операции. В подкасте наверное что то вроде. Можно ввести тип массива который содержит только три элемента. Тогда мы сможем это на этапе компиляции проверить. Правда если мы его из json парсить будем, ине распрарсим то упадем или будем обрабатывать optional)
Свою версию тоже скину: тип данных - информация о том к какому множеству (включая операции над ним) принадлежат эти данные....для чистого struct вроде хорошо подходит....nested type ещё завернуть надо как то ))