Marvin Humphrey
and 1 contributors

NAME

Clownfish::Dumpable - Auto-generate code for "dumpable" classes.

SYNOPSIS

    my $dumpable = Clownfish::Dumpable->new;
    for my $class ( grep { $_->has_attribute('dumpable') } @classes ) {
        $dumpable->add_dumpables($class);
    }

DESCRIPTION

If a class declares that it has the attribute "dumpable", but does not declare either Dump or Load(), Clownfish::Dumpable will attempt to auto-generate those methods if methods inherited from the parent class do not suffice.

    class Foo::Bar extends Foo : dumpable {
        Thing *thing;

        public inert incremented Bar*
        new();

        void
        Destroy(Bar *self);
    }

METHODS

new

    my $dumpable = Clownfish::Dumpable->new;

Constructor. Takes no arguments.

add_dumpables

    $dumpable->add_dumpables($dumpable_class);

Analyze a class with the attribute "dumpable" and add Dump() or Load() methods as necessary.

COPYRIGHT AND LICENSE

Copyright 2006-2010 Marvin Humphrey

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