Attribute-Handlers
view release on metacpan or search on metacpan
demo/Demo.pm view on Meta::CPAN
sub Demo : ATTR(SCALAR) {
my ($package, $symbol, $referent, $attr, $data, $phase) = @_;
$data = '<undef>' unless defined $data;
print STDERR 'Scalar $', *{$symbol}{NAME},
" ($referent) was ascribed ${attr}\n",
"with data ($data)\nin phase $phase\n";
};
sub This : ATTR(SCALAR) {
print STDERR "This at ",
join(":", map { defined() ? $_ : "" } caller(1)),
"\n";
}
sub Demo : ATTR(HASH) {
my ($package, $symbol, $referent, $attr, $data) = @_;
$data = '<undef>' unless defined $data;
print STDERR 'Hash %', *{$symbol}{NAME},
" ($referent) was ascribed ${attr} with data ($data)\n";
};
lib/Attribute/Handlers.pm view on Meta::CPAN
if (my $import = $isa->can('import')) {
goto &$import
if $import != $uni;
}
}
goto &$uni
if $uni;
};
}
else {
$attr = caller()."::".$attr unless $attr =~ /::/;
eval qq{ sub $attr $code 1; }
or die "Internal error: $@";
}
}
}
else {
croak "Can't understand $_";
}
}
}
( run in 1.440 second using v1.01-cache-2.11-cpan-8780591d54d )