Quantity

abstract class Quantity<Q : Quantity<Q, U>, U : UnitBase> : Comparable<Q> , Serializable

A base interface for quantities. Outlines the common operations to retrieve values and perform mathematical operations.

Parameters

Q

The quantity type implementing this interface.

U

An enum type that contains the units that the quantity's values can be in.

Types

Link copied to clipboard
data class FormattedQuantity(val value: Double, val symbol: String)

Output structure of format.

Functions

Link copied to clipboard
abstract fun abs(): Q

Returns a new instance with the value from this as absolute value.

Link copied to clipboard
abstract operator fun compareTo(other: Q): Int
Link copied to clipboard
abstract operator fun div(divisor: Double): Q
abstract operator fun div(divisor: Int): Q

Returns a new instance with the value from this divided by divisor.

Link copied to clipboard
abstract fun format(unit: U): Quantity.FormattedQuantity

Returns a FormattedQuantity representation of the value from this in the given unit.

Link copied to clipboard
abstract operator fun minus(other: Q): Q

Returns a new instance that has other's value subtracted from this.

Link copied to clipboard
abstract operator fun plus(other: Q): Q

Returns a new instance with a value equal to the sum of values from this and other.

Link copied to clipboard
abstract operator fun times(factor: Double): Q
abstract operator fun times(factor: Int): Q

Returns a new instance with the value from this multiplied by factor.

Link copied to clipboard
abstract operator fun unaryMinus(): Q

Returns a new instance with the value from this as negative.

Inheritors

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard