
porton
Novice
Sep 8, 2016, 7:08 AM
Post #1 of 2
(4846 views)
|
Custom accessors work in Moose but not in Moo
|
Can't Post
|
|
The following Perl code works with Moose but does not work (throws an exceptions) with Moo.
#!/usr/bin/perl package X; use Moo; my $BusinessClass = "X"; my $Key = 'zz'; no strict 'refs'; *{"${BusinessClass}::access_$Key"} = sub { "Modified $Key" }; has $Key => ( is => 'rw', required => 0, accessor => { $Key => \&{"${BusinessClass}::access_$Key"} }, # predicate => { "has_$Key",\&{"${BusinessClass}::access2_$Key"} }, ); my $obj = X->new; print $obj->zz, "\n"; My real-life problem is how to generate classes whose fields are accessed through custom accessors. With Moose it can be accomplished by code like the above. But how to do this with Moo?
(This post was edited by porton on Sep 8, 2016, 7:09 AM)
|