NonZeroInt

@Serializable(with = NonZeroIntSerializer::class)
@Since(version = KotoolsTypesVersion.V1_1_0)
interface NonZeroInt : AnyInt

Represents an integer number of type Int that is other than zero.

You can use the toNonZeroInt function for creating an instance of this type.


Serialization and deserialization

The serialization and deserialization processes of this type behave like for the Int type.

Here's an example of Kotlin code that encodes and decodes this type using the JavaScript Object Notation (JSON) format from kotlinx.serialization:

val number: NonZeroInt = 123.toNonZeroInt()
.getOrThrow()
val encoded: String = Json.encodeToString(number)
assertEquals(expected = "123", actual = encoded)
val decoded: NonZeroInt = Json.decodeFromString(encoded)
assertEquals(expected = number, actual = decoded)

Inheritors

Types

Link copied to clipboard
object Companion

Contains declarations for holding or building a NonZeroInt.

Functions

Link copied to clipboard
@Since(version = KotoolsTypesVersion.V4_1_0)
open infix operator override fun compareTo(other: AnyInt): Int

Compares this integer with the other one for order. Returns zero if this integer equals the other one, a negative number if it's less than the other one, or a positive number if it's greater than the other one.

Link copied to clipboard
@Since(version = KotoolsTypesVersion.V4_1_0)
operator fun AnyInt.div(other: NonZeroInt): Int

Divides this integer by the other one, truncating the result to an integer that is closer to zero.

Link copied to clipboard
@Since(version = KotoolsTypesVersion.V4_1_0)
operator fun AnyInt.minus(other: Int): Int
@Since(version = KotoolsTypesVersion.V4_1_0)
operator fun AnyInt.minus(other: AnyInt): Int

Subtracts the other integer from this one.

Link copied to clipboard
@Since(version = KotoolsTypesVersion.V4_1_0)
operator fun AnyInt.plus(other: Int): Int
@Since(version = KotoolsTypesVersion.V4_1_0)
operator fun AnyInt.plus(other: AnyInt): Int

Adds the other integer to this one.

Link copied to clipboard
@Since(version = KotoolsTypesVersion.V4_1_0)
operator fun AnyInt.rem(other: NonZeroInt): Int

Calculates the remainder of truncating division of this integer by the other one.

Link copied to clipboard
@Since(version = KotoolsTypesVersion.V4_1_0)
operator fun AnyInt.times(other: Int): Int
@Since(version = KotoolsTypesVersion.V4_1_0)
operator fun AnyInt.times(other: AnyInt): Int

Multiplies this integer by the other one.

Link copied to clipboard
@Since(version = KotoolsTypesVersion.V4_0_0)
abstract override fun toInt(): Int

Returns this integer as an Int.

Link copied to clipboard
@Since(version = KotoolsTypesVersion.V4_0_0)
abstract override fun toString(): String

Returns the string representation of this integer.

Link copied to clipboard
@ExperimentalSince(version = KotoolsTypesVersion.V4_4_0)
operator fun AnyInt.unaryMinus(): AnyInt
@ExperimentalSince(version = KotoolsTypesVersion.V4_4_0)
operator fun NonZeroInt.unaryMinus(): NonZeroInt

Returns the negative of this integer number.