| ... | ... | 
                  @@ -1,6 +1,6 @@  | 
              
| 1 | 1 | 
                  0.1638  | 
              
| 2 | 2 | 
                  added experimental base_table attribute and removed experimental table_class attribute  | 
              
| 3 | 
                  - renamed helper to method. helper is available, but deprecated.  | 
              |
| 3 | 
                  + renamed helper to method.  | 
              |
| 4 | 4 | 
                  added experimental DBIx::Custom::Result::stash()  | 
              
| 5 | 5 | 
                  renamed experimental DBIx::Custom::Table helper to method  | 
              
| 6 | 6 | 
                  0.1637  | 
              
| ... | ... | 
                  @@ -69,16 +69,15 @@ our $AUTOLOAD;  | 
              
| 69 | 69 | 
                   sub AUTOLOAD {
                 | 
              
| 70 | 70 | 
                  my $self = shift;  | 
              
| 71 | 71 | 
                   | 
              
| 72 | 
                  - # Method  | 
              |
| 73 | 
                  - my ($package, $method) = $AUTOLOAD =~ /^([\w\:]+)\:\:(\w+)$/;  | 
              |
| 74 | 
                  -  | 
              |
| 75 | 
                  - # Helper  | 
              |
| 76 | 
                  -    $self->{_helpers} ||= {};
                 | 
              |
| 77 | 
                  - croak qq/Can't locate object method "$method" via "$package"/  | 
              |
| 78 | 
                  -      unless my $helper = $self->{_helpers}->{$method};
                 | 
              |
| 72 | 
                  + # Method name  | 
              |
| 73 | 
                  + my ($package, $mname) = $AUTOLOAD =~ /^([\w\:]+)\:\:(\w+)$/;  | 
              |
| 79 | 74 | 
                   | 
              
| 80 | 
                  - # Run  | 
              |
| 81 | 
                  - return $self->$helper(@_);  | 
              |
| 75 | 
                  + # Method  | 
              |
| 76 | 
                  +    $self->{_methods} ||= {};
                 | 
              |
| 77 | 
                  + croak qq/Can't locate object method "$mname" via "$package"/  | 
              |
| 78 | 
                  +      unless my $method = $self->{_methods}->{$mname};
                 | 
              |
| 79 | 
                  +  | 
              |
| 80 | 
                  + return $self->$method(@_);  | 
              |
| 82 | 81 | 
                  }  | 
              
| 83 | 82 | 
                   | 
              
| 84 | 83 | 
                   sub apply_filter {
                 | 
              
| ... | ... | 
                  @@ -145,12 +144,12 @@ sub apply_filter {
                 | 
              
| 145 | 144 | 
                  return $self;  | 
              
| 146 | 145 | 
                  }  | 
              
| 147 | 146 | 
                   | 
              
| 148 | 
                  -sub helper {
                 | 
              |
| 147 | 
                  +sub method {
                 | 
              |
| 149 | 148 | 
                  my $self = shift;  | 
              
| 150 | 149 | 
                   | 
              
| 151 | 150 | 
                  # Merge  | 
              
| 152 | 
                  -    my $helpers = ref $_[0] eq 'HASH' ? $_[0] : {@_};
                 | 
              |
| 153 | 
                  -    $self->{_helpers} = {%{$self->{_helpers} || {}}, %$helpers};
                 | 
              |
| 151 | 
                  +    my $methods = ref $_[0] eq 'HASH' ? $_[0] : {@_};
                 | 
              |
| 152 | 
                  +    $self->{_methods} = {%{$self->{_methods} || {}}, %$methods};
                 | 
              |
| 154 | 153 | 
                   | 
              
| 155 | 154 | 
                  return $self;  | 
              
| 156 | 155 | 
                  }  | 
              
| ... | ... | 
                  @@ -1074,9 +1073,9 @@ Arguments is same as C<delete> method,  | 
              
| 1074 | 1073 | 
                  except that C<delete_all> don't have C<where> argument.  | 
              
| 1075 | 1074 | 
                  Return value of C<delete_all()> is the count of affected rows.  | 
              
| 1076 | 1075 | 
                   | 
              
| 1077 | 
                  -=head2 C<(experimental) helper>  | 
              |
| 1076 | 
                  +=head2 C<(experimental) method>  | 
              |
| 1078 | 1077 | 
                   | 
              
| 1079 | 
                  - $dbi->helper(  | 
              |
| 1078 | 
                  + $dbi->method(  | 
              |
| 1080 | 1079 | 
                           update_or_insert => sub {
                 | 
              
| 1081 | 1080 | 
                  my $self = shift;  | 
              
| 1082 | 1081 | 
                  # do something  | 
              
| ... | ... | 
                  @@ -1087,7 +1086,7 @@ Return value of C<delete_all()> is the count of affected rows.  | 
              
| 1087 | 1086 | 
                  }  | 
              
| 1088 | 1087 | 
                  );  | 
              
| 1089 | 1088 | 
                   | 
              
| 1090 | 
                  -Register helper methods. These method is called from L<DBIx::Custom> object directory.  | 
              |
| 1089 | 
                  +Register method. These method is called from L<DBIx::Custom> object directory.  | 
              |
| 1091 | 1090 | 
                   | 
              
| 1092 | 1091 | 
                  $dbi->update_or_insert;  | 
              
| 1093 | 1092 | 
                  $dbi->find_or_create;  | 
              
| ... | ... | 
                  @@ -525,15 +525,15 @@ ok($@, "exception");  | 
              
| 525 | 525 | 
                   $dbi->dbh->{AutoCommit} = 1;
                 | 
              
| 526 | 526 | 
                   | 
              
| 527 | 527 | 
                   | 
              
| 528 | 
                  -test 'helper';  | 
              |
| 528 | 
                  +test 'method';  | 
              |
| 529 | 529 | 
                   $dbi = DBIx::Custom->connect($NEW_ARGS->{0});
                 | 
              
| 530 | 
                  -$dbi->helper(  | 
              |
| 530 | 
                  +$dbi->method(  | 
              |
| 531 | 531 | 
                       one => sub { 1 }
                 | 
              
| 532 | 532 | 
                  );  | 
              
| 533 | 
                  -$dbi->helper(  | 
              |
| 533 | 
                  +$dbi->method(  | 
              |
| 534 | 534 | 
                       two => sub { 2 }
                 | 
              
| 535 | 535 | 
                  );  | 
              
| 536 | 
                  -$dbi->helper({
                 | 
              |
| 536 | 
                  +$dbi->method({
                 | 
              |
| 537 | 537 | 
                       twice => sub {
                 | 
              
| 538 | 538 | 
                  my $self = shift;  | 
              
| 539 | 539 | 
                  return $_[0] * 2;  | 
              
| ... | ... | 
                  @@ -1003,7 +1003,7 @@ eval {$dbi->apply_filter('table1', 'key2', {out => 'no'})};
                 | 
              
| 1003 | 1003 | 
                  like($@, qr/not registered/);  | 
              
| 1004 | 1004 | 
                   eval {$dbi->apply_filter('table1', 'key2', {in => 'no'})};
                 | 
              
| 1005 | 1005 | 
                  like($@, qr/not registered/);  | 
              
| 1006 | 
                  -$dbi->helper({one => sub { 1 }});
                 | 
              |
| 1006 | 
                  +$dbi->method({one => sub { 1 }});
                 | 
              |
| 1007 | 1007 | 
                  is($dbi->one, 1);  | 
              
| 1008 | 1008 | 
                   | 
              
| 1009 | 1009 | 
                   eval{DBIx::Custom->connect()};
                 |