NAME
Data::Frame::Autobox - Autobox arrays and hashes for Data::Frame
VERSION
version 0.006004
SYNOPSIS
[ 1 .. 5 ]->isempty;
{ one => 1 }->names;
{ one => 1 }->isempty;
|
DESCRIPTION
This package provides a set of methods for autoboxed arrays and hashes.
ARRAY METHODS
isempty
my $isempty = $array ->isempty;
|
Returns a boolean value for if the array ref is empty.
grep
my $new_array = $array -> grep ( $coderef );
|
map
my $new_array = $array -> map ( $coderef );
|
at
my $value = $array ->at( $idx );
|
uniq
my $uniq_array = $array ->uniq;
|
set
$array ->set( $idx , $value );
|
length
my $length = $array -> length ;
|
elems
This is same as length
.
flatten
my @array = $array ->flatten;
|
Explicitly returns an array.
slice
my $slice = $array ->slice( $indices );
|
copy
Shallow copy.
repeat
my $new_array = $array ->repeat( $n );
|
Repeat for $n
times.
repeat_to_length
my $new_array = $array ->repeat_to_length( $l );
|
Repeat to get the length of $l
.
intersect
my $new_array = $array ->intersect( $other )
|
union
my $new_array = $array ->union( $other )
|
setdiff
my $new_array = $array ->setdiff( $other )
|
HASH METHODS
isempty
my $isempty = $hash ->isempty;
|
Returns a boolean value for if the hash ref is empty.
delete
merge
my $merged_hash = $hash ->merge( $other );
|
hslice
my $sliced_hash = $hash ->hslice( $keys );
|
slice
This is same as hslice
.
at
my $value = $hash ->at( $key );
|
set
$hash ->set( $key , $value );
|
exists
my $bool = $hash -> exists ( $key );
|
keys
names
This is same as keys
.
values
my $values = $hash -> values ;
|
flatten
my %hash = $hash ->flatten;
|
Explicitly returns an array.
copy
Shallow copy.
rename
rename ( $hashref_or_coderef )
|
It can take either,
A hashref of key mappings.
If a keys does not exist in the mappings, it would not be renamed.
A coderef which transforms each key.
my $new_href1 = $href -> rename ( { $from_key => $to_key , ... } );
my $new_href2 = $href -> rename ( sub { $_ [0] . 'foo' } );
|
SEE ALSO
autobox
AUTHORS
COPYRIGHT AND LICENSE
This software is copyright (c) 2014, 2019-2022 by Zakariyya Mughal, Stephan Loyd.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.