Clarify and complete documentation for in-place reverse
Vincent Pit [Tue, 10 Nov 2009 22:50:06 +0000 (23:50 +0100)]
pod/perl5112delta.pod
pod/perlfunc.pod

index 0fed626..82412b2 100644 (file)
@@ -166,8 +166,10 @@ Any changes to F<pod/perldiag.pod> should go in L</New or Changed Diagnostics>.
 
 =item *
 
-Reversing an array in-place in void context is now several orders of magnitude faster than it used to be.
-It will also preserve non-existent elements whenever possible, i.e. for non magical arrays or tied arrays with C<EXISTS> and C<DELETE> methods.
+Reversing an array to itself (as in C<@a = reverse @a>) in void context now
+happens in-place and is several orders of magnitude faster than it used to be.
+It will also preserve non-existent elements whenever possible, i.e. for non
+magical arrays or tied arrays with C<EXISTS> and C<DELETE> methods.
 
 =back
 
index 862e0ba..53c318f 100644 (file)
@@ -4782,6 +4782,10 @@ Used without arguments in scalar context, reverse() reverses C<$_>.
     print reverse;                              # No output, list context
     print scalar reverse;                       # Hello, world
 
+Note that reversing an array to itself (as in C<@a = reverse @a>) will
+preserve non-existent elements whenever possible, i.e. for non magical
+arrays or tied arrays with C<EXISTS> and C<DELETE> methods.
+
 This operator is also handy for inverting a hash, although there are some
 caveats.  If a value is duplicated in the original hash, only one of those
 can be represented as a key in the inverted hash.  Also, this has to