abstract class BaseUInt256Value<T : UInt256Value<T>> : UInt256Value<T>
(source)
Base class for UInt256Value.
This class is abstract as it is not meant to be used directly, but it has no abstract methods. As mentioned in UInt256Value, this is used to create strongly-typed type aliases of UInt256. 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 UInt256Value, but also adds a few operations that take a UInt256 directly, for instance #multiply(UInt256)
. 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.
- The concrete type of the value.
open fun add(value: T): T open fun add(value: Long): T open fun add(value: UInt256): T
Returns a value that is |
|
open fun addMod(value: T, modulus: UInt256): T open fun addMod(value: Long, modulus: UInt256): T open fun addMod(value: Long, modulus: Long): T open fun addMod(value: UInt256, modulus: UInt256): T
Returns a value equivalent to |
|
open fun compareTo(other: T): Int open fun compareTo(other: UInt256): Int
Compare two UInt256 values. |
|
open fun divide(value: T): T open fun divide(value: Long): T open fun divide(value: UInt256): T
Returns a value that is |
|
open fun divideCeil(value: T): T open fun divideCeil(value: Long): T open fun divideCeil(value: UInt256): T
Returns a value that is |
|
open fun equals(other: Any?): Boolean |
|
open fun hashCode(): Int |
|
open fun mod(modulus: UInt256): T open fun mod(modulus: Long): T |
|
open fun mod0(modulus: UInt256): T open fun mod0(modulus: Long): T |
|
open fun multiply(value: T): T open fun multiply(value: Long): T open fun multiply(value: UInt256): T
Returns a value that is |
|
open fun multiplyMod(value: T, modulus: UInt256): T open fun multiplyMod(value: Long, modulus: UInt256): T open fun multiplyMod(value: Long, modulus: Long): T open fun multiplyMod(value: UInt256, modulus: UInt256): T
Returns a value that is |
|
open fun pow(exponent: UInt256): T open fun pow(exponent: Long): T |
|
open fun subtract(value: T): T open fun subtract(value: Long): T open fun subtract(value: UInt256): T
Returns a value that is |
|
open fun toBytes(): Bytes32 |
|
open fun toMinimalBytes(): Bytes |
|
open fun toString(): String |
|
open fun toUInt256(): UInt256 |
open fun addExact(value: T): T open fun addExact(value: Long): T
Returns a value that is |
|
open fun bitLength(): Int |
|
open fun fitsInt(): Boolean |
|
open fun fitsLong(): Boolean |
|
open fun intValue(): Int |
|
open fun isZero(): Boolean |
|
open fun numberOfLeadingZeros(): Int |
|
open fun plus(value: T): T open fun plus(value: Long): T
Returns a value that is This notation can be used in Kotlin with the |
|
open fun subtractExact(value: T): T open fun subtractExact(value: Long): T
Returns a value that is |
|
open fun toBigInteger(): BigInteger |
|
open fun toHexString(): String
This value represented as an hexadecimal string. Note that this representation includes all the 32 underlying bytes, no matter what the integer actually represents (in other words, it can have many leading zeros). For a shorter representation that don't include leading zeros, use |
|
open fun toLong(): Long |
|
open fun toShortHexString(): String |
class Wei : BaseUInt256Value<Wei>
A unit measure of Wei as used by the Ethereum VM. |