Loney Chou
09/21/2024, 9:04 AM!
? 'Cause Java is introducing T!
as non-null type marker and it could be a bit confusing from Kotlin's perspective in the future.CLOVIS
09/21/2024, 11:13 AMBen Woodworth
09/21/2024, 8:45 PM/
!`) typesCLOVIS
09/21/2024, 9:54 PMCLOVIS
09/21/2024, 9:54 PMStringā½
has a nice lookCLOVIS
09/21/2024, 9:55 PMephemient
09/22/2024, 3:56 AMStringā
Stringā
Stringā¼
āø®String
ĀæString
”String
āøString
mikhail.zarechenskiy
09/23/2024, 7:31 AMT!
notation is used only internally. For instance, in the IDE, we could treat String!
as regular non-null String
types in Kotlin, but load String
from Java as String..String?
to avoid confusionKlitos Kyriacou
09/23/2024, 10:05 AMConcurrentNavigableMap<AsynchronousByteChannel..AsynchronousByteChannel?, RandomAccessFile..RandomAccessFile?>..ConcurrentNavigableMap?<AsynchronousByteChannel..AsynchronousByteChannel?, RandomAccessFile..RandomAccessFile?>
Loney Chou
09/24/2024, 8:47 AMConcurrentNavigableMap<AsynchronousByteChannel(?), RandomAccessFile(?)>(?)
? Just mark it as "optional"?Loney Chou
09/24/2024, 8:50 AM(Mutable)X
, such as (Mutable)List
. Currently the MutableList..List
thing is a little obscuring. So combined with (?)
, it now shows (Mutable)List<String(?)>(?)
(try to imagine the ..
form).Klitos Kyriacou
09/24/2024, 9:01 AMClassName(?)
syntax would look a little bit like a constructor call.Michael de Kaste
09/24/2024, 9:13 AMConcurrentNavigableMap<AsynchronousByteChannel!?, RandomAccesFile!?>!?
Nanami
09/24/2024, 10:06 AMMichael de Kaste
09/24/2024, 11:00 AM