diff options
author | Gianni Ceccarelli <dakkar@thenautilus.net> | 2011-11-10 15:10:26 +0000 |
---|---|---|
committer | Gianni Ceccarelli <dakkar@thenautilus.net> | 2011-11-10 15:10:26 +0000 |
commit | dc07be4ac45756a0e664ee29e888f86b7609784a (patch) | |
tree | dca7e4467f73625604886e8910a609ccc978b0ce /Data-MultiValued/lib/Data/MultiValued/AttributeAccessors.pm | |
parent | 'clear' almost completely implemneted (diff) | |
download | data-multivalued-dc07be4ac45756a0e664ee29e888f86b7609784a.tar.gz data-multivalued-dc07be4ac45756a0e664ee29e888f86b7609784a.tar.bz2 data-multivalued-dc07be4ac45756a0e664ee29e888f86b7609784a.zip |
move up a level
Diffstat (limited to 'Data-MultiValued/lib/Data/MultiValued/AttributeAccessors.pm')
-rw-r--r-- | Data-MultiValued/lib/Data/MultiValued/AttributeAccessors.pm | 109 |
1 files changed, 0 insertions, 109 deletions
diff --git a/Data-MultiValued/lib/Data/MultiValued/AttributeAccessors.pm b/Data-MultiValued/lib/Data/MultiValued/AttributeAccessors.pm deleted file mode 100644 index cac3538..0000000 --- a/Data-MultiValued/lib/Data/MultiValued/AttributeAccessors.pm +++ /dev/null @@ -1,109 +0,0 @@ -package Data::MultiValued::AttributeAccessors; -use strict; -use warnings; -use base 'Moose::Meta::Method::Accessor'; -use Carp 'confess'; - -sub _instance_is_inlinable { 0 } - -sub _generate_accessor_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - if (@_ >= 2) { - $attr->set_multi_value($_[0], {}, $_[1]); - } - $attr->get_multi_value($_[0], {}); - } -} - -sub _generate_reader_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - confess "Cannot assign a value to a read-only accessor" - if @_ > 1; - $attr->get_multi_value($_[0], {}); - }; -} - -sub _generate_writer_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - $attr->set_multi_value($_[0], {}, $_[1]); - }; -} - -sub _generate_predicate_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - $attr->has_multi_value($_[0], {}) - }; -} - -sub _generate_clearer_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - $attr->clear_multi_value($_[0], {}) - }; -} - -sub _generate_multi_accessor_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - if (@_ >= 3) { - $attr->set_multi_value($_[0], $_[1], $_[2]); - } - $attr->get_multi_value($_[0],$_[1]); - } -} - -sub _generate_multi_reader_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - confess "Cannot assign a value to a read-only accessor" - if @_ > 2; - $attr->get_multi_value($_[0],$_[1]); - }; -} - -sub _generate_multi_writer_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - $attr->set_multi_value($_[0], $_[1], $_[2]); - }; -} - -sub _generate_multi_predicate_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - $attr->has_multi_value($_[0],$_[1]) - }; -} - -sub _generate_multi_clearer_method { - my $self = shift; - my $attr = $self->associated_attribute; - - return sub { - $attr->clear_multi_value($_[0],$_[1]) - }; -} - -1; |