use Carp 'confess';
use Scalar::Util 'blessed', 'weaken';
-our $VERSION = '0.85';
+our $VERSION = '0.92_01';
$VERSION = eval $VERSION;
our $AUTHORITY = 'cpan:STEVAN';
my $name = $options{name};
- (defined $name && $name)
+ (defined $name)
|| confess "You must provide a name for the attribute";
$options{init_arg} = $name
sub _new {
my $class = shift;
+
+ return Class::MOP::Class->initialize($class)->new_object(@_)
+ if $class ne __PACKAGE__;
+
my $options = @_ == 1 ? $_[0] : {@_};
bless {
sub accessor_metaclass { 'Class::MOP::Method::Accessor' }
-sub process_accessors {
- Carp::cluck('The process_accessors method has been made private.'
- . " The public version is deprecated and will be removed in a future release.\n");
- shift->_process_accessors(@_);
-}
-
sub _process_accessors {
my ($self, $type, $accessor, $generate_as_inline_methods) = @_;