added T is nullable support
This commit is contained in:
1 parent
c54d947f1c
commit
37d093817e
9 files changed
+171
-11
No files matched your search
@@ -109,6 +109,24 @@ Examples (T = A | B):
|
||||
B in T // true
|
||||
T is A | B // true
|
||||
|
||||
# Nullability checks for types
|
||||
|
||||
Use `is nullable` to check whether a type expression accepts `null`:
|
||||
|
||||
T is nullable
|
||||
T !is nullable
|
||||
|
||||
This works with concrete and generic types:
|
||||
|
||||
fun describe<T>(x: T): String = when (T) {
|
||||
nullable -> "nullable"
|
||||
else -> "non-null"
|
||||
}
|
||||
|
||||
Equivalent legacy form:
|
||||
|
||||
null is T
|
||||
|
||||
# Practical examples
|
||||
|
||||
fun acceptInts<T: Int>(xs: List<T>) { }
|
||||
|
||||
Reference in new issue
Block a user