Document Carp's global variables + provide tests
[p5sagit/p5-mst-13.2.git] / lib / DBM_Filter / null.pm
1 package DBM_Filter::null ;
2
3 use strict;
4 use warnings;
5
6 our $VERSION = '0.01';
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 DBM_Filter::null
25
26 =head1 SYNOPSIS
27
28     use SDBM_File; # or DB_File, or GDBM_File, or NDBM_File, or ODBM_File
29     use DBM_Filter ;
30
31     $db = tie %hash, ...
32     $db->Filter_Push('null');
33     
34 =head1 DESCRIPTION
35
36 This filter ensures that all data written to the DBM file is null
37 terminated. This is useful when you have a perl script that needs
38 to interoperate with a DBM file that a C program also uses. A fairly
39 common issue is for the C application to include the terminating null
40 in a string when it writes to the DBM file. This filter will ensure that
41 all data written to the DBM file can be read by the C application.
42
43
44 =head1 SEE ALSO
45
46 L<DBM_Filter>, L<perldbmfilter>
47
48 =head1 AUTHOR
49
50 Paul Marquess pmqs@cpan.org