In Perl, how does one export an attribute handler?
Do the following:
package MyAttrDecl; use strict; use warnings; require Exporter; our @EXPORT = qw( _ATTR_CODE_MyAttr ); our @ISA = qw( Exporter ); sub MyAttr :ATTR(CODE) { my ($package, $symbol, $referent, $attr, $data, $phase, $filename, $linenum) = @_; my $name = *{$symbol}{NAME}; warn "Adding an attribute to package=$package name=$name"; } 1;
The important part is _ATTR_CODE_MyAttr
. Obviously you change this to match your code.
The above is called with the following:
use MyAttrDecl; sub new :MyAttr( "/pos/v1" ) { return bless {}, shift; }
No comments:
Post a Comment