struct Int64
Defined in:
big/number.crint.cr
primitives.cr
Constant Summary
Constructors
- .new(value : String, base : Int = 10, whitespace : Bool = true, underscore : Bool = false, prefix : Bool = false, strict : Bool = true, leading_zero_is_octal : Bool = false) : self
- .new(ctx : YAML::ParseContext, node : YAML::Nodes::Node)
- .new(pull : JSON::PullParser)
- .new(value) : self
- .new!(value) : self
Class Method Summary
Instance Method Summary
-
#!=(other : Int8) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : Int16) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : Int32) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : Int64) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : Int128) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : UInt8) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : UInt16) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : UInt32) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : UInt64) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : UInt128) : Bool
Returns
true
ifself
is not equal to other. -
#!=(other : Float32) : Bool
Returns
true
ifself
is not equal to other or ifself
and other are unordered. -
#!=(other : Float64) : Bool
Returns
true
ifself
is not equal to other or ifself
and other are unordered. -
#&(other : Int8) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&(other : Int16) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&(other : Int32) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&(other : Int64) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&(other : Int128) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&(other : UInt8) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&(other : UInt16) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&(other : UInt32) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&(other : UInt64) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&(other : UInt128) : self
Returns the result of performing a bitwise AND of
self
's and other's bits. -
#&*(other : Int8) : self
Returns the result of multiplying
self
and other. -
#&*(other : Int16) : self
Returns the result of multiplying
self
and other. -
#&*(other : Int32) : self
Returns the result of multiplying
self
and other. -
#&*(other : Int64) : self
Returns the result of multiplying
self
and other. -
#&*(other : Int128) : self
Returns the result of multiplying
self
and other. -
#&*(other : UInt8) : self
Returns the result of multiplying
self
and other. -
#&*(other : UInt16) : self
Returns the result of multiplying
self
and other. -
#&*(other : UInt32) : self
Returns the result of multiplying
self
and other. -
#&*(other : UInt64) : self
Returns the result of multiplying
self
and other. -
#&*(other : UInt128) : self
Returns the result of multiplying
self
and other. -
#&+(other : Int8) : self
Returns the result of adding
self
and other. -
#&+(other : Int16) : self
Returns the result of adding
self
and other. -
#&+(other : Int32) : self
Returns the result of adding
self
and other. -
#&+(other : Int64) : self
Returns the result of adding
self
and other. -
#&+(other : Int128) : self
Returns the result of adding
self
and other. -
#&+(other : UInt8) : self
Returns the result of adding
self
and other. -
#&+(other : UInt16) : self
Returns the result of adding
self
and other. -
#&+(other : UInt32) : self
Returns the result of adding
self
and other. -
#&+(other : UInt64) : self
Returns the result of adding
self
and other. -
#&+(other : UInt128) : self
Returns the result of adding
self
and other. -
#&-(other : Int8) : self
Returns the result of subtracting
self
and other. -
#&-(other : Int16) : self
Returns the result of subtracting
self
and other. -
#&-(other : Int32) : self
Returns the result of subtracting
self
and other. -
#&-(other : Int64) : self
Returns the result of subtracting
self
and other. -
#&-(other : Int128) : self
Returns the result of subtracting
self
and other. -
#&-(other : UInt8) : self
Returns the result of subtracting
self
and other. -
#&-(other : UInt16) : self
Returns the result of subtracting
self
and other. -
#&-(other : UInt32) : self
Returns the result of subtracting
self
and other. -
#&-(other : UInt64) : self
Returns the result of subtracting
self
and other. -
#&-(other : UInt128) : self
Returns the result of subtracting
self
and other. -
#*(other : Int8) : self
Returns the result of multiplying
self
and other. -
#*(other : Int16) : self
Returns the result of multiplying
self
and other. -
#*(other : Int32) : self
Returns the result of multiplying
self
and other. -
#*(other : Int64) : self
Returns the result of multiplying
self
and other. -
#*(other : Int128) : self
Returns the result of multiplying
self
and other. -
#*(other : UInt8) : self
Returns the result of multiplying
self
and other. -
#*(other : UInt16) : self
Returns the result of multiplying
self
and other. -
#*(other : UInt32) : self
Returns the result of multiplying
self
and other. -
#*(other : UInt64) : self
Returns the result of multiplying
self
and other. -
#*(other : UInt128) : self
Returns the result of multiplying
self
and other. -
#*(other : Float32) : Float32
Returns the result of multiplying
self
and other. -
#*(other : Float64) : Float64
Returns the result of multiplying
self
and other. -
#+(other : Int8) : self
Returns the result of adding
self
and other. -
#+(other : Int16) : self
Returns the result of adding
self
and other. -
#+(other : Int32) : self
Returns the result of adding
self
and other. -
#+(other : Int64) : self
Returns the result of adding
self
and other. -
#+(other : Int128) : self
Returns the result of adding
self
and other. -
#+(other : UInt8) : self
Returns the result of adding
self
and other. -
#+(other : UInt16) : self
Returns the result of adding
self
and other. -
#+(other : UInt32) : self
Returns the result of adding
self
and other. -
#+(other : UInt64) : self
Returns the result of adding
self
and other. -
#+(other : UInt128) : self
Returns the result of adding
self
and other. -
#+(other : Float32) : Float32
Returns the result of adding
self
and other. -
#+(other : Float64) : Float64
Returns the result of adding
self
and other. -
#-(other : Int8) : self
Returns the result of subtracting
self
and other. -
#-(other : Int16) : self
Returns the result of subtracting
self
and other. -
#-(other : Int32) : self
Returns the result of subtracting
self
and other. -
#-(other : Int64) : self
Returns the result of subtracting
self
and other. -
#-(other : Int128) : self
Returns the result of subtracting
self
and other. -
#-(other : UInt8) : self
Returns the result of subtracting
self
and other. -
#-(other : UInt16) : self
Returns the result of subtracting
self
and other. -
#-(other : UInt32) : self
Returns the result of subtracting
self
and other. -
#-(other : UInt64) : self
Returns the result of subtracting
self
and other. -
#-(other : UInt128) : self
Returns the result of subtracting
self
and other. -
#-(other : Float32) : Float32
Returns the result of subtracting
self
and other. -
#-(other : Float64) : Float64
Returns the result of subtracting
self
and other. - #- : Int64
- #/(other : Int8) : Float64
- #/(other : UInt8) : Float64
- #/(other : Int16) : Float64
- #/(other : UInt16) : Float64
- #/(other : Int32) : Float64
- #/(other : UInt32) : Float64
- #/(other : Int64) : Float64
- #/(other : UInt64) : Float64
- #/(other : Int128) : Float64
- #/(other : UInt128) : Float64
- #/(other : Float32) : Float32
- #/(other : Float64) : Float64
- #/(other : BigInt) : BigFloat
- #/(other : BigFloat) : BigFloat
- #/(other : BigDecimal) : BigDecimal
- #/(other : BigRational) : BigRational
-
#<(other : Int8) : Bool
Returns
true
ifself
is less than other. -
#<(other : Int16) : Bool
Returns
true
ifself
is less than other. -
#<(other : Int32) : Bool
Returns
true
ifself
is less than other. -
#<(other : Int64) : Bool
Returns
true
ifself
is less than other. -
#<(other : Int128) : Bool
Returns
true
ifself
is less than other. -
#<(other : UInt8) : Bool
Returns
true
ifself
is less than other. -
#<(other : UInt16) : Bool
Returns
true
ifself
is less than other. -
#<(other : UInt32) : Bool
Returns
true
ifself
is less than other. -
#<(other : UInt64) : Bool
Returns
true
ifself
is less than other. -
#<(other : UInt128) : Bool
Returns
true
ifself
is less than other. -
#<(other : Float32) : Bool
Returns
true
ifself
is less than other. -
#<(other : Float64) : Bool
Returns
true
ifself
is less than other. -
#<=(other : Int8) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : Int16) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : Int32) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : Int64) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : Int128) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : UInt8) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : UInt16) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : UInt32) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : UInt64) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : UInt128) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : Float32) : Bool
Returns
true
ifself
is less than or equal to other. -
#<=(other : Float64) : Bool
Returns
true
ifself
is less than or equal to other. -
#==(other : Int8) : Bool
Returns
true
ifself
is equal to other. -
#==(other : Int16) : Bool
Returns
true
ifself
is equal to other. -
#==(other : Int32) : Bool
Returns
true
ifself
is equal to other. -
#==(other : Int64) : Bool
Returns
true
ifself
is equal to other. -
#==(other : Int128) : Bool
Returns
true
ifself
is equal to other. -
#==(other : UInt8) : Bool
Returns
true
ifself
is equal to other. -
#==(other : UInt16) : Bool
Returns
true
ifself
is equal to other. -
#==(other : UInt32) : Bool
Returns
true
ifself
is equal to other. -
#==(other : UInt64) : Bool
Returns
true
ifself
is equal to other. -
#==(other : UInt128) : Bool
Returns
true
ifself
is equal to other. -
#==(other : Float32) : Bool
Returns
true
ifself
is equal to other. -
#==(other : Float64) : Bool
Returns
true
ifself
is equal to other. -
#>(other : Int8) : Bool
Returns
true
ifself
is greater than other. -
#>(other : Int16) : Bool
Returns
true
ifself
is greater than other. -
#>(other : Int32) : Bool
Returns
true
ifself
is greater than other. -
#>(other : Int64) : Bool
Returns
true
ifself
is greater than other. -
#>(other : Int128) : Bool
Returns
true
ifself
is greater than other. -
#>(other : UInt8) : Bool
Returns
true
ifself
is greater than other. -
#>(other : UInt16) : Bool
Returns
true
ifself
is greater than other. -
#>(other : UInt32) : Bool
Returns
true
ifself
is greater than other. -
#>(other : UInt64) : Bool
Returns
true
ifself
is greater than other. -
#>(other : UInt128) : Bool
Returns
true
ifself
is greater than other. -
#>(other : Float32) : Bool
Returns
true
ifself
is greater than other. -
#>(other : Float64) : Bool
Returns
true
ifself
is greater than other. -
#>=(other : Int8) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : Int16) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : Int32) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : Int64) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : Int128) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : UInt8) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : UInt16) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : UInt32) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : UInt64) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : UInt128) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : Float32) : Bool
Returns
true
ifself
is greater than or equal to other. -
#>=(other : Float64) : Bool
Returns
true
ifself
is greater than or equal to other. -
#^(other : Int8) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#^(other : Int16) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#^(other : Int32) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#^(other : Int64) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#^(other : Int128) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#^(other : UInt8) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#^(other : UInt16) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#^(other : UInt32) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#^(other : UInt64) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#^(other : UInt128) : self
Returns the result of performing a bitwise XOR of
self
's and other's bits. -
#|(other : Int8) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#|(other : Int16) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#|(other : Int32) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#|(other : Int64) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#|(other : Int128) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#|(other : UInt8) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#|(other : UInt16) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#|(other : UInt32) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#|(other : UInt64) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#|(other : UInt128) : self
Returns the result of performing a bitwise OR of
self
's and other's bits. -
#abs_unsigned : UInt64
Returns the absolute value of
self
as an unsigned value of the same size. -
#bit_reverse : self
Reverses the bits of
self
; the least significant bit becomes the most significant, and vice-versa. -
#byte_swap : self
Swaps the bytes of
self
; a little-endian value becomes a big-endian value, and vice-versa. - #clone
-
#leading_zeros_count
Returns the number of leading
0
-bits. -
#neg_signed : self
Returns the negative of
self
as a signed value of the same size. -
#popcount : Int64
Counts
1
-bits in the binary representation of this integer. -
#rotate_left(n : Int) : self
Returns the bitwise rotation of
self
n times in the most significant bit's direction. -
#rotate_right(n : Int) : self
Returns the bitwise rotation of
self
n times in the least significant bit's direction. -
#to_f : Float64
Returns
self
converted toFloat64
. -
#to_f! : Float64
Returns
self
converted toFloat64
. -
#to_f32 : Float32
Returns
self
converted toFloat32
. -
#to_f32! : Float32
Returns
self
converted toFloat32
. -
#to_f64 : Float64
Returns
self
converted toFloat64
. -
#to_f64! : Float64
Returns
self
converted toFloat64
. -
#to_i : Int32
Returns
self
converted toInt32
. -
#to_i! : Int32
Returns
self
converted toInt32
. -
#to_i128 : Int128
Returns
self
converted toInt128
. -
#to_i128! : Int128
Returns
self
converted toInt128
. -
#to_i16 : Int16
Returns
self
converted toInt16
. -
#to_i16! : Int16
Returns
self
converted toInt16
. -
#to_i32 : Int32
Returns
self
converted toInt32
. -
#to_i32! : Int32
Returns
self
converted toInt32
. -
#to_i64 : Int64
Returns
self
converted toInt64
. -
#to_i64! : Int64
Returns
self
converted toInt64
. -
#to_i8 : Int8
Returns
self
converted toInt8
. -
#to_i8! : Int8
Returns
self
converted toInt8
. -
#to_signed : Int64
Returns
self
converted to a signed value of the same size. -
#to_signed! : Int64
Returns
self
converted to a signed value of the same size, wrapping in case of overflow. -
#to_u : UInt32
Returns
self
converted toUInt32
. -
#to_u! : UInt32
Returns
self
converted toUInt32
. -
#to_u128 : UInt128
Returns
self
converted toUInt128
. -
#to_u128! : UInt128
Returns
self
converted toUInt128
. -
#to_u16 : UInt16
Returns
self
converted toUInt16
. -
#to_u16! : UInt16
Returns
self
converted toUInt16
. -
#to_u32 : UInt32
Returns
self
converted toUInt32
. -
#to_u32! : UInt32
Returns
self
converted toUInt32
. -
#to_u64 : UInt64
Returns
self
converted toUInt64
. -
#to_u64! : UInt64
Returns
self
converted toUInt64
. -
#to_u8 : UInt8
Returns
self
converted toUInt8
. -
#to_u8! : UInt8
Returns
self
converted toUInt8
. -
#to_unsigned : UInt64
Returns
self
converted to an unsigned value of the same size. -
#to_unsigned! : UInt64
Returns
self
converted to an unsigned value of the same size, wrapping in case of overflow. -
#trailing_zeros_count
Returns the number of trailing
0
-bits. -
#unsafe_chr : Char
Returns a
Char
that has the unicode codepoint ofself
, without checking if this integer is in the range valid for chars (0..0xd7ff
and0xe000..0x10ffff
).
Instance methods inherited from struct Int
%(other : BigInt) : BigInt%(other : Int) %, &*(other : BigInt) : BigInt &*, &**(exponent : Int) : self &**, &+(other : BigInt) : BigInt &+, &-(other : BigInt) : BigInt &-, *(other : BigInt) : BigInt
*(other : BigRational) : BigRational
*(other : BigDecimal) : BigDecimal *, **(exponent : Int) : self
**(exponent : Float) : Float64 **, +(other : BigInt) : BigInt
+(other : BigRational) : BigRational
+(other : BigDecimal) : BigDecimal +, -(other : BigInt) : BigInt
-(other : BigRational) : BigRational
-(other : BigDecimal) : BigDecimal -, /(other : BigRational) /, //(other : Int::Primitive) //, <<(count : Int) <<, <=>(other : BigInt)
<=>(other : Int) : Int32
<=>(other : BigFloat)
<=>(other : BigRational)
<=>(other : BigDecimal) <=>, ===(char : Char) ===, >>(count : Int) >>, ~ ~, abs : self abs, bit(bit) bit, bit_length : Int32 bit_length, bits(range : Range) bits, bits_set?(mask) : Bool bits_set?, ceil : self ceil, chr : Char chr, day : Time::Span day, days : Time::Span days, digits(base = 10) : Array(Int32) digits, divisible_by?(num) : Bool divisible_by?, downto(to, &block : self -> ) : Nil
downto(to) downto, even? : Bool even?, fdiv(other) : Float64 fdiv, floor : self floor, gcd(other : self) : self
gcd(other : BigInt) : Int gcd, hash(hasher) hash, hour : Time::Span hour, hours : Time::Span hours, humanize_bytes(io : IO, precision : Int = 3, separator = '.', *, significant : Bool = true, format : BinaryPrefixFormat = :IEC) : Nil
humanize_bytes(precision : Int = 3, separator = '.', *, significant : Bool = true, format : BinaryPrefixFormat = :IEC) : String humanize_bytes, integer? : Bool integer?, lcm(other : BigInt) : BigInt
lcm(other : Int) lcm, microsecond : Time::Span microsecond, microseconds : Time::Span microseconds, millisecond : Time::Span millisecond, milliseconds : Time::Span milliseconds, minute : Time::Span minute, minutes : Time::Span minutes, modulo(other) modulo, month : Time::MonthSpan month, months : Time::MonthSpan months, nanosecond : Time::Span nanosecond, nanoseconds : Time::Span nanoseconds, odd? : Bool odd?, popcount popcount, pred : self pred, remainder(other : Int) remainder, round(mode : RoundingMode) : self round, round_away round_away, round_even : self round_even, second : Time::Span second, seconds : Time::Span seconds, succ : self succ, tdiv(other : Int) tdiv, times(&block : self -> ) : Nil
times times, to(to, &block : self -> ) : Nil
to(to) to, to_big_d : BigDecimal to_big_d, to_big_i : BigInt to_big_i, to_big_r : BigRational to_big_r, to_io(io : IO, format : IO::ByteFormat) : Nil to_io, to_json(json : JSON::Builder) : Nil to_json, to_json_object_key : String to_json_object_key, to_s(io : IO, base : Int = 10, *, precision : Int = 1, upcase : Bool = false) : Nil
to_s(base : Int = 10, *, precision : Int = 1, upcase : Bool = false) : String to_s, trailing_zeros_count trailing_zeros_count, trunc : self trunc, upto(to, &block : self -> ) : Nil
upto(to) upto, week : Time::Span week, weeks : Time::Span weeks, year : Time::MonthSpan year, years : Time::MonthSpan years
Constructor methods inherited from struct Int
from_io(io : IO, format : IO::ByteFormat) : self
from_io
Instance methods inherited from module Comparable(BigDecimal)
<(other : T) : Bool
<,
<=(other : T)
<=,
<=>(other : T)
<=>,
==(other : T)
==,
>(other : T) : Bool
>,
>=(other : T)
>=,
clamp(min, max)clamp(range : Range) clamp
Instance methods inherited from module Comparable(BigRational)
<(other : T) : Bool
<,
<=(other : T)
<=,
<=>(other : T)
<=>,
==(other : T)
==,
>(other : T) : Bool
>,
>=(other : T)
>=,
clamp(min, max)clamp(range : Range) clamp
Instance methods inherited from module Comparable(BigInt)
<(other : T) : Bool
<,
<=(other : T)
<=,
<=>(other : T)
<=>,
==(other : T)
==,
>(other : T) : Bool
>,
>=(other : T)
>=,
clamp(min, max)clamp(range : Range) clamp
Instance methods inherited from struct Number
*(other : BigFloat) : BigFloat*(other : Complex) : Complex *, +(other : BigFloat)
+(other : Complex) : Complex
+ +, -(other : BigFloat)
-(other : Complex) : Complex -, /(other : BigFloat) : BigFloat
/(other : Complex) : Complex /, //(other) //, <=>(other) : Int32 | Nil <=>, ==(other : Complex) ==, abs : self abs, abs2 abs2, cis : Complex cis, divmod(number) divmod, format(io : IO, separator = '.', delimiter = ',', decimal_places : Int | Nil = nil, *, group : Int = 3, only_significant : Bool = false) : Nil
format(separator = '.', delimiter = ',', decimal_places : Int | Nil = nil, *, group : Int = 3, only_significant : Bool = false) : String format, humanize(io : IO, precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, prefixes : Indexable = SI_PREFIXES) : Nil
humanize(io : IO, precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, prefixes : Proc) : Nil
humanize(precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, prefixes = SI_PREFIXES) : String
humanize(io : IO, precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, &prefixes : Int32, Float64 -> Tuple(Int32, _) | Tuple(Int32, _, Bool)) : Nil
humanize(precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, &) : String
humanize(precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, prefixes : Proc) : String humanize, i : Complex i, integer? : Bool integer?, negative? : Bool negative?, positive? : Bool positive?, round(mode : RoundingMode = :ties_even) : self
round(digits : Number, base = 10, *, mode : RoundingMode = :ties_even) round, sign : Int32 sign, significant(digits, base = 10) significant, step(*, to limit = nil, exclusive : Bool = false, &) : Nil
step(*, to limit = nil, exclusive : Bool = false) step, to_big_f : BigFloat to_big_f, to_c : Complex to_c, to_yaml(yaml : YAML::Nodes::Builder) : Nil to_yaml, zero? : Bool zero?
Constructor methods inherited from struct Number
additive_identity : self
additive_identity,
multiplicative_identity : self
multiplicative_identity,
zero : self
zero
Class methods inherited from struct Number
si_prefix(magnitude : Int, prefixes = SI_PREFIXES) : Char | Nil
si_prefix
Macros inherited from struct Number
[](*nums)
[],
slice(*nums, read_only = false)
slice,
static_array(*nums)
static_array
Instance methods inherited from module Comparable(BigFloat)
<(other : T) : Bool
<,
<=(other : T)
<=,
<=>(other : T)
<=>,
==(other : T)
==,
>(other : T) : Bool
>,
>=(other : T)
>=,
clamp(min, max)clamp(range : Range) clamp
Instance methods inherited from module Steppable
step(*, to limit = nil, by step, exclusive : Bool = false, &) : Nilstep(*, to limit = nil, by step, exclusive : Bool = false) step
Instance methods inherited from module Comparable(Number)
<(other : T) : Bool
<,
<=(other : T)
<=,
<=>(other : T)
<=>,
==(other : T)
==,
>(other : T) : Bool
>,
>=(other : T)
>=,
clamp(min, max)clamp(range : Range) clamp
Instance methods inherited from struct Value
==(other : JSON::Any)==(other : YAML::Any)
==(other) ==, dup dup
Instance methods inherited from class Object
! : Bool
!,
!=(other)
!=,
!~(other)
!~,
==(other)
==,
===(other : JSON::Any)===(other : YAML::Any)
===(other) ===, =~(other) =~, as(type : Class) as, as?(type : Class) as?, class class, dup dup, hash(hasher)
hash hash, in?(collection : Object) : Bool
in?(*values : Object) : Bool in?, inspect(io : IO) : Nil
inspect : String inspect, is_a?(type : Class) : Bool is_a?, itself itself, nil? : Bool nil?, not_nil!(message)
not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, responds_to?(name : Symbol) : Bool responds_to?, tap(&) tap, to_json(io : IO) : Nil
to_json : String to_json, to_pretty_json(indent : String = " ") : String
to_pretty_json(io : IO, indent : String = " ") : Nil to_pretty_json, to_s(io : IO) : Nil
to_s : String to_s, to_yaml(io : IO) : Nil
to_yaml : String to_yaml, try(&) try, unsafe_as(type : T.class) forall T unsafe_as
Class methods inherited from class Object
from_json(string_or_io, root : String)from_json(string_or_io) from_json, from_yaml(string_or_io : String | IO) from_yaml
Macros inherited from class Object
class_getter(*names, &block)
class_getter,
class_getter!(*names)
class_getter!,
class_getter?(*names, &block)
class_getter?,
class_property(*names, &block)
class_property,
class_property!(*names)
class_property!,
class_property?(*names, &block)
class_property?,
class_setter(*names)
class_setter,
def_clone
def_clone,
def_equals(*fields)
def_equals,
def_equals_and_hash(*fields)
def_equals_and_hash,
def_hash(*fields)
def_hash,
delegate(*methods, to object)
delegate,
forward_missing_to(delegate)
forward_missing_to,
getter(*names, &block)
getter,
getter!(*names)
getter!,
getter?(*names, &block)
getter?,
property(*names, &block)
property,
property!(*names)
property!,
property?(*names, &block)
property?,
setter(*names)
setter
Constructor Detail
Returns an Int64
by invoking #to_i64
on value.
See String#to_i
for more details.
Int64.new "20" # => 20
Int64.new " 20 ", whitespace: false # raises ArgumentError: Invalid Int64: " 20 "
Class Method Detail
Instance Method Detail
Returns the absolute value of self
as an unsigned value of the same size.
Returns self
if self
is already an Int::Unsigned
. This method never
overflows.
1_u32.abs_unsigned # => 1_u32
2_i32.abs_unsigned # => 2_u32
-3_i8.abs_unsigned # => 3_u8
Int16::MIN.abs_unsigned # => 32768_u16
Reverses the bits of self
; the least significant bit becomes the most
significant, and vice-versa.
0b01001011_u8.bit_reverse # => 0b11010010
0b1100100001100111_u16.bit_reverse # => 0b1110011000010011
Swaps the bytes of self
; a little-endian value becomes a big-endian value,
and vice-versa. The bit order within each byte is unchanged.
Has no effect on 8-bit integers.
0x12345678_i64.byte_swap # => 0x7856341200000000
0x123456789ABCDEF0_i64.byte_swap # => -0xf21436587a9cbee
Returns the negative of self
as a signed value of the same size.
Returns -self
if self
is already an Int::Signed
. Raises
OverflowError
in case of overflow.
1_i32.neg_signed # => -1_i32
2_u16.neg_signed # => -2_i16
128_u8.neg_signed # => -128_i8
Int16::MIN.neg_signed # raises OverflowError
Counts 1
-bits in the binary representation of this integer.
5.popcount # => 2
-15.popcount # => 29
Returns the bitwise rotation of self
n times in the most significant
bit's direction. Negative shifts are equivalent to #rotate_right(-n)
.
0b01001101_u8.rotate_left(3) # => 0b01101010
0b01001101_u8.rotate_left(8) # => 0b01001101
0b01001101_u8.rotate_left(11) # => 0b01101010
0b01001101_u8.rotate_left(-1) # => 0b10100110
Returns the bitwise rotation of self
n times in the least significant
bit's direction. Negative shifts are equivalent to #rotate_left(-n)
.
0b01001101_u8.rotate_right(3) # => 0b10101001
0b01001101_u8.rotate_right(8) # => 0b01001101
0b01001101_u8.rotate_right(11) # => 0b10101001
0b01001101_u8.rotate_right(-1) # => 0b10011010
Returns self
converted to a signed value of the same size.
Simply returns self
unmodified if self
is already an Int::Signed
.
Raises OverflowError
in case of overflow.
1_u32.to_signed # => 1_i32
2_u16.to_signed # => 2_i16
3_i64.to_signed # => 3_i64
Returns self
converted to a signed value of the same size, wrapping in
case of overflow.
Simply returns self
unmodified if self
is already an Int::Signed
.
1_u32.to_signed! # => 1_i32
65530_u16.to_signed! # => -6_i16
3_i64.to_signed! # => 3_i64
Returns self
converted to an unsigned value of the same size.
Simply returns self
unmodified if self
is already an Int::Unsigned
.
Raises OverflowError
in case of overflow.
1_i32.to_unsigned # => 1_u32
2_i16.to_unsigned # => 2_u16
3_u64.to_unsigned # => 3_u64
Returns self
converted to an unsigned value of the same size, wrapping in
case of overflow.
Simply returns self
unmodified if self
is already an Int::Unsigned
.
1_i32.to_unsigned! # => 1_u32
(-6_i16).to_unsigned! # => 65530_u16
3_u64.to_unsigned! # => 3_u64
Returns the number of trailing 0
-bits.
Returns a Char
that has the unicode codepoint of self
,
without checking if this integer is in the range valid for
chars (0..0xd7ff
and 0xe000..0x10ffff
).
You should never use this method unless chr
turns out to
be a bottleneck.
97.unsafe_chr # => 'a'