The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Template::Plugin::HashMergeVMethods - virtual methods for TT2 hashes to merge them

SYNOPSIS

  [% USE HashMerge %]
  [% USE HashMergeVMethods %]
  [% a = {
             foo => 1,
             bar => [ 'a', 'b', 'e' ],
             baz => {
                        bob => 'alice',
                    },
         };
     b = {
             foo => 2,
             bar => [ 'c', 'd' ],
             baz => {
                        ted => 'margeret',
                    },
         };
     HashMerge.set_behaviour( 'RIGHT_PRECEDENT' );
     c = a.merge( b ); %]

DESCRIPTION

Template::Toolkit plugin HashMergeVMethods provides the Hash::Merge functions merge and set_behaviour to be used within templates as virtual methods of hashes.

This can be useful in all cases a template works directly on data - e.g. when processing results from a query using Template::DBI and join the result with results from derived queries.

USAGE

  [% USE HashMerge %]
  [% USE HashMergeVMethods %]
  [% HashMerge.set_behaviour( <behaviour name> );
     result = hash1.merge( hash2 ); %]

Detailed function description and default behaviours are available in Hash::Merge.

If you prefer to use object methods, see Template::Plugin::HashMerge.

FUNCTIONS PROVIDED

merge

BUGS & LIMITATIONS

None known.

SUPPORT

Free support can be requested via regular CPAN bug-tracking system. There is no guaranteed reaction time or solution time. It depends on business load. That doesn't mean that ticket via rt aren't handles as soon as possible, that means that soon depends on how much I have to do.

Business and commercial support should be aquired via preferred freelancer agencies.

AUTHOR

    Jens Rehsack
    CPAN ID: REHSACK
    rehsack@cpan.org
    http://search.cpan.org/~rehsack/

COPYRIGHT

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.

SEE ALSO

perl(1), Template::Toolkit, Template::Plugin::VMethods