Greetings, ye Monks!
I'm using Moose for the first time, and I'm a little baffled by something.
I have an object attribute that is an arrayref. I'd like the writer for that attribute to append a value if I call the writer with a single valid value. How would I do that? Coercion doesn't look right, because I don't want to change the value, I want to change how the value is added. I've tried setting 'accessor' to a custom sub, but it didn't even get called. So, I'm asking you monks for help.
Here's an example-ish illustration of what I want.
Package Wibble; use Moose; has 'thingies' => ( is => 'rw', isa => 'ArrayRef' ); ## Things I don't understand yet go here... Package main; use Wibble; my $w = Wibble->new( thingies => [ 'this', 'that' ]); print join(", ",$w->thingies())."\n"; # prints "this, that" # here's the bit that I want to make work $w->thingies('another'); print join(", ",$w->thingies())."\n"; # prints "this, that, another"
I hope that makes sense.
Thanks!
--Pileofrogs
In reply to Moose Accessor Question by pileofrogs
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |