elephant:cursor | Class |
Class precedence list: cursor, standard-object, t
A cursor for traversing (primary) BTrees. |
elephant:secondary-cursor | Class |
Class precedence list: secondary-cursor, cursor, standard-object, t
Cursor for traversing secondary indices. |
elephant:make-cursor bt | Generic Function |
Construct a cursor for traversing BTrees. |
elephant:make-cursor (bt btree-index) | Method |
Make a secondary-cursor from a secondary index. |
elephant:make-cursor (bt btree) | Method |
Make a cursor from a btree. |
elephant:cursor-close cursor | Generic Function |
Close the cursor. Make sure to close cursors before the enclosing transaction is closed! |
elephant:map-btree fn bt | Function |
Like maphash. |
elephant:with-btree-cursor var &body body | Macro |
Macro which opens a named cursor on a BTree (primary or not), evaluates the forms, then closes the cursor. |
elephant:cursor-current cursor | Generic Function |
Get the key / value at the cursor position. Returns has-pair key value, where has-pair is a boolean indicating there was a pair. |
elephant:cursor-delete cursor | Generic Function |
Delete by cursor. The cursor is at an invalid position after a successful delete. |
elephant:cursor-delete (cursor secondary-cursor) | Method |
Delete by cursor: deletes all secondary indices.
|
elephant:cursor-duplicate cursor | Generic Function |
Duplicate a cursor. |
elephant:cursor-first cursor | Generic Function |
Move the cursor to the beginning of the BTree, returning has-pair key value. |
elephant:cursor-get-both-range cursor key value | Generic Function |
Moves the cursor to the first key / value pair with key equal to the key argument and value greater or equal to the value argument. Not really useful for us since primaries don't have duplicates. Returns has-pair key value. |
elephant:cursor-get-both-range (cursor secondary-cursor) key value | Method |
cursor-get-both-range not implemented for secondary indices. Use cursor-pget-both-range. |
elephant:cursor-get-both cursor key value | Generic Function |
Moves the cursor to a particular key / value pair, returning has-pair key value. |
elephant:cursor-get-both (cursor secondary-cursor) key value | Method |
cursor-get-both not implemented for secondary indices. Use cursor-pget-both. |
elephant:cursor-last cursor | Generic Function |
Move the cursor to the end of the BTree, returning has-pair key value. |
elephant:cursor-next-dup cursor | Generic Function |
Move to the next duplicate element (with the same key.) Returns has-pair key value. |
elephant:cursor-next-nodup cursor | Generic Function |
Move to the next non-duplicate element (with different key.) Returns has-pair key value. |
elephant:cursor-next cursor | Generic Function |
Advance the cursor, returning has-pair key value. |
elephant:cursor-pcurrent cursor | Generic Function |
Returns has-tuple / secondary key / value / primary key at the current position. |
elephant:cursor-pfirst cursor | Generic Function |
Moves the key to the beginning of the secondary index. Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-pget-both-range cursor key pkey | Generic Function |
Moves the cursor to a the first secondary key / primary key pair, with secondary key equal to the key argument, and primary key greater or equal to the pkey argument. Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-pget-both cursor key pkey | Generic Function |
Moves the cursor to a particular secondary key / primary key pair. Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-plast cursor | Generic Function |
Moves the key to the end of the secondary index. Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-pnext-dup cursor | Generic Function |
Move to the next duplicate element (with the same key.) Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-pnext-nodup cursor | Generic Function |
Move to the next non-duplicate element (with different key.) Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-pnext cursor | Generic Function |
Advances the cursor. Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-pprev-nodup cursor | Generic Function |
Move to the previous non-duplicate element (with different key.) Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-pprev cursor | Generic Function |
Moves the cursor back. Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-prev-nodup cursor | Generic Function |
Move to the previous non-duplicate element (with different key.) Returns has-pair key value. |
elephant:cursor-prev cursor | Generic Function |
Move the cursor back, returning has-pair key value. |
elephant:cursor-pset-range cursor key | Generic Function |
Move the cursor to the first key-value pair with key greater or equal to the key argument, according to the lisp sorter. Returns has-pair secondary key value primary key. |
elephant:cursor-pset cursor key | Generic Function |
Moves the cursor to a particular key. Returns has-tuple / secondary key / value / primary key. |
elephant:cursor-put cursor value &rest rest | Generic Function |
Put by cursor. Currently doesn't properly move the cursor. |
elephant:cursor-put (cursor secondary-cursor) value &rest rest | Method |
Puts are forbidden on secondary indices. Try adding to the primary. |
elephant:cursor-put (cursor cursor) value &key (key nil | Method |
key-specified-p) Put by cursor. Not particularly useful since primaries don't support duplicates. Currently doesn't properly move the cursor. |
elephant:cursor-set-range cursor key | Generic Function |
Move the cursor to the first key-value pair with key greater or equal to the key argument, according to the lisp sorter. Returns has-pair key value. |
elephant:cursor-set cursor key | Generic Function |
Move the cursor to a particular key, returning has-pair key value. |