| Template-Toolkit documentation | Contained in the Template-Toolkit distribution. |
Template::Plugin::Dumper - Plugin interface to Data::Dumper
[% USE Dumper %]
[% Dumper.dump(variable) %]
[% Dumper.dump_html(variable) %]
This is a very simple Template Toolkit Plugin Interface to the Data::Dumper
module. A Dumper object will be instantiated via the following directive:
[% USE Dumper %]
As a standard plugin, you can also specify its name in lower case:
[% USE dumper %]
The Data::Dumper Pad, Indent and Varname options are supported
as constructor arguments to affect the output generated. See Data::Dumper
for further details.
[% USE dumper(Indent=0, Pad="<br>") %]
These options can also be specified in lower case.
[% USE dumper(indent=0, pad="<br>") %]
There are two methods supported by the Dumper object. Each will
output into the template the contents of the variables passed to the
object method.
Generates a raw text dump of the data structure(s) passed
[% USE Dumper %]
[% Dumper.dump(myvar) %]
[% Dumper.dump(myvar, yourvar) %]
Generates a dump of the data structures, as per dump(), but with the characters <, > and & converted to their equivalent HTML entities and newlines converted to <br>.
[% USE Dumper %]
[% Dumper.dump_html(myvar) %]
Simon Matthews <sam@tt2.org>
Copyright (C) 2000 Simon Matthews. All Rights Reserved.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| Template-Toolkit documentation | Contained in the Template-Toolkit distribution. |
#============================================================================== # # Template::Plugin::Dumper # # DESCRIPTION # # A Template Plugin to provide a Template Interface to Data::Dumper # # AUTHOR # Simon Matthews <sam@tt2.org> # # COPYRIGHT # Copyright (C) 2000 Simon Matthews. All Rights Reserved # # This module is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. # #============================================================================== package Template::Plugin::Dumper; use strict; use warnings; use base 'Template::Plugin'; use Data::Dumper; our $VERSION = 2.70; our $DEBUG = 0 unless defined $DEBUG; our @DUMPER_ARGS = qw( Indent Pad Varname Purity Useqq Terse Freezer Toaster Deepcopy Quotekeys Bless Maxdepth ); our $AUTOLOAD; #============================================================================== # ----- CLASS METHODS ----- #============================================================================== #------------------------------------------------------------------------ # new($context, \@params) #------------------------------------------------------------------------ sub new { my ($class, $context, $params) = @_; my ($key, $val); $params ||= { }; foreach my $arg (@DUMPER_ARGS) { no strict 'refs'; if (defined ($val = $params->{ lc $arg }) or defined ($val = $params->{ $arg })) { ${"Data\::Dumper\::$arg"} = $val; } } bless { _CONTEXT => $context, }, $class; } sub dump { my $self = shift; my $content = Dumper @_; return $content; } sub dump_html { my $self = shift; my $content = Dumper @_; for ($content) { s/&/&/g; s/</</g; s/>/>/g; s/\n/<br>\n/g; } return $content; } 1; __END__