Attribute delegation
Moose handles complex delegation for you.
- A simple example:
has 'logger' => (
is => 'ro',
isa => 'My::Custom::Logger',
required => 1,
handles => [ qw/log/ ]
);
- The log method is added to class
- log delegates to the log method of object stored in logger