1 package DBM::Deep::Iterator;
6 use warnings FATAL => 'all';
8 use DBM::Deep::Iterator::DBI ();
9 use DBM::Deep::Iterator::File ();
17 This is an internal-use-only object for L<DBM::Deep/>. It is the iterator
18 for FIRSTKEY() and NEXTKEY().
28 The constructor takes a hashref of params. The hashref is assumed to have the
33 =item * engine (of type L<DBM::Deep::Engine/>
35 =item * base_offset (the base_offset of the invoking DBM::Deep object)
46 engine => $args->{engine},
47 base_offset => $args->{base_offset},
50 Scalar::Util::weaken( $self->{engine} );
59 This method takes no arguments.
61 It will reset the iterator so that it will start from the beginning again.
63 This method returns nothing.
67 sub reset { die "reset must be implemented in a child class" }
69 =head2 get_next_key( $obj )
73 sub get_next_key { die "get_next_key must be implemented in a child class" }