confess("mk_classdata() is a class method, not an object method")
if blessed $class;
- my $slot = '$'.$attribute;
my $accessor = sub {
my $pkg = ref $_[0] || $_[0];
my $meta = Moose::Util::find_meta($pkg)
}
# tighter version of
- # if ( $meta->has_package_symbol($slot) ) {
- # return ${ $meta->get_package_symbol($slot) };
+ # if ( $meta->has_package_symbol('$'.$attribute) ) {
+ # return ${ $meta->get_package_symbol('$'.$attribute) };
# }
no strict 'refs';
my $v = *{"${pkg}::${attribute}"}{SCALAR};
return;
};
- confess("Failed to create accessor: $@ ")
- unless ref $accessor eq 'CODE';
-
my $meta = $class->Class::MOP::Object::meta();
confess "${class}'s metaclass is not a Class::MOP::Class"
unless $meta->isa('Class::MOP::Class');