FlatFile-DataStore
view release on metacpan or search on metacpan
lib/FlatFile/DataStore.pm view on Meta::CPAN
If no record is passed, 'preamble' (or 'string'), 'data', and
'user' are required. Otherwise, if a record is passed, the
preamble, record data and user data will be gotten from it
unless any of them are explicitly provided.
Returns a Flatfile::DataStore::Record object.
=cut
sub update {
my $self = shift;
my( $data_ref, $user_data, $pr_obj ) = $self->normalize_parms( @_ );
croak qq/Must have at least a previous preamble for update/
unless $pr_obj;
my $prevnext = $self->prevfnum; # boolean
my $prevpreamble = $pr_obj->string;
my $keyint = $pr_obj->keynum;
lib/FlatFile/DataStore.pm view on Meta::CPAN
# Takes a preamble string and a hash ref of values to change, and
# returns a new preamble string with those values changed.
#
# Will croak if the new preamble does not match the regx attribute.
#
# Private method.
#
# =cut
#
sub update_preamble {
my( $self, $preamble, $parms ) = @_;
my $omap = $self->specs;
for( keys %$parms ) {
my $value = $parms->{ $_ };
my $specs = omap_get_values( $omap, $_ );
croak qq/Unrecognized field: $_/ unless $specs;
lib/FlatFile/DataStore/Toc.pm view on Meta::CPAN
sub string {for($_[0]->{string} ){$_=$_[1]if@_>1;return$_}}
sub datafnum {for($_[0]->{datafnum} ){$_=$_[1]if@_>1;return$_}}
sub keyfnum {for($_[0]->{keyfnum} ){$_=$_[1]if@_>1;return$_}}
sub tocfnum {for($_[0]->{tocfnum} ){$_=$_[1]if@_>1;return$_}}
sub numrecs {for($_[0]->{numrecs} ){$_=$_[1]if@_>1;return$_}}
sub keynum {for($_[0]->{keynum} ){$_=$_[1]if@_>1;return$_}}
sub transnum {for($_[0]->{transnum} ){$_=$_[1]if@_>1;return$_}}
sub create {for($_[0]->{create} ){$_=$_[1]if@_>1;return$_}}
sub oldupd {for($_[0]->{oldupd} ){$_=$_[1]if@_>1;return$_}}
sub update {for($_[0]->{update} ){$_=$_[1]if@_>1;return$_}}
sub olddel {for($_[0]->{olddel} ){$_=$_[1]if@_>1;return$_}}
sub delete {for($_[0]->{delete} ){$_=$_[1]if@_>1;return$_}}
__END__
=head1 AUTHOR
Brad Baxter, E<lt>bbaxter@cpan.orgE<gt>
=head1 COPYRIGHT AND LICENSE
( run in 0.527 second using v1.01-cache-2.11-cpan-4d4bc49f3ae )