abstract class BaseUInt384Value<T : UInt384Value<T>!> : UInt384Value<T>
(source)
Base class for UInt384Value
.
This class is abstract as it is not meant to be used directly, but it has no abstract methods. As mentioned in UInt384Value
, this is used to create strongly-typed type aliases of UInt384
. In other words, this allow to "tag" numbers with the unit of what they represent for the type-system, which can help clarity, but also forbid mixing numbers that are mean to be of different units (the strongly-typed part).
This class implements UInt384Value
, but also adds a few operations that take a UInt384
directly, for instance #multiply(UInt384)
. The rational is that multiplying a given quantity of something by a "raw" number is always meaningful, and return a new quantity of the same thing.
<init> |
BaseUInt384Value(value: UInt384!, ctor: Function<UInt384!, T>!) BaseUInt384Value(value: Long, ctor: Function<UInt384!, T>!) BaseUInt384Value(value: BigInteger!, ctor: Function<UInt384!, T>!) |
add |
open fun add(value: T): T open fun add(value: Long): T
Returns a value that is open fun add(value: UInt384!): T |
addMod |
open fun addMod(value: T, modulus: UInt384!): T open fun addMod(value: Long, modulus: UInt384!): T open fun addMod(value: Long, modulus: Long): T
Returns a value equivalent to open fun addMod(value: UInt384!, modulus: UInt384!): T |
compareTo |
open fun compareTo(other: T): Int
Compare two open fun compareTo(other: UInt384!): Int |
copy |
Return a copy of this value, or itself if immutable. open fun copy(): T |
divide |
open fun divide(value: T): T open fun divide(value: Long): T
Returns a value that is open fun divide(value: UInt384!): T |
equals |
open fun equals(other: Any?): Boolean |
hashCode |
open fun hashCode(): Int |
mod |
open fun mod(modulus: UInt384!): T open fun mod(modulus: Long): T |
multiply |
open fun multiply(value: T): T open fun multiply(value: Long): T
Returns a value that is open fun multiply(value: UInt384!): T |
multiplyMod |
open fun multiplyMod(value: T, modulus: UInt384!): T open fun multiplyMod(value: Long, modulus: UInt384!): T open fun multiplyMod(value: Long, modulus: Long): T
Returns a value that is open fun multiplyMod(value: UInt384!, modulus: UInt384!): T |
pow |
open fun pow(exponent: UInt384!): T open fun pow(exponent: Long): T |
subtract |
open fun subtract(value: T): T open fun subtract(value: Long): T
Returns a value that is open fun subtract(value: UInt384!): T |
toBytes |
open fun toBytes(): Bytes48! |
toMinimalBytes |
open fun toMinimalBytes(): Bytes! |
toString |
open fun toString(): String |
toUInt384 |
open fun toUInt384(): UInt384! |
zero |
Return the zero value for this type. open fun zero(): T |