Perl Diver 2.33
Main Environment Variables Perl Default Values Perl Config - Summary Perl Config - Full Installed Modules List Directory uptime Docs

Module Documentation
Details and documentation about a specific module, including version and documentation (if available). Note that while links to perldoc.com and search.cpan.org are provided, the module may be part of a larger distribution. If you reach a File Not Found page on either site, please try the parent module.

Class::DBI::Search::Basic

Name Class::DBI::Search::Basic
Version
Located at /usr/share/perl5
File /usr/share/perl5/Class/DBI/Search/Basic.pm
Is Core No
Search CPAN for this module Class::DBI::Search::Basic
Documentation Class::DBI::Search::Basic
Module Details Class::DBI::Search::Basic

NAME

Class::DBI::Search::Basic - Simple Class::DBI search


SYNOPSIS

        my $searcher = Class::DBI::Search::Basic->new(
                $cdbi_class, @search_args
        );
        my @results = $searcher->run_search;
        # Over in your Class::DBI subclass:

        __PACKAGE__->add_searcher(
                search  => "Class::DBI::Search::Basic",
          isearch => "Class::DBI::Search::Plugin::CaseInsensitive",
        );


DESCRIPTION

This is the start of a pluggable Search infrastructure for Class::DBI.

At the minute Class::DBI::Search::Basic doubles up as both the default search within Class::DBI as well as the search base class. We will probably need to tease this apart more later and create an abstract base class for search plugins.


METHODS

new

        my $searcher = Class::DBI::Search::Basic->new(
                $cdbi_class, @search_args
        );

A Searcher is created with the class to which the results will belong, and the arguments passed to the search call by the user.

opt

        if (my $order = $self->opt('order_by')) { ... }

The arguments passed to search may contain an options hash. This will return the value of a given option.

run_search

        my @results = $searcher->run_search;
        my $iterator = $searcher->run_search;

Actually run the search.


SUBCLASSING

sql / bind / fragment

The actual mechanics of generating the SQL and executing it split up into a variety of methods for you to override.

run_search() is implemented as:

  return $cdbi->sth_to_objects($self->sql, $self->bind);

Where sql() is

  $cdbi->sql_Retrieve($self->fragment);

There are also a variety of private methods underneath this that could be overridden in a pinch, but if you need to do this I'd rather you let me know so that I can make them public, or at least so that I don't remove them from under your feet.

Perl Diver brought to you by ScriptSolutions.com © 1997- 2026