NAME
Class::Tiny::Chained - Minimalist class construction, with chained attributes
SYNOPSIS
In Person.pm:
package Person;
use Class::Tiny::Chained qw( name );
1;
In Employee.pm:
package Employee;
use parent 'Person';
use Class::Tiny::Chained qw( ssn ), {
timestamp => sub { time } # attribute with default
};
1;
In example.pl:
use Employee;
my $obj = Employee->new( name => "Larry", ssn => "111-22-3333" );
# attribute setters are chainable
my $obj = Employee->new->name("Fred")->ssn("444-55-6666");
my $ts = $obj->name("Bob")->timestamp;
DESCRIPTION
Class::Tiny::Chained is a wrapper around Class::Tiny which makes the generated attribute accessors chainable; that is, when setting an attribute value, the object is returned so that further methods can be called.
BUGS
Report any issues on the public bugtracker.
AUTHOR
Dan Book <dbook@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2015 by Dan Book.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)