X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FMoose%2FMeta%2FMixin%2FAttributeCore.pm;h=3152611f0092c60457749ac3c85e481b50967606;hb=826230c216b412742dc456ef9156559c2c9a62e0;hp=1e6f00479c6a28245f09e079f241e88c91d9009b;hpb=4bf82ce13be926eca01d6b8f07b46625a98a56fa;p=gitmo%2FMoose.git diff --git a/lib/Moose/Meta/Mixin/AttributeCore.pm b/lib/Moose/Meta/Mixin/AttributeCore.pm index 1e6f004..3152611 100644 --- a/lib/Moose/Meta/Mixin/AttributeCore.pm +++ b/lib/Moose/Meta/Mixin/AttributeCore.pm @@ -3,59 +3,111 @@ package Moose::Meta::Mixin::AttributeCore; use strict; use warnings; -our $VERSION = '0.98'; -our $AUTHORITY = 'cpan:STEVAN'; - use base 'Class::MOP::Mixin::AttributeCore'; -__PACKAGE__->meta->add_attribute( 'isa' => ( reader => '_isa_metadata' ) ); -__PACKAGE__->meta->add_attribute( 'does' => ( reader => '_does_metadata' ) ); -__PACKAGE__->meta->add_attribute( 'is' => ( reader => '_is_metadata' ) ); +__PACKAGE__->meta->add_attribute( + 'isa' => ( + reader => '_isa_metadata', + Class::MOP::_definition_context(), + ) +); + +__PACKAGE__->meta->add_attribute( + 'does' => ( + reader => '_does_metadata', + Class::MOP::_definition_context(), + ) +); + +__PACKAGE__->meta->add_attribute( + 'is' => ( + reader => '_is_metadata', + Class::MOP::_definition_context(), + ) +); + +__PACKAGE__->meta->add_attribute( + 'required' => ( + reader => 'is_required', + Class::MOP::_definition_context(), + ) +); + +__PACKAGE__->meta->add_attribute( + 'lazy' => ( + reader => 'is_lazy', Class::MOP::_definition_context(), + ) +); + +__PACKAGE__->meta->add_attribute( + 'lazy_build' => ( + reader => 'is_lazy_build', + Class::MOP::_definition_context(), + ) +); + +__PACKAGE__->meta->add_attribute( + 'coerce' => ( + reader => 'should_coerce', + Class::MOP::_definition_context(), + ) +); -__PACKAGE__->meta->add_attribute( 'required' => ( reader => 'is_required' ) ); -__PACKAGE__->meta->add_attribute( 'lazy' => ( reader => 'is_lazy' ) ); __PACKAGE__->meta->add_attribute( - 'lazy_build' => ( reader => 'is_lazy_build' ) ); -__PACKAGE__->meta->add_attribute( 'coerce' => ( reader => 'should_coerce' ) ); -__PACKAGE__->meta->add_attribute( 'weak_ref' => ( reader => 'is_weak_ref' ) ); + 'weak_ref' => ( + reader => 'is_weak_ref', + Class::MOP::_definition_context(), + ) +); + __PACKAGE__->meta->add_attribute( - 'auto_deref' => ( reader => 'should_auto_deref' ) ); + 'auto_deref' => ( + reader => 'should_auto_deref', + Class::MOP::_definition_context(), + ) +); + __PACKAGE__->meta->add_attribute( 'type_constraint' => ( reader => 'type_constraint', predicate => 'has_type_constraint', + Class::MOP::_definition_context(), ) ); + __PACKAGE__->meta->add_attribute( 'trigger' => ( reader => 'trigger', predicate => 'has_trigger', + Class::MOP::_definition_context(), ) ); + __PACKAGE__->meta->add_attribute( 'handles' => ( reader => 'handles', writer => '_set_handles', predicate => 'has_handles', + Class::MOP::_definition_context(), ) ); + __PACKAGE__->meta->add_attribute( 'documentation' => ( reader => 'documentation', predicate => 'has_documentation', + Class::MOP::_definition_context(), ) ); 1; +# ABSTRACT: Core attributes shared by attribute metaclasses + __END__ =pod -=head1 NAME - -Moose::Meta::Mixin::AttributeCore - Core attributes shared by attribute metaclasses - =head1 DESCRIPTION This class implements the core attributes (aka properties) shared by all Moose @@ -65,17 +117,4 @@ attributes. See the L documentation for API details. See L for details on reporting bugs. -=head1 AUTHORS - -Dave Rolsky Eautarch@urth.orgE - -=head1 COPYRIGHT AND LICENSE - -Copyright 2006-2010 by Infinity Interactive, Inc. - -L - -This library is free software; you can redistribute it and/or modify -it under the same terms as Perl itself. - =cut