NAME
MCE::Shared::Array - Array helper class
VERSION
This document describes MCE::Shared::Array version 1.699_007
SYNOPSIS
# non-shared
use MCE::Shared::Array;
my $ar = MCE::Shared::Array->new( @list );
# shared
use MCE::Shared;
my $ar = MCE::Shared->array( @list );
# oo interface
$val = $ar->set( $idx, $val );
$val = $ar->get( $idx);
$val = $ar->delete( $idx );
$bool = $ar->exists( $idx );
void = $ar->clear();
$len = $ar->length(); # scalar @{ $ar }
$len = $ar->length( $idx ); # length $ar->[ $idx ]
$val = $ar->pop();
$len = $ar->push( @list );
$val = $ar->shift();
$len = $ar->unshift( @list );
@list = $ar->splice( $offset, $length, @list );
$ar2 = $ar->clone( @indices ); # @indices is optional
$ar3 = $ar->flush( @indices );
$iter = $ar->iterator( @indices ); # ($idx, $val) = $iter->()
$len = $ar->merge( $idx/$val pairs );
@vals = $ar->mget( @indices );
@keys = $ar->keys( @indices );
@vals = $ar->values( @indices );
%pairs = $ar->pairs( @indices );
@vals = $ar->sort(); # $a <=> $b default
@vals = $ar->sort( "desc" ); # $b <=> $a
@vals = $ar->sort( "alpha" ); # $a cmp $b
@vals = $ar->sort( "alpha desc" ); # $b cmp $a
%pairs = $ar->find( "val =~ /$pattern/i" );
%pairs = $ar->find( "val !~ /$pattern/i" );
%pairs = $ar->find( "val eq $string" );
%pairs = $ar->find( "val ne $string" );
%pairs = $ar->find( "val lt $string" );
%pairs = $ar->find( "val le $string" );
%pairs = $ar->find( "val gt $string" );
%pairs = $ar->find( "val ge $string" );
%pairs = $ar->find( "val == $number" );
%pairs = $ar->find( "val != $number" );
%pairs = $ar->find( "val < $number" );
%pairs = $ar->find( "val <= $number" );
%pairs = $ar->find( "val > $number" );
%pairs = $ar->find( "val >= $number" );
# sugar methods without having to call set/get explicitly
$len = $ar->append( $idx, $string ); # $val .= $string
$val = $ar->decr( $idx ); # --$val
$val = $ar->decrby( $idx, $number ); # $val -= $number
$val = $ar->incr( $idx ); # ++$val
$val = $ar->incrby( $idx, $number ); # $val += $number
$val = $ar->pdecr( $idx ); # $val--
$val = $ar->pincr( $idx ); # $val++
DESCRIPTION
Helper class for MCE::Shared.
API DOCUMENTATION
To be completed before the final 1.700 release.
- new
- set
- get
- delete
- exists
- clear
- length
- pop
- push
- shift
- unshift
- splice
- clone
- flush
- iterator
- mget
- merge
- keys
- values
- pairs
- find
- sort
- append
- decr
- decrby
- incr
- incrby
- pdecr
- pincr
CREDITS
Implementation inspired by Tie::StdArray.
INDEX
AUTHOR
Mario E. Roy, <marioeroy AT gmail DOT com>