added query and delete options
parent
7295a04519
commit
f9b3c1d59d
|
@ -185,6 +185,15 @@ PRIVATE>
|
||||||
: <query> ( collection assoc -- mdb-query-msg )
|
: <query> ( collection assoc -- mdb-query-msg )
|
||||||
<mdb-query-msg> ; inline
|
<mdb-query-msg> ; inline
|
||||||
|
|
||||||
|
: >slave-ok ( mdb-query-msg -- mdb-query-msg )
|
||||||
|
[ 2 set-bit ] change-flags ;
|
||||||
|
|
||||||
|
: >await-data ( mdb-query-msg -- mdb-query-msg )
|
||||||
|
[ 5 set-bit ] change-flags ;
|
||||||
|
|
||||||
|
: >tailable ( mdb-query-msg -- mdb-query-msg )
|
||||||
|
[ 1 set-bit ] change-flags ;
|
||||||
|
|
||||||
: limit ( mdb-query-msg limit# -- mdb-query-msg )
|
: limit ( mdb-query-msg limit# -- mdb-query-msg )
|
||||||
>>return# ; inline
|
>>return# ; inline
|
||||||
|
|
||||||
|
@ -299,13 +308,17 @@ PRIVATE>
|
||||||
: run-cmd ( cmd -- result )
|
: run-cmd ( cmd -- result )
|
||||||
send-cmd ; inline
|
send-cmd ; inline
|
||||||
|
|
||||||
: delete ( collection selector -- )
|
: <delete> ( collection selector -- mdb-delete-msg )
|
||||||
[ check-collection ] dip
|
[ check-collection ] dip <mdb-delete-msg> ;
|
||||||
<mdb-delete-msg> send-message-check-error ;
|
|
||||||
|
|
||||||
: delete-unsafe ( collection selector -- )
|
: >single-remove ( mdb-delete-msg -- mdb-delete-msg )
|
||||||
[ check-collection ] dip
|
[ 0 set-bit ] change-delete-flags ;
|
||||||
<mdb-delete-msg> send-message ;
|
|
||||||
|
: delete ( mdb-delete-msg -- )
|
||||||
|
send-message-check-error ;
|
||||||
|
|
||||||
|
: delete-unsafe ( mdb-delete-msg -- )
|
||||||
|
send-message ;
|
||||||
|
|
||||||
: kill-cursor ( mdb-cursor -- )
|
: kill-cursor ( mdb-cursor -- )
|
||||||
id>> <mdb-killcursors-msg> send-message ;
|
id>> <mdb-killcursors-msg> send-message ;
|
||||||
|
|
|
@ -44,6 +44,7 @@ TUPLE: mdb-update-msg < mdb-msg
|
||||||
|
|
||||||
TUPLE: mdb-delete-msg < mdb-msg
|
TUPLE: mdb-delete-msg < mdb-msg
|
||||||
{ collection string }
|
{ collection string }
|
||||||
|
{ delete-flags integer initial: 0 }
|
||||||
{ selector assoc } ;
|
{ selector assoc } ;
|
||||||
|
|
||||||
TUPLE: mdb-getmore-msg < mdb-msg
|
TUPLE: mdb-getmore-msg < mdb-msg
|
||||||
|
|
|
@ -128,9 +128,12 @@ PRIVATE>
|
||||||
|
|
||||||
: write-delete-message ( message -- )
|
: write-delete-message ( message -- )
|
||||||
[
|
[
|
||||||
[ flags>> write-int32 ]
|
{
|
||||||
[ collection>> write-cstring ]
|
[ flags>> write-int32 ]
|
||||||
[ 0 write-int32 selector>> assoc>stream ] tri
|
[ collection>> write-cstring ]
|
||||||
|
[ delete-flags>> write-int32 ]
|
||||||
|
[ selector>> assoc>stream ]
|
||||||
|
} cleave
|
||||||
] (write-message) ; inline
|
] (write-message) ; inline
|
||||||
|
|
||||||
: write-getmore-message ( message -- )
|
: write-getmore-message ( message -- )
|
||||||
|
|
|
@ -73,7 +73,7 @@ PRIVATE>
|
||||||
|
|
||||||
: delete-tuple ( tuple -- )
|
: delete-tuple ( tuple -- )
|
||||||
[ tuple-collection name>> ] keep
|
[ tuple-collection name>> ] keep
|
||||||
id-selector delete ;
|
id-selector <delete> delete ;
|
||||||
|
|
||||||
: delete-tuples ( seq -- )
|
: delete-tuples ( seq -- )
|
||||||
[ delete-tuple ] each ;
|
[ delete-tuple ] each ;
|
||||||
|
|
Loading…
Reference in New Issue