NAME

Template::Plugin::YAML - Plugin interface to YAML

SYNOPSIS

[% USE YAML %]

[% YAML.dump(variable) %]
[% YAML.dump_html(variable) %]
[% value = YAML.undump(yaml_string) %]
[% YAML.dumpfile(filename, variable) %]
[% value = YAML.undumpfile(filename) %]

DESCRIPTION

This is a simple Template Toolkit Plugin Interface to the YAML module. A YAML object will be instantiated via the following directive:

[% USE YAML %]

As a standard plugin, you can also specify its name in lower case:

[% USE yaml %]

METHODS

These are the methods supported by the YAML object.

dump( @variables )

Generates a raw text dump of the data structure(s) passed

[% USE Dumper %]
[% yaml.dump(myvar) %]
[% yaml.dump(myvar, yourvar) %]

dump_html( @variables )

Generates a dump of the data structures, as per dump, but with the characters <, > and & converted to their equivalent HTML entities, spaces converted to &nbsp; and newlines converted to <br>.

[% USE yaml %]
[% yaml.dump_html(myvar) %]

undump( $string )

Converts a YAML-encoded string into the equivalent data structure. Here's a way to deep-copy a complex structure by completely serializing the data.

[% USE yaml;
   yaml_string = yaml.dump(complex_data_structure);
   complex_copy = yaml.undump(yaml_string);
%]

dumpfile( $file, @variables )

Converts the data to YAML encoding, and dumps it to the specified filepath.

[% USE yaml; yaml.dumpfile(".storage", my_data) %]

undumpfile( $file )

Loads the YAML-encoded data from the specified filepath

[% USE yaml; my_data = yaml.undumpfile(".storage") %]

AUTHORS

Richard Clamp <richardc@unixbeard.net>, with undump, undumpfile, and dumpfile implementation by Randal L. Schwartz <merlyn@stonehenge.com>

based on Simon Matthews' Template::Plugin::Dumper

COPYRIGHT

Copyright 2003, 2008 Richard Clamp All Rights Reserved.

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

SEE ALSO

Template::Plugin::Dumper