This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
document behavior of duplicate keys in hash assignment
authorLukas Mai <l.mai@web.de>
Mon, 2 Apr 2012 17:27:46 +0000 (19:27 +0200)
committerFather Chrysostomos <sprout@cpan.org>
Tue, 22 May 2012 00:51:54 +0000 (17:51 -0700)
pod/perldata.pod

index 977c0e0..8611d3d 100644 (file)
@@ -666,6 +666,29 @@ Note that just because a hash is initialized in that order doesn't
 mean that it comes out in that order.  See L<perlfunc/sort> for examples
 of how to arrange for an output ordering.
 
+If a key appears more than once in the initializer list of a hash, the last
+occurrence wins:
+
+    %circle = (
+                  center => [5, 10],
+                  center => [27, 9],
+                  radius => 100,
+                  color => [0xDF, 0xFF, 0x00],
+                  radius => 54,
+    );
+
+    # same as
+    %circle = (
+                  center => [27, 9],
+                  color => [0xDF, 0xFF, 0x00],
+                  radius => 54,
+    );
+
+This can be used to provide overridable configuration defaults:
+
+    # values in %args take priority over %config_defaults
+    %config = (%config_defaults, %args);
+
 =head2 Subscripts
 
 An array can be accessed one scalar at a