=begin pod =NAME Hash::Merge =VERSION 2.0.0 =AUTHOR Patrick Spek =head1 Description A module for the Raku programming language to easily deep-merge two hashes. =head2 Usage Base usage requires you to C the module, and pass two Ces to the imported function, C. =begin code use Hash::Merge; my %alpha = a => 'b', c => { d => 'e', f => 'g', }, ; my %beta = z => 'y', c => { x => 'w', }, ; my %merged = merge-hash(%alpha, %beta); =end code There are two potential options to pass to C: =defn C When set to C, this will not deep merge the Ces. This means that the second C that is passed, will I C elements in the first C, instead of combining them. =defn C When set to C, this will not append C elements. This means that any C elements in the second C will I C elements in the first C. There is also a C in this module that allows you to call C<.merge> on existing C objects. This requires C. While this is a fancy way to work, it will break pre-compilation of whatever module is using it. =begin code use Hash::Merge::Augment my %alpha = a => 'b', c => { d => 'e', f => 'g', }, ; %alpha.merge({ z => 'y', c => { x => 'w', }, }); =end code =head2 Contributing The module's source code is available at the following locations: =item L =item L If you have a change you would like to include, please send a patch to L. =head2 License This module is distributed under the terms of the Artistic License 2.0. For more information, consult the LICENSE file in the module's source code repository. =end pod