Uninhabited Types
Never
是一个空枚举,即没有有效的case
。所以它是一种uninhabited type
,即明显没有值的类型。Swift
中,以下两种情况可以看成是uninhabited type
:
- 一个枚举类型,如果没有
case
,或者所有case
已知,且所有的case
都有关联值,而所有的关联值类型都为空; - 元组、结构体或者类,如果有任意的
uninhabited type
类型的存储属性;
If an expression of uninhabited type is evaluated, it is considered unreachable by control flow diagnostics.
另外,函数和元类型不能是uninhabited type
。
参考