NAME

DBM::Deep::Iterator::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 hiearchy, 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:

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.