NAME

FlatFile::DataStore::Toc - Perl module that implements a flat file data store TOC (table of contents) class.

SYNOPSYS

use FlatFile::DataStore::Toc;
my $toc;

$toc = FlatFile::DataStore::Toc->new(
    { int       => 10,
      datastore => $datastore_obj
    } );

# or

$toc = FlatFile::DataStore::Toc->new(
    { num       => "A",               # same as int=>10
      datastore => $datastore_obj
    } );

DESCRIPTION

FlatFile::DataStore::Toc is a Perl module that implements a flat file data store TOC (table of contents) class.

This module is used by FlatFile::DataStore. You will likely never call any of it's methods yourself.

VERSION

FlatFile::DataStore::Toc version 0.16

CLASS METHODS

FlatFile::DataStore::Toc->new( $parms )

Constructs a new FlatFile::DataStore::Toc object from a toc record string in a tocfile.

The parm $parms is a hash reference containing these required keys:

- datastore ... data store object, and one of:
- int ... data file number as integer, or
- num ... data file number as number in number base

An int or num of 0 will load the first (totals) line from the tocfile.

OBJECT METHODS

to_string()

Returns the toc object as a string, appropriate for writing back to the tocfile.

OBJECT METHODS: Accessors

The following read/write methods set and return their respective attribute values if $value is given. Otherwise, they just return the value.

$record->datastore( [$value] )
$record->string(    [$value] )

The following methods expect an integer parm and return an integer value (even though these are stored in the tocfile as numbers in their respective bases).

$record->datafnum( [$value] )
$record->keyfnum(  [$value] )
$record->tocfnum(  [$value] )
$record->numrecs(  [$value] )
$record->keynum(   [$value] )
$record->transnum( [$value] )
$record->create(   [$value] )
$record->oldupd(   [$value] )
$record->update(   [$value] )
$record->olddel(   [$value] )
$record->delete(   [$value] )

AUTHOR

Brad Baxter, <bbaxter@cpan.org>

COPYRIGHT AND LICENSE

Copyright (C) 2010 by Brad Baxter

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.