1 package Catalyst::ClassData;
4 use Scalar::Util 'blessed';
7 my ($declaredclass, $attribute, $data) = @_;
8 confess("mk_classdata() is a class method, not an object method")
12 my $wantclass = blessed($_[0]) || $_[0];
14 return $wantclass->mk_classdata($attribute)->(@_)
15 if @_>1 && $wantclass ne $declaredclass;
17 $data = $_[1] if @_>1;
21 my $alias = "_${attribute}_accessor";
22 $declaredclass->meta->add_method($alias, $accessor);
23 $declaredclass->meta->add_method($attribute, $accessor);