foo
[gitmo/Moose-Autobox.git] / lib / Moose / Autobox / Array.pm
index 6d4c1e8..38e94f1 100644 (file)
@@ -47,16 +47,6 @@ sub sprintf { CORE::sprintf $_[1], @{$_[0]} }
 sub head { $_[0]->[0] }
 sub tail { [ @{$_[0]}[ 1 .. $#{$_[0]} ] ] }
  
-sub at {
-    my ($array, $index) = @_;
-    $array->[$index];
-} 
-
-sub put {
-    my ($array, $index, $value) = @_;
-    $array->[$index] = $value;
-}
 sub length {
     my ($array) = @_;
     CORE::scalar @$array;
@@ -89,11 +79,17 @@ sub sort {
     [ CORE::sort { $sub->($a, $b) } @$array ]; 
 }    
 
-# ::Value requirement
+## ::Indexed implementation
 
-sub print { CORE::print @{$_[0]} }
+sub at {
+    my ($array, $index) = @_;
+    $array->[$index];
+} 
 
-## ::Indexed implementation
+sub put {
+    my ($array, $index, $value) = @_;
+    $array->[$index] = $value;
+}
 
 sub exists {
     my ($array, $index) = @_;    
@@ -134,6 +130,68 @@ Moose::Autobox::Array - the Array role
 
 =head1 DESCRIPTION
 
+This is a role to describe operations on the Array type. 
+
+=head1 METHODS
+
+=over 4
+
+=item B<meta>
+
+=item B<pop>
+
+=item B<push>
+
+=item B<shift>
+
+=item B<unshift>
+
+=item B<delete>
+
+=item B<sprintf>
+
+=back
+
+=head2 Moose::Autobox::Indexed implementation
+
+=over 4
+
+=item B<at>
+
+=item B<put>
+
+=item B<exists>
+
+=item B<keys>
+
+=item B<kv>
+
+=item B<values>
+
+=back
+
+=head2 Moose::Autobox::List implementation
+
+=over 4
+
+=item B<head>
+
+=item B<tail>
+
+=item B<join>
+
+=item B<length>
+
+=item B<map>
+
+=item B<grep>
+
+=item B<reverse>
+
+=item B<sort>
+
+=back
+
 =head1 BUGS
 
 All complex software has bugs lurking in it, and this module is no