Package-level declarations

Functions

Link copied to clipboard
infix fun <Number> Number.doublingMinus(other: Int): Number
infix fun <Number> Number.doublingMinus(other: Long): Number
infix fun <Number> Number.doublingMinus(other: UInt): Number
infix fun <Number> Number.doublingMinus(other: ULong): Number
infix fun <Number> Int.doublingMinus(other: Number): Number
infix fun <Number> Long.doublingMinus(other: Number): Number
infix fun <Number> UInt.doublingMinus(other: Number): Number
infix fun <Number> ULong.doublingMinus(other: Number): Number
Link copied to clipboard
infix fun <Number> Number.doublingPlus(other: Int): Number
infix fun <Number> Number.doublingPlus(other: Long): Number
infix fun <Number> Number.doublingPlus(other: UInt): Number
infix fun <Number> Number.doublingPlus(other: ULong): Number
infix fun <Number> Int.doublingPlus(other: Number): Number
infix fun <Number> Long.doublingPlus(other: Number): Number
infix fun <Number> UInt.doublingPlus(other: Number): Number
infix fun <Number> ULong.doublingPlus(other: Number): Number
Link copied to clipboard
infix fun <Number> Number.doublingTimes(other: Int): Number
infix fun <Number> Number.doublingTimes(other: Long): Number
infix fun <Number> Number.doublingTimes(other: UInt): Number
infix fun <Number> Number.doublingTimes(other: ULong): Number
infix fun <Number> Int.doublingTimes(other: Number): Number
infix fun <Number> Long.doublingTimes(other: Number): Number
infix fun <Number> UInt.doublingTimes(other: Number): Number
infix fun <Number> ULong.doublingTimes(other: Number): Number
Link copied to clipboard
inline fun <Number> rightAddMultipliedByDoubling(base: Number, arg: Number, multiplier: UInt, additionOp: (Number, Number) -> Number): Number
inline fun <Number> rightAddMultipliedByDoubling(base: Number, arg: Number, multiplier: ULong, additionOp: (Number, Number) -> Number): Number
inline fun <Number> rightAddMultipliedByDoubling(base: Number, arg: Number, multiplier: Int, additionOp: (Number, Number) -> Number, negationOp: (Number) -> Number): Number
inline fun <Number> rightAddMultipliedByDoubling(base: Number, arg: Number, multiplier: Int, additionOp: (Number, Number) -> Number, rightSubtractionOp: (Number, Number) -> Number): Number
inline fun <Number> rightAddMultipliedByDoubling(base: Number, arg: Number, multiplier: Long, additionOp: (Number, Number) -> Number, negationOp: (Number) -> Number): Number
inline fun <Number> rightAddMultipliedByDoubling(base: Number, arg: Number, multiplier: Long, additionOp: (Number, Number) -> Number, rightSubtractionOp: (Number, Number) -> Number): Number

Applies multiplication-by-doubling algorithm (a.k.a. exponentiation by squaring) to add argument arg multiplied by integer multiplier to the right of base.

Link copied to clipboard
inline fun <Number> rightMultiplyByDoubling(arg: Number, multiplier: UInt, lazyZero: () -> Number, additionOp: (Number, Number) -> Number): Number
inline fun <Number> rightMultiplyByDoubling(arg: Number, multiplier: ULong, lazyZero: () -> Number, additionOp: (Number, Number) -> Number): Number

Applies multiplication-by-doubling algorithm (a.k.a. exponentiation by squaring) to multiply argument arg by integer multiplier or return result of lazyZero if multiplier is 0uL.

inline fun <Number> rightMultiplyByDoubling(arg: Number, multiplier: Int, lazyZero: () -> Number, additionOp: (Number, Number) -> Number, negationOp: (Number) -> Number): Number
inline fun <Number> rightMultiplyByDoubling(arg: Number, multiplier: Long, lazyZero: () -> Number, additionOp: (Number, Number) -> Number, negationOp: (Number) -> Number): Number

Applies multiplication-by-doubling algorithm (a.k.a. exponentiation by squaring) to multiply argument arg by integer multiplier if multiplier is positive, multiply -arg by multiplier if multiplier is negative, or return lazyZero() if multiplier is zero.

Link copied to clipboard
@JvmName(name = "squaringPowerReceiver")
infix fun <Number> Number.squaringPower(exponent: Int): Number
@JvmName(name = "squaringPowerReceiver")
infix fun <Number> Number.squaringPower(exponent: Long): Number
@JvmName(name = "squaringPowerUReceiver")
infix fun <Number> Number.squaringPower(exponent: UInt): Number
@JvmName(name = "squaringPowerUReceiver")
infix fun <Number> Number.squaringPower(exponent: ULong): Number