gdbm: move enums to main vocab
parent
0c020a47d8
commit
2446a59744
|
@ -14,8 +14,6 @@ LIBRARY: libgdbm
|
||||||
|
|
||||||
C-GLOBAL: c-string gdbm_version
|
C-GLOBAL: c-string gdbm_version
|
||||||
|
|
||||||
ENUM: gdbm-role reader writer wrcreat newdb ;
|
|
||||||
|
|
||||||
CONSTANT: GDBM_SYNC HEX: 20
|
CONSTANT: GDBM_SYNC HEX: 20
|
||||||
CONSTANT: GDBM_NOLOCK HEX: 40
|
CONSTANT: GDBM_NOLOCK HEX: 40
|
||||||
|
|
||||||
|
@ -46,29 +44,6 @@ FUNCTION: int gdbm_exists ( GDBM_FILE dbf, datum key ) ;
|
||||||
FUNCTION: int gdbm_setopt ( GDBM_FILE dbf, int option, int* value, int size ) ;
|
FUNCTION: int gdbm_setopt ( GDBM_FILE dbf, int option, int* value, int size ) ;
|
||||||
FUNCTION: int gdbm_fdesc ( GDBM_FILE dbf ) ;
|
FUNCTION: int gdbm_fdesc ( GDBM_FILE dbf ) ;
|
||||||
|
|
||||||
ENUM: gdbm-error
|
C-GLOBAL: int gdbm_errno
|
||||||
gdbm-no-error
|
|
||||||
gdbm-malloc-error
|
|
||||||
gdbm-block-size-error
|
|
||||||
gdbm-file-open-error
|
|
||||||
gdbm-file-write-error
|
|
||||||
gdbm-file-seek-error
|
|
||||||
gdbm-file-read-error
|
|
||||||
gdbm-bad-magic-number
|
|
||||||
gdbm-empty-database
|
|
||||||
gdbm-cant-be-reader
|
|
||||||
gdbm-cant-be-writer
|
|
||||||
gdbm-reader-cant-delete
|
|
||||||
gdbm-reader-cant-store
|
|
||||||
gdbm-reader-cant-reorganize
|
|
||||||
gdbm-unknown-update
|
|
||||||
gdbm-item-not-found
|
|
||||||
gdbm-reorganize-failed
|
|
||||||
gdbm-cannot-replace
|
|
||||||
gdbm-illegal-data
|
|
||||||
gdbm-option-already-set
|
|
||||||
gdbm-illegal-option ;
|
|
||||||
|
|
||||||
C-GLOBAL: gdbm-error gdbm_errno
|
FUNCTION: c-string gdbm_strerror ( int errno ) ;
|
||||||
|
|
||||||
FUNCTION: c-string gdbm_strerror ( gdbm-error errno ) ;
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
! Copyright (C) 2010 Dmitry Shubin.
|
! Copyright (C) 2010 Dmitry Shubin.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: accessors arrays continuations gdbm gdbm.ffi io.directories
|
USING: accessors arrays continuations gdbm io.directories
|
||||||
io.files.temp kernel sequences sets tools.test ;
|
io.files.temp kernel sequences sets tools.test ;
|
||||||
IN: gdbm.tests
|
IN: gdbm.tests
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,13 @@
|
||||||
! Copyright (C) 2010 Dmitry Shubin.
|
! Copyright (C) 2010 Dmitry Shubin.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: accessors alien.c-types alien.data alien.destructors
|
USING: accessors alien.c-types alien.data alien.destructors
|
||||||
alien.enums classes.struct combinators destructors gdbm.ffi io.backend
|
alien.enums alien.syntax classes.struct combinators destructors
|
||||||
kernel libc locals math namespaces sequences serialize strings ;
|
gdbm.ffi io.backend kernel libc locals math namespaces sequences
|
||||||
|
serialize strings ;
|
||||||
IN: gdbm
|
IN: gdbm
|
||||||
|
|
||||||
|
ENUM: gdbm-role reader writer wrcreat newdb ;
|
||||||
|
|
||||||
TUPLE: gdbm
|
TUPLE: gdbm
|
||||||
{ name string }
|
{ name string }
|
||||||
{ block-size integer }
|
{ block-size integer }
|
||||||
|
@ -15,10 +18,33 @@ TUPLE: gdbm
|
||||||
|
|
||||||
: <gdbm> ( -- gdbm ) gdbm new ;
|
: <gdbm> ( -- gdbm ) gdbm new ;
|
||||||
|
|
||||||
|
ENUM: gdbm-error
|
||||||
|
gdbm-no-error
|
||||||
|
gdbm-malloc-error
|
||||||
|
gdbm-block-size-error
|
||||||
|
gdbm-file-open-error
|
||||||
|
gdbm-file-write-error
|
||||||
|
gdbm-file-seek-error
|
||||||
|
gdbm-file-read-error
|
||||||
|
gdbm-bad-magic-number
|
||||||
|
gdbm-empty-database
|
||||||
|
gdbm-cant-be-reader
|
||||||
|
gdbm-cant-be-writer
|
||||||
|
gdbm-reader-cant-delete
|
||||||
|
gdbm-reader-cant-store
|
||||||
|
gdbm-reader-cant-reorganize
|
||||||
|
gdbm-unknown-update
|
||||||
|
gdbm-item-not-found
|
||||||
|
gdbm-reorganize-failed
|
||||||
|
gdbm-cannot-replace
|
||||||
|
gdbm-illegal-data
|
||||||
|
gdbm-option-already-set
|
||||||
|
gdbm-illegal-option ;
|
||||||
|
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
||||||
: gdbm-throw ( -- * ) gdbm_errno throw ;
|
: gdbm-throw ( -- * ) gdbm_errno gdbm-error number>enum throw ;
|
||||||
|
|
||||||
: check-error ( ret -- ) 0 = [ gdbm-throw ] unless ;
|
: check-error ( ret -- ) 0 = [ gdbm-throw ] unless ;
|
||||||
|
|
||||||
|
@ -69,7 +95,8 @@ PRIVATE>
|
||||||
|
|
||||||
: gdbm-info ( -- str ) gdbm_version ;
|
: gdbm-info ( -- str ) gdbm_version ;
|
||||||
|
|
||||||
: gdbm-error-message ( error -- msg ) gdbm_strerror ;
|
: gdbm-error-message ( error -- msg )
|
||||||
|
enum>number gdbm_strerror ;
|
||||||
|
|
||||||
: replace ( key content -- ) GDBM_REPLACE gdbm-store ;
|
: replace ( key content -- ) GDBM_REPLACE gdbm-store ;
|
||||||
: insert ( key content -- ) GDBM_INSERT gdbm-store ;
|
: insert ( key content -- ) GDBM_INSERT gdbm-store ;
|
||||||
|
|
Loading…
Reference in New Issue