The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

TIECLASS Name: POP::Lazy_object_list Desc: Implements a tied array which contains a list of persistent objects, lazily, so that it at first just contains the objects' pids, but goes out and restores the object when it is accessed.

METHOD Name: POP::Lazy_object_list::TIEARRAY Desc: The tied array constructor; takes the persistent class name and a list of pids as arguments. Notice that all the pids must be for objects in the same class

METHOD Name: POP::Lazy_object_list::FETCH Desc: Called whenever an element of the tied array is accessed, this will restore the object if it hasn't already been, and then return it.

METHOD Name: POP::Lazy_object_list::PIDS Desc: Returns the pids for every object in the array, either by pulling it out of the restored object, or by simply returning that element of the array if the object hasn't been restored yet.

METHOD Name: POP::Lazy_object_list::STORE Desc: Called whenever an element in the array is set; tells our parent to update persistence.

METHOD Name: POP::Lazy_object_list::PUSH Desc: Called to push elements onto the list.

METHOD Name: POP::Lazy_object_list::POP Desc: Called to pop an element from the list.

METHOD Name: POP::Lazy_object_list::SHIFT Desc: Called to shift an element from the list.

METHOD Name: POP::Lazy_object_list::UNSHIFT Desc: Called to unshift an element onto the list.

METHOD Name: POP::Lazy_object_list::SPLICE Desc: Called to splice elements from and into the list.

METHOD Name: POP::Lazy_object_list::FETCHSIZE Desc: Called whenever the length of the array is requested.

METHOD Name: POP::Lazy_object_list::STORESIZE Desc: Called whenever the length of the array is set.