X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=tests%2Fndbm%2Fndbm.psi;h=8258796ef8174f2ee53149d3cbb0f34adf930863;hp=92fa62b3c648f264386c272ffacb7abf253bad51;hb=c9384515a81cb64d345b299908b2852f51bb8e6e;hpb=b029005e56a8913fbb3d17ab497b4a37a00a211c;ds=sidebyside diff --git a/tests/ndbm/ndbm.psi b/tests/ndbm/ndbm.psi index 92fa62b..8258796 100644 --- a/tests/ndbm/ndbm.psi +++ b/tests/ndbm/ndbm.psi @@ -1,8 +1,14 @@ +#include + +lib "gdbm_compat"; +#include + + function psi\dbm_open(string $file, int $open_flags, int $file_mode) : object { let file = pathval($file); let open_flags = intval($open_flags); let file_mode = intval($file_mode); - return to_object(dbm_open); + return dbm_open(file, open_flags, file_mode) as to_object(dbm_open); } function psi\dbm_store(object $db, string $key, string $data, int $mode) : int { @@ -16,7 +22,7 @@ function psi\dbm_store(object $db, string $key, string $data, int $mode) : int { dsize = strlen($0) ); let store_mode = intval($mode); - return to_int(dbm_store); + return dbm_store(db, key, content, store_mode) as to_int(dbm_store); } function psi\dbm_fetch(object $db, array $key) : array { @@ -25,7 +31,7 @@ function psi\dbm_fetch(object $db, array $key) : array { dptr = strval($dptr), dsize = intval($dsize) ); - return to_array(dbm_fetch, + return dbm_fetch(db, key) as to_array(dbm_fetch, to_int(dsize), to_string(dptr, dsize) ); @@ -33,5 +39,5 @@ function psi\dbm_fetch(object $db, array $key) : array { function psi\dbm_close(object $db) : void { let db = objval($db); - return void(dbm_close); + return dbm_close(db) as void(dbm_close); }