In role Baggy§
See primary documentation in context for method kv
method kv(Baggy:D: --> Seq:D)
Returns a Seq
of keys and values interleaved.
my $breakfast = bag <eggs spam spam spam>; say $breakfast.kv; # OUTPUT: «(spam 3 eggs 1)» my $n = ("a" => 5, "b" => 2, "a" => 1).BagHash; say $n.kv; # OUTPUT: «(a 6 b 2)»
In List§
See primary documentation in context for routine kv
sub kv($list --> Seq:D) method kv(List:D: --> Seq:D)
Returns an interleaved sequence of indexes and values. For example
say <a b c>.kv; # OUTPUT: «(0 a 1 b 2 c)»
In Pair§
See primary documentation in context for method kv
multi method kv(Pair:D: --> List:D)
Returns a two-element List
with the key and value parts of Pair
, in that order. This method is a special case of the same-named method on Hash
, which returns all its entries as a list of keys and values.
my $p = (Raku => "d"); say $p.kv[0]; # OUTPUT: «Raku» say $p.kv[1]; # OUTPUT: «d»
In role Setty§
See primary documentation in context for method kv
multi method kv(Setty:D: --> Seq:D)
Returns a Seq
of the set's elements and True
values interleaved.
my $s = Set.new(1, 2, 3); say $s.kv; # OUTPUT: «(3 True 1 True 2 True)»
In Any§
See primary documentation in context for routine kv
multi method kv(Any:U:) multi method kv(Any:D:) multi kv($x)
Returns an empty List
if the invocant is a type object:
Sub.kv.say ;# OUTPUT: «()»
It calls list
on the invocant for value objects and returns the result of List.kv on it as a list where keys and values will be ordered and contiguous
<1 2 3>.kv.say; # OUTPUT: «(0 1 1 2 2 3)»
In the case of Positional
s, the indices will be considered keys.
In Capture§
See primary documentation in context for method kv
multi method kv(Capture:D: --> Seq:D)
Returns a Seq
of alternating keys and values. The positional keys and values, if any, comes first followed by the named keys and values.
my $capture = \(2, 3, apples => (red => 2)); say $capture.kv; # OUTPUT: «(0 2 1 3 apples red => 2)»
In role Enumeration§
See primary documentation in context for method kv
multi method kv(::?CLASS:D:)
Returns a list with key and value of the enum-pair.
say g.kv; # OUTPUT: «(g 1)»
In Map§
See primary documentation in context for method kv
method kv(Map:D: --> Seq:D)
Returns a Seq
of keys and values interleaved.
Map.new('a', 1, 'b', 2).kv # (a 1 b 2)