DBM::Deep::Iterator::File::Index(3p)

NAME
DBM::Deep::Iterator::Index - mediate between DBM::Deep::Iterator and DBM::Deep::Engine::Sector::Index

PURPOSE
This is an internal-use-only object for DBM::Deep. It acts as the mediator between the DBM::Deep::Iterator object and a DBM::Deep::Engine::Sector::Index sector.

OVERVIEW
This object, despite the implied class hierarchy, does NOT inherit from DBM::Deep::Iterator. Instead, it delegates to it, essentially acting as a facade over it. "get_next_key" in DBM::Deep::Iterator will instantiate one of these objects as needed to handle an Index sector.

METHODS

  new(\%params)
The constructor takes a hashref of params and blesses it into the invoking class. The hashref is assumed to have the following elements:

•   iterator (of type DBM::Deep::Iterator

•   sector (of type DBM::Deep::Engine::Sector::Index

  at_end()
This takes no arguments.

This returns true/false indicating whether this sector has any more elements that can be iterated over.

  get_next_iterator()
This takes no arguments.

This returns an iterator (built by "get_sector_iterator" in DBM::Deep::Iterator) based on the sector pointed to by the next occupied location in this index.

If the sector is exhausted, it returns nothing.