Icyrockton
09/13/2023, 9:03 AMsimplifyLowerConstraint
, simplifyUpperConstraint
).
if we have Foo <: T?
, how can we introduce Foo & Any <: T
?
I have read kotlin specification Definitely Non-nullable Types part , it mention T & Any
is non-nullable type , but it's only used for type parameter.
against Foo & Any
is just a intersection type or it's an definitely non-nullable type?dmitriy.novozhilov
09/13/2023, 9:14 AMDNN(T)
and T & Any
are the identical types
There is a special abstraction for definitely non null types only for historical and performance reasonsIcyrockton
09/13/2023, 9:23 AMFoo <: T?
can introduce Foo & Any <: T
? thank youdmitriy.novozhilov
09/13/2023, 9:26 AMFoo <: T?
• Foo <: T & Nothing?
expand T?
• Foo & Any <: T
remove null
from values of types in both sides