deduct variable names from implementation
[m6w6/ext-psi] / tests / ndbm / ndbm.psi
index e61ba2ddb3777d48529f35a3b9f5f5cdd441a85e..92fa62b3c648f264386c272ffacb7abf253bad51 100644 (file)
@@ -5,20 +5,29 @@ function psi\dbm_open(string $file, int $open_flags, int $file_mode) : object {
        return to_object(dbm_open);
 }
 
-function psi\dbm_store(object $db, array $key, array $data, int $mode) : int {
+function psi\dbm_store(object $db, string $key, string $data, int $mode) : int {
        let db = objval($db);
-       let key = arrval($key);
-       let content = arrval($data);
+       let key = arrval($key,
+               dptr = strval($0),
+               dsize = strlen($0)
+       );
+       let content = arrval($data,
+               dptr = strval($0),
+               dsize = strlen($0)
+       );
        let store_mode = intval($mode);
        return to_int(dbm_store);
 }
 
 function psi\dbm_fetch(object $db, array $key) : array {
        let db = objval($db);
-       let key = arrval($key);
+       let key = arrval($key,
+               dptr = strval($dptr),
+               dsize = intval($dsize)
+       );
        return to_array(dbm_fetch,
-               to_string(dptr, dsize),
-               to_int(dsize)
+               to_int(dsize),
+               to_string(dptr, dsize)
        );
 }