Template::Plugin::YAML(3) Plugin interface to YAML


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


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 %]


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") %]


Richard Clamp <[email protected]>, with undump, undumpfile, and dumpfile implementation by Randal L. Schwartz <[email protected]>

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


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.