NAME

ExtUtils::Builder::Action::Function - Actions for perl function calls

VERSION

version 0.004

SYNOPSIS

my $action = ExtUtils::Builder::Action::Function->new(
    module    => 'Frob',
    function  => 'nicate',
    arguments => [ target => 'bar' ],
);
$action->execute();
say "Executed: ", join ' ', @$_, target => 'bar' for $action->to_command;

DESCRIPTION

This Action class is a specialization of Action::Perl that makes the common case of calling a simple function easier. The first statement in the synopsis is roughly equivalent to:

my $action = ExtUtils::Builder::Action::Code->new(
    code       => 'Frob::nicate(target => 'bar')',
    module     => ['Frob'],
    message    => 'Calling Frob::nicate',
);

Except that it serializes more cleanly.

ATTRIBUTES

arguments

These are additional arguments to the action, that are passed on regardless of how the action is run. This attribute is optional.

module

The module to be loaded.

function

The name of the function to be called.

exports

If "always", the function is assumed to be exported by the module. If "explicit", it's assumed to need explicit exporting (e.g. use Module 'function';).

AUTHOR

Leon Timmermans <fawaka@gmail.com>

COPYRIGHT AND LICENSE

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.