Pattern: Use of lateinit
Issue: -
Using lateinit
for property initialization can be error prone and the actual initialization is not guaranteed. Try using constructor injection or delegation to initialize properties.
Example of incorrect code:
class Foo {
@JvmField lateinit var i1: Int
@JvmField @SinceKotlin("1.0.0") lateinit var i2: Int
}