The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

NAME

MooX::Rebuild - Rebuild your Moo objects.

SYNOPSIS

package Foo;
use Moo;
has get_bar => (
is => 'ro',
init_arg => 'bar',
);
my $foo1 = Foo->new( bar => 'lala' );
my $foo2 = $foo1->rebuild();
print $foo2->get_bar(); # lala

DESCRIPTION

Make copies of Moo objects using the same arguments used to create the original objects.

This Moo role depends on, and uses, the MooX::BuildArgs role in order to capture the original arguments used to create an object.

METHODS

rebuild

my $clone = $object->rebuild();
my $similar = $object->rebuild( %extra_args );

Creates a new instance in the same class as the source object and using the same arguments used to make the source object.

SEE ALSO

SUPPORT

See "SUPPORT" in MooX::BuildArgs.

AUTHORS

See "AUTHORS" in MooX::BuildArgs.

LICENSE

See "LICENSE" in MooX::BuildArgs.