Commit | Line | Data |
---|---|---|
8990e307 LW |
1 | # |
2 | #################################### DBM SECTION | |
3 | # | |
4 | ||
9fe6733a | 5 | datum_key T_DATUM_K |
0bf2e707 | 6 | datum_key_copy T_DATUM_K_C |
9fe6733a | 7 | datum_value T_DATUM_V |
8990e307 LW |
8 | gdatum T_GDATUM |
9 | NDBM_File T_PTROBJ | |
10 | GDBM_File T_PTROBJ | |
11 | SDBM_File T_PTROBJ | |
12 | ODBM_File T_PTROBJ | |
13 | DB_File T_PTROBJ | |
14 | DBZ_File T_PTROBJ | |
15 | FATALFUNC T_OPAQUEPTR | |
16 | ||
17 | INPUT | |
9fe6733a PM |
18 | T_DATUM_K |
19 | ckFilter($arg, filter_store_key, \"filter_store_key\"); | |
20 | $var.dptr = SvPV($arg, PL_na); | |
21 | $var.dsize = (int)PL_na; | |
0bf2e707 PM |
22 | T_DATUM_K_C |
23 | { | |
24 | SV * tmpSV ; | |
25 | if (db->filter_store_key){ | |
26 | tmpSV = sv_2mortal(newSVsv($arg)); | |
27 | ckFilter(tmpSV, filter_store_key, \"filter_store_key\"); | |
28 | } | |
29 | else | |
30 | tmpSV = $arg; | |
31 | $var.dptr = SvPV(tmpSV, PL_na); | |
32 | $var.dsize = (int)PL_na; | |
33 | } | |
9fe6733a PM |
34 | T_DATUM_V |
35 | ckFilter($arg, filter_store_value, \"filter_store_value\"); | |
cbc5248d PM |
36 | if (SvOK($arg)) { |
37 | $var.dptr = SvPV($arg, PL_na); | |
38 | $var.dsize = (int)PL_na; | |
39 | } | |
40 | else { | |
41 | $var.dptr = \"\"; | |
42 | $var.dsize = 0; | |
43 | } | |
8990e307 LW |
44 | T_GDATUM |
45 | UNIMPLEMENTED | |
46 | OUTPUT | |
9fe6733a PM |
47 | T_DATUM_K |
48 | sv_setpvn($arg, $var.dptr, $var.dsize); | |
49 | ckFilter($arg, filter_fetch_key,\"filter_fetch_key\"); | |
50 | T_DATUM_V | |
ef50df4b | 51 | sv_setpvn($arg, $var.dptr, $var.dsize); |
9fe6733a | 52 | ckFilter($arg, filter_fetch_value,\"filter_fetch_value\"); |
8990e307 | 53 | T_GDATUM |
ef50df4b | 54 | sv_usepvn($arg, $var.dptr, $var.dsize); |