Joel
val fullName: String get() = listOfNotNull(firstName, lastName).joinToString(" ") private var cachedFullName by UserDetailsTable.fullName companion object : EntityClass<String, UserDetailsView>(UserDetailsTable) { init { EntityHook.subscribe { action -> action.toEntity(this)?.let { it.cachedFullName = it.fullName } } } }
tapac
User.new(userId) { firstName = "John" lastName = "Doe" }
A modern programming language that makes developers happier.