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