#root::numeric

N32 root/numeric/N32.vi

type N32;

Natural numbers represented with 32 bits of precision.

let x = 12 + 34;
x // 46

N32 values are always in the range [0, 2^32) = [0, 4_294_967_296).

maximum root/numeric/N32.vi:20

const maximum: N32;

The maximum N32 value, 2^32 - 1.

fork root/numeric/N32.vi:22

impl fork: Fork[N32];

drop root/numeric/N32.vi:23

impl drop: Drop[N32];

add root/numeric/N32.vi:25

impl add: Add[N32, N32, N32];

sub root/numeric/N32.vi:31

impl sub: Sub[N32, N32, N32];

mul root/numeric/N32.vi:37

impl mul: Mul[N32, N32, N32];

pow root/numeric/N32.vi:43

impl pow: Pow[N32, N32, N32];

div root/numeric/N32.vi:49

impl div: Div[N32, N32, N32];

rem root/numeric/N32.vi:59

impl rem: Rem[N32, N32, N32];

div_rem root/numeric/N32.vi:69

fn div_rem(a: N32, b: N32) -> (N32, N32);

pos root/numeric/N32.vi:73

impl pos: Pos[N32, I32];

neg root/numeric/N32.vi:79

impl neg: Neg[N32, I32];

bit_and root/numeric/N32.vi:85

impl bit_and: BitAnd[N32, N32, N32];

bit_or root/numeric/N32.vi:91

impl bit_or: BitOr[N32, N32, N32];

bit_xor root/numeric/N32.vi:97

impl bit_xor: BitXor[N32, N32, N32];

shl root/numeric/N32.vi:103

impl shl: Shl[N32, N32, N32];

shr root/numeric/N32.vi:109

impl shr: Shr[N32, N32, N32];

not root/numeric/N32.vi:115

impl not: Not[N32, N32];

to_string root/numeric/N32.vi:121

impl to_string: Cast[N32, String];

show root/numeric/N32.vi:136

impl show: Show[N32];

to_binary_raw root/numeric/N32.vi:142

fn to_binary_raw(n: N32) -> String;

to_binary root/numeric/N32.vi:154

fn to_binary(n: N32) -> String;

to_hex_raw root/numeric/N32.vi:158

fn to_hex_raw(n: N32) -> String;

to_hex root/numeric/N32.vi:176

fn to_hex(n: N32) -> String;

parse root/numeric/N32.vi:180

fn parse(str: String) -> Option[N32];

rotate_left root/numeric/N32.vi:198

fn rotate_left(a: N32, b: N32) -> N32;

rotate_right root/numeric/N32.vi:202

fn rotate_right(a: N32, b: N32) -> N32;

ord root/numeric/N32.vi:206

impl ord: Ord[N32];

eq root/numeric/N32.vi:220

impl eq: Eq[N32];

min root/numeric/N32.vi:230

fn min(a: N32, b: N32) -> N32;

max root/numeric/N32.vi:238

fn max(a: N32, b: N32) -> N32;

diff root/numeric/N32.vi:246

fn diff(a: N32, b: N32) -> N32;

gcd root/numeric/N32.vi:254

fn gcd(a: N32, b: N32) -> N32;

sqrt root/numeric/N32.vi:261

fn sqrt(n: N32) -> N32;

log root/numeric/N32.vi:274

fn log(n: N32, b: N32) -> N32;

leading_zeros root/numeric/N32.vi:302

fn leading_zeros(n: N32) -> N32;

trailing_zeros root/numeric/N32.vi:311

fn trailing_zeros(n: N32) -> N32;