In enum Endian§
See primary documentation in context for routine Numeric
multi method Numeric(Endian --> Int)
Returns the value part of the enum
pair.
say NativeEndian.Numeric; # OUTPUT: «0»say LittleEndian.Numeric; # OUTPUT: «1»say BigEndian.Numeric; # OUTPUT: «2»
Note that the actual numeric values are subject to change. So please use the named values instead.
In Nil§
See primary documentation in context for method Numeric
method Numeric()
Warns the user that they tried to numify a Nil
.
In role Enumeration§
See primary documentation in context for method Numeric
multi method Numeric(::?CLASS:)
Takes a value of an enum and returns it after coercion to Numeric
:
( cool => '42', almost-pi => '3.14', sqrt-n-one => 'i' );say cool.Numeric; # OUTPUT: «42»say almost-pi.Numeric; # OUTPUT: «3.14»say sqrt-n-one.Numeric; # OUTPUT: «0+1i»
Note that if the value cannot be coerced to Numeric
, an exception will be thrown.
In Thread§
See primary documentation in context for method Numeric
method Numeric(Thread: --> Int)
Returns a numeric, unique thread identifier, i.e. the same as id.
In IO::Path§
See primary documentation in context for method Numeric
method Numeric(IO::Path: --> Numeric)
Coerces .basename
to Numeric
. Fails with X::Str::Numeric
if base name is not numerical.
In Date§
See primary documentation in context for method Numeric
multi method Numeric(Date: --> Int)
Converts the invocant to Int
. The same value can be obtained with the daycount
method. This allows Date
objects to be used directly in arithmetic operations.
Available as of release 2023.02 of the Rakudo compiler.
In DateTime§
See primary documentation in context for method Numeric
multi method Numeric(DateTime: --> Instant)
Available as of the 2021.09 release of the Rakudo compiler.
Converts the invocant to Instant
. The same value can be obtained with the Instant
method. This allows DateTime
objects to be used directly in arithmetic operations.
In RatStr§
See primary documentation in context for method Numeric
multi method Numeric(RatStr: --> Rat)multi method Numeric(RatStr: --> Rat)
The :D
variant returns the numeric portion of the invocant. The :U
variant issues a warning about using an uninitialized value in numeric context and then returns value 0.0
.
In X::AdHoc§
See primary documentation in context for method Numeric
method Numeric()
Converts the payload to Numeric
and returns it
In NumStr§
See primary documentation in context for method Numeric
multi method Numeric(NumStr: --> Num)multi method Numeric(NumStr: --> Num)
The :D
variant returns the numeric portion of the invocant. The :U
variant issues a warning about using an uninitialized value in numeric context and then returns value 0e0
.
In Capture§
See primary documentation in context for method Numeric
method Numeric(Capture: --> Int)
Returns the number of positional elements in the Capture
.
say \(1,2,3, apples => 2).Numeric; # OUTPUT: «3»
In role Numeric§
See primary documentation in context for method Numeric
multi method Numeric(Numeric: --> Numeric)multi method Numeric(Numeric: --> Numeric)
The :D
variant simply returns the invocant. The :U
variant issues a warning about using an uninitialized value in numeric context and then returns self.new
.
In Str§
See primary documentation in context for method Numeric
method Numeric(Str: --> Numeric)
Coerces the string to Numeric
using semantics equivalent to val routine. Fails with X::Str::Numeric
if the coercion to a number cannot be done.
Only Unicode characters with property Nd
, as well as leading and trailing whitespace are allowed, with the special case of the empty string being coerced to 0
. Synthetic codepoints (e.g. "7\x[308]"
) are forbidden.
While Nl
and No
characters can be used as numeric literals in the language, their conversion via Str.Numeric
will fail, by design; the same will happen with synthetic numerics (composed of numbers and diacritic marks). See unival if you need to coerce such characters to Numeric
. +, - and the Unicode MINUS SIGN − are all allowed.
" −33".Numeric; # OUTPUT: «-33»
In role Sequence§
See primary documentation in context for method Numeric
method Numeric(::?CLASS:)
Returns the number of elements in the cached sequence.
In Map§
See primary documentation in context for method Numeric
method Numeric(Map: --> Int)
Returns the number of pairs stored in the Map
(same as .elems
).
my = Map.new('a' => 2, 'b' => 17);say .Numeric; # OUTPUT: «2»
In enum Bool§
See primary documentation in context for routine Numeric
multi method Numeric(Bool --> Int)
Returns the value part of the enum
pair.
say False.Numeric; # OUTPUT: «0»say True.Numeric; # OUTPUT: «1»
In List§
See primary documentation in context for method Numeric
method Numeric(List: --> Int)
Returns the number of elements in the list (same as .elems
).
say (1,2,3,4,5).Numeric; # OUTPUT: «5»
In StrDistance§
See primary documentation in context for method Numeric
Returns the distance as a number.
In IntStr§
See primary documentation in context for method Numeric
multi method Numeric(IntStr: --> Int)multi method Numeric(IntStr: --> Int)
The :D
variant returns the numeric portion of the invocant. The :U
variant issues a warning about using an uninitialized value in numeric context and then returns value 0
.
In ComplexStr§
See primary documentation in context for method Numeric
multi method Numeric(ComplexStr: --> Complex)multi method Numeric(ComplexStr: --> Complex)
The :D
variant returns the numeric portion of the invocant. The :U
variant issues a warning about using an uninitialized value in numeric context and then returns value <0+0i>
.