Combined from primary sources listed below.
See primary docmentation in context for method hash.
method hash(Capture:D:)
Returns the named/hash part of the Capture.
my Capture $c = \(2, 3, 5, apples => (red => 2));
say $c.hash; # OUTPUT: «Map.new((:apples(:red(2))))»
See primary docmentation in context for method hash.
multi method hash(Any:U:)
multi method hash(Any:D:)
When called on a type object, returns an empty Hash. On instances, it is equivalent to assigning the invocant to a %-sigiled variable and returning that.
Subclasses of Any may choose to return any core type that does the Associative role from .hash. Use .Hash to coerce specifically to Hash.
my $d; # $d is Any
say $d.hash; # OUTPUT: {}
my %m is Map = a => 42, b => 666;
say %m.hash; # OUTPUT: «Map.new((a => 42, b => 666))»
say %m.Hash; # OUTPUT: «{a => 42, b => 666}»
See primary docmentation in context for method hash.
method hash(Baggy:D: --> Hash:D)
Returns a Hash where the elements of the invocant are the keys and their respective weights the values.
my $breakfast = bag <eggs bacon bacon>;
my $h = $breakfast.hash;
say $h.^name; # OUTPUT: «Hash[Any,Any]»
say $h; # OUTPUT: «{bacon => 2, eggs => 1}»
See primary docmentation in context for method hash.
Returns a hash of named submatches.
See primary docmentation in context for method hash.
method hash()
Coerces the QuantHash object to a Hash (by stringifying the objects for the keys) with the values of the hash limited to the same limitation as QuantHash, and returns that.