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::Locate
object. 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
peek
in 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
$it
back to the start of the database again. The next call to$it->next
gives 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/