struct Float64
Defined in:
big/number.crfloat.cr
primitives.cr
Constant Summary
-
DIGITS =
15 -
The number of decimal digits that can be represented without losing precision
-
EPSILON =
2.2204460492503131e-16 -
The machine epsilon (difference between 1.0 and the next representable value)
-
INFINITY =
(1_f64 / 0_f64).as(Float64) -
MANT_DIGITS =
53 -
The number of digits that can be represented without losing precision (in base RADIX)
-
MAX =
1.7976931348623157e+308 -
Largest finite value
-
MAX_10_EXP =
308 -
The maximum possible power of 10 exponent (such that 10**MAX_10_EXP is representable)
-
MAX_EXP =
1024 -
The maximum possible normal power of 2 exponent
-
MIN =
-1.7976931348623157e+308 -
Smallest finite value
-
MIN_10_EXP =
-307 -
The minimum possible power of 10 exponent (such that 10**MIN_10_EXP is representable)
-
MIN_EXP =
-1021 -
The minimum possible normal power of 2 exponent
-
MIN_POSITIVE =
2.2250738585072014e-308 -
Smallest normal positive value, whose previous representable value is subnormal
-
MIN_SUBNORMAL =
5.0e-324 -
Smallest representable positive value, whose previous representable value is zero
-
NAN =
(0_f64 / 0_f64).as(Float64) -
RADIX =
2 -
The radix or integer base used by the internal representation
Constructors
-
.new(value : String, whitespace : Bool = true, strict : Bool = true) : self
Returns a
Float64by invokingString#to_f64on value. - .new(ctx : YAML::ParseContext, node : YAML::Nodes::Node)
- .new(pull : JSON::PullParser)
- .new(value)
- .new!(value) : Float64
-
.parse_hexfloat(str : String) : self
Returns a
Float32by parsing str as a hexadecimal-significand string.
Class Method Summary
- .from_json_object_key?(key : String) : Float64 | Nil
-
.parse_hexfloat?(str : String) : self | Nil
Returns a
Float32by parsing str as a hexadecimal-significand string, ornilif parsing fails.
Instance Method Summary
-
#!=(other : Int8) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : Int16) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : Int32) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : Int64) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : Int128) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : UInt8) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : UInt16) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : UInt32) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : UInt64) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : UInt128) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : Float32) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#!=(other : Float64) : Bool
Returns
trueifselfis not equal to other or ifselfand other are unordered. -
#*(other : Int8) : self
Returns the result of multiplying
selfand other. -
#*(other : Int16) : self
Returns the result of multiplying
selfand other. -
#*(other : Int32) : self
Returns the result of multiplying
selfand other. -
#*(other : Int64) : self
Returns the result of multiplying
selfand other. -
#*(other : Int128) : self
Returns the result of multiplying
selfand other. -
#*(other : UInt8) : self
Returns the result of multiplying
selfand other. -
#*(other : UInt16) : self
Returns the result of multiplying
selfand other. -
#*(other : UInt32) : self
Returns the result of multiplying
selfand other. -
#*(other : UInt64) : self
Returns the result of multiplying
selfand other. -
#*(other : UInt128) : self
Returns the result of multiplying
selfand other. -
#*(other : Float32) : self
Returns the result of multiplying
selfand other. -
#*(other : Float64) : self
Returns the result of multiplying
selfand other. - #**(other : Int32)
- #**(other : Float64) : Float64
- #**(other) : Float64
-
#+(other : Int8) : self
Returns the result of adding
selfand other. -
#+(other : Int16) : self
Returns the result of adding
selfand other. -
#+(other : Int32) : self
Returns the result of adding
selfand other. -
#+(other : Int64) : self
Returns the result of adding
selfand other. -
#+(other : Int128) : self
Returns the result of adding
selfand other. -
#+(other : UInt8) : self
Returns the result of adding
selfand other. -
#+(other : UInt16) : self
Returns the result of adding
selfand other. -
#+(other : UInt32) : self
Returns the result of adding
selfand other. -
#+(other : UInt64) : self
Returns the result of adding
selfand other. -
#+(other : UInt128) : self
Returns the result of adding
selfand other. -
#+(other : Float32) : self
Returns the result of adding
selfand other. -
#+(other : Float64) : self
Returns the result of adding
selfand other. -
#-(other : Int8) : self
Returns the result of subtracting
selfand other. -
#-(other : Int16) : self
Returns the result of subtracting
selfand other. -
#-(other : Int32) : self
Returns the result of subtracting
selfand other. -
#-(other : Int64) : self
Returns the result of subtracting
selfand other. -
#-(other : Int128) : self
Returns the result of subtracting
selfand other. -
#-(other : UInt8) : self
Returns the result of subtracting
selfand other. -
#-(other : UInt16) : self
Returns the result of subtracting
selfand other. -
#-(other : UInt32) : self
Returns the result of subtracting
selfand other. -
#-(other : UInt64) : self
Returns the result of subtracting
selfand other. -
#-(other : UInt128) : self
Returns the result of subtracting
selfand other. -
#-(other : Float32) : self
Returns the result of subtracting
selfand other. -
#-(other : Float64) : self
Returns the result of subtracting
selfand other. -
#/(other : Float64) : Float64
Returns the result of division
selfand other. - #/(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) : Float64
- #/(other : BigInt) : BigFloat
- #/(other : BigFloat) : BigFloat
- #/(other : BigDecimal) : BigDecimal
- #/(other : BigRational) : BigRational
-
#<(other : Int8) : Bool
Returns
trueifselfis less than other. -
#<(other : Int16) : Bool
Returns
trueifselfis less than other. -
#<(other : Int32) : Bool
Returns
trueifselfis less than other. -
#<(other : Int64) : Bool
Returns
trueifselfis less than other. -
#<(other : Int128) : Bool
Returns
trueifselfis less than other. -
#<(other : UInt8) : Bool
Returns
trueifselfis less than other. -
#<(other : UInt16) : Bool
Returns
trueifselfis less than other. -
#<(other : UInt32) : Bool
Returns
trueifselfis less than other. -
#<(other : UInt64) : Bool
Returns
trueifselfis less than other. -
#<(other : UInt128) : Bool
Returns
trueifselfis less than other. -
#<(other : Float32) : Bool
Returns
trueifselfis less than other. -
#<(other : Float64) : Bool
Returns
trueifselfis less than other. -
#<=(other : Int8) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : Int16) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : Int32) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : Int64) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : Int128) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : UInt8) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : UInt16) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : UInt32) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : UInt64) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : UInt128) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : Float32) : Bool
Returns
trueifselfis less than or equal to other. -
#<=(other : Float64) : Bool
Returns
trueifselfis less than or equal to other. -
#==(other : Int8) : Bool
Returns
trueifselfis equal to other. -
#==(other : Int16) : Bool
Returns
trueifselfis equal to other. -
#==(other : Int32) : Bool
Returns
trueifselfis equal to other. -
#==(other : Int64) : Bool
Returns
trueifselfis equal to other. -
#==(other : Int128) : Bool
Returns
trueifselfis equal to other. -
#==(other : UInt8) : Bool
Returns
trueifselfis equal to other. -
#==(other : UInt16) : Bool
Returns
trueifselfis equal to other. -
#==(other : UInt32) : Bool
Returns
trueifselfis equal to other. -
#==(other : UInt64) : Bool
Returns
trueifselfis equal to other. -
#==(other : UInt128) : Bool
Returns
trueifselfis equal to other. -
#==(other : Float32) : Bool
Returns
trueifselfis equal to other. -
#==(other : Float64) : Bool
Returns
trueifselfis equal to other. -
#>(other : Int8) : Bool
Returns
trueifselfis greater than other. -
#>(other : Int16) : Bool
Returns
trueifselfis greater than other. -
#>(other : Int32) : Bool
Returns
trueifselfis greater than other. -
#>(other : Int64) : Bool
Returns
trueifselfis greater than other. -
#>(other : Int128) : Bool
Returns
trueifselfis greater than other. -
#>(other : UInt8) : Bool
Returns
trueifselfis greater than other. -
#>(other : UInt16) : Bool
Returns
trueifselfis greater than other. -
#>(other : UInt32) : Bool
Returns
trueifselfis greater than other. -
#>(other : UInt64) : Bool
Returns
trueifselfis greater than other. -
#>(other : UInt128) : Bool
Returns
trueifselfis greater than other. -
#>(other : Float32) : Bool
Returns
trueifselfis greater than other. -
#>(other : Float64) : Bool
Returns
trueifselfis greater than other. -
#>=(other : Int8) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : Int16) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : Int32) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : Int64) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : Int128) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : UInt8) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : UInt16) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : UInt32) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : UInt64) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : UInt128) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : Float32) : Bool
Returns
trueifselfis greater than or equal to other. -
#>=(other : Float64) : Bool
Returns
trueifselfis greater than or equal to other. -
#abs
Returns the absolute value of this number.
- #ceil : Float64
- #clone
-
#fdiv(other : Int8) : self
Returns the float division of
selfand other. -
#fdiv(other : Int16) : self
Returns the float division of
selfand other. -
#fdiv(other : Int32) : self
Returns the float division of
selfand other. -
#fdiv(other : Int64) : self
Returns the float division of
selfand other. -
#fdiv(other : Int128) : self
Returns the float division of
selfand other. -
#fdiv(other : UInt8) : self
Returns the float division of
selfand other. -
#fdiv(other : UInt16) : self
Returns the float division of
selfand other. -
#fdiv(other : UInt32) : self
Returns the float division of
selfand other. -
#fdiv(other : UInt64) : self
Returns the float division of
selfand other. -
#fdiv(other : UInt128) : self
Returns the float division of
selfand other. -
#fdiv(other : Float32) : self
Returns the float division of
selfand other. -
#fdiv(other : Float64) : self
Returns the float division of
selfand other. - #floor : Float64
-
#next_float : Float64
Returns the least
Float64that is greater thanself. -
#prev_float : Float64
Returns the greatest
Float64that is less thanself. -
#round_away : Float64
Rounds towards the nearest integer.
-
#round_even : Float64
Rounds towards the nearest integer.
-
#to_f : Float64
Returns
selfconverted toFloat64. -
#to_f! : Float64
Returns
selfconverted toFloat64. -
#to_f32 : Float32
Returns
selfconverted toFloat32. -
#to_f32! : Float32
Returns
selfconverted toFloat32. -
#to_f64 : Float64
Returns
selfconverted toFloat64. -
#to_f64! : Float64
Returns
selfconverted toFloat64. -
#to_hexfloat(io : IO) : Nil
Writes
self's hexadecimal-significand representation to the given io. -
#to_hexfloat : String
Returns the hexadecimal-significand representation of
self. -
#to_i : Int32
Returns
selfconverted toInt32. -
#to_i! : Int32
Returns
selfconverted toInt32. -
#to_i128 : Int128
Returns
selfconverted toInt128. -
#to_i128! : Int128
Returns
selfconverted toInt128. -
#to_i16 : Int16
Returns
selfconverted toInt16. -
#to_i16! : Int16
Returns
selfconverted toInt16. -
#to_i32 : Int32
Returns
selfconverted toInt32. -
#to_i32! : Int32
Returns
selfconverted toInt32. -
#to_i64 : Int64
Returns
selfconverted toInt64. -
#to_i64! : Int64
Returns
selfconverted toInt64. -
#to_i8 : Int8
Returns
selfconverted toInt8. -
#to_i8! : Int8
Returns
selfconverted toInt8. -
#to_s(io : IO) : Nil
Prints a nicely readable and concise string representation of this object, typically intended for users, to io.
-
#to_s : String
Returns a nicely readable and concise string representation of this object, typically intended for users.
-
#to_u : UInt32
Returns
selfconverted toUInt32. -
#to_u! : UInt32
Returns
selfconverted toUInt32. -
#to_u128 : UInt128
Returns
selfconverted toUInt128. -
#to_u128! : UInt128
Returns
selfconverted toUInt128. -
#to_u16 : UInt16
Returns
selfconverted toUInt16. -
#to_u16! : UInt16
Returns
selfconverted toUInt16. -
#to_u32 : UInt32
Returns
selfconverted toUInt32. -
#to_u32! : UInt32
Returns
selfconverted toUInt32. -
#to_u64 : UInt64
Returns
selfconverted toUInt64. -
#to_u64! : UInt64
Returns
selfconverted toUInt64. -
#to_u8 : UInt8
Returns
selfconverted toUInt8. -
#to_u8! : UInt8
Returns
selfconverted toUInt8. - #trunc : Float64
Instance methods inherited from struct Float
%(other)
%,
-
-,
//(other)
//,
<=>(other : BigInt)<=>(other : BigFloat)
<=>(other : BigRational)
<=>(other : BigDecimal) <=>, days : Time::Span days, fdiv(other : BigInt | BigFloat | BigDecimal | BigRational) : self fdiv, finite? : Bool finite?, hours : Time::Span hours, infinite? : Int32 | Nil infinite?, microseconds : Time::Span microseconds, milliseconds : Time::Span milliseconds, minutes : Time::Span minutes, modulo(other) modulo, nan? : Bool nan?, nanoseconds : Time::Span nanoseconds, remainder(other) remainder, seconds : Time::Span seconds, 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_yaml(yaml : YAML::Nodes::Builder) : Nil to_yaml, weeks : Time::Span weeks
Constructor methods inherited from struct Float
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, hash(hasher) hash, humanize(io : IO, precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, unit_separator = nil, prefixes : Indexable = SI_PREFIXES) : Nil
humanize(io : IO, precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, unit_separator = nil, prefixes : Proc) : Nil
humanize(precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, unit_separator = nil, prefixes = SI_PREFIXES) : String
humanize(io : IO, precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, unit_separator = nil, &prefixes : Int32, Float64 -> Tuple(Int32, _) | Tuple(Int32, _, Bool)) : Nil
humanize(precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, unit_separator = nil, &) : String
humanize(precision = 3, separator = '.', delimiter = ',', *, base = 10 ** 3, significant = true, unit_separator = nil, 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 a Float64 by invoking String#to_f64 on value.
Float64.new "20" # => 20.0
Float64.new " 20 ", whitespace: false # raises ArgumentError: Invalid Float64: " 20 "
Returns a Float32 by parsing str as a hexadecimal-significand string.
The string format is defined in section 5.12.3 of IEEE 754-2008, and is the
same as the %a specifier for sprintf. Unlike e.g. String#to_f,
whitespace and underscores are not allowed. Non-finite values are also
recognized.
Raises ArgumentError if str is not a valid hexadecimal-significand
string.
Float64.parse_hexfloat("0x123.456p7") # => 37282.6875
Float64.parse_hexfloat("0x1.fffffffffffffp+1023") # => Float64::MAX
Float64.parse_hexfloat("-inf") # => -Float64::INFINITY
Float64.parse_hexfloat("0x1") # Invalid hexfloat: expected 'p' or 'P' (ArgumentError)
Float64.parse_hexfloat("a.bp+3") # Invalid hexfloat: expected '0' (ArgumentError)
Class Method Detail
Returns a Float32 by parsing str as a hexadecimal-significand string, or
nil if parsing fails.
The string format is defined in section 5.12.3 of IEEE 754-2008, and is the
same as the %a specifier for sprintf. Unlike e.g. String#to_f,
whitespace and underscores are not allowed. Non-finite values are also
recognized.
Float64.parse_hexfloat?("0x123.456p7") # => 37282.6875
Float64.parse_hexfloat?("0x1.fffffep+127") # => Float64::MAX
Float64.parse_hexfloat?("-inf") # => -Float64::INFINITY
Float64.parse_hexfloat?("0x1") # => nil
Float64.parse_hexfloat?("a.bp+3") # => nil
Instance Method Detail
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns true if self is not equal to other
or if self and other are unordered.
Returns the absolute value of this number.
123.abs # => 123
-123.abs # => 123
Rounds towards the nearest integer. If both neighboring integers are equidistant, rounds away from zero.
Rounds towards the nearest integer. If both neighboring integers are equidistant, rounds towards the even neighbor (Banker's rounding).
Writes self's hexadecimal-significand representation to the given io.
Returns the hexadecimal-significand representation of self.
The string format is defined in section 5.12.3 of IEEE 754-2008, and is the
same as the %a specifier for sprintf. The integral part of the returned
string is 0 if self is subnormal, otherwise 1. The fractional part
contains only significant digits.
1234.0625.to_hexfloat # => "0x1.3484p+10"
Float64::MAX.to_hexfloat # => "0x1.fffffffffffffp+1023"
Float64::MIN_SUBNORMAL.to_hexfloat # => "0x0.0000000000001p-1022"
Prints a nicely readable and concise string representation of this object, typically intended for users, to io.
This method is called when an object is interpolated in a string literal:
"foo #{bar} baz" # calls bar.to_io with the builder for this string
IO#<< calls this method to append an object to itself:
io << bar # calls bar.to_s(io)
Thus implementations must not interpolate self in a string literal or call
io << self which both would lead to an endless loop.
Also see #inspect(IO).
Returns a nicely readable and concise string representation of this object, typically intended for users.
This method should usually not be overridden. It delegates to
#to_s(IO) which can be overridden for custom implementations.
Also see #inspect.