diff options
author | Samantha McVey <samantham@posteo.net> | 2017-04-24 14:20:01 -0700 |
---|---|---|
committer | Samantha McVey <samantham@posteo.net> | 2017-04-24 14:20:01 -0700 |
commit | 8e7a339c33e24ba8c301c3dad05db4dfeba9508c (patch) | |
tree | d78c102ea478c619294c7b6417b8d9733ac99a87 /lib | |
parent | f516e377ac7f48fa2e836a2f5382cbd7459ea6de (diff) |
Add tests and get order right
Diffstat (limited to 'lib')
-rw-r--r-- | lib/mergehash.pm6 | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/mergehash.pm6 b/lib/mergehash.pm6 new file mode 100644 index 0000000..206c881 --- /dev/null +++ b/lib/mergehash.pm6 @@ -0,0 +1,18 @@ +use MONKEY; +augment class Hash { + method merge (%b) { + hashmerge self, %b; + self; + } + sub hashmerge (%merge-into, %merge-source) { + for %merge-source.keys { + if %merge-into{$_}:exists { + hashmerge %merge-into{$_}, %merge-source{$_}; + } + else { + %merge-into{$_} = %merge-source{$_}; + } + } + %merge-into; + } +} |