Front page | perl.perl5.porters |
Postings from October 2000
DOC PATCH 5.6.0
Thread Previous
|
Thread Next
From:
mjd
Date:
October 27, 2000 10:31
Subject:
DOC PATCH 5.6.0
Message ID:
20001027173244.23754.qmail@plover.com
--- pod/perlfunc.pod 2000/10/27 17:28:24 1.1
+++ pod/perlfunc.pod 2000/10/27 17:32:02 1.2
@@ -1183,7 +1183,7 @@
When called in list context, returns a 2-element list consisting of the
key and value for the next element of a hash, so that you can iterate over
-it. When called in scalar context, returns the key for only the "next"
+it. When called in scalar context, returns only the key for the next
element in the hash.
Entries are returned in an apparently random order. The actual random
@@ -1198,7 +1198,14 @@
C<keys>, and C<values> function calls in the program; it can be reset by
reading all the elements from the hash, or by evaluating C<keys HASH> or
C<values HASH>. If you add or delete elements of a hash while you're
-iterating over it, you may get entries skipped or duplicated, so don't.
+iterating over it, you may get entries skipped or duplicated, so
+don't. Exception: It is always safe to delete the item most recently
+returned by C<each()>, which means that the following code will work:
+
+ while (($key, $value) = each %hash) {
+ print $key, "\n";
+ delete $hash{$key}; # This is safe
+ }
The following prints out your environment like the printenv(1) program,
only in a different order:
Thread Previous
|
Thread Next