++ed by:
ZMUGHAL MARKELLIS KEEDI JETEVE CKRAS
6 non-PAUSE users
Author image Marvin Humphrey
and 1 contributors

NAME

Clownfish::Hierarchy - A class hierarchy.

DESCRIPTION

A Clownfish::Hierarchy consists of all the classes defined in files within a source directory and its subdirectories.

There may be more than one tree within the Hierarchy, since all "inert" classes are root nodes, and since Clownfish does not officially define any core classes itself from which all instantiable classes must descend.

METHODS

new

    my $hierarchy = Clownfish::Hierarchy->new(
        source => undef,    # required
        dest   => undef,    # required
    );
  • source - The directory we begin reading files from.

  • dest - The directory where the autogenerated files will be written.

build

    $hierarchy->build;

Parse every Clownfish header file which can be found under source, building up the object hierarchy.

ordered_classes

    my $classes = $hierarchy->ordered_classes;

Return all Classes as an array with the property that every parent class will precede all of its children.

propagate_modified

    $hierarchy->propagate_modified($modified);

Visit all File objects in the hierarchy. If a parent node is modified, mark all of its children as modified.

If the supplied argument is true, mark all Files as modified.

get_source get_dest

Accessors.