phldavies
data class Person(val name: String?, val age: Int?)
inline val Person.isValid get() = name != null && age != null
tseisel
checkNotNull
requireNotNull
rax
@ExperimentalContracts fun isValidPerson(name: String?, age: Int?): Boolean { contract { returns(true) implies (name != null) returns(true) implies (age != null) } return name != null && age != null } @OptIn(ExperimentalContracts::class) fun test() { val p = Person("a", 10) if (isValidPerson(p.name, p.age)) { print(p.name.capitalize()) print(p.age.toString()) } }
A modern programming language that makes developers happier.