In Nil§
See primary documentation in context for method prepend
method prepend(*@)
Warns the user that they tried to prepend onto a Nil
or derived type object.
In IterationBuffer§
See primary documentation in context for method prepend
method prepend(IterationBuffer: IterationBuffer --> IterationBuffer)
Adds the contents of the other IterationBuffer
at the beginning of the IterationBuffer
, and returns the updated invocant. Available as of the 2021.12 release of the Rakudo compiler.
In role Buf§
See primary documentation in context for method prepend
method prepend( )
Inserts elements at the beginning of the buffer.
my = Buf.new( 1, 1, 2, 3, 5 );.prepend( 0 );say .raku; # OUTPUT: «Buf.new(0,1,1,2,3,5)»
The difference from method unshift
is that if you prepend a single array or list argument, prepend
will flatten that array / list, whereas unshift
prepends the list / array as just a single element.
In Array§
See primary documentation in context for routine prepend
sub prepend(\array, |elems)multi method prepend(Array: \values)multi method prepend(Array: ** is raw)
Adds the elements from LIST
to the front of the array, modifying it in-place.
Example:
my = <a b c>;.prepend: 1, 3 ... 11;say ; # OUTPUT: «[1 3 5 7 9 11 a b c]»
The difference from method unshift
is that if you prepend a single array or list argument, prepend
will flatten that array / list, whereas unshift
prepends the list / array as just a single element.
In Any§
See primary documentation in context for method prepend
multi method prepend(Any: --> Array)multi method prepend(Any: --> Array)
Called with no arguments on an empty variable, it initializes it as an empty Array; if called with arguments, it creates an array and then applies Array.prepend
on it.
my ;say .prepend; # OUTPUT: «[]»say ; # OUTPUT: «[]»my ;say .prepend(1,2,3); # OUTPUT: «[1 2 3]»