---
name: "ExtUtils::Builder::Action::Function"
section: "3pm"
platform: "linux"
package: "libextutils-builder-perl"
version: "0.017-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/ExtUtils::Builder::Action::Function"
---

# ExtUtils::Builder::Action::Function(3pm)

Actions for perl function calls

## NAME

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

## VERSION

version 0.017

## 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.
