Never
Never
is the bottom type, i.e., it is a subtype of all types. There is no value that has type Never
. Never
can be used as the return type for functions that never return normally. For example, it is the return type of the function panic
.
// Declare a function named `crashAndBurn` which will never return,
// because it calls the function named `panic`, which never returns.
//
fun crashAndBurn(): Never {
panic("An unrecoverable error occurred")
}
// Invalid: Declare a constant with a `Never` type, but the initial value is an integer.
//
let x: Never = 1
// Invalid: Declare a function which returns an invalid return value `nil`,
// which is not a value of type `Never`.
//
fun returnNever(): Never {
return nil
}
Last updated
Was this helpful?