Disallow PropertyMetadataImpl in conventions for delegated properties

This commit is contained in:
Evgeny Gerashchenko
2015-02-19 16:14:37 +03:00
parent 056daeaadb
commit af7eba64f7
6 changed files with 28 additions and 5 deletions
@@ -8,12 +8,12 @@ fun format(event: String, property: String, value: Int): String
object LoggerDelegate {
var log = ""
fun get(state: State, desc: PropertyMetadataImpl): Int {
fun get(state: State, desc: PropertyMetadata): Int {
log += format("get", desc.name, state.realValue)
return state.realValue
}
fun set(state: State, desc: PropertyMetadataImpl, value: Int) {
fun set(state: State, desc: PropertyMetadata, value: Int) {
log += format("set", desc.name, value)
state.realValue = value
}
@@ -7,9 +7,9 @@ trait Base {
}
class Delegate(val multiplier: Int) {
fun get(state: State, desc: PropertyMetadataImpl): Int = multiplier * state.value
fun get(state: State, desc: PropertyMetadata): Int = multiplier * state.value
fun set(state: State, desc: PropertyMetadataImpl, value: Int) {
fun set(state: State, desc: PropertyMetadata, value: Int) {
state.value = value / multiplier
}