X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FCDBICompat%2FIterator.pm;h=847b10b6db31bdb2f1ed9af92cfe7aac149a371c;hb=48580715af3072905f2c71dc27e7f70f21a11338;hp=1b968358b27e652e064b0c85034880a3eee712d0;hpb=d03c070640a8a9a187ba4fa21d645287029abfca;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/lib/DBIx/Class/CDBICompat/Iterator.pm b/lib/DBIx/Class/CDBICompat/Iterator.pm index 1b96835..847b10b 100644 --- a/lib/DBIx/Class/CDBICompat/Iterator.pm +++ b/lib/DBIx/Class/CDBICompat/Iterator.pm @@ -3,13 +3,14 @@ package DBIx::Class::CDBICompat::Iterator; use strict; use warnings; + =head1 NAME -DBIx::Class::CDBICompat::Iterator +DBIx::Class::CDBICompat::Iterator - Emulates the extra behaviors of the Class::DBI search iterator. =head1 SYNOPSIS -See DBIx::Class::CDBICompat for directions for use. +See DBIx::Class::CDBICompat for usage directions. =head1 DESCRIPTION @@ -24,7 +25,7 @@ The CDBI iterator returns true if there were any results, false otherwise. The sub _init_result_source_instance { my $class = shift; - + my $table = $class->next::method(@_); $table->resultset_class("DBIx::Class::CDBICompat::Iterator::ResultSet"); @@ -41,7 +42,11 @@ use warnings; use base qw(DBIx::Class::ResultSet); sub _bool { - return $_[0]->count; + # Performance hack so internal checks whether the result set + # exists won't do a SQL COUNT. + return 1 if caller =~ /^DBIx::Class::/; + + return $_[0]->count; } 1;