Next: Cursors, Previous: Persistent Slot Indexing, Up: Reference
Class precedence list:
persistent-collection, persistent, standard-object, t
Abstract superclass of all collection types.
Class precedence list:
btree, persistent-collection, persistent, standard-object, t
A hash-table like interface to a BTree, which stores things in a semi-ordered fashion.
Class precedence list:
indexed-btree, btree, persistent-collection, persistent, standard-object, t
A BTree which supports secondary indices.
Class precedence list:
btree-index, persistent-object, btree, persistent-collection, persistent, standard-object, t
Secondary index to an indexed-btree.
Puts are not allowed on secondary indices. Try adding to the primary.
Remove a key / value from the
primary
by a secondary lookup, updatingall
other secondary indices.
Add a secondary index. The indices are stored in an eq hash-table, so the index-name should be a symbol. key-form should be a symbol naming a function, or a list which defines a lambda
--
actual functions aren't supported. The function should take 3 arguments: the secondarydb
, primary key and value, and return two values: a boolean indicating whether to index this key / value, and the secondary key if so. If populate = t it will fill in secondary keys for existing primary entries (may be expensive!)