root / tools / perl / lib / DBM_Filter / null.pm @ fa47cac2
History | View | Annotate | Download (973 Bytes)
| 1 |
package DBM_Filter::null ; |
|---|---|
| 2 |
|
| 3 |
use strict; |
| 4 |
use warnings; |
| 5 |
|
| 6 |
our $VERSION = '0.02'; |
| 7 |
|
| 8 |
sub Store |
| 9 |
{
|
| 10 |
no warnings 'uninitialized'; |
| 11 |
$_ .= "\x00" ; |
| 12 |
} |
| 13 |
|
| 14 |
sub Fetch |
| 15 |
{
|
| 16 |
no warnings 'uninitialized'; |
| 17 |
s/\x00$// ; |
| 18 |
} |
| 19 |
|
| 20 |
1; |
| 21 |
|
| 22 |
__END__ |
| 23 |
|
| 24 |
=head1 NAME |
| 25 |
|
| 26 |
DBM_Filter::null - filter for DBM_Filter |
| 27 |
|
| 28 |
=head1 SYNOPSIS |
| 29 |
|
| 30 |
use SDBM_File; # or DB_File, or GDBM_File, or NDBM_File, or ODBM_File |
| 31 |
use DBM_Filter ; |
| 32 |
|
| 33 |
$db = tie %hash, ... |
| 34 |
$db->Filter_Push('null');
|
| 35 |
|
| 36 |
=head1 DESCRIPTION |
| 37 |
|
| 38 |
This filter ensures that all data written to the DBM file is null |
| 39 |
terminated. This is useful when you have a perl script that needs |
| 40 |
to interoperate with a DBM file that a C program also uses. A fairly |
| 41 |
common issue is for the C application to include the terminating null |
| 42 |
in a string when it writes to the DBM file. This filter will ensure that |
| 43 |
all data written to the DBM file can be read by the C application. |
| 44 |
|
| 45 |
|
| 46 |
=head1 SEE ALSO |
| 47 |
|
| 48 |
L<DBM_Filter>, L<perldbmfilter> |
| 49 |
|
| 50 |
=head1 AUTHOR |
| 51 |
|
| 52 |
Paul Marquess pmqs@cpan.org |