If you have an attribute that needs to be modified any time it is set, is there a slick way of doing this short of writing the accessor yourself and mucking around directly with the content of $self
, as done in this example?
package Foo;
use Moose;
has 'bar' => (
isa => 'Str',
reader => 'get_bar',
);
sub set_bar {
my ($self, $bar) = @_;
$self->{bar} = "modified: $bar";
}
I considered trigger
, but it seemed to require the same approach.
Is working directly with the hash reference in $self
considered bad practice in Moose, or am I worrying about a non-issue?