(define-interface berkeley-db-interface (export with-database-env with-database with-database-flags as-transaction berkeley-db-version berkeley-db-version-string flag-object? flag-elements flag-name (flag :syntax) lock-mode-object? lock-mode-elements lock-mode-name (lock-mode :syntax) return-code-object? return-code-elements return-code-name (return-code :syntax) database-type-object? database-type-elements database-type-name (database-type :syntax) &bdb-error bdb-error? &bdb-lock-deadlock bdb-lock-deadlock? &bdb-lock-not-granted bdb-lock-not-granted? &bdb-old-db-version bdb-old-db-version? &bdb-db-handle-dead bdb-db-handle-dead? &bdb-secondary-index-bad bdb-secondary-index-bad? &bdb-invalid-flag bdb-invalid-flag? database? database-env? mpoolfile? transaction? cursor? make-database-env remove-database remove-database/fork rename-database rename-database/fork database-env-open set-database-env-data-dir! database-env-data-dirs set-database-env-encrypt! database-env-encrypt-flags set-database-env-verbose! database-env-verbose set-database-env-lock-timeout! set-database-env-transaction-timeout! database-env-lock-timeout database-env-transaction-timeout set-database-env-tmp-dir! database-env-tmp-dir set-database-env-max-transactions! database-env-max-transactions set-database-env-transaction-timeout! database-env-transaction-timeout set-database-env-flags! clear-database-env-flags! database-env-flags database-env-close database-env-fresh-locker-id database-env-free-locker-id database-env-get-lock database-env-put-lock set-database-env-transaction-checkpoint! make-database open-database open-database/fork close-database database-put database-put/fork database-get database-get/fork database-delete-item database-delete-item/fork database-truncate database-truncate/fork database-sync set-database-encrypt! database-encrypt-flags set-database-flags! database-flags turn-database-debugging-on turn-database-debugging-off set-database-byte-order! database-big-endian? database-little-endian? set-database-page-size! database-page-size make-cursor cursor-get cursor-get/fork cursor-count cursor-delete-item cursor-delete-item/fork cursor-put cursor-put/fork begin-transaction abort-transaction commit-transaction string->byte-vector byte-vector->string value->byte-vector byte-vector->value)) (define-structure berkeley-db berkeley-db-interface (open scheme srfi-1 srfi-8 srfi-34 srfi-35 fluids weak byte-vectors extended-ports ascii let-opt bitwise define-record-types finite-types external-calls (subset scsh-level-0 (fork wait pipe))) (files bdb))