This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update Compress-Raw-Bzip2 to CPAN version 2.064
[perl5.git] / cpan / DB_File / typemap
CommitLineData
1f70e1ea 1# typemap for Perl 5 interface to Berkeley
a0d0e21e 2#
6ca2e664 3# written by Paul Marquess <Paul.Marquess@btinternet.com>
9c095db2
PM
4# last modified 20th June 2004
5# version 1.809
a0d0e21e
LW
6#
7#################################### DB SECTION
8#
9#
10
11u_int T_U_INT
12DB_File T_PTROBJ
13DBT T_dbtdatum
14DBTKEY T_dbtkeydatum
15
16INPUT
17T_dbtkeydatum
dcdb9d1f
RGS
18 {
19 SV * my_sv = $arg;
20 DBM_ckFilter(my_sv, filter_store_key, \"filter_store_key\");
039d031f 21 DBT_clear($var) ;
dcdb9d1f 22 SvGETMAGIC(my_sv) ;
9c095db2 23 if (db->type == DB_RECNO) {
dcdb9d1f
RGS
24 if (SvOK(my_sv))
25 Value = GetRecnoKey(aTHX_ db, SvIV(my_sv)) ;
9c095db2
PM
26 else
27 Value = 1 ;
28 $var.data = & Value;
29 $var.size = (int)sizeof(recno_t);
30 }
dcdb9d1f 31 else if (SvOK(my_sv)) {
bfd025d9
NC
32 STRLEN len;
33 $var.data = SvPVbyte(my_sv, len);
34 $var.size = (int)len;
a0d0e21e 35 }
dcdb9d1f 36 }
a0d0e21e 37T_dbtdatum
dcdb9d1f
RGS
38 {
39 SV * my_sv = $arg;
40 DBM_ckFilter(my_sv, filter_store_value, \"filter_store_value\");
039d031f 41 DBT_clear($var) ;
dcdb9d1f
RGS
42 SvGETMAGIC(my_sv) ;
43 if (SvOK(my_sv)) {
bfd025d9
NC
44 STRLEN len;
45 $var.data = SvPVbyte(my_sv, len);
46 $var.size = (int)len;
cbc5248d 47 }
dcdb9d1f 48 }
a0d0e21e
LW
49
50OUTPUT
51
52T_dbtkeydatum
53 OutputKey($arg, $var)
54T_dbtdatum
55 OutputValue($arg, $var)
a6ed719b
PM
56T_PTROBJ
57 sv_setref_pv($arg, dbtype, (void*)$var);