OxL Справочник OxL
РусскийEnglish

3.5 Объединения и опционалы

  • A | B — анонимное объединение. Объединения плоские (A | (B | C) = A | B | C), порядок не важен, дубликаты удаляются.
  • Подтипирование: A — подтип A | B; значение подтипа неявно приводится к объединению.
  • T? — сокращение для T | none.
  • Сужение типа: x is T в условии, match, ?, ??, ?., ! (§5, §6.5). После if x is T переменная x в ветке имеет тип T, если она неизменяема или не изменялась в ветке.
  • Объединение, содержащее хотя бы один тип с @error (§6.5), — результат с ошибкой; его нельзя проигнорировать.

type-mismatch

См. также

Исходник: docs/spec/oxl-standard.md