diff options
author | Gianni Ceccarelli <gianni.ceccarelli@net-a-porter.com> | 2011-11-25 15:15:01 +0000 |
---|---|---|
committer | Gianni Ceccarelli <gianni.ceccarelli@net-a-porter.com> | 2011-11-25 15:15:01 +0000 |
commit | 22cbedcbd3b8ebfcd2b2e945fdad13a4108d640d (patch) | |
tree | 083fd2c946ec615cde31529ab00b23ccbb90e870 /lib/Data/MultiValued/AttributeAccessors.pm | |
parent | Build results of 6e5e90b (on master) (diff) | |
parent | changes bump for CPAN release (diff) | |
download | data-multivalued-22cbedcbd3b8ebfcd2b2e945fdad13a4108d640d.tar.gz data-multivalued-22cbedcbd3b8ebfcd2b2e945fdad13a4108d640d.tar.bz2 data-multivalued-22cbedcbd3b8ebfcd2b2e945fdad13a4108d640d.zip |
Build results of 44cf53d (on master)
Diffstat (limited to 'lib/Data/MultiValued/AttributeAccessors.pm')
-rw-r--r-- | lib/Data/MultiValued/AttributeAccessors.pm | 52 |
1 files changed, 48 insertions, 4 deletions
diff --git a/lib/Data/MultiValued/AttributeAccessors.pm b/lib/Data/MultiValued/AttributeAccessors.pm index bc6fb49..e5b4cd1 100644 --- a/lib/Data/MultiValued/AttributeAccessors.pm +++ b/lib/Data/MultiValued/AttributeAccessors.pm @@ -1,6 +1,6 @@ package Data::MultiValued::AttributeAccessors; { - $Data::MultiValued::AttributeAccessors::VERSION = '0.0.1_1'; + $Data::MultiValued::AttributeAccessors::VERSION = '0.0.1_2'; } { $Data::MultiValued::AttributeAccessors::DIST = 'Data-MultiValued'; @@ -10,8 +10,12 @@ use warnings; use base 'Moose::Meta::Method::Accessor'; use Carp 'confess'; +# ABSTRACT: method meta-class for multi-valued attribute accessors + + sub _instance_is_inlinable { 0 } + sub _generate_accessor_method { my $self = shift; my $attr = $self->associated_attribute; @@ -62,6 +66,7 @@ sub _generate_clearer_method { }; } + sub _generate_multi_accessor_method { my $self = shift; my $attr = $self->associated_attribute; @@ -119,11 +124,50 @@ __END__ =head1 NAME -Data::MultiValued::AttributeAccessors +Data::MultiValued::AttributeAccessors - method meta-class for multi-valued attribute accessors =head1 VERSION -version 0.0.1_1 +version 0.0.1_2 + +=head1 DESCRIPTION + +Subclass of L<Moose::Meta::Method::Accessor>, generates non-inlined +(patches welcome) accessors for multi-valued attributes. + +=head1 METHDOS + +=head2 C<_instance_is_inlinable> + +Returns C<0> to prevent attempts to inline the accessor methods. + +=head2 C<_generate_accessor_method> + +=head2 C<_generate_reader_method> + +=head2 C<_generate_writer_method> + +=head2 C<_generate_predicate_method> + +=head2 C<_generate_clearer_method> + +Delegate to C<set_multi_value>, C<get_multi_value>, +C<has_multi_value>, C<clear_multi_value>, passing empty options +(i.e. no tags, no ranges). + +=head2 C<_generate_multi_accessor_method> + +=head2 C<_generate_multi_reader_method> + +=head2 C<_generate_multi_writer_method> + +=head2 C<_generate_multi_predicate_method> + +=head2 C<_generate_multi_clearer_method> + +Delegate to C<set_multi_value>, C<get_multi_value>, +C<has_multi_value>, C<clear_multi_value>, passing C<$_[1]> as options +and C<$_[2]> as values. =head1 AUTHOR @@ -131,7 +175,7 @@ Gianni Ceccarelli <dakkar@thenautilus.net> =head1 COPYRIGHT AND LICENSE -This software is copyright (c) 2011 by Net-a-porter.com. +This software is copyright (c) 2011 by Net-a-Porter.com. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. |