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