Add type aliases for Kotlin and a simple extension function.

This commit is contained in:
Danila Fedorin 2017-09-01 17:14:54 -07:00
parent 7a296e4e8b
commit 453cd0ea77
1 changed files with 10 additions and 0 deletions

View File

@ -0,0 +1,10 @@
@file:JvmName("NumberUtils")
package org.nwapw.abacus.number
typealias PromotionFunction = java.util.function.Function<NumberInterface, NumberInterface>
typealias PromotionPath = List<PromotionFunction>
typealias NumberClass = Class<NumberInterface>
fun PromotionPath.promote(from: NumberInterface): NumberInterface {
return fold(from, { current, function -> function.apply(current) })
}