NAME

Data::Object::Code::Func::Compose

ABSTRACT

Data-Object Code Function (Compose) Class

SYNOPSIS

use Data::Object::Code::Func::Compose;

my $func = Data::Object::Code::Func::Compose->new(@args);

$func->execute;

DESCRIPTION

Data::Object::Code::Func::Compose is a function object for Data::Object::Code.

INHERITANCE

This package inherits behaviors from:

Data::Object::Code::Func

LIBRARIES

This package uses type constraints defined by:

Data::Object::Library

ATTRIBUTES

This package has the following attributes.

arg1

arg1(CodeLike)

The attribute is read-only, accepts (CodeLike) values, and is optional.

arg2

arg2(CodeLike)

The attribute is read-only, accepts (CodeLike) values, and is optional.

args

args(ArrayRef[Any])

The attribute is read-only, accepts (ArrayRef[Any]) values, and is optional.

METHODS

This package implements the following methods.

execute

execute() : Object

Executes the function logic and returns the result.

execute example
my $data = Data::Object::Code->new(sub { [@_] });

my $func = Data::Object::Code::Func::Compose->new(
  arg1 => $data,
  arg2 => sub { [@_] },
  args => [1,2,3]
);

my $result = $func->execute;

mapping

mapping() : (Str)

Returns the ordered list of named function object arguments.

mapping example
my @data = $self->mapping;

CREDITS

Al Newkirk, +319

Anthony Brummett, +10

Adam Hopkins, +2

José Joaquín Atria, +1

AUTHOR

Al Newkirk, awncorp@cpan.org

LICENSE

Copyright (C) 2011-2019, Al Newkirk, et al.

This is free software; you can redistribute it and/or modify it under the terms of the The Apache License, Version 2.0, as elucidated here, https://github.com/iamalnewkirk/do/blob/master/LICENSE.

PROJECT

Wiki

Project

Initiatives

Milestones

Contributing

Issues

SEE ALSO

To get the most out of this distribution, consider reading the following:

Do

Data::Object

Data::Object::Class

Data::Object::ClassHas

Data::Object::Role

Data::Object::RoleHas

Data::Object::Library