First of a two-parter :)
[dbsrgits/DBIx-Class.git] / lib / DBIx / Class / CDBICompat / ColumnCase.pm
CommitLineData
ea2e61bf 1package DBIx::Class::CDBICompat::ColumnCase;
2
3use strict;
4use warnings;
5use NEXT;
6
7sub _register_column_group {
8 my ($class, $group, @cols) = @_;
9 return $class->NEXT::_register_column_group($group => map lc, @cols);
10}
11
12sub _register_columns {
13 my ($class, @cols) = @_;
14 return $class->NEXT::_register_columns(map lc, @cols);
15}
16
510ca912 17sub get_column {
ea2e61bf 18 my ($class, $get, @rest) = @_;
510ca912 19 return $class->NEXT::get_column(lc $get, @rest);
ea2e61bf 20}
21
510ca912 22sub set_column {
ea2e61bf 23 my ($class, $set, @rest) = @_;
510ca912 24 return $class->NEXT::set_column(lc $set, @rest);
25}
26
27sub store_column {
28 my ($class, $set, @rest) = @_;
29 return $class->NEXT::store_column(lc $set, @rest);
ea2e61bf 30}
31
32sub find_column {
33 my ($class, $col) = @_;
34 return $class->NEXT::find_column(lc $col);
35}
36
510ca912 37sub _mk_group_accessors {
38 my ($class, $type, $group, @fields) = @_;
ea2e61bf 39 my %fields;
40 $fields{$_} = 1 for @fields,
41 map lc, grep { !defined &{"${class}::${_}"} } @fields;
510ca912 42 return $class->NEXT::_mk_group_accessors($type, $group, keys %fields);
ea2e61bf 43}
44
451;