Fleshgrinder
02/14/2020, 11:47 AMFleshgrinder
02/14/2020, 11:47 AMit
is a ByteArray
Fleshgrinder
02/14/2020, 11:49 AMspand
02/14/2020, 11:49 AMFleshgrinder
02/14/2020, 11:49 AMspand
02/14/2020, 11:50 AMFleshgrinder
02/14/2020, 11:52 AMmarstran
02/14/2020, 11:55 AMFleshgrinder
02/14/2020, 11:57 AM0x80
is reported as integer literal whereas 0x00
is considered a byte literal. How come? Why is 0x00
not considered an integer literal?Fleshgrinder
02/14/2020, 11:58 AM0.toByte()
, 0.toShort()
, 0
, and 0L
. 😛diesieben07
02/14/2020, 11:59 AM0x00
can be both an integer or byte (or short) literal.
0x80
can only be an integer because it's not a valid byte.diesieben07
02/14/2020, 12:00 PMval x: Int = 0x00 // valid
val y: Byte = 0x00 // valid
val z: Int = 0x80 // valid
val w: Byte = 0x80 // invalid, not a byte.
Fleshgrinder
02/14/2020, 12:00 PMFleshgrinder
02/14/2020, 12:00 PMdiesieben07
02/14/2020, 12:00 PMdiesieben07
02/14/2020, 12:00 PM0x00
has different types, depending on context.diesieben07
02/14/2020, 12:01 PMFleshgrinder
02/14/2020, 12:01 PMdiesieben07
02/14/2020, 12:01 PMdiesieben07
02/14/2020, 12:01 PMdiesieben07
02/14/2020, 12:02 PMval x: Byte = 0x00
does not do any conversion. It simply "creates" a byte.Fleshgrinder
02/14/2020, 12:03 PMdiesieben07
02/14/2020, 12:03 PMgian
02/14/2020, 12:04 PMval b: Int = 1
val a: Long = 1
Fleshgrinder
02/14/2020, 12:07 PM0
Fleshgrinder
02/14/2020, 12:08 PMerror[E0277]: cannot subtract i64 from i32
gian
02/14/2020, 12:08 PMoperator fun minus
defined for Int
that accepts Long
diesieben07
02/14/2020, 12:09 PM-
is overloaded in Kotlin to allow Int.minus(Long)
. It returns a Long
.
It's perfectly reasonable, imho.diesieben07
02/14/2020, 12:09 PM-
to jump to the definition.Fleshgrinder
02/14/2020, 12:12 PMdiesieben07
02/14/2020, 12:13 PMKroppeb
02/14/2020, 12:13 PMFleshgrinder
02/14/2020, 12:13 PMu8
is unsigned but 0x80
does not carry that info.Kroppeb
02/14/2020, 12:14 PM0x80
is inferred to be an u8
out of contextdiesieben07
02/14/2020, 12:14 PMbuf[6]
is unsigned. buf[6] & 0x0f
is therefor also unsigned.Fleshgrinder
02/14/2020, 12:14 PMu
after each literal.diesieben07
02/14/2020, 12:14 PMKroppeb
02/14/2020, 12:14 PMFleshgrinder
02/14/2020, 12:14 PMKroppeb
02/14/2020, 12:15 PMFleshgrinder
02/14/2020, 12:15 PM@ExperimentalUnsignedTypes
how much more explicit?Fleshgrinder
02/14/2020, 12:28 PMtheyann
02/14/2020, 12:57 PMFleshgrinder
02/14/2020, 12:58 PMFleshgrinder
02/14/2020, 12:59 PMtheyann
02/14/2020, 1:00 PMFleshgrinder
02/14/2020, 1:01 PMdfriehs
02/14/2020, 1:14 PM0x80
is -0x80
Fleshgrinder
02/14/2020, 1:16 PMFleshgrinder
02/15/2020, 1:18 PMKroppeb
02/15/2020, 1:23 PMgildor
02/17/2020, 3:14 PM