NAME

Data::RecordStore::Silo - Indexed Fixed Record Store

SYNPOSIS

use Data::RecordStore::Silo;

my $silo = Data::RecordStore->open_silo( $directory, $template, $record_size, $max_file_size );

my $id = $silo->next_id;
$silo->put_record( $id, [ 2234234324234, 42, "THIS IS SOME TEXT" ] );

my $record = $silo->get_record( $id );
my( $long_val, $int_val, $text ) = @$record;

my $count = $silo->entry_count;

my $next_id = $silo->push( [ 999999, 12, "LIKE A STACK" ] );

my $newcount = $silo->entry_count;
$newcount == $count + 1;

$record = $silo->peek;

$newcount == $silo->entry_count;

$record = $silo->pop;
my $newestcount = $silo->entry_count;
$newestcount == $newcount - 1;

my $reopened_silo = Data::RecordStore->reopen_silo( $directory );

DESCRIPTION

METHODS

open_silo( directory, template, record_size, max_file_size )

reopen_silo( directory )

next_id

entry_count

get_record

put_record

pop

peek

push

copy_record

empty_silo

record_size

template

max_file_size

records_per_subsilo

size

ensure_entry_count

subsilos

AUTHOR Eric Wolf coyocanid@gmail.com

COPYRIGHT AND LICENSE

Copyright (c) 2012 - 2019 Eric Wolf. All rights reserved.  This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.

VERSION Version 6.00 (Oct, 2019))