NAME
MooseX::Iterator::Locate -- read "locate" database with MooseX::Iterator
SYNOPSIS
use MooseX::Iterator::Locate;
my $it = MooseX::Iterator::Locate->new;
while ($it->has_next) {
print $it->next, "\n";
}
CLASS HIERARCHY
MooseX::Iterator::Locate is a subclass of Moose::Object and File::Iterator::Locate,
Moose::Object
File::Iterator::Locate
MooseX::Iterator::Locate
and has roles
MooseX::Iterator::Role
DESCRIPTION
MooseX::Iterator::Locate reads a "locate" database file in the style of MooseX::Iterator. It allows MooseX::Iterator features to be applied to database entries read by an underlying File::Locate::Iterator.
See examples/moosex-iterator.pl for a complete sample program.
FUNCTIONS
$it = MooseX::Iterator::Locate->new (key=>value,...)-
Create and return a new
MooseX::Iterator::Locateobject. Optional key/value pairs are passed toFile::Locate::Iterator->new().my $it = MooseX::Iterator::Locate->new (suffixes => ['.pm', '.pl']); $entry = $it->next()-
Return the next entry from the database. The first call is the first entry.
$entry = $it->peek()-
Return the next entry from the database, but don't advance the iterator position. This is what
$it->next()would return.(This is not the same as
peekin the base MooseX::Iterator version 0.11, which gives the second next item. Believe that's a mistake there, though the intention will be to follow what the base does when resolved.) $bool = $it->has_next()-
Return true if there's a next entry available.
$it->reset()-
Move
$itback to the start of the database again. The next call to$it->nextgives the first entry again.As discussed in File::Locate::Iterator under
rewind(), this reset is only possible when the underlying database file or handle is seekable.
ATTRIBUTES
The various parameters accepted by new are attributes. They're all "bare" create-only, no getters or setters.
database_file Str
database_fh FileHandle
database_str Str
suffix Str
suffixes ArrayRef[Str]
glob Str
globs ArrayRef[Str]
regexp Str | RegexpRef
regexps ArrayRef[Str|RegexpRef]
use_mmap enum (type MooseX::Iterator::Locate::UseMmap)
"default", "if_sensible", "if_possible", "0", "1"
database_file default is File::Locate::Iterator->default_database_file(), and is in the form of a coderef default since default_database_file() looks at %ENV.
SEE ALSO
MooseX::Iterator, File::Locate::Iterator, Moose, Moose::Object
HOME PAGE
http://user42.tuxfamily.org/file-locate-iterator/index.html
COPYRIGHT
Copyright 2010, 2011, 2014, 2017, 2018, 2019 Kevin Ryde
File-Locate-Iterator is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.
File-Locate-Iterator is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with File-Locate-Iterator. If not, see http://www.gnu.org/licenses/