Moose::Autobox::Array
Section: User Contributed Perl Documentation (3)
Updated: 2016-05-03
Page Index
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
- "pop"
-
- "push ($value)"
-
- "shift"
-
- "unshift ($value)"
-
- "delete ($index)"
-
- "sprintf ($format_string)"
-
- "slice (@indices)"
-
- "flatten"
-
- "flatten_deep ($depth)"
-
- "first"
-
- "last"
-
Indexed implementation
- "at ($index)"
-
- "put ($index, $value)"
-
- "exists ($index)"
-
- "keys"
-
- "values"
-
- "kv"
-
- "each"
-
- "each_key"
-
- "each_value"
-
- "each_n_values ($n, $callback)"
-
List implementation
- "head"
-
- "tail"
-
- "join (?$seperator)"
-
- "length"
-
- "map (\&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
];
- "reverse"
-
- "sort (?\&block)"
-
Junctions
- "all"
-
- "any"
-
- "none"
-
- "one"
-
- "meta"
-
- "print"
-
- "say"
-
SUPPORT
Bugs may be submitted through the
RT bug tracker <
https://rt.cpan.org/Public/Dist/Display.html?Name=Moose-Autobox>
(or
bug-Moose-Autobox@rt.cpan.org <mailto:
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" <irc://irc.perl.org/#moose>.
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.