fun <T : Any> compare(value: T, comparison: (T) -> Boolean, onError: (T) -> Unit) =
false.takeUnless { comparison(value) }
?.also { onError(value) }
fun <T : Any> compare(value: T, comparison: (T) -> Boolean, onError: (T) -> Unit) =
false.takeUnless { comparison(value) }
?.also { onError(value) }