NAME
Moose::Autobox::Array - the Array role
VERSION
version 0.16
SYNOPSIS
use Moose::Autobox;
[ 1..5 ]->isa('ARRAY'); # true
[ a..z ]->does('Moose::Autobox::Array'); # true
[ 0..2 ]->does('Moose::Autobox::List'); # true
print "Squares: " . [ 1 .. 10 ]->map(sub { $_ * $_ })->join(', ');
print [ 1, 'number' ]->sprintf('%d is the loneliest %s');
print ([ 1 .. 5 ]->any == 3) ? 'true' : 'false'; # prints 'true'
DESCRIPTION
This is a role to describe operations on the Array type.
METHODS
poppush ($value)shiftunshift ($value)delete ($index)sprintf ($format_string)slice (@indices)flattenflatten_deep ($depth)firstlast
Indexed implementation
at ($index)put ($index, $value)exists ($index)keysvalueskveacheach_keyeach_valueeach_n_values ($n, $callback)
List implementation
headtailjoin (?$seperator)lengthmap (\&block)grep (\&block)-
Note that, in both the above, $_ is in scope within the code block, as well as being passed as $_[0]. As per CORE::map and CORE::grep, $_ is an alias to the list value, so can be used to modify the list, viz:
use Moose::Autobox; my $foo = [1, 2, 3]; $foo->map( sub {$_++} ); print $foo->dump;yields
$VAR1 = [ 2, 3, 4 ]; reversesort (?\&block)
Junctions
allanynoneone
metaprintsay
SUPPORT
Bugs may be submitted through the RT bug tracker (or bug-Moose-Autobox@rt.cpan.org).
There is also a mailing list available for users of this distribution, at http://lists.perl.org/list/moose.html.
There is also an irc channel available for users of this distribution, at #moose on irc.perl.org.
AUTHOR
Stevan Little <stevan.little@iinteractive.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2006 by Infinity Interactive, Inc.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.