From 8e7a339c33e24ba8c301c3dad05db4dfeba9508c Mon Sep 17 00:00:00 2001 From: Samantha McVey Date: Mon, 24 Apr 2017 14:20:01 -0700 Subject: Add tests and get order right --- lib/mergehash.pm6 | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 lib/mergehash.pm6 (limited to 'lib') 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; + } +} -- cgit v1.1