Int
A library to convert unsigned integers to signed integers using two's complement. It contains basic arithmetic operations for signed integers.
Structs
Int
struct Int has copy, drop, store {
value: u256
}value - The number.
const EQUAL: u8 = 0;
const LESS_THAN: u8 = 1;
const GREATER_THAN: u8 = 2;Interface
value
It returns the inner value inside self.
public fun value(self: Int): u256@param self: The Int struct.
@return u256.
zero
It creates a zero Int.
public fun zero(): Int@return Int. The wrapped value.
one
It creates a one Int.
public fun one(): Int@return Int. The wrapped value.
max
It creates the largest possible Int.
public fun max(): Int@return Int.
from_u8
It wraps a u8 value into an Int.
public fun from_u8(value: u8): Int@param value: The u8 value to wrap
@return Int. The wrapped
value
from_u16
It wraps a u16 value into an Int.
public fun from_u16(value: u16): Int@param value: The u16 value to wrap
@return Int. The wrapped
value
from_u32
It wraps a u32 value into an Int.
public fun from_u32(value: u32): Int@param value: The u32 value to wrap
@return Int. The wrapped
value
from_u64
It wraps a u64 value into an Int.
public fun from_u64(value: u64): Int@param value: The u64 value to wrap
@return Int. The wrapped
value
from_u128
It wraps a u128 value into an Int.
public fun from_u128(value: u128): Int@param value: The u128 value to wrap
@return Int. The wrapped
value
from_u256
It wraps a u128 value into an Int.
public fun from_u256(value: u256): Int@param value: The u256 value to wrap
@return Int. The wrapped
value
Abort
if value is larger than 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF.
neg_from_u8
It wraps a u8 value into an Int and negates it.
public fun neg_from_u8(value: u8): Int@param value: The u16 value to wrap
@return Int. The wrapped
value
neg_from_u16
It wraps a u16 value into an Int and negates it.
public fun neg_from_u16(value: u16): Int@param value: The u16 value to wrap
@return Int. The wrapped
value
neg_from_u32
It wraps a u32 value into an Int and negates it.
public fun neg_from_u32(value: u32): Int@param value: The u32 value to wrap
@return Int. The wrapped
value
neg_from_u64
It wraps a u64 value into an Int and negates it.
public fun neg_from_u64(value: u64): Int@param value: The u64 value to wrap
@return Int. The wrapped
value
neg_from_u128
It wraps a u128 value into an Int and negates it.
public fun neg_from_u128(value: u128): Int@param value: The u128 value to wrap
@return Int. The wrapped
value
neg_from_u256
It wraps a u256 value into an Int and negates it.
public fun neg_from_u256(value: u256): Int@param value: The u256 value to wrap
@return Int. The wrapped
value
to_u8
It unwraps the value inside self and casts it to u8.
public fun to_u8(self: Int): u8@param self: The Int struct.
@return u8. The inner value cast to u8.
Abort
self.valueis negative
to_u16
It unwraps the value inside self and casts it to u16.
public fun to_u16(self: Int): u16@param self: The Int struct.
@return u16. The inner value cast to u16.
Abort
self.valueis negative
to_u32
It unwraps the value inside self and casts it to u32.
public fun to_u32(self: Int): u32@param self: The Int struct.
@return u32. The inner value cast to u32.
Abort
self.valueis negative
to_u64
It unwraps the value inside self and casts it to u64.
public fun to_u64(self: Int): u64@param self: The Int struct.
@return u64. The inner value cast to u64.
Abort
self.valueis negative
to_u128
It unwraps the value inside self and casts it to u128.
public fun to_u128(self: Int): u128@param self: The Int struct.
@return u128. The inner value cast to u128.
Abort
self.valueis negative
to_u256
It unwraps the value inside self and casts it to u256.
public fun to_u256(self: Int): u256@param self: The Int struct.
@return u128. The inner value cast to u256.
Abort
self.valueis negative
truncate_to_u8
It unwraps the value inside self and truncates it to u8.
public fun truncate_to_u8(self: Int): u8@param self: The Int struct.
@return u8. The inner value is truncated to u8.
truncate_to_u16
It unwraps the value inside self and truncates it to u16.
public fun truncate_to_u16(self: Int): u16@param self: The Int struct.
@return u8. The inner value is truncated to u16.
truncate_to_u32
It unwraps the value inside self and truncates it to u16.
public fun truncate_to_u32(self: Int): u32@param self: The Int struct.
@return u8. The inner value is truncated to u32.
truncate_to_u64
It unwraps the value inside self and truncates it to u64.
public fun truncate_to_u64(self: Int): u64@param self: The Int struct.
@return u8. The inner value is truncated to u64.
truncate_to_u128
It unwraps the value inside self and truncates it to u128.
public fun truncate_to_u128(self: Int): u128@param self: The Int struct.
@return u8. The inner value is truncated to u128.
flip
It flips the sign of self.
public fun flip(self: Int): Int@param self: The Int struct.
@return Int. The returned Int will have its signed flipped.
abs
It returns the absolute of an Int.
public fun abs(self: Int): Int@param self: The Int struct.
@return Int. The absolute.
is_neg
It checks if self is negative.
public fun is_neg(self: Int): bool@param self: The Int struct.
@return bool.
is_zero
It checks if self is zero.
public fun is_zero(self: Int): bool@param self: The Int struct.
@return bool.
is_positive
It checks if self is positive.
public fun is_positive(self: Int): bool@param self: The Int struct.
@return bool.
compare
It compares a and b.
public fun compare(a: Int, b: Int): u8@param a: An Int struct.
@param b: An Int struct.
@return 0. a == b.
@return 1. a < b.
@return 2. a > b.
eq
It checks if a and b are equal.
public fun eq(a: Int, b: Int): bool@param a: An Int struct.
@param b: An Int struct.
@return bool.
lt
It checks if a < b.
public fun lt(a: Int, b: Int): bool@param a: An Int struct.
@param b: An Int struct.
@return bool.
lte
It checks if a <= b.
public fun lte(a: Int, b: Int): bool@param a: An Int struct.
@param b: An Int struct.
@return bool.
gt
It checks if a > b.
public fun gt(a: Int, b: Int): bool@param a: An Int struct.
@param b: An Int struct.
@return bool.
gte
It checks if a >= b.
public fun gte(a: Int, b: Int): bool@param a: An Int struct.
@param b: An Int struct.
@return bool.
add
It checks if a >= b.
public fun add(a: Int, b: Int): Int@param a: An Int struct.
@param b: An Int struct.
@return Int. The result of
a+b.
sub
It performs a - b.
public fun sub(a: Int, b: Int): Int@param a: An Int struct.
@param b: An Int struct.
@return Int. The result of
a-b.
mul
It performs a * b.
public fun mul(a: Int, b: Int): Int@param a: An Int struct.
@param b: An Int struct.
@return Int. The result of
a*b.
div_down
It performs a / b rounding down.
public fun div_down(a: Int, b: Int): Int@param a: An Int struct.
@param b: An Int struct.
@return Int. The result of
a/brounding down.
div_up
It performs a / b rounding up.
public fun div_up(a: Int, b: Int): Int@param a: An Int struct.
@param b: An Int struct.
@return Int. The result of
a/brounding up.
mod
It performs a % b.
public fun mod(a: Int, b: Int): Int@param a: An Int struct.
@param b: An Int struct.
@return Int. The result of
a%b.
pow
It performs base ** exponent.
public fun pow(base: Int, exponent: u256): Int@param base: An Int struct.
@param exponent: The exponent.
@return Int. The result of
base**exponent.
shr
It performs self >> rhs.
public fun shr(self: Int, rhs: u8): Int@param self: An Int struct.
@param rhs: The value to right-hand shift.
@return Int. The result of
self>>rhs.
shl
It performs self << lhs.
public fun shl(self: Int, lhs: u8): Int@param self: An Int struct.
@param lhs: The value to right-hand shift.
@return Int. The result of
self<<lhs.
or
It performs a | b.
public fun or(a: Int, b: Int): Int@param a: The first operand.
@param b: The second operand.
@return Int. The result of
a|b.
and
It performs a & b.
public fun and(a: Int, b: Int): Int@param a: The first operand.
@param b: The second operand.
@return Int. The result of
a&b.
Last updated
Was this helpful?