Next: , Previous: Persistent Object Indexing API, Up: User API Reference


5.4 Persistent Sets

Persistent sets are a simple persistent collection abstraction. They maintain an unordered collection of objects. Unlike the normal list-oriented sets of Lisp, persistent sets use the equivalent of pushnew such that only one copy of any object or value is maintained using the serializer's equal implementation.

— Class: elephant:pset

Class precedence list: pset, persistent-collection, persistent, standard-object, t

An unordered persistent collection of unique elements according to serializer equal comparison

— Generic Function: elephant:insert-item item pset

Insert a new item into the pset

— Generic Function: elephant:remove-item item pset

Remove specified item from pset

— Generic Function: elephant:find-item item pset &key key test test

Find a an item in the pset using key and test

— Generic Function: elephant:map-pset fn pset

Map operator for psets

— Generic Function: elephant:pset-list pset

Convert items of pset into a list for processing

— Generic Function: elephant:drop-pset pset

Release pset storage to database for reuse