logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

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

Attributes

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

Author

       Leon Timmermans <fawaka@gmail.com>

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.

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.

Name

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

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;

Version

       version 0.017

See Also