Skip to content

NInt

graph BT
N1["NInt"] -->|inherits| N2["IntegralNumber"];
N2["IntegralNumber"] -->|inherits| N3["Number"];
N3["Number"] -->|inherits| N4["Stringable"];
N4["Stringable"] -->|inherits| N5["Any"];

Characteristics

Quality Value
Inherits IntegralNumber
Extends N/A
Decorators #extern;
Is enum false
Is sealed false
Is extern true
Is abstract false
Is generator false
Has value semantics true
Has stored properties false
Should register destructor false
Has atomic memory true
Is copy assignable true
Is zero initializable true

Const Expressions

size

const! size = cfg!(`nint_size`)

Functions

min

#Gambol.function.alwaysinline
#default
min () -> NInt

max

#Gambol.function.alwaysinline
#default
max () -> NInt

Methods

construct

#default
#Gambol.function.alwaysinline
construct (s @Self) -> Self

sign

#Gambol.function.alwaysinline
sign (s @Self) -> NInt

abs

#Gambol.function.alwaysinline
abs (s @Self) -> NInt

trem

#Gambol.function.alwaysinline
#default
trem (s @Self, o @Self) -> NInt

tdiv

#Gambol.function.alwaysinline
#default
tdiv (s @Self, o @Self) -> NInt

frem

#Gambol.function.alwaysinline
frem (s @Self, o @Self) -> NInt

fdiv

#Gambol.function.alwaysinline
fdiv (s @Self, o @Self) -> NInt

erem

#Gambol.function.alwaysinline
erem (s @Self, o @Self) -> NInt

ediv

#Gambol.function.alwaysinline
ediv (s @Self, o @Self) -> NInt

tdivrem

#Gambol.function.alwaysinline
tdivrem (s @Self, o @Self) -> NInt, NInt

fdivrem

#Gambol.function.alwaysinline
fdivrem (s @Self, o @Self) -> NInt, NInt

edivrem

#Gambol.function.alwaysinline
edivrem (s @Self, o @Self) -> NInt, NInt

str

str (s @Self, base: Int64 = 10, width: Len = 1) -> String

reverse_bits

#Gambol.function.alwaysinline
#default
reverse_bits (s @Self) -> NInt

swap_bytes

#Gambol.function.alwaysinline
#default
swap_bytes (s @Self) -> NInt

count_ones

#Gambol.function.alwaysinline
#default
count_ones (s @Self) -> NInt

funnel_shift_left

#Gambol.function.alwaysinline
#default
funnel_shift_left (a @Self, b @Self, c @Self) -> NInt

funnel_shift_right

#Gambol.function.alwaysinline
#default
funnel_shift_right (a @Self, b @Self, c @Self) -> NInt

count_leading_zeros

#Gambol.function.alwaysinline
#default
count_leading_zeros (s @Self) -> NInt

count_trailing_zeros

#Gambol.function.alwaysinline
#default
count_trailing_zeros (s @Self) -> NInt

atomic_compare_exchange

#Gambol.function.alwaysinline
#default
atomic_compare_exchange (s @Self, expected @Self, new @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> SelfType, Bool

atomic_add

#Gambol.function.alwaysinline
#default
atomic_add (s @Self, o @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

atomic_sub

#Gambol.function.alwaysinline
#default
atomic_sub (s @Self, o @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

atomic_and

#Gambol.function.alwaysinline
#default
atomic_and (s @Self, o @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

atomic_nand

#Gambol.function.alwaysinline
#default
atomic_nand (s @Self, o @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

atomic_or

#Gambol.function.alwaysinline
#default
atomic_or (s @Self, o @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

atomic_xor

#Gambol.function.alwaysinline
#default
atomic_xor (s @Self, o @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

atomic_max

#Gambol.function.alwaysinline
#default
atomic_max (s @Self, o @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

atomic_min

#Gambol.function.alwaysinline
#default
atomic_min (s @Self, o @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

atomic_load

#Gambol.function.alwaysinline
#default
atomic_load (s @Self, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

atomic_store

#Gambol.function.alwaysinline
#default
atomic_store (s @Self, value NInt, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> Nil

atomic_exchange

#Gambol.function.alwaysinline
#default
atomic_exchange (s @Self, value NInt, memory_order Int8 = Memory.kOrderMonotonic, volatile: Bool) -> NInt

Unary Operators

~

#Gambol.function.alwaysinline
#default
~ (s @Self) -> NInt

-

#Gambol.function.alwaysinline
#default
- (s @Self) -> NInt

Binary Operators

=

#default
= (s @Self, o @Self) -> Self

==

#Gambol.function.alwaysinline
#default
== (s @Self, o @Self) -> Bool

<

#Gambol.function.alwaysinline
#default
< (s @Self, o @Self) -> Bool

<=

#Gambol.function.alwaysinline
#default
<= (s @Self, o @Self) -> Bool

>

#Gambol.function.alwaysinline
#default
> (s @Self, o @Self) -> Bool

>=

#Gambol.function.alwaysinline
#default
>= (s @Self, o @Self) -> Bool

+

#Gambol.function.alwaysinline
#default
+ (s @Self, o @Self) -> NInt

+=

#Gambol.function.alwaysinline
#default
+= (s @Self, o @Self) -> Self

-

#Gambol.function.alwaysinline
#default
- (s @Self, o @Self) -> NInt

-=

#Gambol.function.alwaysinline
#default
-= (s @Self, o @Self) -> Self

*

#Gambol.function.alwaysinline
#default
* (s @Self, o @Self) -> NInt

*=

#Gambol.function.alwaysinline
#default
*= (s @Self, o @Self) -> Self

%

#Gambol.function.alwaysinline
% (s @Self, o @Self) -> NInt

%=

#Gambol.function.alwaysinline
%= (s @Self, o @Self) -> Self

/

#Gambol.function.alwaysinline
/ (s @Self, o @Self) -> NInt

/=

#Gambol.function.alwaysinline
/= (s @Self, o @Self) -> Self

&

#Gambol.function.alwaysinline
#default
& (s @Self, o @Self) -> NInt

&=

#Gambol.function.alwaysinline
#default
&= (s @Self, o @Self) -> Self

|

#Gambol.function.alwaysinline
#default
| (s @Self, o @Self) -> NInt

|=

#Gambol.function.alwaysinline
#default
|= (s @Self, o @Self) -> Self

^

#Gambol.function.alwaysinline
#default
^ (s @Self, o @Self) -> NInt

^=

#Gambol.function.alwaysinline
#default
^= (s @Self, o @Self) -> Self

>>

#Gambol.function.alwaysinline
#default
>> (s @Self, o @Self) -> NInt

>>=

#Gambol.function.alwaysinline
#default
>>= (s @Self, o @Self) -> Self

>>>

#Gambol.function.alwaysinline
#default
>>> (s @Self, o @Self) -> NInt

>>>=

#Gambol.function.alwaysinline
#default
>>>= (s @Self, o @Self) -> Self

<<

#Gambol.function.alwaysinline
#default
<< (s @Self, o @Self) -> NInt

<<=

#Gambol.function.alwaysinline
#default
<<= (s @Self, o @Self) -> Self

Casts To

  • Int8
  • UInt8
  • Int16
  • UInt16
  • Int32
  • UInt32
  • Int64
  • UInt64
  • Int128
  • UInt128
  • Int256
  • UInt256
  • Int512
  • UInt512
  • Float32
  • Float64
  • NFloat
  • Bool
  • Int
  • Float