1package # hide from PAUSE 2 DBIx::Class::CDBICompat::AttributeAPI; 3 4use strict; 5use warnings; 6 7sub _attrs { 8 my ($self, @atts) = @_; 9 return @{$self->{_column_data}}{@atts}; 10} 11 12*_attr = \&_attrs; 13 14sub _attribute_store { 15 my $self = shift; 16 my $vals = @_ == 1 ? shift: {@_}; 17 $self->store_column($_, $vals->{$_}) for keys %{$vals}; 18} 19 20sub _attribute_set { 21 my $self = shift; 22 my $vals = @_ == 1 ? shift: {@_}; 23 $self->set_column($_, $vals->{$_}) for keys %{$vals}; 24} 25 26sub _attribute_delete { 27 my ($self, $attr) = @_; 28 delete $self->{_column_data}{$attr}; 29} 30 31sub _attribute_exists { 32 my ($self, $attr) = @_; 33 $self->has_column_loaded($attr); 34} 35 361; 37