oracular (3) ExtUtils::Builder::Plan.3pm.gz

Provided by: libextutils-builder-perl_0.011-1_all bug

NAME

       ExtUtils::Builder::Plan - An ExtUtils::Builder Plan

VERSION

       version 0.011

SYNOPSIS

        package Frobnicate;
        sub plan {
            my %nodes = ...;
            return ExtUtils::Builder::Plan->new(
                nodes => \%nodes,
            );
        }

        my $plan = Frobnicate->plan(@args);

        # various consumption methods
        $plan->run('foo');
        say $_->target for $plan->nodes;

DESCRIPTION

       An object of this class describes a process. It contains one or more nodes. This is enough to describe
       whole building processes, in fact its "run" method is a tiny "make" engine.

ATTRIBUTES

   nodes
       This is the set of all nodes in this plan.

METHODS

   run($target, %options)
       This runs the process. Similar to "make", it checks for each node if it is necessary to run, and if not
       skips it. $target may either be a single string or an array ref of strings for the targets to run.

   node($target)
       Returns the node for the specified $target.

   node_names()
       Returns the names of all the nodes.

   merge($other)
       This merges this plan with another, and returns the new plan. Each entry may only exist on one side of
       the merge.

   phonies()
       This returns the names of all phony targets.

AUTHOR

       Leon Timmermans <fawaka@gmail.com>

       This software is copyright (c) 2013 by Leon Timmermans.

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