This is the fset Reference Manual, version 2.2.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Fri May 15 12:19:28 2026 GMT+0.
fset/fset.asdfset/Code/defs.lispfset/Code/port.lispfset/Code/macros.lispfset/Code/order.lispfset/Code/hash.lispfset/Code/wb-trees.lispfset/Code/champ.lispfset/Code/reader.lispfset/Code/fset.lispfset/Code/replay.lispfset/Code/tuples.lispfset/Code/interval.lispfset/Code/relations.lispfset/Code/complement-sets.lispfset/Code/bounded-sets.lispfset/Code/testing.lispfset/Code/post.lispThe main system appears first, followed by any subsystem dependency.
fsetA functional set-theoretic collections library.
See: https://gitlab.common-lisp.net/fset/fset/-/wikis/home
Scott L. Burson <Scott@sympoiesis.com>
BSD-2-Clause
2.2.0
misc-extensions (system)., at least version "4.2.3"
mt19937 (system).
named-readtables (system).
code (module).
Modules are listed depth-first from the system components tree.
fset/Codefset (system).
defs.lisp (file).
port.lisp (file).
macros.lisp (file).
order.lisp (file).
hash.lisp (file).
wb-trees.lisp (file).
champ.lisp (file).
reader.lisp (file).
fset.lisp (file).
replay.lisp (file).
tuples.lisp (file).
interval.lisp (file).
relations.lisp (file).
complement-sets.lisp (file).
bounded-sets.lisp (file).
testing.lisp (file).
post.lisp (file).
Files are sorted by type and then listed depth-first from the systems components trees.
fset/fset.asdfset/Code/defs.lispfset/Code/port.lispfset/Code/macros.lispfset/Code/order.lispfset/Code/hash.lispfset/Code/wb-trees.lispfset/Code/champ.lispfset/Code/reader.lispfset/Code/fset.lispfset/Code/replay.lispfset/Code/tuples.lispfset/Code/interval.lispfset/Code/relations.lispfset/Code/complement-sets.lispfset/Code/bounded-sets.lispfset/Code/testing.lispfset/Code/post.lispfset/Code/defs.lispcode (module).
fset-user.
fset.
fset2-user.
fset2.
erapmoc (special variable).
fset/Code/port.lispdefs.lisp (file).
code (module).
hash-mix (macro).
hash-mixf (macro).
hash-multiply (macro).
base-char-p (function).
class-hash-value (function).
defglobal (macro).
define-atomic-series (macro).
eqv (function).
gen (macro).
hash-unmix (macro).
hash-unmixf (macro).
increment-atomic-series (macro).
length-nv (macro).
lock-fset-packages (function).
make-char (function).
make-lock (function).
muffle-notes (macro).
read-memory-barrier (macro).
swap-if (function).
symbol-hash-value (function).
tuple-key-number-mask (constant).
tuple-key-number-size (constant).
tuple-value-index-size (constant).
while (macro).
with-lock (macro).
write-memory-barrier (macro).
fset/Code/macros.lispport.lisp (file).
code (module).
@ (macro).
(setf @) (setf expander).
@ (macro).
(setf @) (setf expander).
adjoinf (macro).
appendf (macro).
compare-slots (macro).
compare-slots-no-unequal (macro).
composef (macro).
define-comparison-slots (macro).
define-cross-type-compare-methods (macro).
define-equality-slots (macro).
define-hash-function (macro).
do-2-relation (macro).
do-bag (macro).
do-bag-pairs (macro).
do-list-relation (macro).
do-map (macro).
do-map-domain (macro).
do-seq (macro).
do-set (macro).
excludef (macro).
hash-slots (macro).
imagef (macro).
includef (macro).
insertf (macro).
intersectf (macro).
(setf lookup) (setf expander).
(setf lookup) (setf expander).
map-intersectf (macro).
map-unionf (macro).
pop-first (macro).
pop-last (macro).
prependf (macro).
push-first (macro).
push-last (macro).
removef (macro).
set-differencef (macro).
splicef (macro).
unionf (macro).
updatef (macro).
+master-type-ordering+ (symbol macro).
change-specializer-class (function).
check-three-arguments (macro).
check-two-arguments (macro).
convert-to-ch-map (macro).
convert-to-ch-set (macro).
convert-to-wb-2-relation (macro).
convert-to-wb-bag (macro).
convert-to-wb-map (macro).
convert-to-wb-set (macro).
define-class-equality-slots-extension (function).
define-convert-methods (macro).
define-generics (macro).
define-methods (macro).
define-wb-seq-method (macro).
define-wb-seq-methods (macro).
define-wb-set-method (macro).
define-wb-set-methods (macro).
do-elements (macro).
do-iterator (macro).
do-pair-iterator (macro).
do-seq-chunks (macro).
e-split-cases (macro).
equal?-cmp (macro).
equal?-fn (macro).
expand-@ (function).
expand-setf-of-lookup (function).
gensymx (macro).
greater-than?-cmp (macro).
if-same-ch-2-relation-orgs (macro).
if-same-ch-map-orgs (macro).
if-same-ch-set-orgs (macro).
if-same-wb-2-relation-orgs (macro).
if-same-wb-bag-orgs (macro).
if-same-wb-map-orgs (macro).
internal-compose (macro).
internal-concat (macro).
internal-first (macro).
internal-insert (macro).
internal-intersection (macro).
internal-last (macro).
internal-less (macro).
internal-less-first (macro).
internal-less-last (macro).
internal-lookup (function).
internal-lookup (function).
internal-map-intersection (macro).
internal-map-union (macro).
internal-set-difference (macro).
internal-splice (macro).
internal-union (macro).
internal-with (macro).
internal-with-first (macro).
internal-with-last (macro).
less-than?-cmp (macro).
logandc2f (macro).
logiorf (macro).
logxorf (macro).
n-values (macro).
parse-body (function).
postincf (macro).
split-cases (macro).
split-cases-on-var (macro).
split-string-cases (macro).
xconcat (function).
ximage (function).
xupdate (function).
fset/Code/order.lispmacros.lisp (file).
code (module).
bag (structure).
bag? (function).
collection (structure).
collection? (function).
compare (generic function).
compare-lexicographically (generic function).
compare-lists-lexicographically (function).
compare-strings-lexicographically (function).
compare-vectors-lexicographically (function).
eql-compare (function).
equal? (function).
identity-equality-mixin (class).
identity-ordering-mixin (class).
map (structure).
map (structure).
map-default (reader).
map? (function).
replay-map (structure).
replay-map (structure).
replay-map? (function).
replay-set (structure).
replay-set? (function).
seq (structure).
seq (structure).
seq? (function).
set (structure).
set (structure).
set? (function).
tuple (structure).
tuple? (function).
+package-original-name+ (symbol macro).
compare-strings (function).
invert-comparison (function).
replay-map-default (function).
replay-map-ordering (reader).
replay-set-ordering (reader).
seq-default (reader).
serial-number (reader method).
serial-number (reader method).
(setf serial-number) (writer method).
(setf serial-number) (writer method).
fset/Code/hash.lisporder.lisp (file).
code (module).
hash-value (generic function).
hash-value-fixnum (function).
zero (function).
list-hash-value (function).
squash-bignum-hash (function).
fset/Code/wb-trees.lisphash.lisp (file).
code (module).
compare (method).
compare (method).
compare (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
unwrap-equivalent-node (function).
+empty-simple-vector+ (symbol macro).
+wb-tree-max-depths-with-values+ (symbol macro).
+wb-tree-max-depths-without-values+ (symbol macro).
bag-value-size (function).
character-type (function).
copy-equivalent-node (function).
copy-wb-bag-tree-node (function).
copy-wb-ht-seq-tree (function).
copy-wb-map-tree-node (function).
copy-wb-seq-tree-node (function).
copy-wb-set-tree-node (function).
do-wb-bag-tree-pairs (macro).
do-wb-map-tree-pairs (macro).
do-wb-seq-tree-leaves (macro).
do-wb-seq-tree-members (macro).
do-wb-seq-tree-members-gen (macro).
do-wb-set-tree-members (macro).
equivalent-bag-compare (function).
equivalent-bag-difference (function).
equivalent-bag-disjoint? (function).
equivalent-bag-intersect (function).
equivalent-bag-product (function).
equivalent-bag-subbag? (function).
equivalent-bag-sum (function).
equivalent-bag-union (function).
equivalent-map-compare (function).
equivalent-map-difference (function).
equivalent-map-intersect (function).
equivalent-map-less (function).
equivalent-map-restrict (function).
equivalent-map-restrict-not (function).
equivalent-map-union (function).
equivalent-map-update (function).
equivalent-map-with (function).
equivalent-node (structure).
equivalent-node-list (reader).
equivalent-node-set? (reader).
(setf equivalent-node-set?) (writer).
equivalent-node? (function).
equivalent-set-compare (function).
equivalent-set-difference (function).
equivalent-set-disjoint? (function).
equivalent-set-intersect (function).
equivalent-set-subset? (function).
equivalent-set-union (function).
hedge-negative-infinity (constant).
hedge-positive-infinity (constant).
make-equivalent-bag (function).
make-equivalent-map (function).
make-equivalent-node (function).
make-equivalent-set (function).
make-raw-wb-bag-tree-node (function).
make-raw-wb-ht-seq-tree (function).
make-raw-wb-map-tree-node (function).
make-raw-wb-seq-tree-node (function).
make-raw-wb-set-tree-node (function).
make-wb-bag-tree-iterator (function).
make-wb-bag-tree-iterator-internal (function).
make-wb-bag-tree-node (function).
make-wb-bag-tree-pair-iterator (function).
make-wb-bag-tree-pair-iterator-internal (function).
make-wb-ht-seq-tree (function).
make-wb-map-tree-iterator (function).
make-wb-map-tree-iterator-internal (function).
make-wb-map-tree-node (function).
make-wb-seq-tree-iterator (function).
make-wb-seq-tree-iterator-internal (function).
make-wb-seq-tree-node (function).
make-wb-seq-tree-rev-iterator (function).
make-wb-seq-tree-rev-iterator-internal (function).
make-wb-set-tree-iterator (function).
make-wb-set-tree-iterator-internal (function).
make-wb-set-tree-node (function).
make-wb-tree-iterator (function).
map-key-size (function).
object-or-char-type (function).
reverse-list-to-vector (function).
set-value-size (function).
string-insert (function).
string-plus-char-type (function).
string-plus-string-type (function).
string-remove-at (function).
string-subrange-element-type (function).
string-subseq (function).
string-subseq-insert (function).
string-update (function).
symmetric-fixnum (type).
vector-insert (function).
vector-insert-from-string (function).
vector-pair-bag-diff (function).
vector-pair-bag-intersect (function).
vector-pair-bag-product (function).
vector-pair-bag-subbag? (function).
vector-pair-bag-sum (function).
vector-pair-bag-union (function).
vector-pair-diff-2 (function).
vector-pair-intersect (function).
vector-pair-restrict (function).
vector-pair-restrict-not (function).
vector-pair-union (function).
vector-remove-at (function).
vector-remove-to-maybe-string (function).
vector-set-binary-search (function).
vector-set-binary-search-hi (function).
vector-set-binary-search-lo (function).
vector-set-diff (function).
vector-set-diff-2 (function).
vector-set-disjoint? (function).
vector-set-intersect (function).
vector-set-subset? (function).
vector-set-union (function).
vector-subrange-element-type (function).
vector-subseq (function).
vector-subseq-maybe-string (function).
vector-subseq-maybe-string-insert (function).
vector-update (function).
vector-update-from-string (function).
vector-update-maybe-to-string (function).
wb-bag-tree (type).
wb-bag-tree-arb-pair (function).
wb-bag-tree-build-node (function).
wb-bag-tree-compare (function).
wb-bag-tree-compare-rng (function).
wb-bag-tree-concat (function).
wb-bag-tree-diff (function).
wb-bag-tree-diff-rng (function).
wb-bag-tree-disjoint? (function).
wb-bag-tree-disjoint?-rng (function).
wb-bag-tree-find-equivalent (function).
wb-bag-tree-from-iterable (function).
wb-bag-tree-from-list (function).
wb-bag-tree-from-sorted-iterable (function).
wb-bag-tree-fun-iter (function).
wb-bag-tree-greatest-pair (function).
wb-bag-tree-intersect (function).
wb-bag-tree-intersect-rng (function).
wb-bag-tree-iterator-canonicalize (function).
wb-bag-tree-iterator-done? (function).
wb-bag-tree-iterator-get (function).
wb-bag-tree-join (function).
wb-bag-tree-least-pair (function).
wb-bag-tree-less (function).
wb-bag-tree-less-minimum (function).
wb-bag-tree-minimum-pair (function).
wb-bag-tree-multiplicity (function).
wb-bag-tree-node (structure).
wb-bag-tree-node-count (reader).
wb-bag-tree-node-left (reader).
wb-bag-tree-node-print (function).
wb-bag-tree-node-right (reader).
wb-bag-tree-node-size (reader).
wb-bag-tree-node-total-count (reader).
wb-bag-tree-node-value (reader).
wb-bag-tree-node? (function).
wb-bag-tree-pair-fun-iter (function).
wb-bag-tree-pair-iterator-canonicalize (function).
wb-bag-tree-pair-iterator-done? (function).
wb-bag-tree-pair-iterator-get (function).
wb-bag-tree-pair-rev-fun-iter (function).
wb-bag-tree-product (function).
wb-bag-tree-product-rng (function).
wb-bag-tree-rank (function).
wb-bag-tree-rank-pair (function).
wb-bag-tree-rank-pair-internal (function).
wb-bag-tree-rank-trim (function).
wb-bag-tree-rev-fun-iter (function).
wb-bag-tree-size (function).
wb-bag-tree-split (function).
wb-bag-tree-split-above (function).
wb-bag-tree-split-below (function).
wb-bag-tree-subbag? (function).
wb-bag-tree-subbag?-rng (function).
wb-bag-tree-sum (function).
wb-bag-tree-sum-rng (function).
wb-bag-tree-to-set-tree (function).
wb-bag-tree-total-count (function).
wb-bag-tree-trim (function).
wb-bag-tree-union (function).
wb-bag-tree-union-rng (function).
wb-bag-tree-vector-pair-sum (function).
wb-bag-tree-vector-pair-union (function).
wb-bag-tree-verify (function).
wb-bag-tree-verify-rng (function).
wb-bag-tree-with (function).
wb-ht-seq-tree (structure).
wb-ht-seq-tree-append (function).
wb-ht-seq-tree-body (reader).
(setf wb-ht-seq-tree-body) (writer).
wb-ht-seq-tree-concat (function).
wb-ht-seq-tree-head (reader).
(setf wb-ht-seq-tree-head) (writer).
wb-ht-seq-tree-image (function).
wb-ht-seq-tree-insert (function).
wb-ht-seq-tree-print (function).
wb-ht-seq-tree-raw-size (reader).
wb-ht-seq-tree-remove (function).
wb-ht-seq-tree-reverse (function).
wb-ht-seq-tree-size (function).
wb-ht-seq-tree-subscript (function).
wb-ht-seq-tree-subseq (function).
wb-ht-seq-tree-tail (reader).
(setf wb-ht-seq-tree-tail) (writer).
wb-ht-seq-tree-with (function).
wb-ht-seq-tree? (function).
wb-map-tree (type).
wb-map-tree-arb-pair (function).
wb-map-tree-build-node (function).
wb-map-tree-compare (function).
wb-map-tree-compare-rng (function).
wb-map-tree-compose (function).
wb-map-tree-concat (function).
wb-map-tree-concat-maybe (function).
wb-map-tree-diff-2 (function).
wb-map-tree-diff-2-rng (function).
wb-map-tree-domain (function).
wb-map-tree-find-equivalent (function).
wb-map-tree-from-iterable (function).
wb-map-tree-from-list (function).
wb-map-tree-from-sorted-iterable (function).
wb-map-tree-fun-iter (function).
wb-map-tree-greatest-pair (function).
wb-map-tree-intersect (function).
wb-map-tree-intersect-rng (function).
wb-map-tree-iterator-canonicalize (function).
wb-map-tree-iterator-done? (function).
wb-map-tree-iterator-get (function).
wb-map-tree-join (function).
wb-map-tree-least-pair (function).
wb-map-tree-less (function).
wb-map-tree-less-minimum (function).
wb-map-tree-lookup (function).
wb-map-tree-minimum-pair (function).
wb-map-tree-node (structure).
wb-map-tree-node-key (reader).
wb-map-tree-node-left (reader).
wb-map-tree-node-print (function).
wb-map-tree-node-right (reader).
wb-map-tree-node-size (reader).
wb-map-tree-node-value (reader).
wb-map-tree-node? (function).
wb-map-tree-rank (function).
wb-map-tree-rank-pair (function).
wb-map-tree-rank-pair-internal (function).
wb-map-tree-rank-trim (function).
wb-map-tree-restrict (function).
wb-map-tree-restrict-not (function).
wb-map-tree-restrict-not-rng (function).
wb-map-tree-restrict-rng (function).
wb-map-tree-rev-fun-iter (function).
wb-map-tree-size (function).
wb-map-tree-split (function).
wb-map-tree-split-above (function).
wb-map-tree-split-below (function).
wb-map-tree-trim (function).
wb-map-tree-union (function).
wb-map-tree-union-rng (function).
wb-map-tree-update (function).
wb-map-tree-vector-pair-union (function).
wb-map-tree-verify (function).
wb-map-tree-verify-rng (function).
wb-map-tree-with (function).
wb-seq-tree (type).
wb-seq-tree-append (function).
wb-seq-tree-build-node (function).
wb-seq-tree-canonicalize-down (function).
wb-seq-tree-canonicalize-down-unbalanced (function).
wb-seq-tree-canonicalize-up (function).
wb-seq-tree-compare (function).
wb-seq-tree-compare-lexicographically (function).
wb-seq-tree-compare-rng (function).
wb-seq-tree-concat (function).
wb-seq-tree-fill (function).
wb-seq-tree-first-leaf (function).
wb-seq-tree-from-iterable (function).
wb-seq-tree-from-list (function).
wb-seq-tree-from-list-reverse (function).
wb-seq-tree-from-vector (function).
wb-seq-tree-fun-iter (function).
wb-seq-tree-ht-threshold (constant).
wb-seq-tree-image (function).
wb-seq-tree-insert (function).
wb-seq-tree-iterator-canonicalize (function).
wb-seq-tree-iterator-done? (function).
wb-seq-tree-iterator-get (function).
wb-seq-tree-iterator-initialize (function).
wb-seq-tree-last-leaf (function).
wb-seq-tree-node (structure).
wb-seq-tree-node-left (reader).
wb-seq-tree-node-print (function).
wb-seq-tree-node-raw-size (reader).
wb-seq-tree-node-right (reader).
wb-seq-tree-node-size (function).
wb-seq-tree-node? (function).
wb-seq-tree-non-ht-threshold (constant).
wb-seq-tree-remove (function).
wb-seq-tree-remove-ht (function).
wb-seq-tree-rev-fun-iter (function).
wb-seq-tree-rev-iterator-canonicalize (function).
wb-seq-tree-rev-iterator-done? (function).
wb-seq-tree-rev-iterator-get (function).
wb-seq-tree-rev-iterator-initialize (function).
wb-seq-tree-reverse (function).
wb-seq-tree-size (function).
wb-seq-tree-subscript (function).
wb-seq-tree-subseq (function).
wb-seq-tree-to-list (function).
wb-seq-tree-to-string (function).
wb-seq-tree-to-vector (function).
wb-seq-tree-trim (function).
wb-seq-tree-verify (function).
wb-seq-tree-with (function).
wb-set-tree (type).
wb-set-tree-arb (function).
wb-set-tree-build-node (function).
wb-set-tree-compare (function).
wb-set-tree-compare-rng (function).
wb-set-tree-concat (function).
wb-set-tree-contains? (function).
wb-set-tree-diff (function).
wb-set-tree-diff-2 (function).
wb-set-tree-diff-2-rng (function).
wb-set-tree-diff-rng (function).
wb-set-tree-disjoint? (function).
wb-set-tree-disjoint?-rng (function).
wb-set-tree-find-equal (function).
wb-set-tree-find-equivalent (function).
wb-set-tree-from-iterable (function).
wb-set-tree-from-list (function).
wb-set-tree-from-sorted-iterable (function).
wb-set-tree-fun-iter (function).
wb-set-tree-greatest (function).
wb-set-tree-intersect (function).
wb-set-tree-intersect-rng (function).
wb-set-tree-iterator-canonicalize (function).
wb-set-tree-iterator-done? (function).
wb-set-tree-iterator-get (function).
wb-set-tree-join (function).
wb-set-tree-least (function).
wb-set-tree-less (function).
wb-set-tree-less-minimum (function).
wb-set-tree-minimum-value (function).
wb-set-tree-node (structure).
wb-set-tree-node-left (reader).
wb-set-tree-node-print (function).
wb-set-tree-node-right (reader).
wb-set-tree-node-size (reader).
wb-set-tree-node-value (reader).
wb-set-tree-node? (function).
wb-set-tree-rank (function).
wb-set-tree-rank-element (function).
wb-set-tree-rank-element-internal (function).
wb-set-tree-rank-trim (function).
wb-set-tree-rev-fun-iter (function).
wb-set-tree-size (function).
wb-set-tree-split (function).
wb-set-tree-split-above (function).
wb-set-tree-split-below (function).
wb-set-tree-subset? (function).
wb-set-tree-subset?-rng (function).
wb-set-tree-to-bag-tree (function).
wb-set-tree-trim (function).
wb-set-tree-union (function).
wb-set-tree-union-rng (function).
wb-set-tree-vector-union (function).
wb-set-tree-verify (function).
wb-set-tree-verify-rng (function).
wb-set-tree-with (function).
wb-tree-balance-factor (constant).
wb-tree-max-depth (function).
wb-tree-max-string-length (constant).
wb-tree-max-vector-length (constant).
wb-tree-precomputed-max-depths (constant).
wb-tree-true-max-depth (function).
fset/Code/champ.lispwb-trees.lisp (file).
code (module).
1-bits-below (function).
bit-indices (function).
ch-map-compact-node (function).
ch-map-node-add-entry! (function).
ch-map-node-add-subnode! (function).
ch-map-node-bag-count (macro).
ch-map-node-change-entry-to-subnode (function).
ch-map-node-entry (function).
ch-map-node-entry-mask (function).
(setf ch-map-node-entry-mask) (function).
ch-map-node-from-wb (function).
ch-map-node-header-size (constant).
ch-map-node-insert-subnode (function).
ch-map-node-key-hash (function).
(setf ch-map-node-key-hash) (function).
ch-map-node-replace-subnode (function).
ch-map-node-size (function).
(setf ch-map-node-size) (function).
ch-map-node-subnode (function).
ch-map-node-subnode-mask (function).
(setf ch-map-node-subnode-mask) (function).
ch-map-node-value-hash (function).
(setf ch-map-node-value-hash) (function).
ch-map-tree (type).
ch-map-tree-arb-pair (function).
ch-map-tree-compare (function).
ch-map-tree-compose (function).
ch-map-tree-diff-2 (function).
ch-map-tree-domain (function).
ch-map-tree-fun-iter (function).
ch-map-tree-hash-value (function).
ch-map-tree-index (function).
ch-map-tree-index-pair (function).
ch-map-tree-intersection (function).
ch-map-tree-iterator-canonicalize (function).
ch-map-tree-iterator-done? (function).
ch-map-tree-iterator-get (function).
ch-map-tree-key-hash (function).
ch-map-tree-less (function).
ch-map-tree-lookup (function).
ch-map-tree-restrict (function).
ch-map-tree-restrict-not (function).
ch-map-tree-rev-fun-iter (function).
ch-map-tree-size (function).
ch-map-tree-union (function).
ch-map-tree-value-hash (function).
ch-map-tree-verify (function).
ch-map-tree-with (function).
ch-set-compact-node (function).
ch-set-node-add-entry! (function).
ch-set-node-add-subnode! (function).
ch-set-node-change-entry-to-subnode (function).
ch-set-node-entry (function).
ch-set-node-entry-mask (function).
(setf ch-set-node-entry-mask) (function).
ch-set-node-from-wb (function).
ch-set-node-hash-value (function).
(setf ch-set-node-hash-value) (function).
ch-set-node-header-size (constant).
ch-set-node-insert-subnode (function).
ch-set-node-replace-subnode (function).
ch-set-node-size (function).
(setf ch-set-node-size) (function).
ch-set-node-subnode (function).
ch-set-node-subnode-mask (function).
(setf ch-set-node-subnode-mask) (function).
ch-set-tree (type).
ch-set-tree-arb (function).
ch-set-tree-compare (function).
ch-set-tree-contains? (function).
ch-set-tree-diff (function).
ch-set-tree-diff-2 (function).
ch-set-tree-disjoint? (function).
ch-set-tree-fun-iter (function).
ch-set-tree-hash-value (function).
ch-set-tree-index (function).
ch-set-tree-index-element (function).
ch-set-tree-intersection (function).
ch-set-tree-iterator-canonicalize (function).
ch-set-tree-iterator-done? (function).
ch-set-tree-iterator-get (function).
ch-set-tree-less (function).
ch-set-tree-rev-fun-iter (function).
ch-set-tree-size (function).
ch-set-tree-subset? (function).
ch-set-tree-union (function).
ch-set-tree-verify (function).
ch-set-tree-with (function).
champ-bit-index (type).
champ-entry-index (type).
champ-hash-bits (function).
champ-hash-bits-per-level (constant).
champ-hash-level-mask (constant).
champ-node-radix (constant).
champ-subnode-index (type).
do-bit-indices (macro).
do-ch-map-tree-pairs (macro).
do-ch-set-tree-members (macro).
hash-to-fixnum (macro).
least-1-bit (function).
make-ch-map-node (function).
make-ch-map-tree-iterator (function).
make-ch-map-tree-iterator-internal (function).
make-ch-set-node (function).
make-ch-set-tree-iterator (function).
make-ch-set-tree-iterator-internal (function).
vector-ins-1-rem-1 (function).
vector-ins-2-rem-1 (function).
vector-insert-2 (function).
vector-rem-1-ins-1 (function).
vector-rem-2-ins-1 (function).
vector-remove-2 (function).
vector-remove-n-at (function).
vector-update-2 (function).
fset/Code/reader.lispchamp.lisp (file).
code (module).
*fset-readtable* (special variable).
*fset-rereading-readtable* (special variable).
2-relation (macro).
bag (macro).
ch-2-relation (macro).
ch-custom-2-relation (macro).
ch-custom-map (macro).
ch-custom-map (macro).
ch-custom-replay-map (macro).
ch-custom-replay-map (macro).
ch-custom-replay-set (macro).
ch-custom-set (macro).
ch-map (macro).
ch-map (macro).
ch-replay-map (macro).
ch-replay-map (macro).
ch-replay-set (macro).
ch-set (macro).
dyn-tuple (macro).
fset-setup-readtable (function).
fset-setup-rereading-readtable (function).
map (macro).
map (macro).
replay-map (macro).
replay-map (macro).
replay-set (macro).
seq (macro).
seq (macro).
set (macro).
set (macro).
tuple (macro).
wb-2-relation (macro).
wb-bag (macro).
wb-custom-2-relation (macro).
wb-custom-bag (macro).
wb-custom-map (macro).
wb-custom-map (macro).
wb-custom-replay-map (macro).
wb-custom-replay-map (macro).
wb-custom-replay-set (macro).
wb-custom-set (macro).
wb-map (macro).
wb-map (macro).
wb-replay-map (macro).
wb-replay-map (macro).
wb-replay-set (macro).
wb-seq (macro).
wb-seq (macro).
wb-set (macro).
#"-reader (function).
##-reader (function).
#$-reader (function).
#%-reader (function).
#[-reader (function).
#{-reader (function).
#~-reader (function).
expand-2-relation-constructor-form (function).
expand-bag-constructor-form (function).
expand-map-constructor-form (function).
expand-replay-map-constructor-form (function).
expand-replay-set-constructor-form (function).
expand-seq-constructor-form (function).
expand-set-constructor-form (function).
expand-tuple-constructor-form (function).
impl-##-reader (special variable).
rereading-#"-reader (function).
rereading-##-reader (function).
rereading-#%-reader (function).
rereading-#[-reader (function).
rereading-#{-read-internal (function).
rereading-#{-reader (function).
rereading-#~-reader (function).
fset/Code/fset.lispreader.lisp (file).
code (module).
arb (generic function).
at-index (generic function).
at-rank (generic function).
bag-difference (generic function).
bag-product (generic function).
bag-sum (generic function).
ch-map (structure).
ch-map (structure).
ch-set (structure).
char-seq? (generic function).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare-lexicographically (method).
compare-seqs-lexicographically (function).
compose (generic function).
compose (generic function).
concat (generic function).
contains? (generic function).
convert (generic function).
count (generic function).
count-if (generic function).
count-if-not (generic function).
default (generic function).
disjoint? (generic function).
domain (generic function).
domain-contains? (generic function).
empty-bag (function).
empty-bag-like (generic function).
empty-ch-map (function).
empty-ch-map (function).
empty-ch-set (function).
empty-ch-set (function).
empty-map (function).
empty-map (function).
empty-map-like (generic function).
empty-seq (function).
empty-seq (function).
empty-seq-error (condition).
empty-seq-error-seq (reader method).
empty-set (function).
empty-set (function).
empty-set-like (generic function).
empty-wb-bag (function).
empty-wb-bag (function).
empty-wb-map (function).
empty-wb-map (function).
empty-wb-seq (function).
empty-wb-seq (function).
empty-wb-set (function).
empty-wb-set (function).
empty? (generic function).
every (function).
filter (generic function).
filter (generic function).
filter-pairs (generic function).
find (generic function).
find-if (generic function).
find-if-not (generic function).
first (generic function).
greatest (generic function).
hash-value (method).
hash-value (method).
hash-value (method).
hash-value (method).
hash-value (method).
hash-value (method).
hash-value (method).
head (function).
image (generic function).
image (generic function).
index (method).
index (method).
index (method).
index (method).
index (method).
insert (generic function).
intersection (generic function).
iterator (generic function).
last (generic function).
lastcons (function).
least (generic function).
less (generic function).
less-first (generic function).
less-last (generic function).
lookup (generic function).
lookup (generic function).
lookup-error (condition).
make-load-form (method).
make-load-form (method).
make-load-form (method).
make-load-form (method).
make-load-form (method).
make-load-form (method).
make-load-form (method).
map-difference-2 (generic function).
map-difference-2 (generic function).
map-domain-error (condition).
map-domain-error-key (reader method).
map-domain-error-map (reader method).
map-image (generic function).
map-intersection (generic function).
map-intersection (generic function).
map-union (generic function).
map-union (generic function).
member? (function).
mismatch (generic function).
multiplicity (generic function).
non-char-seq-error (condition).
non-char-seq-error-seq (reader method).
nonempty? (function).
notany (function).
notevery (function).
partition (generic function).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
partition (method).
position (generic function).
position-if (generic function).
position-if-not (generic function).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
proper-subbag? (function).
proper-subset? (function).
range (generic function).
range-contains? (generic function).
rank (generic function).
rank (generic function).
reduce (generic function).
remove (generic function).
remove-if (generic function).
remove-if-not (generic function).
restrict (generic function).
restrict-not (generic function).
reverse (generic function).
search (generic function).
seq-bounds-error (condition).
seq-bounds-error-index (reader method).
seq-bounds-error-seq (reader method).
set-difference (generic function).
set-difference-2 (generic function).
set-size (generic function).
size (generic function).
some (function).
sort (generic function).
sort-and-group (generic function).
splice (generic function).
split-above (generic function).
split-below (generic function).
split-from (generic function).
split-through (generic function).
stable-sort (generic function).
subbag? (generic function).
subseq (generic function).
subset? (generic function).
substitute (generic function).
substitute-if (generic function).
substitute-if-not (generic function).
tail (function).
union (generic function).
update (compiler macro).
update (function).
wb-bag (structure).
wb-custom-set (structure).
wb-map (structure).
wb-map (structure).
wb-seq (structure).
wb-seq (structure).
wb-set (structure).
with (generic function).
with-default (generic function).
with-first (generic function).
with-last (generic function).
without-default (generic function).
+empty-ch-custom-map-cache+ (symbol macro).
+empty-ch-custom-set-cache+ (symbol macro).
+empty-ch-map+ (special variable).
+empty-ch-map/no-default+ (special variable).
+empty-ch-set+ (special variable).
+empty-wb-bag+ (special variable).
+empty-wb-custom-bag-cache+ (symbol macro).
+empty-wb-custom-map-cache+ (symbol macro).
+empty-wb-custom-set-cache+ (symbol macro).
+empty-wb-map+ (special variable).
+empty-wb-map/no-default+ (special variable).
+empty-wb-seq+ (special variable).
+empty-wb-seq/no-default+ (special variable).
+empty-wb-set+ (special variable).
+fset-default-hash-map-org+ (special variable).
+fset-default-hash-set-org+ (special variable).
+fset-default-tree-map-org+ (special variable).
+fset-default-tree-set-org+ (special variable).
bag-filter (function).
bag-filter-pairs (function).
bag-image (function).
bag-reduce (function).
bag-set-disjoint? (function).
bag-to-alist (function).
bag-to-seq (function).
ch-map-contents (reader).
ch-map-default (function).
ch-map-filter (function).
ch-map-fn-compose (function).
ch-map-from-sequence (function).
ch-map-image (function).
ch-map-org (reader).
ch-map? (function).
ch-set-contents (reader).
ch-set-filter (function).
ch-set-image (function).
ch-set-org (reader).
ch-set-partition (function).
ch-set? (function).
coerce-to-function (function).
coerce-to-function-or-equal? (function).
compare-fn (method).
compare-fn (method).
compare-fn (method).
compare-fn (method).
compare-fn-name (method).
compare-fn-name (method).
compare-fn-name (method).
compare-fn-name (method).
compose-functions (function).
compose-with-key-fn (function).
empty-ch-custom-map (function).
empty-ch-custom-set (function).
empty-ch-map-internal (function).
empty-wb-custom-bag (function).
empty-wb-custom-map (function).
empty-wb-custom-set (function).
empty-wb-map-internal (function).
empty-wb-seq-internal (function).
fset2-default (function).
fun-iterator (generic function).
generic-map-difference-2 (function).
generic-map-intersection (function).
generic-map-union (function).
hash-map-org (structure).
hash-map-org-key-compare-fn (reader).
hash-map-org-key-compare-fn-name (reader).
hash-map-org-key-hash-fn (reader).
hash-map-org-val-compare-fn (reader).
hash-map-org-val-compare-fn-name (reader).
hash-map-org-val-hash-fn (reader).
hash-map-org? (function).
hash-set-org (structure).
hash-set-org-compare-fn (reader).
hash-set-org-compare-fn-name (reader).
hash-set-org-hash-fn (reader).
hash-set-type? (function).
internal-do-bag-pairs (generic function).
internal-do-map (generic function).
internal-do-seq (generic function).
internal-do-seq-chunks (generic function).
internal-do-set (generic function).
key-compare-fn (method).
key-compare-fn (method).
key-compare-fn-name (method).
key-compare-fn-name (method).
key-hash-fn (method).
list-partition (function).
make-ch-map (function).
make-ch-set (function).
make-hash-map-org (function).
make-hash-set-org (function).
make-tree-map-org (function).
make-tree-set-org (function).
make-wb-bag (function).
make-wb-custom-set (function).
make-wb-default-set (function).
make-wb-ht-seq (function).
make-wb-map (function).
make-wb-seq (function).
make-wb-set (function).
map-difference-2-defaults (function).
map-intersection-default (function).
map-reduce (function).
map-union-default (function).
print-ch-map (function).
print-ch-set (function).
print-wb-bag (function).
print-wb-custom-set (function).
print-wb-default-set (function).
print-wb-map (function).
print-wb-seq (function).
raw-make-wb-seq (function).
seq-filter (function).
seq-image (function).
seq-partition (function).
seq-reduce (function).
set-difference-rev (method).
set-difference-rev (method).
set-difference-rev (method).
set-difference-rev (method).
set-reduce (function).
simple-program-error (condition).
split (function).
tree-map-org (structure).
tree-map-org-key-compare-fn (reader).
tree-map-org-key-compare-fn-name (reader).
tree-map-org-val-compare-fn (reader).
tree-map-org-val-compare-fn-name (reader).
tree-map-org? (function).
tree-set-org (structure).
tree-set-org-compare-fn (reader).
tree-set-org-compare-fn-name (reader).
tree-set-org? (function).
val-compare-fn (method).
val-compare-fn (method).
val-compare-fn-name (method).
val-compare-fn-name (method).
val-hash-fn (method).
wb-bag-contents (reader).
wb-bag-from-list (function).
wb-bag-from-sequence (function).
wb-bag-from-set (function).
wb-bag-org (reader).
wb-bag? (function).
wb-custom-set-contents (function).
wb-custom-set-org (reader).
wb-custom-set? (function).
wb-default-set (structure).
wb-default-set-contents (function).
wb-default-set? (function).
wb-ht-seq (structure).
wb-ht-seq-contents (function).
wb-ht-seq-default (function).
wb-map-contents (reader).
wb-map-default (function).
wb-map-filter (function).
wb-map-fn-compose (function).
wb-map-from-sequence (function).
wb-map-image (function).
wb-map-org (reader).
wb-map? (function).
wb-seq-contents (reader).
wb-seq-default (function).
wb-seq? (function).
wb-set-compare-fn (function).
wb-set-compare-fn-name (function).
wb-set-contents (reader).
wb-set-filter (function).
wb-set-from-list (function).
wb-set-from-sequence (function).
wb-set-image (function).
wb-set-org (function).
wb-set-partition (function).
wb-set? (function).
fset/Code/replay.lispfset.lisp (file).
code (module).
arb (method).
arb (method).
arb (method).
arb (method).
at-index (method).
at-index (method).
at-index (method).
at-index (method).
ch-replay-map (structure).
ch-replay-map (structure).
ch-replay-map? (function).
ch-replay-set (structure).
ch-replay-set? (function).
compare (method).
compare (method).
compare (method).
compare (method).
contains? (method).
contains? (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
domain (method).
domain (method).
domain-contains? (method).
domain-contains? (method).
empty-ch-replay-map (function).
empty-ch-replay-map (function).
empty-ch-replay-set (function).
empty-ch-replay-set (function).
empty-replay-map (function).
empty-replay-map (function).
empty-replay-set (function).
empty-wb-replay-map (function).
empty-wb-replay-map (function).
empty-wb-replay-set (function).
empty-wb-replay-set (function).
empty? (method).
empty? (method).
empty? (method).
empty? (method).
first (method).
first (method).
first (method).
first (method).
greatest (method).
greatest (method).
hash-value (method).
hash-value (method).
index (method).
index (method).
index (method).
index (method).
intersection (method).
intersection (method).
iterator (method).
iterator (method).
last (method).
last (method).
last (method).
last (method).
least (method).
least (method).
less (method).
less (method).
less (method).
less (method).
lookup (method).
lookup (method).
lookup (method).
lookup (method).
lookup (method).
lookup (method).
lookup (method).
lookup (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
size (method).
size (method).
size (method).
size (method).
union (method).
union (method).
wb-replay-map (structure).
wb-replay-map (structure).
wb-replay-map? (function).
wb-replay-set (structure).
wb-replay-set? (function).
with (method).
with (method).
with (method).
with (method).
with-default (method).
with-default (method).
without-default (method).
without-default (method).
+empty-ch-custom-replay-map-cache+ (symbol macro).
+empty-ch-custom-replay-set-cache+ (symbol macro).
+empty-ch-replay-map+ (special variable).
+empty-ch-replay-map/no-default+ (special variable).
+empty-ch-replay-set+ (special variable).
+empty-wb-custom-replay-map-cache+ (symbol macro).
+empty-wb-custom-replay-set-cache+ (symbol macro).
+empty-wb-replay-map+ (special variable).
+empty-wb-replay-map/no-default+ (special variable).
+empty-wb-replay-set+ (special variable).
ch-replay-map-contents (reader).
ch-replay-map-default (function).
ch-replay-map-ordering (function).
ch-replay-map-org (reader).
ch-replay-set-contents (reader).
ch-replay-set-ordering (function).
ch-replay-set-org (reader).
compare-fn (method).
compare-fn (method).
compare-fn-name (method).
compare-fn-name (method).
empty-ch-custom-replay-map (function).
empty-ch-custom-replay-set (function).
empty-ch-replay-map-internal (function).
empty-wb-custom-replay-map (function).
empty-wb-custom-replay-set (function).
empty-wb-replay-map-internal (function).
internal-do-map (method).
internal-do-set (method).
key-compare-fn (method).
key-compare-fn (method).
key-compare-fn-name (method).
key-compare-fn-name (method).
make-ch-replay-map (function).
make-ch-replay-set (function).
make-wb-replay-map (function).
make-wb-replay-set (function).
print-ch-replay-map (function).
print-ch-replay-set (function).
print-wb-replay-map (function).
print-wb-replay-set (function).
val-compare-fn (method).
val-compare-fn (method).
val-compare-fn-name (method).
val-compare-fn-name (method).
wb-replay-map-contents (reader).
wb-replay-map-default (function).
wb-replay-map-from-iterable (function).
wb-replay-map-ordering (function).
wb-replay-map-org (reader).
wb-replay-set-contents (reader).
wb-replay-set-ordering (function).
wb-replay-set-org (reader).
fset/Code/tuples.lispreplay.lisp (file).
code (module).
at-rank (method).
compare (method).
compare (method).
compare (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
def-tuple-key (macro).
define-tuple-key (macro).
define-tuple-key (macro).
do-tuple (macro).
domain (method).
dyn-tuple (structure).
empty-dyn-tuple (function).
empty-tuple (function).
get-tuple-key (function).
get-tuple-key (function).
hash-value (method).
hash-value (method).
hash-value (method).
image (method).
image (method).
image (method).
image (method).
image (method).
image (method).
lookup (method).
lookup (method).
make-load-form (method).
make-load-form (method).
print-object (method).
print-object (method).
restrict (method).
restrict-not (method).
size (method).
tuple-key (structure).
tuple-key-name (reader).
tuple-key-type (reader).
(setf tuple-key-type) (writer).
tuple-key-unbound-error (condition).
tuple-key-unbound-error-key (reader method).
tuple-key-unbound-error-tuple (reader method).
tuple-key? (function).
tuple-merge (generic function).
with (method).
+tuple-desc-next-serial-number+ (symbol macro).
+tuple-desc-next-serial-number-lock+ (symbol macro).
+tuple-descriptor-map+ (symbol macro).
+tuple-key-lock+ (symbol macro).
+tuple-key-name-map+ (symbol macro).
+tuple-key-seq+ (symbol macro).
+tuple-random-value+ (symbol macro).
copy-tuple-desc (function).
copy-tuple-key (function).
do-tuple-pairs (macro).
dyn-tuple-contents (reader).
dyn-tuple-descriptor (reader).
dyn-tuple-from-list (function).
dyn-tuple-hash-value (reader).
(setf dyn-tuple-hash-value) (writer).
dyn-tuple? (function).
internal-do-tuple (generic function).
key-compare (function).
key-hash-value (function).
make-dyn-tuple (function).
make-tuple-desc (function).
make-tuple-desc-internal (function).
make-tuple-key (function).
print-dyn-tuple (function).
print-tuple-key (function).
tuple-contents-ref (macro).
tuple-default-type-error (condition).
tuple-default-type-error-key-name (reader method).
tuple-desc (structure).
tuple-desc-compare (function).
tuple-desc-hash-value (function).
tuple-desc-key-set (reader).
tuple-desc-lock (reader).
tuple-desc-next-desc-map (reader).
(setf tuple-desc-next-desc-map) (writer).
tuple-desc-p (function).
tuple-desc-pairs (reader).
tuple-desc-reorder-map-map (reader).
(setf tuple-desc-reorder-map-map) (writer).
tuple-desc-serial-number (reader).
tuple-get-reorder-map (function).
tuple-key-default (reader).
(setf tuple-key-default) (writer).
tuple-key-number (reader).
tuple-lookup (function).
tuple-make-reorder-map (function).
tuple-random-value (function).
tuple-reorder-frequency (constant).
tuple-reorder-keys (function).
tuple-reorder-score-threshold (special variable).
tuple-value-chunk-bits (constant).
tuple-value-chunk-size (constant).
tuple-value-type-error (condition).
tuple-value-type-error-key (reader method).
tuple-window-size (macro).
tuple-with (function).
wb-map-from-tuple (function).
fset/Code/interval.lisptuples.lisp (file).
code (module).
compare (method).
compare (method).
compare (method).
empty? (method).
intersection (method).
less (method).
print-object (method).
print-object (method).
set-difference (method).
size (method).
union (method).
with (method).
compare-intervals (function).
empty-interval-set (function).
interval (structure).
interval-kind (reader).
interval-kind-symbol (function).
interval-lower (reader).
interval-lower-closed? (function).
interval-set (structure).
interval-set-contents (reader).
interval-set? (function).
interval-upper (reader).
interval-upper-closed? (function).
interval? (function).
less-interval (generic function).
make-interval (function).
make-interval-set (function).
make-raw-interval (function).
print-interval (function).
print-interval-set (function).
with-interval (generic function).
fset/Code/relations.lispinterval.lisp (file).
code (module).
2-relation (structure).
2-relation? (function).
all-queries (method).
arb (method).
arb (method).
arb (method).
arb (method).
arity (generic function).
assertion-db (structure).
at-rank (method).
ch-2-relation (structure).
ch-2-relation? (function).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compare (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
compose (method).
conflicts (generic function).
contains? (method).
contains? (method).
contains? (method).
contains? (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
convert (method).
do-all-queries (macro).
domain (method).
domain (method).
empty-2-relation (function).
empty-assertion-db (function).
empty-ch-2-relation (function).
empty-ch-2-relation (function).
empty-ch-list-relation (function).
empty-ch-list-relation (function).
empty-ch-query-registry (function).
empty-list-relation (function).
empty-list-relation (function).
empty-query-registry (function).
empty-wb-2-relation (function).
empty-wb-2-relation (function).
empty-wb-assertion-db (function).
empty-wb-list-relation (function).
empty-wb-list-relation (function).
empty? (method).
empty? (method).
empty? (method).
empty? (method).
greatest (method).
hash-value (method).
hash-value (method).
image (method).
image (method).
image (method).
image (method).
image (method).
image (method).
intersection (method).
intersection (method).
intersection (method).
inverse (generic function).
iterator (method).
iterator (method).
join (generic function).
least (method).
less (method).
less (method).
less (method).
less (method).
less (method).
less (method).
list-relation (structure).
list-relation? (function).
lookup (method).
lookup (method).
lookup (method).
lookup (method).
lookup (method).
lookup (method).
lookup-inv (generic function).
lookup-multi (method).
make-load-form (method).
make-load-form (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
print-object (method).
query (generic function).
query-multi (generic function).
query-multi-restricted (generic function).
query-registry (structure).
range (method).
range (method).
relation (structure).
relation? (function).
size (method).
size (method).
size (method).
size (method).
union (method).
union (method).
union (method).
wb-2-relation (structure).
wb-2-relation? (function).
wb-list-relation (structure).
wb-list-relation? (function).
with (method).
with (method).
with (method).
with (method).
with (method).
with (method).
+empty-ch-2-relation+ (special variable).
+empty-ch-custom-2-relation-cache+ (symbol macro).
+empty-wb-2-relation+ (special variable).
+empty-wb-custom-2-relation-cache+ (symbol macro).
assertion-db? (function).
ch-2-relation-domain-set-org (function).
ch-2-relation-fn-compose (function).
ch-2-relation-get-inverse (function).
ch-2-relation-map0 (reader).
ch-2-relation-map1 (reader).
(setf ch-2-relation-map1) (writer).
ch-2-relation-org (reader).
ch-2-relation-range-set-org (function).
ch-2-relation-size (reader).
ch-2-relation-to-ch-map (function).
ch-2-relation-to-map-to-sets (function).
ch-list-relation (structure).
ch-list-relation-arity (function).
ch-list-relation-indices (reader).
(setf ch-list-relation-indices) (writer).
ch-list-relation-org (reader).
ch-list-relation-result-org (function).
ch-list-relation-tuples (reader).
ch-list-relation? (function).
ch-map-to-ch-2-relation (function).
ch-map-to-sets-to-ch-2-relation (function).
empty-ch-custom-2-relation (function).
empty-relation-like (method).
empty-relation-like (method).
empty-wb-custom-2-relation (function).
empty-wb-query-registry (function).
fun-iterator (method).
fun-iterator (method).
get-indices (method).
get-indices (method).
hash-list-relation-org (structure).
hash-list-relation-org? (function).
hlrorg-compare-fn (reader).
hlrorg-compare-fn-name (reader).
hlrorg-hash-fn (reader).
hlrorg-index-compare-fn (reader).
hlrorg-index-hash-fn (reader).
hlrorg-tuple-compare-fn (reader).
hlrorg-tuple-hash-fn (reader).
internal-do-2-relation (generic function).
internal-do-all-queries (method).
internal-do-list-relation (generic function).
list-relation-arity (reader).
list-relation-tuple-compare-fn (function).
list-relation-tuple-hash-fn (function).
make-ch-2-relation (function).
make-ch-list-relation (function).
make-hash-list-relation-org (function).
make-query-registry (function).
make-raw-hash-list-relation-org (function).
make-raw-tree-list-relation-org (function).
make-tree-list-relation-org (function).
make-wb-2-relation (function).
make-wb-assertion-db (function).
make-wb-list-relation (function).
masked-tuple (function).
pattern-mask (function).
prepare-pattern (function).
print-ch-2-relation (function).
print-ch-list-relation (function).
print-wb-2-relation (function).
print-wb-assertion-db (function).
print-wb-list-relation (function).
query-registry-list-relations (reader).
query-registry? (function).
reduced-tuple (function).
set-transitive-closure (function).
tlrorg-compare-fn (reader).
tlrorg-compare-fn-name (reader).
tlrorg-index-compare-fn (reader).
tlrorg-tuple-compare-fn (reader).
transitive-closure (generic function).
tree-list-relation-org (structure).
tree-list-relation-org? (function).
wb-2-relation-domain-set-org (function).
wb-2-relation-fn-compose (function).
wb-2-relation-get-inverse (function).
wb-2-relation-map0 (reader).
wb-2-relation-map1 (reader).
(setf wb-2-relation-map1) (writer).
wb-2-relation-org (reader).
wb-2-relation-range-set-org (function).
wb-2-relation-size (reader).
wb-2-relation-to-map-to-sets (function).
wb-2-relation-to-wb-map (function).
wb-assertion-db (structure).
wb-assertion-db-list-rels (reader).
wb-assertion-db? (function).
wb-list-relation-arity (function).
wb-list-relation-indices (reader).
(setf wb-list-relation-indices) (writer).
wb-list-relation-org (reader).
wb-list-relation-result-org (function).
wb-list-relation-tuples (reader).
wb-map-to-sets-to-wb-2-relation (function).
wb-map-to-wb-2-relation (function).
fset/Code/complement-sets.lisprelations.lisp (file).
code (module).
arb (method).
compare (method).
compare (method).
compare (method).
complement (generic function).
contains? (method).
disjoint? (method).
disjoint? (method).
disjoint? (method).
full-set (function).
hash-value (method).
intersection (method).
intersection (method).
intersection (method).
less (method).
make-load-form (method).
print-object (method).
set-difference (method).
set-difference (method).
set-difference (method).
size (method).
subset? (method).
subset? (method).
subset? (method).
union (method).
union (method).
union (method).
with (method).
complement-set (structure).
complement-set-complement (reader).
complement-set? (function).
internal-do-set (method).
make-complement-set (function).
print-complement-set (function).
fset/Code/bounded-sets.lispcomplement-sets.lisp (file).
code (module).
arb (method).
bounded-set (structure).
bounded-set-contents (function).
compare (method).
compare (method).
compare (method).
complement (method).
contains? (method).
convert (method).
disjoint? (method).
empty? (method).
intersection (method).
less (method).
make-bounded-set (function).
print-object (method).
set-difference (method).
size (method).
subset? (method).
union (method).
with (method).
bounded-set-complement? (reader).
bounded-set-set (reader).
bounded-set-universe (reader).
bounded-set? (function).
internal-do-set (method).
make-bounded-set-internal (function).
print-bounded-set (function).
fset/Code/testing.lispbounded-sets.lisp (file).
code (module).
adjust-sequence (method).
compare (method).
(setf elt) (method).
elt (method).
hash-value (method).
length (method).
make-sequence-like (method).
*champ-map-test-pairs* (special variable).
*seq-of-symbols* (special variable).
+k0+ (symbol macro).
+k1+ (symbol macro).
+k2+ (symbol macro).
+k3+ (symbol macro).
+k4+ (symbol macro).
+k5+ (symbol macro).
+k6+ (symbol macro).
add-to-front (function).
alist-assign (function).
alist-bag-combine (function).
alist-bag-difference (function).
alist-bag-intersection (function).
alist-bag-product (function).
alist-bag-remove (function).
alist-bag-size (function).
alist-bag-sum (function).
alist-bag-union (function).
alist-remove (function).
copy-my-integer (function).
erapmoc (function).
hash-mix-func (function).
hash-value-negated (function).
int-compare (function).
list-insert (function).
list-remove (function).
list-set-elt (function).
make-my-integer (function).
map-compare (function).
map-sort-and-group (function).
my-identity-ordered-obj (class).
my-identity-ordered-obj-value (reader method).
(setf my-identity-ordered-obj-value) (writer method).
my-integer (structure).
my-integer-p (function).
my-integer-value (reader).
(setf my-integer-value) (writer).
my-sequence (class).
my-sequence-actual (reader method).
(setf my-sequence-actual) (writer method).
my-unhandled-obj (class).
my-unhandled-obj-value (reader method).
(setf my-unhandled-obj-value) (writer method).
pick (function).
random-test (function).
run-test-suite (function).
seq-compare (function).
seq-position (function).
set-compare (function).
test-2-relations (function).
test-bag-operations (function).
test-bounded-sets (function).
test-champ-maps (function).
test-champ-sets (function).
test-cl-generic-sequence-ops (function).
test-compare-lexicographically (function).
test-complement-sets (function).
test-equivalent-sets (function).
test-fset2 (function).
test-fset2-gmap (function).
test-functional-deep-update (function).
test-gmap (function).
test-list-relations (function).
test-map-operations (function).
test-misc-0 (function).
test-misc-1 (function).
test-misc-2 (function).
test-misc-3 (function).
test-misc-4 (function).
test-modify-macros (function).
test-reader (function).
test-rereader (function).
test-seq-operations (function).
test-set-operations (function).
test-tuple-operations (function).
test-type-dispatch-speed (function).
time-index (function).
time-seq-iter (function).
tuple-keys (symbol macro).
verify (generic function).
fset/Code/post.lisptesting.lisp (file).
code (module).
compare (method).
hash-value (method).
Packages are listed by definition order.
fset-usercommon-lisp.
fset.
misc-extensions.gmap.
misc-extensions.lexical-contexts.
misc-extensions.new-let.
fsetcom.ergy.fset
com.sympoiesis.fset
common-lisp.
misc-extensions.define-class.
misc-extensions.lexical-contexts.
misc-extensions.new-let.
misc-extensions.rev-fun-bind.
*fset-readtable* (special variable).
*fset-rereading-readtable* (special variable).
2-relation (macro).
2-relation (structure).
2-relation? (function).
@ (macro).
(setf @) (setf expander).
adjoinf (macro).
all-queries (generic function).
appendf (macro).
arb (generic function).
arity (generic function).
assertion-db (structure).
at-index (generic function).
at-rank (generic function).
bag (macro).
bag (structure).
bag-difference (generic function).
bag-product (generic function).
bag-sum (generic function).
bag? (function).
bounded-set (structure).
bounded-set-contents (function).
ch-2-relation (macro).
ch-2-relation (structure).
ch-2-relation? (function).
ch-custom-2-relation (macro).
ch-custom-map (macro).
ch-custom-replay-map (macro).
ch-custom-replay-set (macro).
ch-custom-set (macro).
ch-map (macro).
ch-map (structure).
ch-replay-map (macro).
ch-replay-map (structure).
ch-replay-map? (function).
ch-replay-set (macro).
ch-replay-set (structure).
ch-replay-set? (function).
ch-set (macro).
ch-set (structure).
char-seq? (generic function).
collection (structure).
collection? (function).
compare (generic function).
compare-lexicographically (generic function).
compare-lists-lexicographically (function).
compare-seqs-lexicographically (function).
compare-slots (macro).
compare-slots-no-unequal (macro).
compare-strings-lexicographically (function).
compare-vectors-lexicographically (function).
complement (generic function).
compose (generic function).
composef (macro).
concat (generic function).
conflicts (generic function).
contains? (generic function).
convert (generic function).
count (generic function).
count-if (generic function).
count-if-not (generic function).
def-tuple-key (macro).
default (generic function).
default (slot).
default (slot).
define-comparison-slots (macro).
define-cross-type-compare-methods (macro).
define-equality-slots (macro).
define-hash-function (macro).
define-tuple-key (macro).
disjoint? (generic function).
do-2-relation (macro).
do-all-queries (macro).
do-bag (macro).
do-bag-pairs (macro).
do-list-relation (macro).
do-map (macro).
do-map-domain (macro).
do-seq (macro).
do-set (macro).
do-tuple (macro).
domain (generic function).
domain-contains? (generic function).
dyn-tuple (macro).
dyn-tuple (structure).
empty-2-relation (function).
empty-assertion-db (function).
empty-bag (function).
empty-bag-like (generic function).
empty-ch-2-relation (function).
empty-ch-list-relation (function).
empty-ch-map (function).
empty-ch-query-registry (function).
empty-ch-replay-map (function).
empty-ch-replay-set (function).
empty-ch-set (function).
empty-dyn-tuple (function).
empty-list-relation (function).
empty-map (function).
empty-map-like (generic function).
empty-query-registry (function).
empty-replay-map (function).
empty-replay-set (function).
empty-seq (function).
empty-set (function).
empty-set-like (generic function).
empty-tuple (function).
empty-wb-2-relation (function).
empty-wb-assertion-db (function).
empty-wb-bag (function).
empty-wb-list-relation (function).
empty-wb-map (function).
empty-wb-replay-map (function).
empty-wb-replay-set (function).
empty-wb-seq (function).
empty-wb-set (function).
empty? (generic function).
eql-compare (function).
equal? (function).
every (function).
excludef (macro).
filter (generic function).
filter-pairs (generic function).
find (generic function).
find-if (generic function).
find-if-not (generic function).
first (generic function).
fset-setup-readtable (function).
fset-setup-rereading-readtable (function).
full-set (function).
get-tuple-key (function).
greatest (generic function).
hash-mix (macro).
hash-mixf (macro).
hash-multiply (macro).
hash-slots (macro).
hash-value (generic function).
hash-value-fixnum (function).
head (function).
identity-equality-mixin (class).
identity-ordering-mixin (class).
image (generic function).
imagef (macro).
includef (macro).
insert (generic function).
insertf (macro).
intersectf (macro).
intersection (generic function).
inverse (generic function).
iterator (generic function).
join (generic function).
last (generic function).
lastcons (function).
least (generic function).
less (generic function).
less-first (generic function).
less-last (generic function).
list-relation (structure).
list-relation? (function).
(setf lookup) (setf expander).
lookup (generic function).
lookup-inv (generic function).
lookup-multi (generic function).
make-bounded-set (function).
map (macro).
map (structure).
map (slot).
map-default (reader).
map-difference-2 (generic function).
map-image (generic function).
map-intersectf (macro).
map-intersection (generic function).
map-union (generic function).
map-unionf (macro).
map? (function).
member? (function).
mismatch (generic function).
multiplicity (generic function).
non-char-seq-error (condition).
non-char-seq-error-seq (generic reader).
nonempty? (function).
notany (function).
notevery (function).
partition (generic function).
pop-first (macro).
pop-last (macro).
position (generic function).
position-if (generic function).
position-if-not (generic function).
prependf (macro).
proper-subbag? (function).
proper-subset? (function).
push-first (macro).
push-last (macro).
query (generic function).
query-multi (generic function).
query-multi-restricted (generic function).
query-registry (structure).
range (generic function).
range-contains? (generic function).
rank (generic function).
reduce (generic function).
relation (structure).
relation? (function).
remove (generic function).
remove-if (generic function).
remove-if-not (generic function).
removef (macro).
replay-map (macro).
replay-map (structure).
replay-map? (function).
replay-set (macro).
replay-set (structure).
replay-set? (function).
restrict (generic function).
restrict-not (generic function).
reverse (generic function).
search (generic function).
seq (macro).
seq (structure).
seq? (function).
set (macro).
set (structure).
set-difference (generic function).
set-difference-2 (generic function).
set-differencef (macro).
set-size (generic function).
set? (function).
size (generic function).
some (function).
sort (generic function).
sort-and-group (generic function).
splice (generic function).
splicef (macro).
split-above (generic function).
split-below (generic function).
split-from (generic function).
split-through (generic function).
stable-sort (generic function).
subbag? (generic function).
subseq (generic function).
subset? (generic function).
substitute (generic function).
substitute-if (generic function).
substitute-if-not (generic function).
tail (function).
tuple (macro).
tuple (structure).
tuple (slot).
tuple-key (structure).
tuple-key-name (reader).
tuple-key-type (reader).
(setf tuple-key-type) (writer).
tuple-key? (function).
tuple-merge (generic function).
tuple? (function).
union (generic function).
unionf (macro).
unwrap-equivalent-node (function).
update (compiler macro).
update (function).
updatef (macro).
wb-2-relation (macro).
wb-2-relation (structure).
wb-2-relation? (function).
wb-bag (macro).
wb-bag (structure).
wb-custom-2-relation (macro).
wb-custom-bag (macro).
wb-custom-map (macro).
wb-custom-replay-map (macro).
wb-custom-replay-set (macro).
wb-custom-set (macro).
wb-custom-set (structure).
wb-list-relation (structure).
wb-list-relation? (function).
wb-map (macro).
wb-map (structure).
wb-replay-map (macro).
wb-replay-map (structure).
wb-replay-map? (function).
wb-replay-set (macro).
wb-replay-set (structure).
wb-replay-set? (function).
wb-seq (macro).
wb-seq (structure).
wb-set (macro).
wb-set (structure).
with (generic function).
with-default (generic function).
with-first (generic function).
with-last (generic function).
zero (function).
#"-reader (function).
##-reader (function).
#$-reader (function).
#%-reader (function).
#[-reader (function).
#{-reader (function).
#~-reader (function).
*champ-map-test-pairs* (special variable).
*seq-of-symbols* (special variable).
+empty-ch-2-relation+ (special variable).
+empty-ch-custom-2-relation-cache+ (symbol macro).
+empty-ch-custom-map-cache+ (symbol macro).
+empty-ch-custom-replay-map-cache+ (symbol macro).
+empty-ch-custom-replay-set-cache+ (symbol macro).
+empty-ch-custom-set-cache+ (symbol macro).
+empty-ch-map+ (special variable).
+empty-ch-map/no-default+ (special variable).
+empty-ch-replay-map+ (special variable).
+empty-ch-replay-map/no-default+ (special variable).
+empty-ch-replay-set+ (special variable).
+empty-ch-set+ (special variable).
+empty-simple-vector+ (symbol macro).
+empty-wb-2-relation+ (special variable).
+empty-wb-bag+ (special variable).
+empty-wb-custom-2-relation-cache+ (symbol macro).
+empty-wb-custom-bag-cache+ (symbol macro).
+empty-wb-custom-map-cache+ (symbol macro).
+empty-wb-custom-replay-map-cache+ (symbol macro).
+empty-wb-custom-replay-set-cache+ (symbol macro).
+empty-wb-custom-set-cache+ (symbol macro).
+empty-wb-map+ (special variable).
+empty-wb-map/no-default+ (special variable).
+empty-wb-replay-map+ (special variable).
+empty-wb-replay-map/no-default+ (special variable).
+empty-wb-replay-set+ (special variable).
+empty-wb-seq+ (special variable).
+empty-wb-seq/no-default+ (special variable).
+empty-wb-set+ (special variable).
+fset-default-hash-map-org+ (special variable).
+fset-default-hash-set-org+ (special variable).
+fset-default-tree-map-org+ (special variable).
+fset-default-tree-set-org+ (special variable).
+k0+ (symbol macro).
+k1+ (symbol macro).
+k2+ (symbol macro).
+k3+ (symbol macro).
+k4+ (symbol macro).
+master-type-ordering+ (symbol macro).
+package-original-name+ (symbol macro).
+tuple-desc-next-serial-number+ (symbol macro).
+tuple-desc-next-serial-number-lock+ (symbol macro).
+tuple-descriptor-map+ (symbol macro).
+tuple-key-lock+ (symbol macro).
+tuple-key-name-map+ (symbol macro).
+tuple-key-seq+ (symbol macro).
+tuple-random-value+ (symbol macro).
+wb-tree-max-depths-with-values+ (symbol macro).
+wb-tree-max-depths-without-values+ (symbol macro).
1-bits-below (function).
add-to-front (function).
alist-assign (function).
alist-bag-combine (function).
alist-bag-difference (function).
alist-bag-intersection (function).
alist-bag-product (function).
alist-bag-remove (function).
alist-bag-size (function).
alist-bag-sum (function).
alist-bag-union (function).
alist-remove (function).
assertion-db? (function).
bag-filter (function).
bag-filter-pairs (function).
bag-image (function).
bag-reduce (function).
bag-set-disjoint? (function).
bag-to-alist (function).
bag-to-seq (function).
bag-value-size (function).
base-char-p (function).
bit-indices (function).
bounded-set-complement? (reader).
bounded-set-set (reader).
bounded-set-universe (reader).
bounded-set? (function).
ch-2-relation-domain-set-org (function).
ch-2-relation-fn-compose (function).
ch-2-relation-get-inverse (function).
ch-2-relation-map0 (reader).
ch-2-relation-map1 (reader).
(setf ch-2-relation-map1) (writer).
ch-2-relation-org (reader).
ch-2-relation-range-set-org (function).
ch-2-relation-size (reader).
ch-2-relation-to-ch-map (function).
ch-2-relation-to-map-to-sets (function).
ch-list-relation (structure).
ch-list-relation-arity (function).
ch-list-relation-indices (reader).
(setf ch-list-relation-indices) (writer).
ch-list-relation-org (reader).
ch-list-relation-result-org (function).
ch-list-relation-tuples (reader).
ch-list-relation? (function).
ch-map-compact-node (function).
ch-map-contents (reader).
ch-map-default (function).
ch-map-filter (function).
ch-map-fn-compose (function).
ch-map-from-sequence (function).
ch-map-image (function).
ch-map-node-add-entry! (function).
ch-map-node-add-subnode! (function).
ch-map-node-bag-count (macro).
ch-map-node-change-entry-to-subnode (function).
ch-map-node-entry (function).
ch-map-node-entry-mask (function).
(setf ch-map-node-entry-mask) (function).
ch-map-node-from-wb (function).
ch-map-node-header-size (constant).
ch-map-node-insert-subnode (function).
ch-map-node-key-hash (function).
(setf ch-map-node-key-hash) (function).
ch-map-node-replace-subnode (function).
ch-map-node-size (function).
(setf ch-map-node-size) (function).
ch-map-node-subnode (function).
ch-map-node-subnode-mask (function).
(setf ch-map-node-subnode-mask) (function).
ch-map-node-value-hash (function).
(setf ch-map-node-value-hash) (function).
ch-map-org (reader).
ch-map-to-ch-2-relation (function).
ch-map-to-sets-to-ch-2-relation (function).
ch-map-tree (type).
ch-map-tree-arb-pair (function).
ch-map-tree-compare (function).
ch-map-tree-compose (function).
ch-map-tree-diff-2 (function).
ch-map-tree-domain (function).
ch-map-tree-fun-iter (function).
ch-map-tree-hash-value (function).
ch-map-tree-index (function).
ch-map-tree-index-pair (function).
ch-map-tree-intersection (function).
ch-map-tree-iterator-canonicalize (function).
ch-map-tree-iterator-done? (function).
ch-map-tree-iterator-get (function).
ch-map-tree-key-hash (function).
ch-map-tree-less (function).
ch-map-tree-lookup (function).
ch-map-tree-restrict (function).
ch-map-tree-restrict-not (function).
ch-map-tree-rev-fun-iter (function).
ch-map-tree-size (function).
ch-map-tree-union (function).
ch-map-tree-value-hash (function).
ch-map-tree-verify (function).
ch-map-tree-with (function).
ch-map? (function).
ch-replay-map-contents (reader).
ch-replay-map-default (function).
ch-replay-map-ordering (function).
ch-replay-map-org (reader).
ch-replay-set-contents (reader).
ch-replay-set-ordering (function).
ch-replay-set-org (reader).
ch-set-compact-node (function).
ch-set-contents (reader).
ch-set-filter (function).
ch-set-image (function).
ch-set-node-add-entry! (function).
ch-set-node-add-subnode! (function).
ch-set-node-change-entry-to-subnode (function).
ch-set-node-entry (function).
ch-set-node-entry-mask (function).
(setf ch-set-node-entry-mask) (function).
ch-set-node-from-wb (function).
ch-set-node-hash-value (function).
(setf ch-set-node-hash-value) (function).
ch-set-node-header-size (constant).
ch-set-node-insert-subnode (function).
ch-set-node-replace-subnode (function).
ch-set-node-size (function).
(setf ch-set-node-size) (function).
ch-set-node-subnode (function).
ch-set-node-subnode-mask (function).
(setf ch-set-node-subnode-mask) (function).
ch-set-org (reader).
ch-set-partition (function).
ch-set-tree (type).
ch-set-tree-arb (function).
ch-set-tree-compare (function).
ch-set-tree-contains? (function).
ch-set-tree-diff (function).
ch-set-tree-diff-2 (function).
ch-set-tree-disjoint? (function).
ch-set-tree-fun-iter (function).
ch-set-tree-hash-value (function).
ch-set-tree-index (function).
ch-set-tree-index-element (function).
ch-set-tree-intersection (function).
ch-set-tree-iterator-canonicalize (function).
ch-set-tree-iterator-done? (function).
ch-set-tree-iterator-get (function).
ch-set-tree-less (function).
ch-set-tree-rev-fun-iter (function).
ch-set-tree-size (function).
ch-set-tree-subset? (function).
ch-set-tree-union (function).
ch-set-tree-verify (function).
ch-set-tree-with (function).
ch-set? (function).
champ-bit-index (type).
champ-entry-index (type).
champ-hash-bits (function).
champ-hash-bits-per-level (constant).
champ-hash-level-mask (constant).
champ-node-radix (constant).
champ-subnode-index (type).
change-specializer-class (function).
character-type (function).
check-three-arguments (macro).
check-two-arguments (macro).
class-hash-value (function).
coerce-to-function (function).
coerce-to-function-or-equal? (function).
compare-fn (generic function).
compare-fn-name (generic function).
compare-intervals (function).
compare-strings (function).
complement-set (structure).
complement-set-complement (reader).
complement-set? (function).
compose-functions (function).
compose-with-key-fn (function).
contents (slot).
contents (slot).
contents (slot).
contents (slot).
contents (slot).
convert-to-ch-map (macro).
convert-to-ch-set (macro).
convert-to-wb-2-relation (macro).
convert-to-wb-bag (macro).
convert-to-wb-map (macro).
convert-to-wb-set (macro).
copy-ch-map-node (function).
copy-ch-set-node (function).
copy-equivalent-node (function).
copy-my-integer (function).
copy-tuple-desc (function).
copy-tuple-key (function).
copy-wb-bag-tree-node (function).
copy-wb-ht-seq-tree (function).
copy-wb-map-tree-node (function).
copy-wb-seq-tree-node (function).
copy-wb-set-tree-node (function).
defglobal (macro).
define-atomic-series (macro).
define-class-equality-slots-extension (function).
define-convert-methods (macro).
define-generics (macro).
define-methods (macro).
define-wb-seq-method (macro).
define-wb-seq-methods (macro).
define-wb-set-method (macro).
define-wb-set-methods (macro).
do-bit-indices (macro).
do-ch-map-tree-pairs (macro).
do-ch-set-tree-members (macro).
do-elements (macro).
do-iterator (macro).
do-pair-iterator (macro).
do-seq-chunks (macro).
do-tuple-pairs (macro).
do-wb-bag-tree-pairs (macro).
do-wb-map-tree-pairs (macro).
do-wb-seq-tree-leaves (macro).
do-wb-seq-tree-members (macro).
do-wb-seq-tree-members-gen (macro).
do-wb-set-tree-members (macro).
dyn-tuple-contents (reader).
dyn-tuple-descriptor (reader).
dyn-tuple-from-list (function).
dyn-tuple-hash-value (reader).
(setf dyn-tuple-hash-value) (writer).
dyn-tuple? (function).
e-split-cases (macro).
empty-ch-custom-2-relation (function).
empty-ch-custom-map (function).
empty-ch-custom-replay-map (function).
empty-ch-custom-replay-set (function).
empty-ch-custom-set (function).
empty-ch-map-internal (function).
empty-ch-replay-map-internal (function).
empty-interval-set (function).
empty-relation-like (generic function).
empty-wb-custom-2-relation (function).
empty-wb-custom-bag (function).
empty-wb-custom-map (function).
empty-wb-custom-replay-map (function).
empty-wb-custom-replay-set (function).
empty-wb-custom-set (function).
empty-wb-map-internal (function).
empty-wb-query-registry (function).
empty-wb-replay-map-internal (function).
empty-wb-seq-internal (function).
equal?-cmp (macro).
equal?-fn (macro).
equivalent-bag-compare (function).
equivalent-bag-difference (function).
equivalent-bag-disjoint? (function).
equivalent-bag-intersect (function).
equivalent-bag-product (function).
equivalent-bag-subbag? (function).
equivalent-bag-sum (function).
equivalent-bag-union (function).
equivalent-map-compare (function).
equivalent-map-difference (function).
equivalent-map-intersect (function).
equivalent-map-less (function).
equivalent-map-restrict (function).
equivalent-map-restrict-not (function).
equivalent-map-union (function).
equivalent-map-update (function).
equivalent-map-with (function).
equivalent-node (structure).
equivalent-node-list (reader).
equivalent-node-set? (reader).
(setf equivalent-node-set?) (writer).
equivalent-node? (function).
equivalent-set-compare (function).
equivalent-set-difference (function).
equivalent-set-disjoint? (function).
equivalent-set-intersect (function).
equivalent-set-subset? (function).
equivalent-set-union (function).
eqv (function).
erapmoc (special variable).
erapmoc (function).
expand-2-relation-constructor-form (function).
expand-@ (function).
expand-bag-constructor-form (function).
expand-map-constructor-form (function).
expand-replay-map-constructor-form (function).
expand-replay-set-constructor-form (function).
expand-seq-constructor-form (function).
expand-set-constructor-form (function).
expand-setf-of-lookup (function).
expand-tuple-constructor-form (function).
fset2-default (function).
fun-iterator (generic function).
gen (macro).
generic-map-difference-2 (function).
generic-map-intersection (function).
generic-map-union (function).
gensymx (macro).
get-indices (generic function).
greater-than?-cmp (macro).
hash-list-relation-org (structure).
hash-list-relation-org? (function).
hash-map-org (structure).
hash-map-org-key-compare-fn (reader).
hash-map-org-key-compare-fn-name (reader).
hash-map-org-key-hash-fn (reader).
hash-map-org-val-compare-fn (reader).
hash-map-org-val-compare-fn-name (reader).
hash-map-org-val-hash-fn (reader).
hash-map-org? (function).
hash-mix-func (function).
hash-set-org (structure).
hash-set-org-compare-fn (reader).
hash-set-org-compare-fn-name (reader).
hash-set-org-hash-fn (reader).
hash-set-type? (function).
hash-to-fixnum (macro).
hash-unmix (macro).
hash-unmixf (macro).
hash-value-negated (function).
hedge-negative-infinity (constant).
hedge-positive-infinity (constant).
hlrorg-compare-fn (reader).
hlrorg-compare-fn-name (reader).
hlrorg-hash-fn (reader).
hlrorg-index-compare-fn (reader).
hlrorg-index-hash-fn (reader).
hlrorg-tuple-compare-fn (reader).
hlrorg-tuple-hash-fn (reader).
if-same-ch-2-relation-orgs (macro).
if-same-ch-map-orgs (macro).
if-same-ch-set-orgs (macro).
if-same-wb-2-relation-orgs (macro).
if-same-wb-bag-orgs (macro).
if-same-wb-map-orgs (macro).
impl-##-reader (special variable).
increment-atomic-series (macro).
int-compare (function).
internal-compose (macro).
internal-concat (macro).
internal-do-2-relation (generic function).
internal-do-all-queries (generic function).
internal-do-bag-pairs (generic function).
internal-do-list-relation (generic function).
internal-do-map (generic function).
internal-do-seq (generic function).
internal-do-seq-chunks (generic function).
internal-do-set (generic function).
internal-do-tuple (generic function).
internal-first (macro).
internal-insert (macro).
internal-intersection (macro).
internal-last (macro).
internal-less (macro).
internal-less-first (macro).
internal-less-last (macro).
internal-lookup (function).
internal-map-intersection (macro).
internal-map-union (macro).
internal-set-difference (macro).
internal-splice (macro).
internal-union (macro).
internal-with (macro).
internal-with-first (macro).
internal-with-last (macro).
interval (structure).
interval-kind (reader).
interval-kind-symbol (function).
interval-lower (reader).
interval-lower-closed? (function).
interval-set (structure).
interval-set-contents (reader).
interval-set? (function).
interval-upper (reader).
interval-upper-closed? (function).
interval? (function).
invert-comparison (function).
key (slot).
key (slot).
key-compare (function).
key-compare-fn (generic function).
key-compare-fn-name (generic function).
key-hash-fn (generic function).
key-hash-value (function).
least-1-bit (function).
length-nv (macro).
less-interval (generic function).
less-than?-cmp (macro).
list-hash-value (function).
list-insert (function).
list-partition (function).
list-relation-arity (reader).
list-relation-tuple-compare-fn (function).
list-relation-tuple-hash-fn (function).
list-remove (function).
list-set-elt (function).
lock-fset-packages (function).
logandc2f (macro).
logiorf (macro).
logxorf (macro).
make-bounded-set-internal (function).
make-ch-2-relation (function).
make-ch-list-relation (function).
make-ch-map (function).
make-ch-map-node (function).
make-ch-map-tree-iterator (function).
make-ch-map-tree-iterator-internal (function).
make-ch-replay-map (function).
make-ch-replay-set (function).
make-ch-set (function).
make-ch-set-node (function).
make-ch-set-tree-iterator (function).
make-ch-set-tree-iterator-internal (function).
make-char (function).
make-complement-set (function).
make-dyn-tuple (function).
make-equivalent-bag (function).
make-equivalent-map (function).
make-equivalent-node (function).
make-equivalent-set (function).
make-hash-list-relation-org (function).
make-hash-map-org (function).
make-hash-set-org (function).
make-interval (function).
make-interval-set (function).
make-lock (function).
make-my-integer (function).
make-query-registry (function).
make-raw-hash-list-relation-org (function).
make-raw-interval (function).
make-raw-tree-list-relation-org (function).
make-raw-wb-bag-tree-node (function).
make-raw-wb-ht-seq-tree (function).
make-raw-wb-map-tree-node (function).
make-raw-wb-seq-tree-node (function).
make-raw-wb-set-tree-node (function).
make-tree-list-relation-org (function).
make-tree-map-org (function).
make-tree-set-org (function).
make-tuple-desc (function).
make-tuple-desc-internal (function).
make-tuple-key (function).
make-wb-2-relation (function).
make-wb-assertion-db (function).
make-wb-bag (function).
make-wb-bag-tree-iterator (function).
make-wb-bag-tree-iterator-internal (function).
make-wb-bag-tree-node (function).
make-wb-bag-tree-pair-iterator (function).
make-wb-bag-tree-pair-iterator-internal (function).
make-wb-custom-set (function).
make-wb-default-set (function).
make-wb-ht-seq (function).
make-wb-ht-seq-tree (function).
make-wb-list-relation (function).
make-wb-map (function).
make-wb-map-tree-iterator (function).
make-wb-map-tree-iterator-internal (function).
make-wb-map-tree-node (function).
make-wb-replay-map (function).
make-wb-replay-set (function).
make-wb-seq (function).
make-wb-seq-tree-iterator (function).
make-wb-seq-tree-iterator-internal (function).
make-wb-seq-tree-node (function).
make-wb-seq-tree-rev-iterator (function).
make-wb-seq-tree-rev-iterator-internal (function).
make-wb-set (function).
make-wb-set-tree-iterator (function).
make-wb-set-tree-iterator-internal (function).
make-wb-set-tree-node (function).
make-wb-tree-iterator (function).
map-compare (function).
map-difference-2-defaults (function).
map-intersection-default (function).
map-key-size (function).
map-reduce (function).
map-sort-and-group (function).
map-union-default (function).
masked-tuple (function).
muffle-notes (macro).
my-identity-ordered-obj (class).
my-identity-ordered-obj-value (generic reader).
(setf my-identity-ordered-obj-value) (generic writer).
my-integer (structure).
my-integer-p (function).
my-integer-value (reader).
(setf my-integer-value) (writer).
my-sequence (class).
my-sequence-actual (generic reader).
(setf my-sequence-actual) (generic writer).
my-unhandled-obj (class).
my-unhandled-obj-value (generic reader).
(setf my-unhandled-obj-value) (generic writer).
n-values (macro).
object-or-char-type (function).
ordering (slot).
org (slot).
org (slot).
org (slot).
org (slot).
parse-body (function).
pattern-mask (function).
pick (function).
postincf (macro).
prepare-pattern (function).
print-bounded-set (function).
print-ch-2-relation (function).
print-ch-list-relation (function).
print-ch-map (function).
print-ch-replay-map (function).
print-ch-replay-set (function).
print-ch-set (function).
print-complement-set (function).
print-dyn-tuple (function).
print-interval (function).
print-interval-set (function).
print-tuple-key (function).
print-wb-2-relation (function).
print-wb-assertion-db (function).
print-wb-bag (function).
print-wb-custom-set (function).
print-wb-default-set (function).
print-wb-list-relation (function).
print-wb-map (function).
print-wb-replay-map (function).
print-wb-replay-set (function).
print-wb-seq (function).
query-registry-list-relations (reader).
query-registry? (function).
random-test (function).
raw-make-wb-seq (function).
read-memory-barrier (macro).
reduced-tuple (function).
replay-map-default (function).
replay-map-ordering (reader).
replay-set-ordering (reader).
rereading-#"-reader (function).
rereading-##-reader (function).
rereading-#%-reader (function).
rereading-#[-reader (function).
rereading-#{-read-internal (function).
rereading-#{-reader (function).
rereading-#~-reader (function).
reverse-list-to-vector (function).
run-test-suite (function).
seq-compare (function).
seq-default (reader).
seq-filter (function).
seq-image (function).
seq-partition (function).
seq-position (function).
seq-reduce (function).
serial-number (generic reader).
(setf serial-number) (generic writer).
set-compare (function).
set-difference-rev (generic function).
set-reduce (function).
set-transitive-closure (function).
set-value-size (function).
simple-program-error (condition).
split (function).
split-cases (macro).
split-cases-on-var (macro).
split-string-cases (macro).
squash-bignum-hash (function).
string-insert (function).
string-plus-char-type (function).
string-plus-string-type (function).
string-remove-at (function).
string-subrange-element-type (function).
string-subseq (function).
string-subseq-insert (function).
string-update (function).
swap-if (function).
symbol-hash-value (function).
symmetric-fixnum (type).
test-2-relations (function).
test-bag-operations (function).
test-bounded-sets (function).
test-champ-maps (function).
test-champ-sets (function).
test-cl-generic-sequence-ops (function).
test-compare-lexicographically (function).
test-complement-sets (function).
test-equivalent-sets (function).
test-fset2 (function).
test-functional-deep-update (function).
test-gmap (function).
test-list-relations (function).
test-map-operations (function).
test-misc-0 (function).
test-misc-1 (function).
test-misc-2 (function).
test-misc-3 (function).
test-misc-4 (function).
test-modify-macros (function).
test-reader (function).
test-rereader (function).
test-seq-operations (function).
test-set-operations (function).
test-tuple-operations (function).
test-type-dispatch-speed (function).
time-index (function).
time-seq-iter (function).
tlrorg-compare-fn (reader).
tlrorg-compare-fn-name (reader).
tlrorg-index-compare-fn (reader).
tlrorg-tuple-compare-fn (reader).
transitive-closure (generic function).
tree-list-relation-org (structure).
tree-list-relation-org? (function).
tree-map-org (structure).
tree-map-org-key-compare-fn (reader).
tree-map-org-key-compare-fn-name (reader).
tree-map-org-val-compare-fn (reader).
tree-map-org-val-compare-fn-name (reader).
tree-map-org? (function).
tree-set-org (structure).
tree-set-org-compare-fn (reader).
tree-set-org-compare-fn-name (reader).
tree-set-org? (function).
tuple-contents-ref (macro).
tuple-default-type-error (condition).
tuple-default-type-error-key-name (generic reader).
tuple-desc (structure).
tuple-desc-compare (function).
tuple-desc-hash-value (function).
tuple-desc-key-set (reader).
tuple-desc-lock (reader).
tuple-desc-next-desc-map (reader).
(setf tuple-desc-next-desc-map) (writer).
tuple-desc-p (function).
tuple-desc-pairs (reader).
tuple-desc-reorder-map-map (reader).
(setf tuple-desc-reorder-map-map) (writer).
tuple-desc-serial-number (reader).
tuple-get-reorder-map (function).
tuple-key-default (reader).
(setf tuple-key-default) (writer).
tuple-key-number (reader).
tuple-key-number-mask (constant).
tuple-key-number-size (constant).
tuple-keys (symbol macro).
tuple-lookup (function).
tuple-make-reorder-map (function).
tuple-random-value (function).
tuple-reorder-frequency (constant).
tuple-reorder-keys (function).
tuple-reorder-score-threshold (special variable).
tuple-value-chunk-bits (constant).
tuple-value-chunk-size (constant).
tuple-value-index-size (constant).
tuple-value-type-error (condition).
tuple-value-type-error-key (generic reader).
tuple-window-size (macro).
tuple-with (function).
val-compare-fn (generic function).
val-compare-fn-name (generic function).
val-hash-fn (generic function).
vector-ins-1-rem-1 (function).
vector-ins-2-rem-1 (function).
vector-insert (function).
vector-insert-2 (function).
vector-insert-from-string (function).
vector-pair-bag-diff (function).
vector-pair-bag-intersect (function).
vector-pair-bag-product (function).
vector-pair-bag-subbag? (function).
vector-pair-bag-sum (function).
vector-pair-bag-union (function).
vector-pair-diff-2 (function).
vector-pair-intersect (function).
vector-pair-restrict (function).
vector-pair-restrict-not (function).
vector-pair-union (function).
vector-rem-1-ins-1 (function).
vector-rem-2-ins-1 (function).
vector-remove-2 (function).
vector-remove-at (function).
vector-remove-n-at (function).
vector-remove-to-maybe-string (function).
vector-set-binary-search (function).
vector-set-binary-search-hi (function).
vector-set-binary-search-lo (function).
vector-set-diff (function).
vector-set-diff-2 (function).
vector-set-disjoint? (function).
vector-set-intersect (function).
vector-set-subset? (function).
vector-set-union (function).
vector-subrange-element-type (function).
vector-subseq (function).
vector-subseq-maybe-string (function).
vector-subseq-maybe-string-insert (function).
vector-update (function).
vector-update-2 (function).
vector-update-from-string (function).
vector-update-maybe-to-string (function).
verify (generic function).
wb-2-relation-domain-set-org (function).
wb-2-relation-fn-compose (function).
wb-2-relation-get-inverse (function).
wb-2-relation-map0 (reader).
wb-2-relation-map1 (reader).
(setf wb-2-relation-map1) (writer).
wb-2-relation-org (reader).
wb-2-relation-range-set-org (function).
wb-2-relation-size (reader).
wb-2-relation-to-map-to-sets (function).
wb-2-relation-to-wb-map (function).
wb-assertion-db (structure).
wb-assertion-db-list-rels (reader).
wb-assertion-db? (function).
wb-bag-contents (reader).
wb-bag-from-list (function).
wb-bag-from-sequence (function).
wb-bag-from-set (function).
wb-bag-org (reader).
wb-bag-tree (type).
wb-bag-tree-arb-pair (function).
wb-bag-tree-build-node (function).
wb-bag-tree-compare (function).
wb-bag-tree-compare-rng (function).
wb-bag-tree-concat (function).
wb-bag-tree-diff (function).
wb-bag-tree-diff-rng (function).
wb-bag-tree-disjoint? (function).
wb-bag-tree-disjoint?-rng (function).
wb-bag-tree-find-equivalent (function).
wb-bag-tree-from-iterable (function).
wb-bag-tree-from-list (function).
wb-bag-tree-from-sorted-iterable (function).
wb-bag-tree-fun-iter (function).
wb-bag-tree-greatest-pair (function).
wb-bag-tree-intersect (function).
wb-bag-tree-intersect-rng (function).
wb-bag-tree-iterator-canonicalize (function).
wb-bag-tree-iterator-done? (function).
wb-bag-tree-iterator-get (function).
wb-bag-tree-join (function).
wb-bag-tree-least-pair (function).
wb-bag-tree-less (function).
wb-bag-tree-less-minimum (function).
wb-bag-tree-minimum-pair (function).
wb-bag-tree-multiplicity (function).
wb-bag-tree-node (structure).
wb-bag-tree-node-count (reader).
wb-bag-tree-node-left (reader).
wb-bag-tree-node-print (function).
wb-bag-tree-node-right (reader).
wb-bag-tree-node-size (reader).
wb-bag-tree-node-total-count (reader).
wb-bag-tree-node-value (reader).
wb-bag-tree-node? (function).
wb-bag-tree-pair-fun-iter (function).
wb-bag-tree-pair-iterator-canonicalize (function).
wb-bag-tree-pair-iterator-done? (function).
wb-bag-tree-pair-iterator-get (function).
wb-bag-tree-pair-rev-fun-iter (function).
wb-bag-tree-product (function).
wb-bag-tree-product-rng (function).
wb-bag-tree-rank (function).
wb-bag-tree-rank-pair (function).
wb-bag-tree-rank-pair-internal (function).
wb-bag-tree-rank-trim (function).
wb-bag-tree-rev-fun-iter (function).
wb-bag-tree-size (function).
wb-bag-tree-split (function).
wb-bag-tree-split-above (function).
wb-bag-tree-split-below (function).
wb-bag-tree-subbag? (function).
wb-bag-tree-subbag?-rng (function).
wb-bag-tree-sum (function).
wb-bag-tree-sum-rng (function).
wb-bag-tree-to-set-tree (function).
wb-bag-tree-total-count (function).
wb-bag-tree-trim (function).
wb-bag-tree-union (function).
wb-bag-tree-union-rng (function).
wb-bag-tree-vector-pair-sum (function).
wb-bag-tree-vector-pair-union (function).
wb-bag-tree-verify (function).
wb-bag-tree-verify-rng (function).
wb-bag-tree-with (function).
wb-bag? (function).
wb-custom-set-contents (function).
wb-custom-set-org (reader).
wb-custom-set? (function).
wb-default-set (structure).
wb-default-set-contents (function).
wb-default-set? (function).
wb-ht-seq (structure).
wb-ht-seq-contents (function).
wb-ht-seq-default (function).
wb-ht-seq-tree (structure).
wb-ht-seq-tree-append (function).
wb-ht-seq-tree-body (reader).
(setf wb-ht-seq-tree-body) (writer).
wb-ht-seq-tree-concat (function).
wb-ht-seq-tree-head (reader).
(setf wb-ht-seq-tree-head) (writer).
wb-ht-seq-tree-image (function).
wb-ht-seq-tree-insert (function).
wb-ht-seq-tree-print (function).
wb-ht-seq-tree-raw-size (reader).
wb-ht-seq-tree-remove (function).
wb-ht-seq-tree-reverse (function).
wb-ht-seq-tree-size (function).
wb-ht-seq-tree-subscript (function).
wb-ht-seq-tree-subseq (function).
wb-ht-seq-tree-tail (reader).
(setf wb-ht-seq-tree-tail) (writer).
wb-ht-seq-tree-with (function).
wb-ht-seq-tree? (function).
wb-list-relation-arity (function).
wb-list-relation-indices (reader).
(setf wb-list-relation-indices) (writer).
wb-list-relation-org (reader).
wb-list-relation-result-org (function).
wb-list-relation-tuples (reader).
wb-map-contents (reader).
wb-map-default (function).
wb-map-filter (function).
wb-map-fn-compose (function).
wb-map-from-sequence (function).
wb-map-from-tuple (function).
wb-map-image (function).
wb-map-org (reader).
wb-map-to-sets-to-wb-2-relation (function).
wb-map-to-wb-2-relation (function).
wb-map-tree (type).
wb-map-tree-arb-pair (function).
wb-map-tree-build-node (function).
wb-map-tree-compare (function).
wb-map-tree-compare-rng (function).
wb-map-tree-compose (function).
wb-map-tree-concat (function).
wb-map-tree-concat-maybe (function).
wb-map-tree-diff-2 (function).
wb-map-tree-diff-2-rng (function).
wb-map-tree-domain (function).
wb-map-tree-find-equivalent (function).
wb-map-tree-from-iterable (function).
wb-map-tree-from-list (function).
wb-map-tree-from-sorted-iterable (function).
wb-map-tree-fun-iter (function).
wb-map-tree-greatest-pair (function).
wb-map-tree-intersect (function).
wb-map-tree-intersect-rng (function).
wb-map-tree-iterator-canonicalize (function).
wb-map-tree-iterator-done? (function).
wb-map-tree-iterator-get (function).
wb-map-tree-join (function).
wb-map-tree-least-pair (function).
wb-map-tree-less (function).
wb-map-tree-less-minimum (function).
wb-map-tree-lookup (function).
wb-map-tree-minimum-pair (function).
wb-map-tree-node (structure).
wb-map-tree-node-key (reader).
wb-map-tree-node-left (reader).
wb-map-tree-node-print (function).
wb-map-tree-node-right (reader).
wb-map-tree-node-size (reader).
wb-map-tree-node-value (reader).
wb-map-tree-node? (function).
wb-map-tree-rank (function).
wb-map-tree-rank-pair (function).
wb-map-tree-rank-pair-internal (function).
wb-map-tree-rank-trim (function).
wb-map-tree-restrict (function).
wb-map-tree-restrict-not (function).
wb-map-tree-restrict-not-rng (function).
wb-map-tree-restrict-rng (function).
wb-map-tree-rev-fun-iter (function).
wb-map-tree-size (function).
wb-map-tree-split (function).
wb-map-tree-split-above (function).
wb-map-tree-split-below (function).
wb-map-tree-trim (function).
wb-map-tree-union (function).
wb-map-tree-union-rng (function).
wb-map-tree-update (function).
wb-map-tree-vector-pair-union (function).
wb-map-tree-verify (function).
wb-map-tree-verify-rng (function).
wb-map-tree-with (function).
wb-map? (function).
wb-replay-map-contents (reader).
wb-replay-map-default (function).
wb-replay-map-from-iterable (function).
wb-replay-map-ordering (function).
wb-replay-map-org (reader).
wb-replay-set-contents (reader).
wb-replay-set-ordering (function).
wb-replay-set-org (reader).
wb-seq-contents (reader).
wb-seq-default (function).
wb-seq-tree (type).
wb-seq-tree-append (function).
wb-seq-tree-build-node (function).
wb-seq-tree-canonicalize-down (function).
wb-seq-tree-canonicalize-down-unbalanced (function).
wb-seq-tree-canonicalize-up (function).
wb-seq-tree-compare (function).
wb-seq-tree-compare-lexicographically (function).
wb-seq-tree-compare-rng (function).
wb-seq-tree-concat (function).
wb-seq-tree-fill (function).
wb-seq-tree-first-leaf (function).
wb-seq-tree-from-iterable (function).
wb-seq-tree-from-list (function).
wb-seq-tree-from-list-reverse (function).
wb-seq-tree-from-vector (function).
wb-seq-tree-fun-iter (function).
wb-seq-tree-ht-threshold (constant).
wb-seq-tree-image (function).
wb-seq-tree-insert (function).
wb-seq-tree-iterator-canonicalize (function).
wb-seq-tree-iterator-done? (function).
wb-seq-tree-iterator-get (function).
wb-seq-tree-iterator-initialize (function).
wb-seq-tree-last-leaf (function).
wb-seq-tree-node (structure).
wb-seq-tree-node-left (reader).
wb-seq-tree-node-print (function).
wb-seq-tree-node-raw-size (reader).
wb-seq-tree-node-right (reader).
wb-seq-tree-node-size (function).
wb-seq-tree-node? (function).
wb-seq-tree-non-ht-threshold (constant).
wb-seq-tree-remove (function).
wb-seq-tree-remove-ht (function).
wb-seq-tree-rev-fun-iter (function).
wb-seq-tree-rev-iterator-canonicalize (function).
wb-seq-tree-rev-iterator-done? (function).
wb-seq-tree-rev-iterator-get (function).
wb-seq-tree-rev-iterator-initialize (function).
wb-seq-tree-reverse (function).
wb-seq-tree-size (function).
wb-seq-tree-subscript (function).
wb-seq-tree-subseq (function).
wb-seq-tree-to-list (function).
wb-seq-tree-to-string (function).
wb-seq-tree-to-vector (function).
wb-seq-tree-trim (function).
wb-seq-tree-verify (function).
wb-seq-tree-with (function).
wb-seq? (function).
wb-set-compare-fn (function).
wb-set-compare-fn-name (function).
wb-set-contents (reader).
wb-set-filter (function).
wb-set-from-list (function).
wb-set-from-sequence (function).
wb-set-image (function).
wb-set-org (function).
wb-set-partition (function).
wb-set-tree (type).
wb-set-tree-arb (function).
wb-set-tree-build-node (function).
wb-set-tree-compare (function).
wb-set-tree-compare-rng (function).
wb-set-tree-concat (function).
wb-set-tree-contains? (function).
wb-set-tree-diff (function).
wb-set-tree-diff-2 (function).
wb-set-tree-diff-2-rng (function).
wb-set-tree-diff-rng (function).
wb-set-tree-disjoint? (function).
wb-set-tree-disjoint?-rng (function).
wb-set-tree-find-equal (function).
wb-set-tree-find-equivalent (function).
wb-set-tree-from-iterable (function).
wb-set-tree-from-list (function).
wb-set-tree-from-sorted-iterable (function).
wb-set-tree-fun-iter (function).
wb-set-tree-greatest (function).
wb-set-tree-intersect (function).
wb-set-tree-intersect-rng (function).
wb-set-tree-iterator-canonicalize (function).
wb-set-tree-iterator-done? (function).
wb-set-tree-iterator-get (function).
wb-set-tree-join (function).
wb-set-tree-least (function).
wb-set-tree-less (function).
wb-set-tree-less-minimum (function).
wb-set-tree-minimum-value (function).
wb-set-tree-node (structure).
wb-set-tree-node-left (reader).
wb-set-tree-node-print (function).
wb-set-tree-node-right (reader).
wb-set-tree-node-size (reader).
wb-set-tree-node-value (reader).
wb-set-tree-node? (function).
wb-set-tree-rank (function).
wb-set-tree-rank-element (function).
wb-set-tree-rank-element-internal (function).
wb-set-tree-rank-trim (function).
wb-set-tree-rev-fun-iter (function).
wb-set-tree-size (function).
wb-set-tree-split (function).
wb-set-tree-split-above (function).
wb-set-tree-split-below (function).
wb-set-tree-subset? (function).
wb-set-tree-subset?-rng (function).
wb-set-tree-to-bag-tree (function).
wb-set-tree-trim (function).
wb-set-tree-union (function).
wb-set-tree-union-rng (function).
wb-set-tree-vector-union (function).
wb-set-tree-verify (function).
wb-set-tree-verify-rng (function).
wb-set-tree-with (function).
wb-set? (function).
wb-tree-balance-factor (constant).
wb-tree-max-depth (function).
wb-tree-max-string-length (constant).
wb-tree-max-vector-length (constant).
wb-tree-precomputed-max-depths (constant).
wb-tree-true-max-depth (function).
while (macro).
with-interval (generic function).
with-lock (macro).
write-memory-barrier (macro).
xconcat (function).
ximage (function).
xupdate (function).
fset2-usercommon-lisp.
fset2.
misc-extensions.gmap.
misc-extensions.lexical-contexts.
misc-extensions.new-let.
fset2com.ergy.fset2
com.sympoiesis.fset2
common-lisp.
fset.
misc-extensions.define-class.
misc-extensions.lexical-contexts.
misc-extensions.new-let.
misc-extensions.rev-fun-bind.
@ (macro).
(setf @) (setf expander).
ch-custom-map (macro).
ch-custom-replay-map (macro).
ch-map (macro).
ch-map (structure).
ch-replay-map (macro).
ch-replay-map (structure).
compose (generic function).
define-tuple-key (macro).
empty-ch-2-relation (function).
empty-ch-list-relation (function).
empty-ch-map (function).
empty-ch-replay-map (function).
empty-ch-replay-set (function).
empty-ch-set (function).
empty-list-relation (function).
empty-map (function).
empty-replay-map (function).
empty-seq (function).
empty-seq-error (condition).
empty-seq-error-seq (generic reader).
empty-set (function).
empty-wb-2-relation (function).
empty-wb-bag (function).
empty-wb-list-relation (function).
empty-wb-map (function).
empty-wb-replay-map (function).
empty-wb-replay-set (function).
empty-wb-seq (function).
empty-wb-set (function).
filter (generic function).
get-tuple-key (function).
image (generic function).
(setf lookup) (setf expander).
lookup (generic function).
lookup-error (condition).
map (macro).
map (structure).
map-difference-2 (generic function).
map-domain-error (condition).
map-domain-error-key (generic reader).
map-domain-error-map (generic reader).
map-intersection (generic function).
map-union (generic function).
partition (generic function).
rank (generic function).
replay-map (macro).
replay-map (structure).
seq (macro).
seq (structure).
seq-bounds-error (condition).
seq-bounds-error-index (generic reader).
seq-bounds-error-seq (generic reader).
set (macro).
set (structure).
tuple-key-unbound-error (condition).
tuple-key-unbound-error-key (generic reader).
tuple-key-unbound-error-tuple (generic reader).
wb-custom-map (macro).
wb-custom-replay-map (macro).
wb-map (macro).
wb-map (structure).
wb-replay-map (macro).
wb-replay-map (structure).
wb-seq (macro).
wb-seq (structure).
without-default (generic function).
+k5+ (symbol macro).
+k6+ (symbol macro).
internal-lookup (function).
test-fset2-gmap (function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
A copy of the standard readtable with FSet reader macros installed.
fset.
A copy of the standard readtable with the rereading FSet reader macros installed. This readtable can be used to read structure printed by the FSet print functions.
fset.
Constructs a 2-relation of the default implementation according to the supplied
argument subforms. Each argument subform can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a 2-relation, all of whose mappings will be
included in the result. Also, each of ’key-expr’ and ’value-expr’ can be of the
form ($ ‘expression’), in which case the expression must evaluate to a set, and
the elements of the set are used individually to form pairs; for example, the
result of
(2-relation (($ (set 1 2)) ($ (set ’a ’b))))
contains the pairs <1, a>, <1, b>, <2, a>, and <2, b>.
fset.
A little hack with two purposes: (1) to make it easy to make FSet maps behave like Lisp functions in certain contexts; and (2) to somewhat lessen the pain of writing higher-order code in a two-namespace Lisp like Common Lisp. The idea is that you can write ‘(@ fn arg)’, and if ‘fn’ is a Lisp function, it will be funcalled on the argument; otherwise ‘lookup’ (q.v.) will be called on ‘fn’ and ‘arg’. To allow for ‘@’ to be used in more contexts, it actually can take any number of ‘args’, though ‘lookup’ always takes exactly two. Thus you can write ‘(@ fn arg1 arg2 ...)’ when you just want a shorter name for ‘funcall’. As a matter of style, it is suggested that ‘@’ be used only for side-effect-free functions. Also, though this doc string has spoken only of FSet maps, ‘@’ can be used with any type that ‘lookup’ works on. Can be used with ‘setf’, but only on collections, not functions, of course.
fset.
A little hack with two purposes: (1) to make it easy to make FSet maps behave like Lisp functions in certain contexts; and (2) to somewhat lessen the pain of writing higher-order code in a two-namespace Lisp like Common Lisp. The idea is that you can write ‘(@ fn arg)’, and if ‘fn’ is a Lisp function, it will be funcalled on the argument; otherwise ‘lookup’ (q.v.) will be called on ‘fn’ and ‘arg’. To allow for ‘@’ to be used in more contexts, it actually can take any number of ‘args’, though ‘lookup’ always takes exactly two. Thus you can write ‘(@ fn arg1 arg2 ...)’ when you just want a shorter name for ‘funcall’. As a matter of style, it is suggested that ‘@’ be used only for side-effect-free functions. Also, though this doc string has spoken only of FSet maps, ‘@’ can be used with any type that ‘lookup’ works on. Can be used with ‘setf’, but only on collections, not functions, of course.
(adjoinf coll . args) –> (setf coll (with coll . args))
fset.
Constructs a bag of the default implementation according to the supplied
argument subforms. Each argument subform can be an expression, whose value
will be added to the bag with multiplicity 1; or a list of the form
($ ‘expression’), in which case the expression must evaluate to a bag (or a
set), which is bag-summed into the result; or a list of the form
(% ‘expression1’ ‘expression2’) (called a "multi-arg"), which indicates that
the value of ‘expression1’ is bag-summed into the result with multiplicity
given by the value of ‘expression2’. That is, the multiplicity of each member
of the result bag is the sum of its multiplicities as supplied by each of the
argument subforms.
fset.
Constructs a ch-2-relation according to the supplied argument subforms.
Each argument subform can be a list of the form (‘key-expr’ ‘value-expr’),
denoting a mapping from the value of ‘key-expr’ to the value of ‘value-expr’;
or a list of the form ($ ‘expression’), in which case the expression must
evaluate to a 2-relation, all of whose mappings will be included in the
result. Also, each of ’key-expr’ and ’value-expr’ can be of the
form ($ ‘expression’), in which case the expression must evaluate to a set, and
the elements of the set are used individually to form pairs; for example, the
result of
(ch-2-relation (($ (set 1 2)) ($ (set ’a ’b))))
contains the pairs <1, a>, <1, b>, <2, a>, and <2, b>.
fset.
Constructs a ch-2-relation with a custom ordering, according to the supplied
argument subforms. Each argument subform can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a 2-relation, all of whose mappings will be included
in the result. Also, each of ’key-expr’ and ’value-expr’ can be of the form
($ ‘expression’), in which case the expression must evaluate to a set, and
the elements of the set are used individually to form pairs; for example, the
result of
(ch-custom-2-relation ’key-cmp ’val-cmp (($ (set 1 2)) ($ (set ’a ’b))))
contains the pairs <1, a>, <1, b>, <2, a>, and <2, b>.
fset.
Constructs a ch-map with a custom ordering, according to the supplied argument subforms. ‘key-compare-fn-name’ and ‘val-compare-fn-name’ must be symbols naming the comparison functions to be used for keys and values respectively. (The value comparison is used for detecting redundant ‘with’ operations, and a few other things, such as ‘range’ and ‘map-difference-2’.) Each of ‘args’ can be a list of the form (‘key-expr’ ‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a map, denoting all its mappings; or the symbol ‘:default’, in which case the next argument subform is a form whose value will become the map’s default. As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a ch-map with a custom ordering, according to the supplied
argument subforms. ‘key-compare-fn-name’ and ‘val-compare-fn-name’ must be
symbols naming the comparison functions to be used for keys and values
respectively. (The value comparison is used for detecting redundant ‘with’
operations, and a few other things, such as ‘range’ and ‘map-difference-2’.)
Each of ‘args’ can be a list of the form (‘key-expr’ ‘value-expr’), denoting
a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list
of the form ($ ‘expression’), in which case the expression must evaluate to a
map, denoting all its mappings; or the symbol ‘:default’ followed by a form;
or the symbol ‘:no-default’. If ‘:default’ is supplied, the map’s default is
the value of the subsequent form; if ‘:no-default’ is supplied, the map has no
default; if neither, the map’s default is ‘nil’.
As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
Constructs a ch-replay-map with a custom ordering, according to the supplied
argument subforms. Each of ‘args’ can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a map, denoting all its mappings; or the symbol
‘:default’ followed by a form; or the symbol ‘:no-default’. If ‘:default’ is
supplied, the map’s default is the value of the subsequent form; if
‘:no-default’ is supplied, the map has no default; if neither, the map’s
default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a ch-replay-map with a custom ordering, according to the supplied
argument subforms. Each of ‘args’ can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a map, denoting all its mappings; or the symbol
‘:default’ followed by a form; or the symbol ‘:no-default’. If ‘:default’ is
supplied, the map’s default is the value of the subsequent form; if
‘:no-default’ is supplied, the map has no default; if neither, the map’s
default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
Constructs a ch-replay-set with a custom ordering, according to the supplied argument subforms. ‘compare-fn-name’ must be a symbol naming the desired comparison function. Each of ‘args’ can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
Constructs a ch-set of a custom type, according to the supplied argument subforms. ‘compare-fn-name’ must be a symbol naming the desired comparison function; a hash function must have been defined for it using ‘define-hash-function’. Each of ‘args’ can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
Constructs a ch-map according to the supplied argument subforms. Each argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a map, denoting all its mappings; or the symbol ‘:default’, in which case the next argument subform is a form whose value will become the map’s default. As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a ch-map according to the supplied argument subforms. Each
argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting
a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list
of the form ($ ‘expression’), in which case the expression must evaluate to a
map, denoting all its mappings; or the symbol ‘:default’ followed by a form;
or the symbol ‘:no-default’. If ‘:default’ is supplied, the map’s default is
the value of the subsequent form; if ‘:no-default’ is supplied, the map has no
default; if neither, the map’s default is ‘nil’.
As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
Constructs a ch-replay-map according to the supplied argument subforms. Each
argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting
a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list
of the form ($ ‘expression’), in which case the expression must evaluate to a
map, denoting all its mappings; or the symbol ‘:default’ followed by a form; or
the symbol ‘:no-default’. If ‘:default’ is supplied, the map’s default is the
value of the subsequent form; if ‘:no-default’ is supplied, the map has no
default; if neither, the map’s default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a ch-replay-map according to the supplied argument subforms. Each
argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting
a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list
of the form ($ ‘expression’), in which case the expression must evaluate to a
map, denoting all its mappings; or the symbol ‘:default’ followed by a form; or
the symbol ‘:no-default’. If ‘:default’ is supplied, the map’s default is the
value of the subsequent form; if ‘:no-default’ is supplied, the map has no
default; if neither, the map’s default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
Constructs a ch-replay-set according to the supplied argument subforms. Each argument subform can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
Constructs a ch-set according to the supplied argument subforms. Each argument subform can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
A handy macro for writing the bodies of ‘compare’ methods for user classes.
Returns the result of comparing the two objects by comparing the results of
calling each of ‘accessors’, in order, on the objects. Despite the name, an
accessor can actually be any function on the class in question; it can also
be a symbol, which will be used to access the slot via ‘slot-value’. For
example, if class ‘frob’ has accessor ‘frob-foo’ and slot ‘bar’:
(defmethod compare ((f1 frob) (f2 frob))
(compare-slots f1 f2 #’frob-foo ’bar))
If the symbol ‘:eql’ is supplied as the last accessor, then if the comparisons by the other supplied accessors all return ‘:equal’ but ‘obj1’ and ‘obj2’ are not eql, this returns ‘:unequal’.
fset.
A handy macro for writing the bodies of ‘compare’ methods for user classes,
in the case when you know the comparison will never need to return ‘:unequal’
(a case handled correctly by ‘compare-slots’, but with a slight time cost).
Returns the result of comparing the two objects by comparing the results of
calling each of ‘accessors’, in order, on the objects, using a nested call to
‘compare’. Despite the name, an accessor can actually be any function on the
class in question; it can also be a symbol, which will be used to access the
slot via ‘slot-value’. For example, if class ‘frob’ has accessor ‘frob-foo’ and
slot ‘bar’:
(defmethod compare ((f1 frob) (f2 frob))
(compare-slots-no-unequal f1 f2 #’frob-foo ’bar))
Additionally, an accessor can be a list of the form ‘(:compare acc less-fn)’, in
which ‘acc‘ is an accessor as defined above, and ‘less-fn’ is a function to be
used to compare the two values, returning true iff the first is less than the
second. This feature allows you to avoid the nested call to ‘compare’. For
example, if your objects have an ‘id’ slot that holds a unique integer:
(defmethod compare ((f1 frob) (f2 frob))
(compare-slots-no-unequal f1 f2 (:compare ’id #’<))
fset.
Deprecated; use ‘define-tuple-key’.
fset.
Old name of ‘define-equality-slots’. Deprecated.
fset.
Generates cross-type comparison methods for ‘type’ against the types on which the macro has previously been invoked. This macro is intended to be invoked at the top level of a source file. You should make sure that calls to this macro are always compiled in the same order; if you don’t, you could possibly get a "master type ordering out of sync" error, at which point you should delete all your fasls, restart your Lisp session, and recompile. However, the implementation tries very hard to prevent this.
fset.
A handy macro for specifying which slots of the class determine whether
instances are equal. Generates methods on ‘compare’ and ‘hash-value’.
These methods call each of ‘slots/accessors’ on the object(s); the results
are compared or hashed, recursively. Comparison uses the slots or accessors
in the order provided.
For best performance (at least on SBCL), it is recommended to supply slot
names as symbols for standard classes – these will turn into ‘slot-value’
forms – but accessor names as functions for structure classes. Arbitrary
functions on the class may also be supplied.
If the symbol ‘:eql’ is supplied as the last accessor, then if the comparisons
by the other supplied accessors all return ‘:equal’ but ‘obj1’ and ‘obj2’ are
not eql, the generated ‘compare’ method returns ‘:unequal’.
Examples:
(defstruct point x y)
(define-equality-slots point #’x #’y)
(defclass part () ((part-number ...) ...))
(define-equality-slots part ’part-number)
If you’re using ‘define-class’ from Misc-Extensions, you can just say:
(define-class part ((part-number :equality ...) ...))
fset.
Specifies the hash function that hash-based collections are to use for a given comparison function.
fset.
Defines a tuple key named ‘name’ as a global lexical variable (see ‘deflex’). If ‘default’ is supplied and nonnull, it will be returned from ‘lookup’ when the tuple has no explicit pair with this key. EXCEPTION: for backward compatibility, if ‘default’ is a function, then instead of being returned itself, it will be called on the tuple to get the value returned. So, if you want the default value to be a function, you have to wrap it in an extra lambda. To supply a doc string without a default, supply ‘nil’ for ‘default’.
fset.
Defines a tuple key named ‘name’ as a global lexical variable (see ‘deflex’). If ‘default’ is supplied, it will be returned from ‘lookup’, instead of ‘nil’, when the tuple has no explicit pair with this key. Alternatively, if ‘no-default?’ is true, ‘lookup‘ will signal an error in that case.
Enumerates all pairs of the relation ‘br’, binding them successively to ‘key’ and ‘val’ and executing ‘body’.
fset.
For each member of ‘bag’, binds ‘value-var’ to it and and executes ‘body’ a number of times equal to the member’s multiplicity. When done, returns ‘value’.
fset.
For each member of ‘bag’, binds ‘value-var’ and ‘mult-var’ to the member and its multiplicity respectively, and executes ‘body’. When done, returns ‘value’.
fset.
For each pair of ‘map’, binds ‘key-var’ and ‘value-var’ and executes ‘body’. When done, returns ‘value’.
fset.
For each pair of ‘map’, binds ‘key-var’ and executes ‘body’. When done, returns ‘value’.
fset.
For each element of ‘seq’, possibly restricted by ‘start’ and ‘end’, and in reverse order if ‘from-end?’ is true, binds ‘var’ to it and executes ‘body’. If ‘index’ is supplied, it names a variable that will be bound at each iteration to the index of the current element of ‘seq’. When done, returns ‘value’.
fset.
For each member of ‘set’, binds ‘var’ to it and executes ‘body’. When done, returns ‘value’.
fset.
For each pair of ‘tuple’, binds ‘key-var’ and ‘value-var’ and executes ‘body’. When done, returns ‘value’.
fset.
Constructs a dyn-tuple according to the supplied argument subforms. Each argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a tuple, denoting all its mappings. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
(excludef coll . args) –> (setf coll (less coll . args))
fset.
Returns the "mix" of the values, where "mix" is a commutative and associative operation with an inverse. All values MUST be fixnums; the result is a fixnum.
Returns the product of ‘ha’ and ‘hb’ modulo 2^fixnum_length. Both MUST be fixnums; the result is a fixnum.
A handy macro for writing the bodies of ‘hash-value’ methods for user classes.
Computes a hash value by combining the hash values of the specified slots
and/or accessors applied to the object. For standard classes, best performance
is gotten by supplying the slot names as (quoted) symbols; for structure
classes, it is best to supply accessor functions. (Actually, any function on
the object can be used.) For example:
(defstruct point x y)
(defmethod hash-value ((p point))
(hash-slots p #’x #’y))
(defclass part () ((part-number ...) ...))
(defmethod hash-value ((p part))
(hash-slots part ’part-number))
In most cases, it is better to use ‘define-equality-slots’ instead of calling this macro directly, to keep the ‘hash-value’ and ‘compare’ methods consistent.
fset.
(includef coll . args) –> (setf coll (with coll . args))
fset.
Constructs a map of the default implementation according to the supplied argument subforms. Each argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a map, denoting all its mappings; or the symbol ‘:default’, in which case the next argument subform is a form whose value will become the map’s default. As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a map of the default implementation according to the supplied
argument subforms. Each argument subform can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a map, denoting all its mappings; or the symbol
‘:default’ followed by a form; or the symbol ‘:no-default’. If ‘:default’ is
supplied, the map’s default is the value of the subsequent form; if
‘:no-default’ is supplied, the map has no default; if neither, the map’s
default is ‘nil’.
As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
(push-first seq val) –> (setf seq (with-first seq val))
fset.
(push-last seq val) –> (setf seq (with-last seq val))
fset.
(removef coll . args) –> (setf coll (less coll . args))
fset.
Constructs a replay-map of the default implementation according to the supplied
argument subforms. Each argument subform can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a map, denoting all its mappings; or the symbol
‘:default’ followed by a form; or the symbol ‘:no-default’. If ‘:default’ is
supplied, the map’s default is the value of the subsequent form; if
‘:no-default’ is supplied, the map has no default; if neither, the map’s
default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a replay-map of the default implementation according to the supplied
argument subforms. Each argument subform can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a map, denoting all its mappings; or the symbol
‘:default’ followed by a form; or the symbol ‘:no-default’. If ‘:default’ is
supplied, the map’s default is the value of the subsequent form; if
‘:no-default’ is supplied, the map has no default; if neither, the map’s
default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
Constructs a replay-set of the default implementation according to the supplied argument subforms. Each argument subform can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
Constructs a seq of the default implementation according to the supplied argument subforms. Each argument subform can be an expression whose value is to appear in the sequence; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a sequence, all of whose values appear in the result sequence. The order of the result sequence reflects the order of the argument subforms. The result has a default of ‘nil’.
fset.
Constructs a seq of the default implementation according to the supplied
argument subforms. Each argument subform can be an expression whose value is
to appear in the sequence; or a list of the form ($ ‘expression’), in which
case the expression must evaluate to a sequence, all of whose values appear in
the result sequence. The order of the result sequence reflects the order of
the argument subforms. If one of the arguments is ‘:default’, the seq’s default
is the value of the subsequent form; if one is ‘:no-default’, the seq has no
default; if neither, the seq’s default is ‘nil’. To include ‘:default’ or
‘:no-default’ as an ordinary element, quote it. Examples:
> (seq 3 17)
#[ 3 17 ]/NIL
> (seq 3 17 :default 0)
#[ 3 17 ]/0
> (seq 3 17 :no-default)
#[ 3 17 ]
> (seq 3 17 ’:default)
#[ 3 17 :DEFAULT ]/NIL
Constructs a set of the default implementation according to the supplied argument subforms. Each argument subform can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
Constructs a set of the default implementation according to the supplied argument subforms. Each argument subform can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
Constructs a tuple of the default implementation according to the supplied argument subforms. Each argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a tuple, denoting all its mappings. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a wb-2-relation according to the supplied argument subforms.
Each argument subform can be a list of the form (‘key-expr’ ‘value-expr’),
denoting a mapping from the value of ‘key-expr’ to the value of ‘value-expr’;
or a list of the form ($ ‘expression’), in which case the expression must
evaluate to a 2-relation, all of whose mappings will be included in the
result. Also, each of ’key-expr’ and ’value-expr’ can be of the
form ($ ‘expression’), in which case the expression must evaluate to a set, and
the elements of the set are used individually to form pairs; for example, the
result of
(wb-2-relation (($ (set 1 2)) ($ (set ’a ’b))))
contains the pairs <1, a>, <1, b>, <2, a>, and <2, b>.
fset.
Constructs a wb-bag according to the supplied argument subforms. Each argument subform can be an expression, whose value will be added to the bag with multiplicity 1; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a bag (or a set), which is bag-summed into the result; or a list of the form (% ‘expression1’ ‘expression2’) (called a "multi-arg"), which indicates that the value of ‘expression1’ is bag-summed into the result with multiplicity given by the value of ‘expression2’. That is, the multiplicity of each member of the result bag is the sum of its multiplicities as supplied by each of the argument subforms.
fset.
Constructs a wb-2-relation with a custom ordering, according to the supplied
argument subforms. Each argument subform can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a 2-relation, all of whose mappings will be included
in the result. Also, each of ’key-expr’ and ’value-expr’ can be of the form
($ ‘expression’), in which case the expression must evaluate to a set, and
the elements of the set are used individually to form pairs; for example, the
result of
(wb-custom-2-relation ’key-cmp ’val-cmp (($ (set 1 2)) ($ (set ’a ’b))))
contains the pairs <1, a>, <1, b>, <2, a>, and <2, b>.
fset.
Constructs a wb-bag with a custom ordering, according to the supplied
argument subforms. ‘compare-fn-name’ must be a symbol naming the desired
comparison function. Each argument subform can be an expression, whose value
will be added to the bag with multiplicity 1; or a list of the form
($ ‘expression’), in which case the expression must evaluate to a bag (or a
set), which is bag-summed into the result; or a list of the form
(% ‘expression1’ ‘expression2’) (called a "multi-arg"), which indicates
that the value of ‘expression1’ is bag-summed into the result with multiplicity
given by the value of ‘expression2’. That is, the multiplicity of each member
of the result bag is the sum of its multiplicities as supplied by each of the
argument subforms.
fset.
Constructs a wb-map with a custom ordering, according to the supplied argument subforms. ‘key-compare-fn-name’ and ‘val-compare-fn-name’ must be symbols naming the comparison functions to be used for keys and values respectively. (The value comparison is used for detecting redundant ‘with’ operations, and a few other things, such as ‘range’ and ‘map-difference-2’.) Each of ‘args’ can be a list of the form (‘key-expr’ ‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a map, denoting all its mappings; or the symbol ‘:default’, in which case the next argument subform is a form whose value will become the map’s default. As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a wb-map with a custom ordering, according to the supplied
argument subforms. ‘key-compare-fn-name’ and ‘val-compare-fn-name’ must be
symbols naming the comparison functions to be used for keys and values
respectively. (The value comparison is used for detecting redundant ‘with’
operations, and a few other things, such as ‘range’ and ‘map-difference-2’.)
Each of ‘args’ can be a list of the form (‘key-expr’ ‘value-expr’), denoting
a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list
of the form ($ ‘expression’), in which case the expression must evaluate to a
map, denoting all its mappings; or the symbol ‘:default’ followed by a form;
or the symbol ‘:no-default’. If ‘:default’ is supplied, the map’s default is
the value of the subsequent form; if ‘:no-default’ is supplied, the map has no
default; if neither, the map’s default is ‘nil’.
As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
Constructs a wb-replay-map with a custom ordering, according to the supplied
argument subforms. Each of ‘args’ can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a map, denoting all its mappings; or the symbol
‘:default’ followed by a form; or the symbol ‘:no-default’. If ‘:default’ is
supplied, the map’s default is the value of the subsequent form; if
‘:no-default’ is supplied, the map has no default; if neither, the map’s
default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a wb-replay-map with a custom ordering, according to the supplied
argument subforms. Each of ‘args’ can be a list of the form (‘key-expr’
‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of
‘value-expr’; or a list of the form ($ ‘expression’), in which case the
expression must evaluate to a map, denoting all its mappings; or the symbol
‘:default’ followed by a form; or the symbol ‘:no-default’. If ‘:default’ is
supplied, the map’s default is the value of the subsequent form; if
‘:no-default’ is supplied, the map has no default; if neither, the map’s
default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
Constructs a wb-replay-set with a custom ordering, according to the supplied argument subforms. ‘compare-fn-name’ must be a symbol naming the desired comparison function. Each of ‘args’ can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
Constructs a wb-set with a custom ordering, according to the supplied argument subforms. ‘compare-fn-name’ must be a symbol naming the desired comparison function. Each of ‘args’ can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
Constructs a wb-map according to the supplied argument subforms. Each argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a map, denoting all its mappings; or the symbol ‘:default’, in which case the next argument subform is a form whose value will become the map’s default. As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a wb-map according to the supplied argument subforms. Each
argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting
a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list
of the form ($ ‘expression’), in which case the expression must evaluate to a
map, denoting all its mappings; or the symbol ‘:default’ followed by a form;
or the symbol ‘:no-default’. If ‘:default’ is supplied, the map’s default is
the value of the subsequent form; if ‘:no-default’ is supplied, the map has no
default; if neither, the map’s default is ‘nil’.
As a convenience, if a subform is ($ ‘expression’) and the expression evaluates to ‘nil’, it will be treated as an empty map. The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
Constructs a wb-replay-map according to the supplied argument subforms. Each
argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting
a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list
of the form ($ ‘expression’), in which case the expression must evaluate to a
map, denoting all its mappings; or the symbol ‘:default’ followed by a form; or
the symbol ‘:no-default’. If ‘:default’ is supplied, the map’s default is the
value of the subsequent form; if ‘:no-default’ is supplied, the map has no
default; if neither, the map’s default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
fset.
Constructs a wb-replay-map according to the supplied argument subforms. Each
argument subform can be a list of the form (‘key-expr’ ‘value-expr’), denoting
a mapping from the value of ‘key-expr’ to the value of ‘value-expr’; or a list
of the form ($ ‘expression’), in which case the expression must evaluate to a
map, denoting all its mappings; or the symbol ‘:default’ followed by a form; or
the symbol ‘:no-default’. If ‘:default’ is supplied, the map’s default is the
value of the subsequent form; if ‘:no-default’ is supplied, the map has no
default; if neither, the map’s default is ‘nil’.
The result is constructed from the denoted mappings in left-to-right order; so if a given key is supplied by more than one argument subform, its associated value will be given by the rightmost such subform.
Constructs a wb-replay-set according to the supplied argument subforms. Each argument subform can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
Constructs a wb-seq according to the supplied argument subforms. Each argument subform can be an expression whose value is to appear in the sequence; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a sequence, all of whose values appear in the result sequence. The order of the result sequence reflects the order of the argument subforms. The result has a default of ‘nil’.
fset.
Constructs a wb-seq according to the supplied argument subforms. Each
argument subform can be an expression whose value is to appear in the sequence;
or a list of the form ($ ‘expression’), in which case the expression must
evaluate to a sequence, all of whose values appear in the result sequence. The
order of the result sequence reflects the order of the argument subforms.
If one of the arguments is ‘:default’, the seq’s default is the value of the
subsequent form; if one is ‘:no-default’, the seq has no default; if neither,
the seq’s default is ‘nil’. To include ‘:default’ or ‘:no-default’ as an
ordinary element, quote it. Examples:
> (seq 3 17)
#[ 3 17 ]/NIL
> (seq 3 17 :default 0)
#[ 3 17 ]/0
> (seq 3 17 :no-default)
#[ 3 17 ]
> (seq 3 17 ’:default)
#[ 3 17 :DEFAULT ]/NIL
Constructs a wb-set according to the supplied argument subforms. Each argument subform can be an expression, whose value will be a member of the result set; or a list of the form ($ ‘expression’), in which case the expression must evaluate to a set, all of whose members become members of the result set.
fset.
Adds a pair to a map or updates an existing pair, or adds an element to a sequence or updates an existing element. This does NOT modify the map or sequence; it modifies the place (generalized variable) HOLDING the map or sequence (just like ‘(setf (ldb ...) ...)’). That is, the ‘collection’ subform must be ‘setf’able itself.
Adds a pair to a map or updates an existing pair, or adds an element to a sequence or updates an existing element. This does NOT modify the map or sequence; it modifies the place (generalized variable) HOLDING the map or sequence (just like ‘(setf (ldb ...) ...)’). That is, the ‘collection’ subform must be ‘setf’able itself.
@ (macro).
Adds a pair to a map or updates an existing pair, or adds an element to a sequence or updates an existing element. This does NOT modify the map or sequence; it modifies the place (generalized variable) HOLDING the map or sequence (just like ‘(setf (ldb ...) ...)’). That is, the ‘collection’ subform must be ‘setf’able itself.
Adds a pair to a map or updates an existing pair, or adds an element to a sequence or updates an existing element. This does NOT modify the map or sequence; it modifies the place (generalized variable) HOLDING the map or sequence (just like ‘(setf (ldb ...) ...)’). That is, the ‘collection’ subform must be ‘setf’able itself.
lookup (generic function).
Returns an empty bag of the default implementation and type.
In this case, "keys" are the left values, and "values" are the right values.
fset.
In this case, "keys" are the left values, and "values" are the right values.
We allow the arity to be temporarily unspecified; it will be taken from the first tuple added. If ‘compare-fn-name’ is provided, the function must be able to compare both tuples (lists) and their elements.
fset.
We allow the arity to be temporarily unspecified; it will be taken from the first tuple added. If ‘compare-fn-name’ is provided, the function must be able to compare both tuples (lists) and their elements.
Returns an empty ch-map with the specified default and comparison functions. The map’s default is ‘nil’ unless a different default is supplied, or ‘no-default?’ is true.
fset.
Returns an empty ch-replay-map with the specified default and comparison functions. The map’s default is ‘nil’ unless a different default is supplied, or ‘no-default?’ is true.
Returns an empty ch-set. By default, it will use ‘fset:compare’ to compare values, and ‘fset:hash-value’ to hash them; to use a custom comparison and hash, use ‘define-hash-function’ to associate them, and then supply the name of the comparison function as ‘compare-fn-name’.
Returns an empty ch-set. By default, it will use ‘fset:compare’ to compare values, and ‘fset:hash-value’ to hash them; to use a custom comparison and hash, use ‘define-hash-function’ to associate them, and then supply the name of the comparison function as ‘compare-fn-name’.
We allow the arity to be temporarily unspecified; it will be taken from the first tuple added.
fset.
We allow the arity to be temporarily unspecified; it will be taken from the first tuple added.
Returns an empty map of the default implementation.
Returns an empty map of the default implementation, with the specified default or lack of default.
Returns an empty replay set of the default implementation.
fset.
Returns an empty seq of the default implementation.
Returns an empty seq of the default implementation. The seq’s default is ‘nil’ unless a different default is supplied, or ‘no-default?’ is true.
Returns an empty set of the default implementation.
Returns an empty set of the default implementation.
Returns an empty tuple of the default implementation.
fset.
In this case, "keys" are the left values, and "values" are the right values.
fset.
In this case, "keys" are the left values, and "values" are the right values.
Returns an empty ‘wb-bag’ ordered according to ‘compare-fn-name’, which must be a symbol.
Returns an empty ‘wb-bag’ ordered according to ‘compare-fn-name’, which must be a symbol.
We allow the arity to be temporarily unspecified; it will be taken from the first tuple added. If ‘compare-fn-name’ is provided, the function must be able to compare both tuples (lists) and their elements.
fset.
We allow the arity to be temporarily unspecified; it will be taken from the first tuple added. If ‘compare-fn-name’ is provided, the function must be able to compare both tuples (lists) and their elements.
Returns an empty wb-map with the specified default and comparison functions.
Returns an empty wb-map with the specified default and comparison functions. The map’s default is ‘nil’ unless a different default is supplied, or ‘no-default?’ is true.
fset.
Returns an empty wb-replay-map with the specified default and comparison functions. The map’s default is ‘nil’ unless a different default is supplied, or ‘no-default?’ is true.
Returns an empty wb-seq.
Returns an empty wb-seq.
Returns an empty wb-set. By default, it will be ordered by ‘fset:compare’; to use a custom ordering, supply the comparison function name (a symbol) as ‘compare-fn-name’.
Returns an empty wb-set. By default, it will be ordered by ‘fset:compare’; to use a custom ordering, supply the comparison function name (a symbol) as ‘compare-fn-name’.
This simple comparison function returns ‘:equal’ if the arguments are ‘eql’, otherwise ‘:unequal’. It might occasionally be useful as a value comparator for custom maps, when ordering is not important.
fset.
FSet generic version of ‘cl:every’.
Adds FSet reader macros to ‘readtable’. Returns ‘readtable’.
fset.
Adds the FSet rereading reader macros to ‘readtable’. These reader macros will correctly read structure printed by the FSet print functions. Returns ‘readtable’.
fset.
The set containing everything. It is a complement set, so it cannot be enumerated, but certain other operations are defined on it.
fset.
Finds or creates a tuple key named ‘name’. If ‘default’ is supplied and nonnull, it will be returned from ‘lookup’ when the tuple has no explicit pair with this key. EXCEPTION: for backward compatibility, if ‘default’ is a function, then instead of being returned itself, it will be called on the tuple to get the value returned. So, if you want the default value to be a function, you have to wrap it in an extra lambda.
fset.
Finds or creates a tuple key named ‘name’. If ‘default’ is supplied, sets the key’s default to it; this value will be returned from ‘lookup’ when the tuple has no explicit pair with this key. If ‘no-default?’ is true, clears the key’s default, so that ‘lookup’ will signal an error in this case. If neither is specified, then if the key is being freshly created, it will have a default of ‘nil’; if it already existed, its default will be unchanged.
Returns the ‘hash-value’ of ‘x’, ensuring that the result is a fixnum.
Another name for the ‘car’ operation on lists.
Returns the last cons of ‘list’. This is a renaming of the CL function ‘last’.
Returns true iff ‘x’ is a member of the set or bag. Stylistically, ‘contains?’ is preferred over ‘member?’.
Returns true iff the collection is not empty.
FSet generic version of ‘cl:notany’.
FSet generic version of ‘cl:notevery’.
Returns true iff ‘sub’ is a proper subbag of ‘super’, that is, for every member of ‘sub’, ‘super’ contains the same value with at least the same multiplicity, but the two bags are not equal.
Returns true iff ‘sub’ is a proper subset of ‘super’, that is, ‘sub’ is a subset of ‘super’ and the two are not equal.
FSet generic version of ‘cl:some’.
Another name for the ‘cdr’ operation on lists.
Returns a new version of ‘coll’ in which the element reached by doing chained
‘lookup’s on ‘keys’ is updated by ‘fn’. An example will help a lot here:
instead of writing
(incf (@ (@ (@ foo ’a) 3) 7))
you can write, equivalently
(setq foo (update #’1+ foo ’a 3 7))
This is perhaps most useful in contexts where you don’t want to do the ‘setq’ anyway. ‘fn’ can be a function object, an fbound symbol, or a map.
fset.
query-registry)) ¶Returns an arbitrary member or pair of a set, bag, or map. Specifically, on a nonempty set, returns two values, an arbitrary member of the set and true; on a nonempty bag, returns an arbitrary member, its multiplicity, and true; on a nonempty map, returns an arbitrary domain member, its associated value, and true. On an empty set, bag, or map, returns false for all values. Please note that "arbitrary" does not mean "randomly selected"; it simply means that the sole postcondition is that the returned value or pair is a member of the collection.
fset.
bounded-set)) ¶complement-set)) ¶ch-list-relation)) ¶wb-list-relation)) ¶ch-2-relation)) ¶wb-2-relation)) ¶ch-replay-map)) ¶wb-replay-map)) ¶ch-replay-set)) ¶wb-replay-set)) ¶wb-custom-set)) ¶wb-default-set)) ¶Returns the arity of the relation ‘rel’.
fset.
list-relation)) ¶Will return ‘nil’ if the arity is not yet specified; see ‘empty-list-relation’.
2-relation)) ¶Returns the element/pair whose index in the iteration order is ‘index’.
fset.
ch-replay-map) index) ¶wb-replay-map) index) ¶ch-replay-set) index) ¶wb-replay-set) index) ¶Defined on tree (WB) collections only. See ‘at-index’.
On a set, returns the element with rank ‘rank’; on a bag, returns
that element with its multiplicity as a second value; on a map, returns
the pair with that rank as two values. Note that if there are values/keys
that are unequal but equivalent in the collection, an arbitrary order will be
imposed on them for this purpose; but another collection that is ‘equal?’
but not ‘eq’ to this one will in general order them differently.
Also, if the collection is hash-based (‘ch-set’ etc.), the ordering will be based on the hash values, so it won’t be predictable or usable for any other purpose, though it will be deterministic.
fset.
wb-list-relation) rank) ¶wb-bag) rank) ¶Takes the rank in the set ordering, i.e. the upper bound is the ‘set-size’.
wb-custom-set) rank) ¶wb-default-set) rank) ¶Returns a bag whose multiplicity, for any value, is its multiplicity
in ‘bag1’ less that in ‘bag2’, but of course not less than zero.
If the collections are of different implementations or use different custom compare or hash functions, the returned collection will be like the first argument.
fset.
Returns a bag whose multiplicity, for any value, is the product of
its multiplicities in the two argument bags.
If the collections are of different implementations or use different custom compare or hash functions, the returned collection will be like the first argument.
fset.
Returns a bag whose multiplicity, for any value, is the sum of its
multiplicities in the two argument bags.
If the collections are of different implementations or use different custom compare or hash functions, the returned collection will be like the first argument.
fset.
Returns true iff ‘seq’ contains only characters.
Returns one of ‘:less’, ‘:greater’, ‘:equal’, or ‘:unequal’ according as ‘x’ is less than, greater than, or equal to ‘y’, or none of these. While the ordering does not have to be total, it must be consistent: for two values A and B that compare ‘:unequal’ to each other, for any third value C, if A compares ‘:less’ or ‘:greater’ to C, then B must compare to C the same way; and no more than one of A and B can compare ‘:equal’ to C.
fset.
my-integer) (y my-integer)) ¶set) (bs bounded-set)) ¶bounded-set) (s set)) ¶bounded-set) (bs2 bounded-set)) ¶set) (cs complement-set)) ¶complement-set) (s set)) ¶complement-set) (cs2 complement-set)) ¶ch-2-relation) (b ch-2-relation)) ¶wb-2-relation) (b wb-2-relation)) ¶relation) (b identity-equality-mixin)) ¶identity-equality-mixin) (b relation)) ¶relation) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b relation)) ¶tuple-desc) (y tuple-desc)) ¶ch-replay-map) (map2 ch-replay-map)) ¶wb-replay-map) (map2 wb-replay-map)) ¶ch-replay-set) (set2 ch-replay-set)) ¶wb-replay-set) (set2 wb-replay-set)) ¶wb-custom-set) (s2 wb-custom-set)) ¶wb-default-set) (s2 wb-default-set)) ¶equivalent-node) (eqvn2 equivalent-node)) ¶Returns ‘:less’ or ‘:greater’ if the values in ‘eqvs1’ are less than resp. greater than those in ‘eqvs2’; returns EITHER ‘:equal’ or ‘:unequal’ if those in ‘eqvs1’ are equivalent to those in ‘eqvs2’.
equivalent-node) x) ¶Returns ‘:less’ or ‘:greater’ if the values in ‘eqvs’ are less than resp. greater than ‘x’; or EITHER ‘:equal’ or ‘:unequal’ if ‘x’ is equivalent to any value in ‘eqvs’.
equivalent-node)) ¶Returns ‘:less’ or ‘:greater’ if ‘x’ is less than resp. greater than the values in ‘eqvs’; or EITHER ‘:equal’ or ‘:unequal’ if ‘x’ is equivalent to any value in ‘eqvs’.
sequence) (b sequence)) ¶array) (b array)) ¶pathname) (b pathname)) ¶package) (b package)) ¶list) (b list)) ¶vector) (b vector)) ¶string) (b string)) ¶symbol) (b symbol)) ¶character) (b character)) ¶complex) (b complex)) ¶real) (b real)) ¶null) (b null)) ¶identity-equality-mixin) (obj2 identity-ordering-mixin)) ¶identity-ordering-mixin) (obj2 identity-equality-mixin)) ¶identity-ordering-mixin) (b null)) ¶null) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b real)) ¶real) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b complex)) ¶complex) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b character)) ¶character) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b symbol)) ¶symbol) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b string)) ¶string) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b vector)) ¶vector) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b list)) ¶list) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b package)) ¶package) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b pathname)) ¶pathname) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b array)) ¶array) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b class)) ¶class) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b set)) ¶set) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b bag)) ¶bag) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b map)) ¶map) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b seq)) ¶seq) (b identity-ordering-mixin)) ¶identity-ordering-mixin) (b tuple)) ¶tuple) (b identity-ordering-mixin)) ¶identity-equality-mixin) (b null)) ¶null) (b identity-equality-mixin)) ¶identity-equality-mixin) (b real)) ¶real) (b identity-equality-mixin)) ¶identity-equality-mixin) (b complex)) ¶complex) (b identity-equality-mixin)) ¶identity-equality-mixin) (b character)) ¶character) (b identity-equality-mixin)) ¶identity-equality-mixin) (b symbol)) ¶symbol) (b identity-equality-mixin)) ¶identity-equality-mixin) (b string)) ¶string) (b identity-equality-mixin)) ¶identity-equality-mixin) (b vector)) ¶vector) (b identity-equality-mixin)) ¶identity-equality-mixin) (b list)) ¶list) (b identity-equality-mixin)) ¶identity-equality-mixin) (b package)) ¶package) (b identity-equality-mixin)) ¶identity-equality-mixin) (b pathname)) ¶pathname) (b identity-equality-mixin)) ¶identity-equality-mixin) (b array)) ¶array) (b identity-equality-mixin)) ¶identity-equality-mixin) (b class)) ¶class) (b identity-equality-mixin)) ¶identity-equality-mixin) (b set)) ¶set) (b identity-equality-mixin)) ¶identity-equality-mixin) (b bag)) ¶bag) (b identity-equality-mixin)) ¶identity-equality-mixin) (b map)) ¶map) (b identity-equality-mixin)) ¶identity-equality-mixin) (b seq)) ¶seq) (b identity-equality-mixin)) ¶identity-equality-mixin) (b tuple)) ¶tuple) (b identity-equality-mixin)) ¶class) (b null)) ¶null) (b class)) ¶class) (b real)) ¶real) (b class)) ¶class) (b complex)) ¶complex) (b class)) ¶class) (b character)) ¶character) (b class)) ¶class) (b symbol)) ¶symbol) (b class)) ¶class) (b string)) ¶string) (b class)) ¶class) (b vector)) ¶vector) (b class)) ¶class) (b list)) ¶list) (b class)) ¶class) (b package)) ¶package) (b class)) ¶class) (b pathname)) ¶pathname) (b class)) ¶class) (b array)) ¶array) (b class)) ¶array) (b null)) ¶null) (b array)) ¶array) (b real)) ¶real) (b array)) ¶array) (b complex)) ¶complex) (b array)) ¶array) (b character)) ¶character) (b array)) ¶array) (b symbol)) ¶symbol) (b array)) ¶array) (b string)) ¶string) (b array)) ¶array) (b vector)) ¶vector) (b array)) ¶array) (b list)) ¶list) (b array)) ¶array) (b package)) ¶package) (b array)) ¶array) (b pathname)) ¶pathname) (b array)) ¶pathname) (b null)) ¶null) (b pathname)) ¶pathname) (b real)) ¶real) (b pathname)) ¶pathname) (b complex)) ¶complex) (b pathname)) ¶pathname) (b character)) ¶character) (b pathname)) ¶pathname) (b symbol)) ¶symbol) (b pathname)) ¶pathname) (b string)) ¶string) (b pathname)) ¶pathname) (b vector)) ¶vector) (b pathname)) ¶pathname) (b list)) ¶list) (b pathname)) ¶pathname) (b package)) ¶package) (b pathname)) ¶package) (b null)) ¶null) (b package)) ¶package) (b real)) ¶real) (b package)) ¶package) (b complex)) ¶complex) (b package)) ¶package) (b character)) ¶character) (b package)) ¶package) (b symbol)) ¶symbol) (b package)) ¶package) (b string)) ¶string) (b package)) ¶package) (b vector)) ¶vector) (b package)) ¶package) (b list)) ¶list) (b package)) ¶list) (b null)) ¶null) (b list)) ¶list) (b real)) ¶real) (b list)) ¶list) (b complex)) ¶complex) (b list)) ¶list) (b character)) ¶character) (b list)) ¶list) (b symbol)) ¶symbol) (b list)) ¶list) (b string)) ¶string) (b list)) ¶list) (b vector)) ¶vector) (b list)) ¶vector) (b null)) ¶null) (b vector)) ¶vector) (b real)) ¶real) (b vector)) ¶vector) (b complex)) ¶complex) (b vector)) ¶vector) (b character)) ¶character) (b vector)) ¶vector) (b symbol)) ¶symbol) (b vector)) ¶vector) (b string)) ¶string) (b vector)) ¶string) (b null)) ¶null) (b string)) ¶string) (b real)) ¶real) (b string)) ¶string) (b complex)) ¶complex) (b string)) ¶string) (b character)) ¶character) (b string)) ¶string) (b symbol)) ¶symbol) (b string)) ¶symbol) (b null)) ¶null) (b symbol)) ¶symbol) (b real)) ¶real) (b symbol)) ¶symbol) (b complex)) ¶complex) (b symbol)) ¶symbol) (b character)) ¶character) (b symbol)) ¶character) (b null)) ¶null) (b character)) ¶character) (b real)) ¶real) (b character)) ¶character) (b complex)) ¶complex) (b character)) ¶complex) (b null)) ¶null) (b complex)) ¶complex) (b real)) ¶real) (b complex)) ¶real) (b null)) ¶null) (b real)) ¶identity-ordering-mixin) (obj2 identity-ordering-mixin)) ¶identity-equality-mixin) (obj2 identity-equality-mixin)) ¶Returns the result of a lexicographic comparison of ‘a’ and ‘b’, which can be strings, vectors, lists, or seqs.
Returns the complement of the set.
fset.
bounded-set)) ¶complement-set)) ¶function)) ¶Returns a new map with the same domain as ‘map1’, which maps each member of that domain to the result of applying first ‘map1’ to it, then applying ‘map2-or-fn’ to the result. ‘map2-or-fn’ can also be a sequence, which is treated as a map from indices to members.
fset.
ch-2-relation) (rel2 ch-2-relation) &key) ¶ch-2-relation) (fn seq) &key val-compare-fn-name) ¶ch-2-relation) (fn map) &key val-compare-fn-name) ¶ch-2-relation) (fn symbol) &key val-compare-fn-name) ¶ch-2-relation) (fn function) &key val-compare-fn-name) ¶wb-2-relation) (rel2 wb-2-relation) &key) ¶wb-2-relation) (fn seq) &key val-compare-fn-name) ¶wb-2-relation) (fn map) &key val-compare-fn-name) ¶wb-2-relation) (fn symbol) &key val-compare-fn-name) ¶wb-2-relation) (fn function) &key val-compare-fn-name) ¶wb-map) (map2 map) &key val-compare-fn-name) ¶The returned map’s ‘val-compare-fn-name’ can be specified; it defaults to ‘compare’.
symbol) (f2 symbol) &key) ¶function) (f2 symbol) &key) ¶symbol) (f2 function) &key) ¶function) (f2 function) &key) ¶Returns a new map with the same domain as ‘map1’, which maps each member of that domain to the result of applying first ‘map1’ to it, then applying ‘map2-or-fn’ to the result. ‘map2-or-fn’ can also be a sequence, which is treated as a map from indices to members. If ‘map1’ has a default, the value of ‘map2-or-fn’ applied to that default becomes the default of the returned map.
ch-2-relation) (rel2 ch-2-relation) &key) ¶ch-2-relation) (fn seq) &key val-compare-fn-name) ¶ch-2-relation) (fn map) &key val-compare-fn-name) ¶ch-2-relation) (fn symbol) &key val-compare-fn-name) ¶ch-2-relation) (fn function) &key val-compare-fn-name) ¶wb-2-relation) (rel2 wb-2-relation) &key) ¶wb-2-relation) (fn seq) &key val-compare-fn-name) ¶wb-2-relation) (fn map) &key val-compare-fn-name) ¶wb-2-relation) (fn symbol) &key val-compare-fn-name) ¶wb-2-relation) (fn function) &key val-compare-fn-name) ¶wb-map) (map2 map) &key val-compare-fn-name) ¶The returned map’s ‘val-compare-fn-name’ can be specified; it defaults to ‘compare’.
symbol) (f2 symbol) &key) ¶function) (f2 symbol) &key) ¶symbol) (f2 function) &key) ¶function) (f2 function) &key) ¶Returns the concatenation of ‘seq1’ with each of ‘seqs’. The result has the same default as ‘seq1’.
Returns a 2-relation containing only those pairs of ‘2-relation’ whose domain value is mapped to multiple range values.
fset.
ch-2-relation)) ¶wb-2-relation)) ¶Returns true iff the set or bag contains ‘x’, or the map or relation contains the pair <x, y>.
fset.
bounded-set) x &optional arg2) ¶complement-set) x &optional y) ¶ch-list-relation) tuple &optional arg2) ¶wb-list-relation) tuple &optional arg2) ¶ch-2-relation) x &optional y) ¶wb-2-relation) x &optional y) ¶ch-replay-set) x &optional y) ¶wb-replay-set) x &optional y) ¶wb-custom-set) x &optional y) ¶wb-default-set) x &optional y) ¶list) x &optional y) ¶Converts the collection to the specified type. Some methods
have additional keyword parameters to further specify the kind of conversion.
(‘sequence’ here refers to a CL sequence – either a list or a vector, unless
the implementation has more sequence subtypes. FSet’s ‘seq’ is not a subtype of
‘sequence’.)
When ‘to-type’ is one of the abstract types – ‘set’, ‘bag’, ‘map’ etc. – the
only guarantee is that ‘convert’ will return an instance of the requested type.
The choices of implementation and organization are up to FSet, and there’s no
option to request a specific organization. In contrast, when ‘to-type’ is one
of the concrete types – ‘wb-set’, ‘ch-set’, ‘wb-map’, etc. – the ‘convert’
method accepts keyword arguments specifying the organization (e.g.
‘compare-fn-name’), and guarantees to return a collection of that type and
organization; including the case where no organization is specified, in which
‘convert’ is guaranteed to return a collection of the default organization (the
one using ‘fset:compare’).
Method summary: to-type collection type notes
set set 0
wb-set set 0, 15
wb-set wb-set 15
set list 18, 2
wb-set list 2, 15
list set
set seq 18, 2
wb-set seq 2, 15
set sequence 18, 2
wb-set sequence 2, 15
vector set
ch-set set 15
ch-set ch-set 0, 15
ch-set list 15
ch-set seq 15
ch-set sequence 15
bag bag 0
wb-bag wb-bag 0, 15
bag wb-set 1
wb-bag wb-set 15
bag set
wb-bag set 15
set wb-bag 1
wb-set wb-bag 15
list bag 3
seq bag 3
vector bag 3
alist bag
bag list 1, 2, 3, 4
wb-bag list 2, 3, 4, 15
bag seq 1, 2, 3
wb-bag seq 2, 3, 15
bag sequence 1, 2, 3
wb-bag sequence 2, 3, 15
map map 0
wb-map wb-map 0, 16, 21
wb-map map 16, 21
ch-map ch-map 0, 16, 21
ch-map map 16, 21
list map 5
alist map
seq map 5
vector map 5
set map 5
map list 2, 6, 7, 18, 20
wb-map list 2, 6, 7, 16, 20
ch-map list 6, 7, 16
map seq 18, 2, 6, 7, 17
wb-map seq 2, 6, 7, 16, 17
ch-map seq 6, 7, 16
map sequence 2, 6, 7, 18, 20
wb-map sequence 2, 6, 7, 16, 20
ch-map sequence 6, 7, 16
map bag 18, 20
wb-map bag 16, 20
ch-map bag 16, 20
map hash-table 18, 20
wb-map hash-table 16, 20
ch-map hash-table 16, 20
hash-table map 8
seq seq 0
wb-seq wb-seq 0
seq list 1, 9
wb-seq list 9
list wb-seq
seq vector 1, 9
wb-seq vector 9
seq set 1
wb-seq set
string wb-seq 14
base-string wb-seq 14
seq bag 1, 5
wb-seq bag 5
seq map 1, 5, 17
wb-seq map 5, 17
2-relation 2-relation 0
wb-2-relation wb-2-relation 0, 16
ch-2-relation ch-2-relation 0, 16
2-relation set 6, 19
wb-2-relation set 6, 16
ch-2-relation set 6, 16
set wb-2-relation 1, 5
set ch-2-relation 19, 5
wb-set 2-relation 5
ch-set 2-relation 5
2-relation wb-map 1, 10
2-relation ch-map 19, 10
wb-2-relation map 10
2-relation list 19, 6
wb-2-relation list 6, 16
ch-2-relation list 6, 16
2-relation seq 19, 6
wb-2-relation seq 6, 16
ch-2-relation seq 6, 16
map wb-2-relation 1, 11, 20
map ch-2-relation 19, 11, 20
wb-map wb-2-relation 11, 20
ch-map ch-2-relation 11, 20
map-to-sets wb-2-relation 12
map-to-sets ch-2-relation 12
tuple tuple 0
dyn-tuple dyn-tuple 0
map tuple 1
wb-map tuple
list tuple 5
tuple list 6, 7, 13
dyn-tuple list 7, 13
replay-set replay-set 0
wb-replay-set wb-replay-set 0
ch-replay-set ch-replay-set 0
list wb-replay-set
vector wb-replay-set
seq wb-replay-set 1
wb-seq wb-replay-set
set wb-replay-set 1
wb-set wb-replay-set
replay-set list 19
wb-replay-set list
replay-set seq 19
wb-replay-set seq
replay-set sequence 19
wb-replay-set sequence
replay-map replay-map 0
wb-replay-map wb-replay-map 0
ch-replay-map ch-replay-map 0
map wb-replay-map 1
map ch-replay-map 19
wb-map wb-replay-map
ch-map ch-replay-map
list wb-replay-map 5
vector wb-replay-map 5
seq wb-replay-map 5
replay-map list 19, 6
wb-replay-map list 6
replay-map seq 19, 6
wb-replay-map seq 6
replay-map sequence 19, 6
wb-replay-map sequence 6
list list 0
vector vector 0
vector list
list sequence
string sequence
base-string sequence
In the below, whether the FSet 1 or FSet 2 rule applies is determined by the
package of ‘to-type’ (e.g., ‘fset:set’ or ‘fset2:set’).
Notes:
0. Identity conversion, provided for convenience. (If the method also accepts
an organization, then it performs the identity conversion only if the
organization of the argument matches that requested.)
1. Constructs the WB (weight-balanced tree) implementation of its type (‘wb-set’
etc.).
2. Has keyword parameter ‘input-sorted?’. If true, uses an algorithm optimized
for this case: if the input is sorted (by ‘less-than?’), it runs in O(n) time
and is much faster, but is up to 2.4x _slower_ than the default algorithm if
the input is unsorted.
3. Has keyword parameter ‘pairs?’. If true, treats the input elements as pairs
(as conses) of a value and a count (multiplicity).
4. Has keyword parameter ‘from-type’. If it’s the symbol ‘alist’, treats the
input elements as pairs (as conses) of a value and a count. Deprecated; use
‘pairs?’.
5. Has keyword parameter ‘pair-fn’, defaulting to ‘#’cons’, specifies the
function used to combine each key/value pair.
6. Has keyword parameters ‘key-fn’ and ‘value-fn’, used to extract a key/value
pair from each input element. Defaults are ‘#’car’ and ‘#’cdr’.
7. If a key occurs more than once in the input, the result will have the value
associated with the last occurrence.
8. All keyword arguments are forwarded to ‘make-hash-table’.
9. Optimized O(n) algorithm.
10. Has keyword parameter ‘from-type’. If it’s the symbol ‘map-to-sets’, the
range elements must all be sets, and the result pairs each domain element
with each member of the corresponding range set. Otherwise, the result pairs
each domain element with the corresponding range element directly.
11. The relation must be a function (must have only one range value per domain
value).
12. Returns a map mapping each domain value to the set of corresponding range
values. The default of the result is the empty set.
13. Constructs a ‘dyn-tuple’.
14. Always returns a string (or base-string, if specified). Signals an error
if the seq contains a non-character. Signals ‘type-error’ if a base-string
is specified and it encounters a non-base character.
15. Has keyword parameter ‘compare-fn-name’. If nonnull, must be a symbol, the
name of the comparison function to be used. The returned set will be
converted, if necessary, to use the specified function, or to use ‘compare’
if one is not specified.
16. Has keyword parameters ‘key-compare-fn-name’ and ‘val-compare-fn-name’. If
nonnull, these must be symbols, the names of the key and value comparison
functions, respectively, to be used. The returned map will be converted,
if necessary, to use the specified functions, or to use ‘compare’ for those
not specified.
17. FSet 1: has keyword parameter ‘default’, which specifies the default of the
result; if not supplied, the default is the same as that of the argument.
FSet 2: has keyword parameters ‘default’ and ‘no-default?’, which specify
the default of the result; if not supplied, the default is ‘nil’.
18. FSet 1: constructs the WB (weight-balanced tree) implementation of its type
(‘wb-set’ etc.). FSet 2: constructs the CHAMP implementation (‘ch-set’
etc.).
19. Constructs the CHAMP implementation of its type (‘ch-set’ etc.).
20. FSet 1: has keyword parameter ‘default’, which specifies the default of the
result; if not supplied, the default is ‘nil’. FSet 2: also has keyword
parameter ‘no-default?’ to specify no default.
21. FSet 1: has keyword parameter ‘default’, which specifies the default of the
result; if not supplied, the default is the same as that of the argument.
FSet 2: also has keyword parameter ‘no-default?’ to specify no default.
fset.
(eql fset:wb-set)) (bs bounded-set) &key) ¶(eql fset:ch-set)) (rel ch-list-relation) &key) ¶(eql fset2:set)) (rel ch-list-relation) &key) ¶(eql fset:set)) (rel ch-list-relation) &key) ¶(eql fset:wb-set)) (rel wb-list-relation) &key) ¶(eql fset2:set)) (rel wb-list-relation) &key) ¶(eql fset:set)) (rel wb-list-relation) &key) ¶(eql fset2:map-to-sets)) (rel ch-2-relation) &key) ¶(eql fset:map-to-sets)) (rel ch-2-relation) &key) ¶(eql fset2:ch-map)) (rel ch-2-relation) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:ch-map)) (rel ch-2-relation) &key key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:map)) (rel ch-2-relation) &key default no-default?) ¶(eql fset:map)) (rel ch-2-relation) &key default) ¶(eql fset:ch-2-relation)) (s seq) &key key-fn value-fn key-compare-fn-name val-compare-fn-name) ¶(eql fset:ch-2-relation)) (lst list) &key key-fn value-fn key-compare-fn-name val-compare-fn-name) ¶(eql fset:2-relation)) (lst list) &key key-fn value-fn) ¶(eql fset:ch-2-relation)) (m ch-map) &key from-type key-compare-fn-name val-compare-fn-name) ¶If ‘from-type’ is the symbol ‘map-to-sets’, the range elements must all be sets, and the result pairs each domain element with each member of the corresponding range set. If ‘from-type’ is not ‘map-to-sets’, the result pairs each domain element with the corresponding range element directly.
The key and value compare-fns of the result are taken from ‘m’ unless explicitly overridden in the call.
(eql fset:2-relation)) (m ch-map) &key from-type) ¶If ‘from-type’ is the symbol ‘map-to-sets’, the range elements must all be sets, and the result pairs each domain element with each member of the corresponding range set. Otherwise, the result pairs each domain element with the corresponding range element directly.
(eql fset:ch-set)) (rel 2-relation) &key pair-fn compare-fn-name) ¶(eql fset2:set)) (rel ch-2-relation) &key pair-fn) ¶(eql fset:set)) (rel ch-2-relation) &key pair-fn) ¶(eql fset:ch-2-relation)) (pairs set) &key key-fn value-fn key-compare-fn-name val-compare-fn-name) ¶(eql fset:ch-2-relation)) (rel ch-2-relation) &key key-compare-fn-name val-compare-fn-name) ¶(eql fset2:map-to-sets)) (rel wb-2-relation) &key) ¶(eql fset:map-to-sets)) (rel wb-2-relation) &key) ¶(eql fset2:wb-map)) (rel wb-2-relation) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:wb-map)) (rel wb-2-relation) &key key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:map)) (rel wb-2-relation) &key default no-default?) ¶(eql fset:map)) (rel wb-2-relation) &key default) ¶(eql fset:wb-2-relation)) (s seq) &key key-fn value-fn key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-2-relation)) (lst list) &key key-fn value-fn key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-2-relation)) (m wb-map) &key from-type key-compare-fn-name val-compare-fn-name) ¶If ‘from-type’ is the symbol ‘map-to-sets’, the range elements must all be sets, and the result pairs each domain element with each member of the corresponding range set. If ‘from-type’ is not ‘map-to-sets’, the result pairs each domain element with the corresponding range element directly.
The key and value compare-fns of the result are taken from ‘m’ unless explicitly overridden in the call.
(eql fset:2-relation)) (m wb-map) &key from-type) ¶If ‘from-type’ is the symbol ‘map-to-sets’, the range elements must all be sets, and the result pairs each domain element with each member of the corresponding range set. Otherwise, the result pairs each domain element with the corresponding range element directly.
(eql fset:wb-set)) (rel 2-relation) &key pair-fn compare-fn-name) ¶(eql fset2:set)) (rel wb-2-relation) &key pair-fn) ¶(eql fset:set)) (rel wb-2-relation) &key pair-fn) ¶(eql list)) (rel 2-relation) &key pair-fn) ¶(eql fset:wb-2-relation)) (pairs set) &key key-fn value-fn key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-2-relation)) (rel wb-2-relation) &key key-compare-fn-name val-compare-fn-name) ¶(eql fset:2-relation)) (rel 2-relation) &key) ¶(eql fset:dyn-tuple)) (list list) &key key-fn value-fn) ¶(eql fset:tuple)) (list list) &key key-fn value-fn) ¶(eql fset2:wb-map)) (tup tuple) &key key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-map)) (tup tuple) &key key-compare-fn-name val-compare-fn-name) ¶(eql fset:ch-replay-map)) (s sequence) &key key-fn value-fn default key-compare-fn-name val-compare-fn-name) ¶(eql fset:ch-replay-map)) (s seq) &key key-fn value-fn default key-compare-fn-name val-compare-fn-name) ¶(eql fset:ch-replay-map)) (list list) &key key-fn value-fn default key-compare-fn-name val-compare-fn-name) ¶(eql fset2:seq)) (m ch-replay-map) &key pair-fn) ¶(eql fset:seq)) (m ch-replay-map) &key pair-fn) ¶(eql vector)) (m ch-replay-map) &key pair-fn) ¶(eql list)) (m ch-replay-map) &key pair-fn) ¶(eql fset2:ch-map)) (m ch-replay-map) &key default no-default? key-compare-fn-name val-compare-fn-name) ¶(eql fset:ch-map)) (m ch-replay-map) &key default key-compare-fn-name val-compare-fn-name) ¶(eql fset2:map)) (m ch-replay-map) &key default no-default?) ¶(eql fset:map)) (m ch-replay-map) &key default) ¶(eql fset2:ch-replay-map)) (m ch-replay-map) &key default no-default? key-compare-fn-name val-compare-fn-name) ¶(eql fset:ch-replay-map)) (m ch-replay-map) &key default key-compare-fn-name val-compare-fn-name) ¶(eql fset2:ch-replay-map)) (m replay-map) &key default no-default? key-compare-fn-name val-compare-fn-name) ¶(eql fset:ch-replay-map)) (m replay-map) &key default key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-replay-map)) (s sequence) &key key-fn value-fn default key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-replay-map)) (s seq) &key key-fn value-fn default key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-replay-map)) (list list) &key key-fn value-fn default key-compare-fn-name val-compare-fn-name) ¶(eql fset2:wb-map)) (m wb-replay-map) &key default no-default? key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-map)) (m wb-replay-map) &key default key-compare-fn-name val-compare-fn-name) ¶(eql fset2:map)) (m wb-replay-map) &key default no-default?) ¶(eql fset:map)) (m wb-replay-map) &key default) ¶(eql fset2:wb-replay-map)) (m wb-replay-map) &key default no-default? key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-replay-map)) (m wb-replay-map) &key default key-compare-fn-name val-compare-fn-name) ¶(eql fset2:wb-replay-map)) (m replay-map) &key default no-default? key-compare-fn-name val-compare-fn-name) ¶(eql fset:wb-replay-map)) (m replay-map) &key default key-compare-fn-name val-compare-fn-name) ¶(eql fset2:replay-map)) (m replay-map) &key) ¶(eql fset:replay-map)) (s sequence) &key key-fn value-fn default) ¶(eql fset:replay-map)) (list list) &key key-fn value-fn default) ¶(eql fset2:wb-seq)) (m replay-map) &key pair-fn keys-only?) ¶(eql fset:wb-seq)) (m replay-map) &key pair-fn keys-only?) ¶(eql fset2:seq)) (m replay-map) &key pair-fn keys-only?) ¶(eql fset:seq)) (m replay-map) &key pair-fn keys-only?) ¶(eql vector)) (m replay-map) &key pair-fn keys-only?) ¶(eql list)) (m replay-map) &key pair-fn keys-only?) ¶(eql fset:replay-map)) (m replay-map) &key) ¶(eql fset:ch-replay-set)) (s sequence) &key compare-fn-name) ¶(eql fset:ch-replay-set)) (l list) &key compare-fn-name) ¶(eql fset:ch-replay-set)) (s ch-replay-set) &key compare-fn-name) ¶(eql fset:ch-replay-set)) (s replay-set) &key compare-fn-name) ¶(eql fset:ch-set)) (s ch-replay-set) &key compare-fn-name) ¶(eql fset2:set)) (s ch-replay-set) &key) ¶(eql fset:set)) (s ch-replay-set) &key) ¶(eql fset:wb-replay-set)) (s sequence) &key compare-fn-name) ¶(eql fset:wb-replay-set)) (l list) &key compare-fn-name) ¶(eql fset:wb-replay-set)) (s wb-replay-set) &key compare-fn-name) ¶(eql fset:wb-replay-set)) (s replay-set) &key compare-fn-name) ¶(eql fset:wb-set)) (s wb-replay-set) &key compare-fn-name) ¶(eql fset2:set)) (s wb-replay-set) &key) ¶(eql fset:set)) (s wb-replay-set) &key) ¶(eql fset:replay-set)) (s sequence) &key) ¶(eql fset:replay-set)) (l list) &key) ¶(eql fset2:wb-seq)) (s replay-set) &key) ¶(eql fset:wb-seq)) (s replay-set) &key) ¶(eql fset2:seq)) (s replay-set) &key) ¶(eql fset:seq)) (s replay-set) &key) ¶(eql vector)) (s replay-set) &key) ¶(eql list)) (s replay-set) &key) ¶(eql fset:replay-set)) (s replay-set) &key) ¶(eql vector)) (s sequence) &key) ¶(eql list)) (s sequence) &key) ¶(eql base-string)) (s sequence) &key) ¶(eql string)) (s sequence) &key) ¶(eql vector)) (l list) &key) ¶(eql list)) (v vector) &key) ¶(eql fset2:wb-seq)) (l list) &key reverse? default no-default?) ¶(eql fset2:seq)) (l list) &key reverse? default no-default?) ¶(eql fset:wb-seq)) (l list) &key reverse? default) ¶(eql fset:seq)) (l list) &key reverse? default) ¶(eql fset2:wb-seq)) (vec vector) &key default no-default?) ¶(eql fset2:seq)) (vec vector) &key default no-default?) ¶(eql fset:wb-seq)) (vec vector) &key default) ¶(eql fset:seq)) (vec vector) &key default) ¶(eql fset2:ch-map)) (ht hash-table) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:ch-map)) (ht hash-table) &key key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:map)) (ht hash-table) &key default no-default?) ¶(eql fset2:ch-map)) (b bag) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:ch-map)) (b bag) &key key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:ch-map)) (s sequence) &key key-fn value-fn key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:ch-map)) (s sequence) &key key-fn value-fn key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:map)) (s sequence) &key key-fn value-fn default) ¶(eql fset2:ch-map)) (s seq) &key key-fn value-fn key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:ch-map)) (s seq) &key key-fn value-fn key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:ch-map)) (m ch-map) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:ch-map)) (m ch-map) &key key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:ch-map)) (m map) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:ch-map)) (m map) &key key-compare-fn-name val-compare-fn-name default) ¶(eql hash-table)) (m map) &rest make-hash-table-args &key &allow-other-keys) ¶(eql fset2:wb-map)) (ht hash-table) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:wb-map)) (ht hash-table) &key key-compare-fn-name val-compare-fn-name default) ¶(eql fset:map)) (ht hash-table) &key default) ¶(eql fset2:wb-map)) (b bag) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:wb-map)) (b bag) &key key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:wb-map)) (s sequence) &key key-fn value-fn input-sorted? key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:wb-map)) (s sequence) &key key-fn value-fn input-sorted? key-compare-fn-name val-compare-fn-name default) ¶(eql fset:map)) (s sequence) &key key-fn value-fn input-sorted? default) ¶(eql fset2:wb-map)) (s seq) &key key-fn value-fn input-sorted? key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:wb-map)) (s seq) &key key-fn value-fn input-sorted? key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:wb-map)) (l list) &key key-fn value-fn input-sorted? key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:wb-map)) (l list) &key key-fn value-fn input-sorted? key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:wb-map)) (m map) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:wb-map)) (m map) &key key-compare-fn-name val-compare-fn-name default) ¶(eql fset2:wb-map)) (m wb-map) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶(eql fset:wb-map)) (m wb-map) &key key-compare-fn-name val-compare-fn-name default) ¶(eql fset:wb-bag)) (s sequence) &key input-sorted? pairs? compare-fn-name) ¶(eql fset:bag)) (s sequence) &key input-sorted? pairs?) ¶(eql fset:wb-bag)) (l list) &key input-sorted? pairs? from-type compare-fn-name) ¶(eql fset:bag)) (l list) &key input-sorted? pairs? from-type) ¶(eql fset2:set)) (s sequence) &key compare-fn-name) ¶(eql fset:ch-set)) (s sequence) &key compare-fn-name) ¶(eql fset2:set)) (l list) &key compare-fn-name) ¶(eql fset:ch-set)) (l list) &key compare-fn-name) ¶(eql fset:wb-set)) (s sequence) &key input-sorted? compare-fn-name) ¶(eql fset:set)) (s sequence) &key input-sorted?) ¶(eql fset:wb-set)) (l list) &key input-sorted? compare-fn-name) ¶(eql fset:set)) (l list) &key input-sorted?) ¶(eql fset:wb-set)) (s wb-custom-set) &key compare-fn-name) ¶(eql fset:wb-set)) (s wb-default-set) &key compare-fn-name) ¶(eql vector)) (v vector) &key) ¶(eql list)) (ls list) &key) ¶If ‘collection’ is a Lisp sequence, this simply calls ‘cl:count’. On an FSet collection, the default for ‘test’ is ‘equal?’; the ‘:test-not’ keyword is not accepted; and the ‘:start’, ‘:end’, and ‘:from-end’ keywords are accepted only if ‘collection’ is a seq. Also, on a map, this scans the domain.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:count-if’. On an FSet collection, the ‘:start’, ‘:end’, and ‘:from-end’ keywords are accepted only if ‘collection’ is a seq. Also, on a map, this scans the domain.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:count-if-not’.
On an FSet collection, the ‘:start’, ‘:end’, and ‘:from-end’ keywords are
accepted only if ‘collection’ is a seq. Also, on a map, this scans the domain.
Returns two values. If the map or seq has a default (the value returned by ‘lookup’ when the supplied key or index is not in the domain), returns the default and a true second value; otherwise, the second value is false.
Returns true iff ‘set1’ and ‘set2’ have a null intersection (without actually constructing said intersection).
fset.
bounded-set) (bs2 bounded-set)) ¶set) (cs complement-set)) ¶complement-set) (s set)) ¶complement-set) (cs2 complement-set)) ¶wb-custom-set) (s2 wb-custom-set)) ¶wb-default-set) (s2 wb-default-set)) ¶Returns the domain of the map, that is, the set of keys mapped by the map.
fset.
ch-2-relation)) ¶wb-2-relation)) ¶ch-replay-map)) ¶The domain of a replay map is a replay set.
wb-replay-map)) ¶The domain of a replay map is a replay set.
Returns true iff the domain of the map or seq contains ‘x’. (The domain of a seq is the set of valid indices.)
fset.
ch-replay-map) x) ¶wb-replay-map) x) ¶Returns an empty bag of the same implementation, and using the same compare or hash function, as ‘b’. ‘b’ can also be a set.
Returns an empty map of the same implementation, and using the same compare or hash functions, as ‘m’.
empty-seq-error)) ¶Returns an empty set of the same implementation, and using the same compare or hash function, as ‘s’. ‘s’ can also be a bag.
fset.
wb-custom-set)) ¶wb-default-set)) ¶Returns true iff the collection is empty.
fset.
bounded-set)) ¶ch-list-relation)) ¶wb-list-relation)) ¶ch-2-relation)) ¶wb-2-relation)) ¶interval-set)) ¶ch-replay-map)) ¶wb-replay-map)) ¶ch-replay-set)) ¶wb-replay-set)) ¶sequence)) ¶list)) ¶wb-custom-set)) ¶wb-default-set)) ¶Returns a new collection containing those members or pairs of ‘collection’ for which ‘fn’ returns true. If ‘collection’ is a set, bag, or seq, ‘fn’ is called with one argument; if a map, ‘fn’ is called with two arguments, the key and the value (the map-default of the result is that of ‘collection’). As well as a Lisp function, ‘fn’ can be a map, or a set (which is treated as mapping its members to true and everything else to false).
fset.
map) (s wb-custom-set)) ¶map) (s wb-default-set)) ¶symbol) (s wb-custom-set)) ¶symbol) (s wb-default-set)) ¶function) (s wb-custom-set)) ¶function) (s wb-default-set)) ¶function) (ls list)) ¶symbol) (ls list)) ¶sequence)) ¶Returns a new collection containing those members or pairs of ‘collection’ for which ‘fn’ returns true. If ‘collection’ is a set, bag, or seq, ‘fn’ is called with one argument; if a map, ‘fn’ is called with two arguments, the key and the value (the map-default of the result is that of ‘collection’). As well as a Lisp function, ‘fn’ can be a map, or a set (which is treated as mapping its members to true and everything else to false).
map) (s wb-custom-set)) ¶map) (s wb-default-set)) ¶symbol) (s wb-custom-set)) ¶symbol) (s wb-default-set)) ¶function) (s wb-custom-set)) ¶function) (s wb-default-set)) ¶function) (ls list)) ¶symbol) (ls list)) ¶sequence)) ¶Just like ‘filter’ except that if invoked on a bag, ‘fn’ (which must be a Lisp function) is called with two arguments for each pair, the member and the multiplicity.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:find’. On an FSet collection, the default for ‘test’ is ‘equal?’; the ‘:test-not’ keyword is not accepted; and the ‘:start’, ‘:end’, and ‘:from-end’ keywords are accepted only if ‘collection’ is a seq. Also, on a map, this scans the domain; on success, it returns the corresponding range element as the second value.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:find-if’. On an FSet collection, the ‘:start’, ‘:end’, and ‘:from-end’ keywords are accepted only if ‘collection’ is a seq. Also, on a map, this scans the domain; on success, it returns the corresponding range element as the second value.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:find-if-not’.
On an FSet collection, the ‘:start’, ‘:end’, and ‘:from-end’ keywords are
accepted only if ‘collection’ is a seq. Also, on a map, this scans the domain;
on success, it returns the corresponding range element as the second value.
Returns the first element of ‘seq’, i.e., element 0. This has a back- compatibility method for lists, and adds one for CL sequences generally.
fset.
ch-replay-map)) ¶wb-replay-map)) ¶ch-replay-set)) ¶wb-replay-set)) ¶sequence)) ¶list)) ¶On a set, returns two values: the greatest member of the set and
true; on a bag, returns three values: the greatest member of the bag, its
multiplicity, and true; on a map, also returns three values: the greatest key
of the map, its value, and true. If there is not a unique greatest member,
chooses one of the greatest members arbitrarily. Returns ‘nil’ if the
collection is empty.
fset.
wb-2-relation)) ¶wb-replay-map)) ¶wb-replay-set)) ¶wb-custom-set)) ¶wb-default-set)) ¶Returns a fixnum providing an encoding of the contents of ‘x’. The
result can be negative. For best performance, it is recommended to use
fixnum arithmetic and return a fixnum; however, Common Lisp gives us no
way to enforce this constraint, so callers should use ‘hash-value-fixnum’
instead.
When writing methods for this generic function, in order to force fixnum arithmetic, you may find ‘hash-mix’, ‘hash-mixf’, and ‘hash-multiply’ useful.
This generic function is used in combination with ‘compare’, so it is
important that for any two objects on which ‘compare’ returns ‘:equal’
or ‘:unequal’, this function returns the same hash value.
fset.
my-integer)) ¶complement-set)) ¶ch-2-relation)) ¶wb-2-relation)) ¶tuple-desc)) ¶ch-replay-set)) ¶wb-replay-set)) ¶wb-custom-set)) ¶wb-default-set)) ¶sequence)) ¶array)) ¶pathname)) ¶vector)) ¶list)) ¶string)) ¶symbol)) ¶character)) ¶complex)) ¶integer)) ¶real)) ¶null)) ¶identity-ordering-mixin)) ¶identity-equality-mixin)) ¶Returns a new collection containing the result of applying ‘fn’ to each
member of ‘collection’, which may be a set, bag, map, or seq. In the bag case,
the multiplicity of each member of the result is the sum of the multiplicities
of the values that ‘fn’ maps to it. In the map case, ‘fn’ will be called with
two arguments, the domain and range values, and is expected to return two
values, which become the new domain and range values. In the map and seq
cases, the returned collection has the same default as the argument.
Except in the seq case, you may wish to specify the organization of the result,
so the set and bag methods take keyword argument ‘:compare-fn-name’, and the
map method takes ‘:key-compare-fn-name’ and ‘:val-compare-fn-name’.
If ‘collection’ is a map or seq, the default of the result is the same.
As well as a Lisp function, ‘fn’ can be a map, or a set (which is treated as mapping its members to true and everything else to false).
fset.
2-relation) (s ch-set) &key compare-fn-name) ¶2-relation) (s wb-custom-set) &key compare-fn-name) ¶2-relation) (s wb-default-set) &key compare-fn-name) ¶tuple-key) (s wb-custom-set) &key compare-fn-name) ¶tuple-key) (s wb-default-set) &key compare-fn-name) ¶bag) (s wb-custom-set) &key compare-fn-name) ¶bag) (s wb-default-set) &key compare-fn-name) ¶set) (s wb-custom-set) &key compare-fn-name) ¶set) (s wb-default-set) &key compare-fn-name) ¶map) (s wb-custom-set) &key compare-fn-name) ¶map) (s wb-default-set) &key compare-fn-name) ¶symbol) (s wb-custom-set) &key compare-fn-name) ¶symbol) (s wb-default-set) &key compare-fn-name) ¶function) (s wb-custom-set) &key compare-fn-name) ¶function) (s wb-default-set) &key compare-fn-name) ¶symbol) (l vector) &key) ¶function) (l vector) &key) ¶symbol) (l list) &key) ¶function) (l list) &key) ¶Returns a new collection containing the result of applying ‘fn’ to each member of ‘collection’, which may be a set, bag, or seq. In the bag case, the multiplicity of each member of the result is the sum of the multiplicities of the values that ‘fn’ maps to it. In the seq case, if the argument seq has a default, the default of the result will be the result of applying ‘fn’ to it.
Except in the seq case, you may wish to specify the organization of the result,
so the set and bag methods take keyword argument ‘:compare-fn-name’.
As well as a Lisp function, ‘fn’ can be a map, or a set (which is treated as
mapping its members to true and everything else to false).
For imaging a map, see ‘compose’ and ‘map-image’.
2-relation) (s ch-set) &key compare-fn-name) ¶2-relation) (s wb-custom-set) &key compare-fn-name) ¶2-relation) (s wb-default-set) &key compare-fn-name) ¶tuple-key) (s wb-custom-set) &key compare-fn-name) ¶tuple-key) (s wb-default-set) &key compare-fn-name) ¶bag) (s wb-custom-set) &key compare-fn-name) ¶bag) (s wb-default-set) &key compare-fn-name) ¶set) (s wb-custom-set) &key compare-fn-name) ¶set) (s wb-default-set) &key compare-fn-name) ¶map) (s wb-custom-set) &key compare-fn-name) ¶map) (s wb-default-set) &key compare-fn-name) ¶symbol) (s wb-custom-set) &key compare-fn-name) ¶symbol) (s wb-default-set) &key compare-fn-name) ¶function) (s wb-custom-set) &key compare-fn-name) ¶function) (s wb-default-set) &key compare-fn-name) ¶symbol) (l vector) &key) ¶function) (l vector) &key) ¶symbol) (l list) &key) ¶function) (l list) &key) ¶Returns a new sequence like ‘seq’ but with ‘val’ inserted at ‘idx’ (the seq is extended in either direction if needed prior to the insertion; previously uninitialized indices are filled with the seq’s default).
Returns the intersection of the two sets/bags. The result is a bag
if both arguments are bags; otherwise a set. The intersection of two bags
is the bag whose multiplicity, for any value, is the minimum of its
multiplicities in the two argument bags.
If the collections are of different implementations or use different custom compare or hash functions, the returned collection will be like the first argument.
fset.
bounded-set) (bs2 bounded-set) &key) ¶set) (cs complement-set) &key) ¶complement-set) (s set) &key) ¶complement-set) (cs2 complement-set) &key) ¶ch-2-relation) (rel2 ch-2-relation) &key) ¶wb-2-relation) (rel2 wb-2-relation) &key) ¶2-relation) (rel2 2-relation) &key) ¶Fallback method for mixed implementations.
interval-set) (s1 interval-set) &key) ¶ch-replay-set) (s2 set) &key) ¶As the parameter types suggest, this is not symmetric: the ordering of the result is that of ‘s1’, filtered by membership in ‘s2’.
wb-replay-set) (s2 set) &key) ¶As the parameter types suggest, this is not symmetric: the ordering of the result is that of ‘s1’, filtered by membership in ‘s2’.
wb-custom-set) (s2 wb-custom-set) &key) ¶wb-default-set) (s2 wb-default-set) &key) ¶list) (ls2 list) &rest keyword-args &key test test-not) ¶The inverse of a binary relation.
fset.
ch-2-relation)) ¶wb-2-relation)) ¶Returns an iterator for the collection. (These are stateful iterators and
are not thread-safe; if you want a pure iterator, see ‘fun-iterator’.) The iterator
is a function of one argument; given ‘:done?’, it returns true iff the iterator is
exhausted; given ‘:more?’, it returns true iff the iterator is _not_ exhausted.
Given ‘:get’, if the iterator is not exhausted, it returns the next element (or
pair, for a map, as two values), with the second value (third, for a map) being
true, and advances one element; if it is exhausted, it returns two ‘nil’ values
(three, for a map).
The bag method takes a ‘pairs?’ keyword argument; if true, it returns each element
only once, with its multiplicity as the second value, as for a map.
The seq method takes ‘start’ and ‘end’ keyword arguments to restrict the range of the iteration, and ‘from-end?’ to reverse its direction. ‘start’ is inclusive and defaults to 0; ‘end’ is exclusive and defaults to the size of the seq.
fset.
ch-2-relation) &key) ¶wb-2-relation) &key) ¶replay-map) &key) ¶replay-set) &key) ¶wb-custom-set) &key) ¶wb-default-set) &key) ¶sequence) &key) ¶string) &key) ¶vector) &key) ¶list) &key) ¶A relational equijoin, matching up ‘column-a’ of ‘relation-a’ with ‘column-b’ of ‘relation-b’. For a binary relation, the columns are named 0 (domain) and 1 (range).
fset.
ch-2-relation) cola (relb ch-2-relation) colb) ¶wb-2-relation) cola (relb wb-2-relation) colb) ¶Returns the last element of ‘seq’, i.e., element ‘(1- (size seq))’. This has methods for CL lists and sequences that are NOT COMPATIBLE with ‘cl:last’. FSet exports ‘lastcons’ as an arguably better name for the functionality of ‘cl:last’.
fset.
ch-replay-map)) ¶wb-replay-map)) ¶ch-replay-set)) ¶wb-replay-set)) ¶sequence)) ¶list)) ¶On a set, returns two values: the smallest member of the set and
true; on a bag, returns three values: the smallest member of the bag, its
multiplicity, and true; on a map, also returns three values: the smallest key
of the map, its value, and true. If there is not a unique smallest member,
chooses one of the smallest members arbitrarily. Returns ‘nil’ if the
collection is empty.
fset.
wb-2-relation)) ¶wb-replay-map)) ¶wb-replay-set)) ¶wb-custom-set)) ¶wb-default-set)) ¶On a set, removes ‘value1’ from it if present, returning the updated set. On a bag, removes ‘value2’ occurrences of ‘value1’ if present, returning the updated bag; ‘value2’ defaults to 1. On a map, removes the pair whose key is ‘value1’, if present, returning the updated map. On a seq, removes the element at index ‘value1’, if that index is in bounds, and shifts subsequent elements down, returning the updated seq.
fset.
bounded-set) x &optional arg2) ¶complement-set) x &optional arg2) ¶query-registry) pattern &optional query) ¶assertion-db) tuple &optional arg2) ¶ch-list-relation) tuple &optional arg2) ¶wb-list-relation) tuple &optional arg2) ¶ch-2-relation) x &optional y) ¶wb-2-relation) x &optional y) ¶interval-set) (iv interval) &optional arg2) ¶ch-replay-map) key &optional arg2) ¶WARNING: linear-time operation!
wb-replay-map) key &optional arg2) ¶WARNING: linear-time operation!
ch-replay-set) value &optional arg2) ¶WARNING: linear-time operation!
wb-replay-set) value &optional arg2) ¶WARNING: linear-time operation!
wb-custom-set) value &optional arg2) ¶wb-default-set) value &optional arg2) ¶Returns the subsequence of ‘seq’ from element 1 through the end.
Returns the subsequence of ‘seq’ from element 0 through the next-to-last element.
If ‘collection’ is a map, returns three values: if it contains a key equal
to ‘key’, the corresponding value, true, and the key found; otherwise, the map’s
default, false, and ‘nil’.
If ‘collection’ is a seq, takes ‘key’ as an index and returns two values: if
the index is in bounds, the corresponding element and true; otherwise, the
seq’s default and false.
If ‘collection’ is a set or bag that contains a member equal to ‘key’, returns true and the member as two values, else false and ‘nil’; this is useful for canonicalization.
fset.
query-registry) tuple) ¶Returns all queries in ‘reg’ whose patterns match ‘tuple’.
ch-2-relation) x) ¶Returns the set of values that the relation pairs ‘x’ with.
wb-2-relation) x) ¶Returns the set of values that the relation pairs ‘x’ with.
ch-replay-map) key) ¶wb-replay-map) key) ¶ch-replay-set) value) ¶wb-replay-set) value) ¶symbol) v) ¶function) v) ¶sequence) (idx integer)) ¶wb-custom-set) key) ¶wb-default-set) key) ¶list) (key (eql tenth))) ¶list) (key (eql ninth))) ¶list) (key (eql eighth))) ¶list) (key (eql seventh))) ¶list) (key (eql sixth))) ¶list) (key (eql fifth))) ¶list) (key (eql fourth))) ¶list) (key (eql third))) ¶list) (key (eql second))) ¶list) (key (eql first))) ¶list) (key (eql fset:first))) ¶If ‘collection’ is a map, returns three values: if it contains a key equal
to ‘key’, the corresponding value, true, and the key found; otherwise, the map’s
default, false, and ‘nil’. If there’s no mapping for ‘key’ and the map has no
default, signals an error of type ‘map-domain-error’.
If ‘collection’ is a seq, takes ‘key’ as an index and returns two values: if
the index is in bounds, the corresponding element and true; otherwise, the
seq’s default and false. If the index is out of bounds and the seq has no
default, signals an error of type ‘seq-bounds-error’.
If ‘collection’ is a set that contains a member equal to ‘key’, returns true
and the member as two values, else false and ‘nil’; this is useful for
canonicalization.
If ‘collection’ is a bag that contains a member equal to ‘key’, returns its multiplicity and the member as two values, else zero and ‘nil’.
query-registry) tuple) ¶Returns all queries in ‘reg’ whose patterns match ‘tuple’.
ch-2-relation) x) ¶Returns the set of values that the relation pairs ‘x’ with.
wb-2-relation) x) ¶Returns the set of values that the relation pairs ‘x’ with.
ch-replay-map) key) ¶wb-replay-map) key) ¶ch-replay-set) value) ¶wb-replay-set) value) ¶symbol) v) ¶function) v) ¶sequence) (idx integer)) ¶wb-custom-set) key) ¶wb-default-set) key) ¶list) (key (eql tenth))) ¶list) (key (eql ninth))) ¶list) (key (eql eighth))) ¶list) (key (eql seventh))) ¶list) (key (eql sixth))) ¶list) (key (eql fifth))) ¶list) (key (eql fourth))) ¶list) (key (eql third))) ¶list) (key (eql second))) ¶list) (key (eql first))) ¶list) (key (eql fset:first))) ¶Does an inverse lookup on a binary relation.
fset.
ch-2-relation) y) ¶wb-2-relation) y) ¶fset.
query-registry) set-tuple) ¶Here ‘set-tuple’ contains a set of values in each position. Returns all queries in ‘reg’ whose patterns match any member of each set.
Returns, as two values: a map containing all the pairs that are in ‘map1’ but not ‘map2’, with the same default as ‘map1’; and one containing all the pairs that are in ‘map2’ but not ‘map1’, with the same default as ‘map2’.
Returns, as two values: a map containing all the pairs that are in ‘map1’
but not ‘map2’, and one containing all the pairs that are in ‘map2’ but not
‘map1’.
The default for each returned map is that of its corresponding argument, if it has a default, except if the defaults are equal, in which case neither returned map has a default.
map-domain-error)) ¶map-domain-error)) ¶Returns a new map containing the result of applying ‘fn’ to each pair of
‘collection’. That is, ‘fn’ is called with both the domain and range values
as arguments; it is expected to return two values, which become the new domain
and range values. The default of the returned map is ‘nil’ unless a different
default is specified by ‘:default’, or ‘:no-default?’ is true.
See also ‘compose’, which may fit your needs better.
fset.
symbol) (m ch-map) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶function) (m ch-map) &key key-compare-fn-name val-compare-fn-name default no-default?) ¶Returns a map containing all the keys that are in the domains of both
‘map1’ and ‘map2’, where the value for each key is the result of calling
‘val-fn’ on the value from ‘map1’ and the value from ‘map2’. ‘val-fn’
defaults to simply returning its second argument, so the entries in ‘map2’
simply shadow those in ‘map1’. The default for the new map is the result
of calling ‘val-fn’ on the defaults for the two maps, if either of those
is nonnull. ‘map-intersection’ assumes that ‘val-fn’ is idempotent, i.e.,
if the two values passed to ‘val-fn’ are equal, ‘val-fn’ must return the
same value; it may elide calls to ‘val-fn’ on that basis.
New feature: if ‘val-fn’ returns ‘:no-value’ as a second value, the result will contain no pair with the corresponding key.
Returns a map containing all the keys that are in the domains of both
‘map1’ and ‘map2’, where the value for each key is the result of calling
‘val-fn’ on the value from ‘map1’ and the value from ‘map2’. ‘val-fn’
defaults to simply returning its second argument, so the entries in ‘map2’
simply shadow those in ‘map1’. The default for the new map is the result
of calling ‘val-fn’ on the defaults for the two maps, if they both have
defaults; else none.
‘map-intersection’ assumes that ‘val-fn’ is idempotent, i.e., if the two
values passed to ‘val-fn’ are equal, ‘val-fn’ must return the same value;
it may elide calls to ‘val-fn’ on that basis.
If ‘val-fn’ returns ‘:no-value’ as a second value, the result will contain no pair with the corresponding key.
Returns a map containing all the keys of ‘map1’ and ‘map2’, where the
value for each key contained in only one map is the value from that map, and
the value for each key contained in both maps is the result of calling
‘val-fn’ on the value from ‘map1’ and the value from ‘map2’. ‘val-fn’
defaults to simply returning its second argument, so the entries in ‘map2’
simply shadow those in ‘map1’. The default for the new map is the result of
calling ‘val-fn’ on the defaults for the two maps, if either of those is
nonnull. ‘map-union’ assumes that ‘val-fn’ is idempotent, i.e., if the two
values passed to ‘val-fn’ are equal, ‘val-fn’ must return the same value; it
may elide calls to ‘val-fn’ on that basis.
New feature: if ‘val-fn’ returns ‘:no-value’ as a second value, the result will contain no pair with the corresponding key.
Returns a map containing all the keys of ‘map1’ and ‘map2’, where the
value for each key contained in only one map is the value from that map, and
the value for each key contained in both maps is the result of calling
‘val-fn’ on the value from ‘map1’ and the value from ‘map2’. ‘val-fn’
defaults to simply returning its second argument, so the entries in ‘map2’
simply shadow those in ‘map1’. The default for the new map is: if both maps
have defaults, the result of calling ‘val-fn’ on those defaults; if only one
map has a default, that default; otherwise none.
‘map-union’ assumes that ‘val-fn’ is idempotent, i.e., if the two values
passed to ‘val-fn’ are equal, ‘val-fn’ must return the same value; it may
elide calls to ‘val-fn’ on that basis.
If ‘val-fn’ returns ‘:no-value’ as a second value, the result will contain no pair with the corresponding key.
If ‘sequence-1’ and ‘sequence-2’ are Lisp sequences, this simply calls ‘cl:mismatch’. On FSet seqs, the default for ‘test’ is ‘equal?’, and the ‘:test-not’ keyword is not accepted.
Returns the multiplicity of ‘x’ in the bag.
fset.
non-char-seq-error)) ¶Returns two values, (filter fn collection) and (filter (cl:complement fn) collection).
fset.
map) (s wb-custom-set)) ¶map) (s wb-default-set)) ¶symbol) (s wb-custom-set)) ¶symbol) (s wb-default-set)) ¶function) (s wb-custom-set)) ¶function) (s wb-default-set)) ¶function) (ls list)) ¶symbol) (ls list)) ¶map) (s wb-custom-set)) ¶map) (s wb-default-set)) ¶symbol) (s wb-custom-set)) ¶symbol) (s wb-default-set)) ¶function) (s wb-custom-set)) ¶function) (s wb-default-set)) ¶If ‘collection’ is a Lisp sequence, this simply calls ‘cl:position’. On an FSet seq, the default for ‘test’ is ‘equal?’, and the ‘:test-not’ keyword is not accepted.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:position-if’. Also works on an FSet seq.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:position-if-not’. Also works on an FSet seq.
Along with the relation, takes ‘pattern’, which is a list of length
less than or equal to the arity. Returns all tuples whose elements match
those of the pattern, starting from the left end of both, where pattern
elements equal to ‘fset:?’ (the symbol itself, not its value) match any
tuple value. If the pattern’s length is less than the arity, the missing
positions also match any tuple value. (The symbol ‘?’ is exported from
‘fset:’ for this purpose.)
The ‘metapattern’ parameter was used in an older API; its use is now deprecated.
fset.
assertion-db) pattern &optional override-arity) ¶ch-list-relation) pattern &optional metapattern) ¶wb-list-relation) pattern &optional metapattern) ¶Like ‘query’ (q.v.), except that ‘pattern’ is a list where the elements that aren’t ‘fset:?’ are sets of values rather than single values. Returns all tuples in the relation for which each value is a member of the corresponding set in the pattern.
fset.
ch-list-relation) (pattern list) &optional metapattern) ¶wb-list-relation) (pattern list) &optional metapattern) ¶Queries the relation for tuples that match ‘pattern’ and contain some element
of ‘restrict-set’. ‘pattern’ is a list where each element is either the symbol
‘fset:?’ or a set of values. A tuple matches the pattern if, for each position,
either the element of ‘pattern’ at that position is ‘fset:?’ or the tuple element
at that position is an element of that set of values. Returns the set of tuples
in the relation that match the pattern and contain at least one element of
‘restrict-set’. For convenience, the function accepts the full set for ‘restrict-set’,
in which case there is no restriction.
fset.
ch-list-relation) (pattern list) restrict-set) ¶wb-list-relation) (pattern list) restrict-set) ¶Returns the range of the map, that is, the set of all values to which keys are mapped by the map.
fset.
ch-2-relation)) ¶wb-2-relation)) ¶Returns true iff the range of the map or seq contains ‘x’. (The range of a seq is the set of members.) Note that this requires a linear search.
Defined on tree (WB) collections only. See ‘index’.
If ‘collection’ is a set or bag that contains ‘value’, returns the rank of ‘value’ in the ordering defined by ‘compare’, and a true second value. If ‘collection’ is a map whose domain contains ‘value’, returns the rank of ‘value’ in the domain of the map, and a true second value. If ‘value’ is not in the collection, the second value is false, and the first value is the rank of the greatest member of the collection less than ‘value’ (if any; otherwise -1). Note that if there are values/keys that are unequal but equivalent to ‘value’, an arbitrary order will be imposed on them for this purpose; but another collection that is ‘equal?’ but not ‘eq’ to this one will in general order them differently. Also, on a bag, multiplicities are ignored for this purpose.
fset.
wb-bag) x) ¶Returns the rank in the set ordering, i.e. the upper bound is the ‘set-size’.
wb-custom-set) x) ¶wb-default-set) x) ¶Defined on tree (WB) collections only. See ‘index’.
If ‘collection’ is a set or bag that contains ‘value’, returns the rank of ‘value’ in the ordering defined by ‘compare’, and a true second value. If ‘collection’ is a map whose domain contains ‘value’, returns the rank of ‘value’ in the domain of the map, and a true second value. If ‘value’ is not in the collection, the second value is false, and the first value is the rank that ‘value’ would have if it were added. Note that if there are values/keys that are unequal but equivalent to ‘value’, an arbitrary order will be imposed on them for this purpose; but another collection that is ‘equal?’ but not ‘eq’ to this one will in general order them differently. Also, on a bag, multiplicities are ignored for this purpose.
wb-bag) x) ¶Returns the rank in the set ordering, i.e. the upper bound is the ‘set-size’.
wb-custom-set) x) ¶wb-default-set) x) ¶If ‘collection’ is a Lisp sequence, this simply calls ‘cl:reduce’ (q.v.). On an FSet collection, the ‘:start’, ‘:end’, and ‘:from-end’ keywords are accepted only if ‘collection’ is a seq.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:remove’. On an FSet seq, the default for ‘test’ is ‘equal?’, and the ‘:test-not’ keyword is not accepted.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:remove-if’. Also works on an FSet seq; but see ‘filter’.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:remove-if-not’. Also works on an FSet seq; but see ‘filter’.
Returns a map containing only those pairs of ‘map’ whose keys are also in ‘set’.
Returns a map containing only those pairs of ‘map’ whose keys are not in ‘set’.
Returns ‘seq’ in reverse order.
If ‘sequence-1’ and ‘sequence-2’ are Lisp sequences, this simply calls ‘cl:search’. On FSet seqs, the default for ‘test’ is ‘equal?’, and the ‘:test-not’ keyword is not accepted.
seq-bounds-error)) ¶seq-bounds-error)) ¶Returns the set difference of set1 and set2, i.e., the set containing
every member of ‘set1’ that is not in ‘set2’.
If the collections are of different implementations or use different custom compare or hash functions, the returned collection will be like the first argument.
fset.
bounded-set) (bs2 bounded-set) &key) ¶set) (cs complement-set) &key) ¶complement-set) (s set) &key) ¶complement-set) (cs2 complement-set) &key) ¶interval-set) (s1 interval-set) &key) ¶wb-custom-set) (s2 wb-custom-set) &key) ¶wb-default-set) (s2 wb-default-set) &key) ¶list) (ls2 list) &rest keyword-args &key test test-not) ¶Returns ‘set1 - set2’ and ‘set2 - set1’ as two values.
If the collections are of different implementations or use different custom compare or hash functions, the first value will be like the first argument, and the second value like the second.
fset.
wb-custom-set) (s2 wb-custom-set)) ¶wb-default-set) (s2 wb-default-set)) ¶Returns the number of unique members in the bag.
fset.
wb-custom-set)) ¶wb-default-set)) ¶Returns the number of members in a set, seq, or bag, or the number of pairs in a map. The size of a bag is the sum of the multiplicities.
fset.
bounded-set)) ¶complement-set)) ¶ch-list-relation)) ¶wb-list-relation)) ¶ch-2-relation)) ¶wb-2-relation)) ¶interval-set)) ¶The number of intervals in the set.
ch-replay-map)) ¶wb-replay-map)) ¶ch-replay-set)) ¶wb-replay-set)) ¶sequence)) ¶wb-custom-set)) ¶wb-default-set)) ¶Returns ‘seq’ sorted by ‘pred’, a function of two arguments; if ‘key’ is supplied, it is a function of one argument that is applied to the elements of ‘seq’ before they are passed to ‘pred’. The sort is not guaranteed to be stable. The method for CL sequences copies the sequence first, unlike ‘cl:sort’.
Like ’stable-sort’, but additionally groups the result, returning a seq of seqs, where the elements of each inner seq are equal according to ‘pred’ and, optionally, ‘key’.
Returns a new sequence like ‘seq’ but with the elements of ‘subseq’ inserted
at ‘idx’ (the seq is extended in either direction if needed prior to the insertion;
previously uninitialized indices are filled with the seq’s default).
Defined on tree (WB) sets, maps, and bags only. Returns the subcollection with elements/keys greater than ‘value’.
fset.
wb-custom-set) value) ¶wb-default-set) value) ¶Defined on tree (WB) sets, maps, and bags only. Returns the subcollection with elements/keys less than ‘value’.
fset.
wb-custom-set) value) ¶wb-default-set) value) ¶Defined on tree (WB) sets, maps, and bags only. Returns the subcollection with elements/keys greater than or equal to ‘value’.
fset.
wb-custom-set) value) ¶wb-default-set) value) ¶Defined on tree (WB) sets, maps, and bags only. Returns the subcollection with elements/keys less than or equal to ‘value’.
fset.
wb-custom-set) value) ¶wb-default-set) value) ¶Returns ‘seq’ sorted by ‘pred’, a function of two arguments; if ‘key’ is supplied, it is a function of one argument that is applied to the elements of ‘seq’ before they are passed to ‘pred’. The sort is guaranteed to be stable. The method for CL sequences copies the sequence first, unlike ‘cl:stable-sort’.
Returns true iff ‘sub’ is a subbag of ‘super’, that is, for every member of ‘sub’, ‘super’ contains the same value with at least the same multiplicity.
Returns the subsequence of ‘seq’ from ‘start’ (inclusive) to ‘end’ (exclusive), where ‘end’ defaults to ‘(size seq)’.
Returns true iff ‘sub’ is a subset of ‘super’.
fset.
bounded-set) (bs2 bounded-set)) ¶set) (cs complement-set)) ¶complement-set) (s set)) ¶complement-set) (cs2 complement-set)) ¶wb-custom-set) (s2 wb-custom-set)) ¶wb-default-set) (s2 wb-default-set)) ¶If ‘collection’ is a Lisp sequence, this simply calls ‘cl:substitute’. On an FSet seq, the default for ‘test’ is ‘equal?’, and the ‘:test-not’ keyword is not accepted.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:substitute-if’. Also works on an FSet seq.
If ‘collection’ is a Lisp sequence, this simply calls ‘cl:substitute-if-not’. Also works on an FSet seq.
tuple-key-unbound-error)) ¶key.
tuple-key-unbound-error)) ¶Returns a new tuple containing all the keys of ‘tuple1’ and ‘tuple2’, where the value for each key contained in only one tuple is the value from that tuple, and the value for each key contained in both tuples is the result of calling ‘val-fn’ on the value from ‘tuple1’ and the value from ‘tuple2’. ‘val-fn’ defaults to simply returning its second argument, so the entries in ‘tuple2’ simply shadow those in ‘tuple1’.
fset.
Returns the union of the two sets/bags. The result is a set if both
arguments are sets; otherwise a bag. The union of two bags is a bag whose
multiplicity, for any value, is the maximum of its multiplicities in the
two argument bags.
If the collections are of different implementations or use different custom compare or hash functions, the returned collection will be like the first argument.
fset.
bounded-set) (bs2 bounded-set) &key) ¶set) (cs complement-set) &key) ¶complement-set) (s set) &key) ¶complement-set) (cs2 complement-set) &key) ¶ch-2-relation) (rel2 ch-2-relation) &key) ¶wb-2-relation) (rel2 wb-2-relation) &key) ¶2-relation) (rel2 2-relation) &key) ¶Fallback method for mixed implementations.
interval-set) (s1 interval-set) &key) ¶ch-replay-set) (s2 set) &key) ¶As the parameter types suggest, this is not symmetric: it adds the members of ‘s2’ to ‘s1’, so the ordering of the result will be that of ‘s1’ with any new members appended.
wb-replay-set) (s2 set) &key) ¶As the parameter types suggest, this is not symmetric: it adds the members of ‘s2’ to ‘s1’, so the ordering of the result will be that of ‘s1’ with any new members appended.
wb-custom-set) (s2 wb-custom-set) &key) ¶wb-default-set) (s2 wb-default-set) &key) ¶list) (ls2 list) &rest keyword-args &key test test-not) ¶On a set, adds ‘value1’ to it, returning the updated set. On a bag, adds ‘value2’ occurrences of ‘value1’, returning the updated bag; ‘value2’ defaults to 1. On a map, adds a mapping from ‘value1’ (the key) to ‘value2’, returning the updated map. On a seq, replaces the element at index ‘value1’ with ‘value2’, returning the updated seq (the seq is extended in either direction if needed; previously uninitialized indices are filled with the seq’s default).
fset.
bounded-set) x &optional arg2) ¶complement-set) x &optional arg2) ¶query-registry) pattern &optional query) ¶assertion-db) tuple &optional arg2) ¶ch-list-relation) tuple &optional arg2) ¶wb-list-relation) tuple &optional arg2) ¶ch-2-relation) x &optional y) ¶wb-2-relation) x &optional y) ¶interval-set) (iv interval) &optional arg2) ¶ch-replay-map) key &optional value) ¶wb-replay-map) key &optional value) ¶ch-replay-set) value &optional arg2) ¶wb-replay-set) value &optional arg2) ¶wb-custom-set) value &optional arg2) ¶wb-default-set) value &optional arg2) ¶list) (key (eql tenth)) &optional val) ¶list) (key (eql ninth)) &optional val) ¶list) (key (eql eighth)) &optional val) ¶list) (key (eql seventh)) &optional val) ¶list) (key (eql sixth)) &optional val) ¶list) (key (eql fifth)) &optional val) ¶list) (key (eql fourth)) &optional val) ¶list) (key (eql third)) &optional val) ¶list) (key (eql second)) &optional val) ¶list) (key (eql first)) &optional val) ¶list) (key (eql fset:first)) &optional val) ¶Returns a new map or seq with the same contents as ‘collection’ but whose default is now ‘new-default’.
fset.
ch-replay-map) new-default) ¶wb-replay-map) new-default) ¶Returns ‘seq’ with ‘val’ prepended, that is, ‘val’ is element 0 of the result, and the elements of ‘seq’ appear starting at index 1.
Returns ‘seq’ with ‘val’ appended, that is, ‘val’ is element ‘(size seq)’ of the result.
Returns a new map, replay map, or seq with the same contents as ‘collection’ but with no default. Subsequent ‘lookup’ operations on a key not in the map, or a index outside the seq’s bounds, will signal an error.
ch-replay-map)) ¶wb-replay-map)) ¶my-sequence) len &rest args) ¶sb-sequence.
my-sequence) index) ¶sb-sequence.
my-sequence) index) ¶sb-sequence.
ch-replay-map) key) ¶WARNING: linear-time operation!
misc-extensions.gmap.
wb-replay-map) key) ¶WARNING: linear-time operation!
misc-extensions.gmap.
ch-replay-set) x) ¶WARNING: linear-time operation!
misc-extensions.gmap.
wb-replay-set) x) ¶misc-extensions.gmap.
my-sequence)) ¶sb-sequence.
wb-2-relation) &optional environment) ¶wb-custom-set) &optional environment) ¶ch-2-relation) &optional environment) ¶complement-set) &optional environment) ¶wb-default-set) &optional environment) ¶my-sequence) len &rest args) ¶sb-sequence.
wb-2-relation) stream) ¶ch-replay-map) stream) ¶wb-replay-map) stream) ¶ch-replay-set) stream) ¶bounded-set) stream) ¶wb-list-relation) stream) ¶wb-custom-set) stream) ¶wb-replay-set) stream) ¶ch-2-relation) stream) ¶wb-map-tree-node) stream) ¶interval-set) stream) ¶wb-ht-seq-tree) stream) ¶complement-set) stream) ¶ch-list-relation) stream) ¶wb-bag-tree-node) stream) ¶wb-set-tree-node) stream) ¶wb-seq-tree-node) stream) ¶wb-default-set) stream) ¶wb-assertion-db) stream) ¶:seq
This slot is read-only.
error.
The abstract class for FSet binary relations. It is a structure class.
fset.
fset.
structure-object.
The abstract class for FSet functional bags (multisets). It is a structure class.
fset.
bag-difference.
bag-difference.
bag-difference.
bag-product.
bag-product.
bag-product.
bag-sum.
bag-sum.
bag-sum.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
count.
count-if.
count-if-not.
disjoint?.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter-pairs.
filter-pairs.
find.
find-if.
find-if-not.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
intersection.
intersection.
intersection.
partition.
partition.
reduce.
reduce.
subbag?.
subbag?.
subbag?.
union.
union.
union.
A "bounded set" is a subset (not necessarily proper) of a specified set, called the "universe". (Topologically, it is a set in the discrete topology on the universe.)
A class of functional binary relations represented as pairs of weight- balanced binary trees. This is the default implementation of binary relations in FSet. The inverse is constructed lazily, and maintained incrementally once constructed.
fset.
arb.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
conflicts.
contains?.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
domain.
empty-relation-like.
empty?.
fun-iterator.
hash-value.
internal-do-2-relation.
intersection.
inverse.
iterator.
join.
less.
lookup.
lookup.
lookup-inv.
make-load-form.
print-object.
range.
size.
union.
with.
integer
0
This slot is read-only.
This slot is read-only.
fset::hash-map-org
This slot is read-only.
fset.
map.
arb.
at-index.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
contains?.
convert.
convert.
convert.
convert.
domain.
domain-contains?.
empty-map-like.
empty?.
filter.
filter.
filter.
filter.
fun-iterator.
hash-value.
image.
image.
index.
internal-do-map.
iterator.
key-compare-fn.
key-compare-fn-name.
key-hash-fn.
less.
lookup.
lookup.
make-load-form.
map-difference-2.
map-difference-2.
map-image.
map-image.
map-intersection.
map-intersection.
map-union.
map-union.
print-object.
range.
restrict.
restrict-not.
size.
val-compare-fn.
val-compare-fn-name.
val-hash-fn.
verify.
with.
with-default.
without-default.
This slot is read-only.
fset::hash-map-org
This slot is read-only.
map.
arb.
at-index.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
contains?.
convert.
convert.
convert.
convert.
domain.
domain-contains?.
empty-map-like.
empty?.
filter.
filter.
filter.
filter.
fun-iterator.
hash-value.
image.
image.
index.
internal-do-map.
iterator.
key-compare-fn.
key-compare-fn-name.
key-hash-fn.
less.
lookup.
lookup.
make-load-form.
map-difference-2.
map-difference-2.
map-image.
map-image.
map-intersection.
map-intersection.
map-union.
map-union.
print-object.
range.
restrict.
restrict-not.
size.
val-compare-fn.
val-compare-fn-name.
val-hash-fn.
verify.
with.
with-default.
without-default.
A replay map is like a map, except that its iteration order is the order in which keys were first added to it. It does not support all map operations, but you can convert it to a map. Note that in the current implementation, ‘less’ on a replay map takes O(n) time. Also, two replay maps are equal only if they both contain the same pairs and have the same iteration order; if you just want to compare the contents, convert them to ordinary maps first. Replay maps are printed as "##{=| ... |}".
fset.
arb.
at-index.
compare.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
domain.
domain-contains?.
empty?.
first.
index.
key-compare-fn.
key-compare-fn-name.
last.
less.
lookup.
lookup.
print-object.
size.
val-compare-fn.
val-compare-fn-name.
with.
with-default.
without-default.
This slot is read-only.
fset::hash-map-org
This slot is read-only.
A replay map is like a map, except that its iteration order is the order in which keys were first added to it. It does not support all map operations, but you can convert it to a map. Note that in the current implementation, ‘less’ on a replay map takes O(n) time. Also, two replay maps are equal only if they both contain the same pairs and have the same iteration order; if you just want to compare the contents, convert them to ordinary maps first. Replay maps are printed as "##{=| ... |}".
arb.
at-index.
compare.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
domain.
domain-contains?.
empty?.
first.
index.
key-compare-fn.
key-compare-fn-name.
last.
less.
lookup.
lookup.
print-object.
size.
val-compare-fn.
val-compare-fn-name.
with.
with-default.
without-default.
A replay set is like a set, except that its iteration order is the order in which members were added to it. It does not support all set operations, but you can convert it to a set. Note that in the current implementation, ‘less’ on a replay set takes O(n) time. Also, two replay sets are equal only if they both contain the same elements and have the same iteration order; if you just want to compare the contents, convert them to ordinary sets first. Replay sets are printed as "#{= ... }".
fset.
arb.
at-index.
compare.
compare-fn.
compare-fn-name.
contains?.
convert.
convert.
convert.
convert.
empty?.
first.
hash-value.
index.
intersection.
last.
less.
lookup.
lookup.
print-object.
size.
union.
with.
This slot is read-only.
fset::hash-set-org
This slot is read-only.
fset.
set.
arb.
at-index.
compare.
compare-fn.
compare-fn-name.
contains?.
convert.
disjoint?.
disjoint?.
disjoint?.
empty-set-like.
empty?.
filter.
filter.
filter.
filter.
filter.
filter.
fun-iterator.
hash-value.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
index.
internal-do-set.
intersection.
iterator.
less.
lookup.
lookup.
make-load-form.
partition.
partition.
partition.
partition.
partition.
partition.
print-object.
restrict.
restrict-not.
set-difference.
set-difference-2.
set-difference-rev.
set-size.
size.
subset?.
union.
verify.
with.
This slot is read-only.
fset::hash-set-org
This slot is read-only.
The root class of the FSet functional collections hierarchy. It is a structure class.
A class of functional tuples represented as vectors with dynamically- reordered key vectors. This is the default implementation of tuples in FSet.
The abstract class for FSet list relations. It is a structure class. A list relation is a general relation (i.e. of arbitrary arity >= 1) whose tuples are in list form.
The abstract class for FSet functional maps. It is a structure class.
fset.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
count.
count-if.
count-if-not.
default.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
find.
find-if.
find-if-not.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
map-difference-2.
map-difference-2.
map-intersection.
map-intersection.
map-union.
map-union.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
range-contains?.
reduce.
reduce.
restrict.
restrict-not.
This slot is read-only.
The abstract class for FSet functional maps. It is a structure class.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
count.
count-if.
count-if-not.
default.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
find.
find-if.
find-if-not.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
map-difference-2.
map-difference-2.
map-intersection.
map-intersection.
map-union.
map-union.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
range-contains?.
reduce.
reduce.
restrict.
restrict-not.
The abstract class for FSet relations. It is a structure class.
fset.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
The abstract class for FSet functional replay maps. It is a structure class. A replay map is like a map, except that its iteration order is the order in which members were added to it. It may not support all map operations.
The abstract class for FSet functional replay maps. It is a structure class. A replay map is like a map, except that its iteration order is the order in which members were added to it. It may not support all map operations.
The abstract class for FSet functional replay sets. It is a structure class. A replay set is like a set, except that its iteration order is the order in which members were added to it. It may not support all set operations.
The abstract class for FSet functional seqs (sequences, but we use the short name to avoid confusion with ‘cl:sequence’). It is a structure class.
fset.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
concat.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
count.
count-if.
count-if-not.
default.
domain-contains?.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
find.
find-if.
find-if-not.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
mismatch.
mismatch.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
position.
position-if.
position-if-not.
range-contains?.
reduce.
reduce.
remove.
remove-if.
remove-if-not.
search.
sort-and-group.
substitute.
substitute-if.
substitute-if-not.
This slot is read-only.
The abstract class for FSet functional seqs (sequences, but we use the short name to avoid confusion with ‘cl:sequence’). It is a structure class.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
concat.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
count.
count-if.
count-if-not.
default.
domain-contains?.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
find.
find-if.
find-if-not.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
mismatch.
mismatch.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
partition.
position.
position-if.
position-if-not.
range-contains?.
reduce.
reduce.
remove.
remove-if.
remove-if-not.
search.
sort-and-group.
substitute.
substitute-if.
substitute-if-not.
The abstract class for FSet functional sets. It is a structure class.
fset.
bag-difference.
bag-difference.
bag-product.
bag-product.
bag-sum.
bag-sum.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
complement.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
count.
count-if.
count-if-not.
disjoint?.
disjoint?.
disjoint?.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
find.
find-if.
find-if-not.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
intersection.
intersection.
intersection.
intersection.
intersection.
intersection.
intersection.
multiplicity.
partition.
partition.
reduce.
reduce.
restrict.
restrict.
restrict-not.
restrict-not.
set-difference.
set-difference.
set-difference.
set-difference-2.
set-difference-rev.
sort.
stable-sort.
subbag?.
subbag?.
subset?.
subset?.
subset?.
transitive-closure.
transitive-closure.
union.
union.
union.
union.
union.
union.
union.
The abstract class for FSet functional sets. It is a structure class.
bag-difference.
bag-difference.
bag-product.
bag-product.
bag-sum.
bag-sum.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
complement.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
count.
count-if.
count-if-not.
disjoint?.
disjoint?.
disjoint?.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
filter.
find.
find-if.
find-if-not.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
intersection.
intersection.
intersection.
intersection.
intersection.
intersection.
intersection.
multiplicity.
partition.
partition.
reduce.
reduce.
restrict.
restrict.
restrict-not.
restrict-not.
set-difference.
set-difference.
set-difference.
set-difference-2.
set-difference-rev.
sort.
stable-sort.
subbag?.
subbag?.
subset?.
subset?.
subset?.
transitive-closure.
transitive-closure.
union.
union.
union.
union.
union.
union.
union.
The abstract class for FSet functional tuples. It is a structure class.
fset.
at-rank.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
convert.
convert.
convert.
convert.
convert.
convert.
hash-value.
internal-do-tuple.
lookup.
lookup.
restrict.
restrict-not.
size.
tuple-merge.
with.
fset.
structure-object.
compare.
hash-value.
image.
image.
image.
image.
image.
image.
lookup.
lookup.
make-load-form.
print-object.
with.
This slot is read-only.
(quote fset::no-default)
common-lisp.
fixnum
This slot is read-only.
common-lisp.
t
A class of functional binary relations represented as pairs of weight- balanced binary trees. This is the default implementation of binary relations in FSet. The inverse is constructed lazily, and maintained incrementally once constructed.
fset.
arb.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
conflicts.
contains?.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
domain.
empty-relation-like.
empty?.
fun-iterator.
greatest.
hash-value.
internal-do-2-relation.
intersection.
inverse.
iterator.
join.
least.
less.
lookup.
lookup.
lookup-inv.
make-load-form.
print-object.
range.
size.
union.
verify.
with.
integer
0
This slot is read-only.
This slot is read-only.
fset::tree-map-org
This slot is read-only.
A class of functional bags (multisets) represented as weight-balanced binary trees. This is the default implementation of bags in FSet.
fset.
bag.
arb.
at-index.
at-rank.
bag-difference.
bag-difference.
bag-difference.
bag-product.
bag-product.
bag-product.
bag-sum.
bag-sum.
bag-sum.
compare.
compare-fn.
compare-fn-name.
contains?.
convert.
convert.
convert.
convert.
disjoint?.
disjoint?.
disjoint?.
disjoint?.
disjoint?.
empty-bag-like.
empty-set-like.
empty?.
fun-iterator.
greatest.
hash-value.
index.
internal-do-bag-pairs.
intersection.
intersection.
intersection.
iterator.
least.
less.
lookup.
lookup.
make-load-form.
multiplicity.
print-object.
rank.
rank.
set-size.
size.
split-above.
split-below.
split-from.
split-through.
subbag?.
union.
union.
union.
verify.
with.
This slot is read-only.
fset::tree-set-org
This slot is read-only.
A class of functional sets represented as weight-balanced binary trees, with a custom comparison function.
fset.
arb.
at-rank.
compare.
compare-fn.
compare-fn-name.
contains?.
convert.
disjoint?.
empty-set-like.
empty?.
filter.
filter.
filter.
filter.
filter.
filter.
fun-iterator.
greatest.
hash-value.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
internal-do-set.
intersection.
iterator.
least.
less.
lookup.
lookup.
make-load-form.
partition.
partition.
partition.
partition.
partition.
partition.
print-object.
rank.
rank.
set-difference.
set-difference-2.
set-difference-rev.
set-size.
size.
split-above.
split-below.
split-from.
split-through.
subset?.
union.
with.
fset::tree-set-org
This slot is read-only.
A class of functional relations of arbitrary arity >= 1, whose tuples are in list form.
A class of functional maps represented as weight-balanced binary trees. This is the default implementation of maps in FSet.
fset.
map.
arb.
at-index.
at-rank.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
contains?.
convert.
convert.
convert.
convert.
domain.
domain-contains?.
empty-map-like.
empty?.
filter.
filter.
filter.
filter.
fun-iterator.
greatest.
hash-value.
image.
image.
index.
internal-do-map.
iterator.
key-compare-fn.
key-compare-fn-name.
least.
less.
lookup.
lookup.
make-load-form.
map-difference-2.
map-difference-2.
map-image.
map-image.
map-intersection.
map-intersection.
map-union.
map-union.
print-object.
range.
rank.
rank.
restrict.
restrict-not.
size.
split-above.
split-below.
split-from.
split-through.
val-compare-fn.
val-compare-fn-name.
verify.
with.
with-default.
without-default.
This slot is read-only.
fset::tree-map-org
This slot is read-only.
A class of functional maps represented as weight-balanced binary trees. This is the default implementation of maps in FSet.
map.
arb.
at-index.
at-rank.
compare.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
compose.
contains?.
convert.
convert.
convert.
convert.
domain.
domain-contains?.
empty-map-like.
empty?.
filter.
filter.
filter.
filter.
fun-iterator.
greatest.
hash-value.
image.
image.
index.
internal-do-map.
iterator.
key-compare-fn.
key-compare-fn-name.
least.
less.
lookup.
lookup.
make-load-form.
map-difference-2.
map-difference-2.
map-image.
map-image.
map-intersection.
map-intersection.
map-union.
map-union.
print-object.
range.
rank.
rank.
restrict.
restrict-not.
size.
split-above.
split-below.
split-from.
split-through.
val-compare-fn.
val-compare-fn-name.
verify.
with.
with-default.
without-default.
A replay map is like a map, except that its iteration order is the order in which keys were first added to it. It does not support all map operations, but you can convert it to a map. Note that in the current implementation, ‘less’ on a replay map takes O(n) time. Also, two replay maps are equal only if they both contain the same pairs and have the same iteration order; if you just want to compare the contents, convert them to ordinary maps first. Replay maps are printed as "#{=| ... |}".
fset.
arb.
at-index.
compare.
convert.
convert.
convert.
convert.
convert.
convert.
domain.
domain-contains?.
empty?.
first.
greatest.
index.
key-compare-fn.
key-compare-fn-name.
last.
least.
less.
lookup.
lookup.
print-object.
size.
val-compare-fn.
val-compare-fn-name.
with.
with-default.
without-default.
This slot is read-only.
fset::tree-map-org
This slot is read-only.
A replay map is like a map, except that its iteration order is the order in which keys were first added to it. It does not support all map operations, but you can convert it to a map. Note that in the current implementation, ‘less’ on a replay map takes O(n) time. Also, two replay maps are equal only if they both contain the same pairs and have the same iteration order; if you just want to compare the contents, convert them to ordinary maps first. Replay maps are printed as "#{=| ... |}".
arb.
at-index.
compare.
convert.
convert.
convert.
convert.
convert.
convert.
domain.
domain-contains?.
empty?.
first.
greatest.
index.
key-compare-fn.
key-compare-fn-name.
last.
least.
less.
lookup.
lookup.
print-object.
size.
val-compare-fn.
val-compare-fn-name.
with.
with-default.
without-default.
A replay set is like a set, except that its iteration order is the order in which members were added to it. It does not support all set operations, but you can convert it to a set. Note that in the current implementation, ‘less’ on a replay set takes O(n) time. Also, two replay sets are equal only if they both contain the same elements and have the same iteration order; if you just want to compare the contents, convert them to ordinary sets first. Replay sets are printed as "#{= ... }".
fset.
arb.
at-index.
compare.
compare-fn.
compare-fn-name.
contains?.
convert.
convert.
convert.
convert.
empty?.
first.
greatest.
hash-value.
index.
intersection.
last.
least.
less.
lookup.
lookup.
print-object.
size.
union.
with.
This slot is read-only.
fset::tree-set-org
This slot is read-only.
A class of functional seqs (sequences, but we use the short name to avoid confusion with ‘cl:sequence’) represented as weight-balanced binary trees. This is the default implementation of seqs in FSet.
fset.
seq.
char-seq?.
compare.
compare-lexicographically.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
domain.
empty?.
first.
fun-iterator.
hash-value.
insert.
internal-do-seq.
iterator.
last.
less.
less-first.
less-last.
lookup.
lookup.
make-load-form.
print-object.
range.
reverse.
size.
sort.
splice.
stable-sort.
subseq.
verify.
with.
with-default.
with-first.
with-last.
without-default.
This slot is read-only.
A class of functional seqs (sequences, but we use the short name to avoid confusion with ‘cl:sequence’) represented as weight-balanced binary trees. This is the default implementation of seqs in FSet.
seq.
char-seq?.
compare.
compare-lexicographically.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
convert.
domain.
empty?.
first.
fun-iterator.
hash-value.
insert.
internal-do-seq.
iterator.
last.
less.
less-first.
less-last.
lookup.
lookup.
make-load-form.
print-object.
range.
reverse.
size.
sort.
splice.
stable-sort.
subseq.
verify.
with.
with-default.
with-first.
with-last.
without-default.
An abstract class for functional sets represented as weight-balanced binary trees.
A mixin class for classes whose instances will be used in FSet collections, and for which the appropriate equivalence relation is identity (‘eq’). This is the right choice for the vast majority of mutable classes.
fset.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
hash-value.
(setf serial-number).
serial-number.
(fset::increment-atomic-series fset::identity-equality-mixin-next-serial-number)
The old name of ‘identity-equality-mixin’. Mildly deprecated.
fset.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
compare.
hash-value.
(setf serial-number).
serial-number.
(fset::increment-atomic-series fset::identity-equality-mixin-next-serial-number)
This limits the number of tuple-keys that can exist in a session.
Controls how often we do tuple reordering. Must be 2^n - 1 for some n.
fset.
This limits the number of key/value pairs in any tuple.
The size threshold above which we convert the root node to HT form.
fset.
The size threshold below which we convert an HT root to non-HT form.
fset.
The reorder score that triggers a major reordering.
fset.
fset.
Defines a method on ‘convert’ for each of ‘to-types’. For each one, if it is not in the ‘fset’ package, and ‘parameter-list-rest’ contains ‘default’, replaces ‘default’ with the appropriate FSet 2 parameters, and binds ‘default’ around the body.
fset.
fset.
fset.
Here ‘iterable’ is any object for which there is a method on ‘iterator’, q.v.
Calls ‘iterator’ on ‘iterable’, passing no keyword arguments, to obtain an
iterator. Binds ‘var’ to the successive values returned by the iterator and
executes ‘body’. When done, returns ‘value’.
(To pass keyword arguments to the ‘iterator’ call, use ‘do-iterator’.)
fset.
Here ‘iter’ is any object that conforms to the FSet stateful iterator protocol; these are normally constructed by calling ‘iterator’, q.v. Binds ‘var’ to the successive values returned by the iterator and executes ‘body’. When done, returns ‘value’.
fset.
Here ‘iter’ is any object that conforms to the FSet stateful iterator protocol; these are normally constructed by calling ‘iterator’, q.v. Binds ‘var-a’ and ‘var-b’ to the successive pairs returned by the iterator as two values, and executes ‘body’. When done, returns ‘value’.
fset.
Internally, a seq is represented as a tree whose leaves are vectors, each either a ‘simple-vector’ or a ‘simple-string’. For each such vector in left- to-right order, binds ‘var’ to it and executes ‘body’.
fset.
fset.
Iterates over the pairs of the bag, for each one binding ‘val-var’ to the value and ‘count-var’ to its member count.
fset.
fset.
Iterates over the leaves of the seq tree. Each leaf is either a ‘simple-vector’ or a ‘simple-string’.
fset.
fset.
fset.
fset.
Duplicates ‘body’ in each branch of a ‘cond’ using ‘preds’, a list of forms, as the corresponding tests; signals an error the case where ‘preds’ are all false. Useful when ‘body’ can be optimized differently based on the value of each predicate. (The name should recall ‘ecase’ etc.)
fset.
Returns the result of "unmixing" each of ‘to-unmix’ from ‘hash’. All values MUST be fixnums; the result is a fixnum.
Forces the return of exactly ‘n’ values from ‘expr’. ‘n’ must be a compile-time constant.
fset.
Duplicates ‘body’ in each branch of a ‘cond’ using ‘preds’, a list of forms, as the corresponding tests, and once more for the case where ‘preds’ are all false. Useful when ‘body’ can be optimized differently based on the value of each predicate.
fset.
For each of ‘values’, if ‘var’ is ‘eql’ to it, binds it to that value around ‘body’. The ‘values’ are unevaluated constants. Useful when ‘body’ can be optimized differently depending on the value of ‘var’.
fset.
Assumes ‘var’ is bound to a string; if feature ‘FSet-Ext-Strings’ is set, duplicates ‘body’ in one context where ‘var’ holds a simple-base-string, and one where it doesn’t. If the feature is not set, this is just ‘progn’.
fset.
The number of 1 bits in ‘mask’ at bit positions (strictly) less than ‘idx’.
fset.
The number of values represented by ‘value’, which can be more than 1 if ‘key’ is an ‘Equivalent-Bag’.
fset.
A list of the indices of the 1 bits of ‘mask’, in ascending order.
fset.
fset.
fset.
Returns a new node with entry ‘ientry’ removed, and ‘new-subnode’ inserted just before ‘isubnode’.
fset.
Returns a new node with ‘new-subnode’ inserted just before ‘isubnode’.
fset.
Returns a new node with ‘new-subnode’ replacing the subnode at ‘isubnode’.
fset.
fset.
fset.
fset.
fset.
fset.
fset.
fset.
fset.
fset.
Returns a new node with entry ‘ientry’ removed, and ‘new-subnode’ inserted just before ‘isubnode’.
fset.
Returns a new node with ‘new-subnode’ inserted just before ‘isubnode’.
fset.
Returns a new node with ‘new-subnode’ replacing the subnode at ‘isubnode’.
fset.
On success, returns the set element as the second value.
fset.
fset.
Second value is true if the two abut. ‘:equal’ means they overlap.
fset.
Return a copy of SEQUENCE which is EQUAL to SEQUENCE but not EQ.
fset.
copy-seq.
Return a copy of SEQUENCE which is EQUAL to SEQUENCE but not EQ.
fset.
copy-seq.
fset.
fset.
fset.
fset.
fset.
fset.
fset.
Returns an empty ‘wb-set’ ordered according to ‘compare-fn-name’, which must be a symbol.
fset.
Compares two pairs where the key of either or both may be an ‘Equivalent-Bag’.
fset.
Both ‘val1’ and ‘val2’ may be single values or ‘Equivalent-Node’s of values. If their intersection is null, returns true, else false.
fset.
Compares two pairs where the key of either or both may be an ‘Equivalent-Map’.
fset.
Both ‘key1’ and ‘key2’ may be single values (representing a single key/value pair) or ‘Equivalent-Map’s of key/value pairs. That is, if ‘key1’ is a ‘Equivalent-Map’, ‘val1’ is ignored, and similarly for ‘key2’ and ‘val2’. If the difference is nonnull, returns two or three values: if it is a single pair, returns true, the key, and the value; if it is more than one pair, returns true and an ‘Equivalent-Map’ of the pairs. If the difference is empty, returns false.
fset.
Both ‘key1’ and ‘key2’ may be single values (representing a single key/value pair) or ‘Equivalent-Map’s of key/value pairs. That is, if ‘key1’ is a ‘Equivalent-Map’, ‘val1’ is ignored, and similarly for ‘key2’ and ‘val2’. If the intersection is nonnull, returns two or three values: if it is a single pair, returns true, the key, and the value; if it is more than one pair, returns true and an ‘Equivalent-Map’ of the pairs. If the intersection is null, returns false.
fset.
Removes the pair associated with ‘key’ from ‘eqvm’, an ‘Equivalent-Map’. If the result is a single pair, it’s returned as two values; otherwise one value is returned, which is an ‘Equivalent-Map’. If a pair is removed, its value is returned as the third value.
fset.
Both ‘key1’ and ‘key2’ may be single values (representing a single key/value pair) or ‘Equivalent-Map’s of key/value pairs. That is, if ‘key1’ is a ‘Equivalent-Map’, ‘val1’ is ignored, and similarly for ‘key2’ and ‘val2’. Returns one or more new key/value pairs in which the "2" pairs override the "1" pairs. If the result is a single pair, it’s returned as two values; otherwise one value is returned, which is an ‘Equivalent-Map’.
fset.
‘key1’ may be either a single value (representing a single key/value pair) or an ‘Equivalent-Map’ of key/value pairs. That is, if ‘key1’ is an ‘Equivalent-Map’, ‘val1’ is ignored. Returns one or more new key/value pairs in which the value associated with ‘key2’ is the result of calling ‘value-fn’ on (a) either the previous such value, if any, or else ‘default’, and (b) ‘second-arg’. If the result is a single pair, it’s returned as two values; otherwise one value is returned, which is an ‘Equivalent-Map’.
fset.
Both ‘val1’ and ‘val2’ may be single values (representing singleton sets) or ‘Equivalent-Set’s of values. If their difference is nonnull, returns two values: true, and the difference, represented as a single value if a singleton, else as an ‘Equivalent-Set’. If the difference is null, returns ‘nil’.
fset.
Both ‘val1’ and ‘val2’ may be single values (representing singleton sets) or ‘Equivalent-Set’s of values. If their intersection is null, returns true, else false.
fset.
Both ‘val1’ and ‘val2’ may be single values (representing singleton sets) or ‘Equivalent-Set’s of values. If their intersection is nonnull, returns two values: true, and the intersection, represented as a single value if a singleton, else as an ‘Equivalent-Set’. If the intersection is null, returns ‘nil’.
fset.
Both ‘val1’ and ‘val2’ may be single values (representing singleton sets) or ‘Equivalent-Set’s of values. Returns true iff ‘val2’ contains all members of ‘val1’.
fset.
Both ‘val1’ and ‘val2’ may be single values (representing singleton sets) or ‘Equivalent-Set’s of values. Returns their union represented as a single value if a singleton, else as an ‘Equivalent-Set’.
fset.
True if ‘b’ and all of ‘more’ are boolean-equal to ‘a‘, i.e., all null or all nonnull. (Not the even-parity function.)
fset.
fset.
fset.
fset.
fset.
fset.
fset.
fset.
fset.
fset.
The low-level constructor for a bag tree node. ‘count’ is ignored and can be ‘nil’ if value is an ‘Equivalent-Bag’.
fset.
The low-level constructor for a map tree node.
fset.
The low-level constructor for a sequence tree node.
fset.
The low-level constructor for a set tree node.
fset.
The number of domain values represented by ‘key’, which can be more than 1 if ‘key’ is an ‘Equivalent-Map’.
fset.
fset.
Returns a list of those members of ‘tuple’ corresponding to instantiated positions in the original pattern.
fset.
fset.
The number of members represented by ‘value’, which can be more than 1 if ‘value’ is an ‘Equivalent-Node’.
fset.
Returns a new string like ‘str’ but with ‘ch’ inserted at ‘idx’. Careful – does no bounds checking on ‘str’, which it assumes is simple. As a convenience, accepts ‘nil’ for an empty ‘str’.
fset.
The element-type of a new string with ‘ch’ being added to the contents of ‘str’.
fset.
Returns a subsequence of ‘str’ between ‘start’ and ‘end’. Careful – does no bounds checking on ‘str’, which it assumes is simple.
fset.
Takes the subsequence of ‘str’ from ‘start’ to ‘end’, then at ‘idx’ within the result, inserts ‘ch’, returning the new string.
fset.
Simple tests on the Complement Sets operations
fset.
Simple tests on List-Relations and Query-Registries.
fset.
Tests some things that don’t need extensive random test cases generated.
fset.
Tests some things that don’t need extensive random test cases generated.
fset.
Tests some things that don’t need extensive random test cases generated.
fset.
Tests some things that don’t need extensive random test cases generated.
fset.
fset.
fset.
fset.
Returns a new vector like ‘vec’ but with ‘val’ inserted at ‘idx’. Careful – does no bounds checking on ‘vec’, which it assumes is simple.
fset.
Returns a new vector like ‘str’ (a string) but with ‘val’ inserted at ‘idx’. Careful – does no bounds checking on ‘str’, which it assumes is simple.
fset.
Searches a vector set ‘vec’ for ‘value’. Returns two values, a symbol and an index. If ‘value’, or a value equivalent to ‘value’, is in ‘vec’, the symbol is ‘:equal’ resp. ‘:unequal’, and the index is the position of the value; otherwise, the symbol is ‘nil’ and the index is where ‘value’ would go if it were to be inserted.
fset.
Returns the index of the right edge of the last member of ‘vec’ that is below ‘hi’.
fset.
Returns the index of the left edge of the first member of ‘vec’ that is above ‘lo’.
fset.
Returns, as a vector, the set difference of vectors ‘vec1’ less ‘vec2’, restricted to those members above ‘lo’ and below ‘hi’.
fset.
Returns, as two vector values, the set difference of vectors ‘str1’ less ‘str2’ and that of ‘str2’ less ‘str1’, restricted to those members above ‘lo’ and below ‘hi’.
fset.
Returns true iff ‘vec1’ does not contain any member of ‘vec2’, restricted to those members above ‘lo’ and below ‘hi’.
fset.
Returns, as a vector, the intersection of vectors ‘vec1’ and ‘vec2’, restricted to those members above ‘lo’ and below ‘hi’.
fset.
Returns true iff ‘vec2’ contains all members of ‘vec1’, restricted to those members above ‘lo’ and below ‘hi’. ‘vec2’ may be ‘nil’.
fset.
Returns, as a vector, the union of vectors ‘vec1’ and ‘vec2’, restricted to those members above ‘lo’ and below ‘hi’.
fset.
Returns a subsequence of ‘vec’ between ‘start’ and ‘end’, or ‘nil’ if the result would be of zero length. Careful – does no bounds checking on ‘vec’, which it assumes is simple.
fset.
Returns a subsequence of ‘vec’ between ‘start’ and ‘end’, or ‘nil’ if the result would be of zero length. Careful – does no bounds checking on ‘vec’, which it assumes is simple. Returns a string or base-string if possible.
fset.
Returns a subsequence of ‘vec’ between ‘start’ and ‘end’, or ‘nil’ if the result would be of zero length. Careful – does no bounds checking on ‘vec’, which it assumes is simple. Returns a string or base-string if possible.
fset.
Returns a new vector like ‘vec’ but with ‘val’ at ‘idx’.
fset.
Returns a new vector like ‘vec’ but with ‘val’ at ‘idx’. If the elements of the result are all characters, returns a string instead.
fset.
fset.
Returns an arbitrary member of the bag and its count. Assumes the bag is nonempty.
fset.
Constructs a ‘WB-Bag-Tree’, performing one rebalancing step if required. ‘value’ must already be known to go between ‘left’ and ‘right’.
fset.
Returns the bag difference of ‘tree1’ less ‘tree2’. Runs in time linear in the total sizes of the two trees.
fset.
Returns the bag difference of ‘tree1’ less ‘tree2’, considering only those members that are above ‘lo’ and below ‘hi’, and assuming that the root values of ‘tree1’ and ‘tree2’ are in this range.
fset.
If ‘tree’ contains one or more values equivalent to ‘value’, returns (first value) true, (second value) either the one value or an ‘Equivalent-Bag’ containing the values, and (third value) if the second value was a single value, the corresponding count; otherwise ‘nil’.
fset.
Assumes ‘tree’ is nonempty. Returns the greatest member, or an arbitrary greatest member if there are more than one; the second value is the associated multiplicity.
fset.
Returns the intersection of ‘tree1’ with ‘tree2’, considering only those members that are above ‘lo’ and below ‘hi’, and assuming that the root values of ‘tree1’ and ‘tree2’ are in this range.
fset.
Assumes ‘tree’ is nonempty. Returns the least member, or an arbitrary least member if there are more than one; the second value is the associated count.
fset.
Returns ‘tree’ with the count for ‘value’ decremented; if that count was 1, ‘value’ is removed entirely.
fset.
Assumes ‘tree’ is nonempty. Returns a new tree with the minimum value removed.
fset.
Assumes ‘tree’ is nonempty. Returns the minimum value and count as two values. The value may be an ‘Equivalent-Bag’, in which case, as usual, the count is not meaningful.
fset.
Returns the multiplicity of ‘value’ in ‘tree’, or 0 if ‘value’ does not appear in ‘tree’. As a second value, returns the value found, if any.
fset.
Print function for ‘WB-Bag-Tree-Node’, q.v.
fset.
Returns the Production of ‘tree1’ with ‘tree2’, considering only those members that are above ‘lo’ and below ‘hi’, and assuming that the root values of ‘tree1’ and ‘tree2’ are in this range.
fset.
Searches a bag tree ‘tree’ for ‘value’. Returns two values, a boolean and an index. If ‘value’, or a value equivalent to ‘value’, is in ‘tree’, the symbol is true, and the index is the rank of the value; otherwise, the boolean is false and the index is the rank ‘value’ would have if it were to be added. Note that if the bag contains equivalent-but-unequal elements, the rank of each of several such elements is guaranteed consistent only within the same tree (by ‘eq’), not between equal trees.
fset.
The number of value/count pairs contained in this tree.
fset.
Returns the sum of ‘tree’ and ‘tree2’.
fset.
Returns the union of ‘tree’ and ‘tree2’.
fset.
Returns ‘tree’ with ‘value’ added with a count of ‘count’ (if it was already present, its count is incremented by ‘count’). ‘value’ may be an ‘Equivalent-Bag’.
fset.
The arguments can be HT trees, but do not have to be. The result also may or may not be an HT tree.
fset.
As a second value, returns true iff ‘tree’ contains only characters.
fset.
fset.
fset.
fset.
Selects an arbitrary pair of the map. Assumes it is nonnull.
fset.
Constructs a ‘WB-Map-Tree’, performing one rebalancing step if required. ‘key’ must already be known to go between ‘left’ and ‘right’.
fset.
fset.
Returns two values: one containing the pairs that are in ‘tree1’ but not ‘tree2’, and the other containing the pairs that are in ‘tree2’ but not ‘tree1’.
fset.
If ‘tree’ contains one or more keys equivalent to ‘value’, returns (first value) true, (second value) either the one key or an ‘Equivalent-Map’ containing the values, and (third value) if the second value was a single key, the corresponding value; otherwise ‘nil’.
fset.
fset.
fset.
Assumes ‘tree’ is nonempty. Returns the greatest key and its value, or an arbitrary greatest key and its value if there are more than one.
fset.
fset.
Assumes ‘tree’ is nonempty. Returns the least key and its value, or an arbitrary least key and its value if there are more than one.
fset.
Returns a new tree like ‘tree’, but with any entry for ‘key’ removed. If such an entry was found, returns the associated value as a second value.
fset.
Assumes ‘tree’ is nonempty. Returns a new tree with the minimum key/value pair removed.
fset.
If ‘tree’ contains a pair whose key is equal to ‘key’, returns three values: true, the associated value, and the key found; otherwise ‘nil’.
fset.
Assumes ‘tree’ is nonempty. Returns the minimum key and value as two values. The key may be an ‘Equivalent-Map’, in which case, as usual, the value is not meaningful.
fset.
Print function for ‘WB-Map-Tree-Node’, q.v.
fset.
Searches a map tree ‘tree’ for ‘key’. Returns two values, a boolean and an index. If ‘key’, or a value equivalent to ‘key’, is in ‘tree’, the boolean is true, and the index is the rank of the value; otherwise, the boolean is false and the index is the rank ‘key’ would have if it were to be added. Note that if the map contains equivalent-but-unequal keys, the rank of each of several such keys is guaranteed consistent only within the same tree (by ‘eq’), not between equal trees.
fset.
The number of key/value pairs contained in this tree.
fset.
fset.
Returns a new tree like ‘tree’, except that the value associated with ‘key’ is the result of calling ‘value-fn’ on either the existing such value, if any, or else ‘default’.
fset.
fset.
Returns a new tree like ‘tree’ but with the pair < ‘key’, ‘value’ > added, shadowing any previous pair with the same key.
fset.
fset.
Canonicalizes after insertion by possibly converting to an HT node.
fset.
Accepts HT trees.
fset.
Always returns a ‘WB-Seq-Tree’, not an HT tree.
fset.
Print function for ‘WB-Seq-Tree-Node’, q.v.
fset.
As a second value, returns true iff ‘tree’ contains only characters.
fset.
Selects an arbitrary member of the set. Assumes ‘tree’ is nonnull.
fset.
Constructs a ‘WB-Set-Tree’, performing one rebalancing step if required. ‘value’ must already be known to go between ‘left’ and ‘right’.
fset.
Corresponds to Adams’ ‘concat3’. Assumes that (all values in ‘left’) <= ‘value’ <= (all values in ‘right’); returns a new tree containing all values. This does more rebalancing than ‘WB-Set-Tree-Build-Node’, which otherwise has the same contract. ‘value’ may be an ‘Equivalent-Set’.
fset.
Returns true iff ‘value’ is a member of ‘tree’.
fset.
Returns the set difference of ‘tree1’ less ‘tree2’. Runs in time linear in the total sizes of the two trees.
fset.
Returns two values: the set difference of ‘tree1’ less ‘tree2’, and that of ‘tree2’ less ‘tree1’. Runs in time linear in the total sizes of the two trees.
fset.
Returns two values: the set difference of ‘tree1’ less ‘tree2’, and that of ‘tree2’ less ‘tree1’, considering only those members that are above ‘lo’ and below ‘hi’, and assuming that the root values of ‘tree1’ and ‘tree2’ are in this range.
fset.
Returns the set difference of ‘tree1’ less ‘tree2’, considering only those members that are above ‘lo’ and below ‘hi’, and assuming that the root values of ‘tree1’ and ‘tree2’ are in this range.
fset.
If ‘tree’ contains a value equal to ‘value’, returns (first value) true and (second value) the value; otherwise ‘nil’.
fset.
If ‘tree’ contains one or more values equivalent to ‘value’, returns (first value) true and (second value) either the one value or an ‘Equivalent-Set’ containing the values; otherwise ‘nil’.
fset.
Assumes ‘tree’ is nonempty. Returns the greatest member, or an arbitrary greatest member if there are more than one.
fset.
Returns the intersection of ‘tree1’ and ‘tree2’. Runs in time linear in the total sizes of the two trees.
fset.
Returns the intersection of ‘tree1’ with ‘tree2’, considering only those members that are above ‘lo’ and below ‘hi’, and assuming that the root values of ‘tree1’ and ‘tree2’ are in this range.
fset.
Returns the union of ‘left’ and ‘right’ under the assumption that all values in ‘left’ are less than any value in ‘right’.
fset.
Assumes ‘tree’ is nonempty. Returns the least member, or an arbitrary least member if there are more than one.
fset.
Assumes ‘tree’ is nonempty. Returns a new tree with the minimum value or ‘Equivalent-Set’ removed.
fset.
Assumes ‘tree’ is nonempty. Returns the minimum value. This may be an ‘Equivalent-Set’.
fset.
Print function for ‘WB-Set-Tree-Node’, q.v.
fset.
Searches a set tree ‘tree’ for ‘value’. Returns two values, a boolean and an index. If ‘value’, or a value equivalent to ‘value’, is in ‘tree’, the boolean is true, and the index is the rank of the value; otherwise, the boolean is false and the index is the rank ‘value’ would have if it were to be added. Note that if the set contains equivalent-but-unequal elements, the rank of each of several such elements is guaranteed consistent only within the same tree (by ‘eq’), not between equal trees.
fset.
The number of members contained in this tree.
fset.
Corresponds to Adams’ ‘split_lt’ and ‘split_gt’. Returns a tree containing those members of ‘tree’ above ‘lo’ and below ‘hi’.
fset.
Corresponds to Adams’ ‘trim’ and variants. Removes any tree nodes whose values are less than ‘lo’ or greater than ‘hi’. Note, this does _not_ guarantee that the result only contains values between ‘lo’ and ‘hi’; use ‘-Split’ for that. This, however, doesn’t cons.
fset.
Returns the union of ‘tree1’ and ‘tree2’. Runs in time linear in the total sizes of the two trees.
fset.
Returns the union of ‘tree1’ with ‘tree2’, considering only those members that are above ‘lo’ and below ‘hi’, and assuming that the root values of ‘tree1’ and ‘tree2’ are in this range.
fset.
Returns the union of vectors ‘vec1’ and ‘vec2’, restricted to those members above ‘lo’ and below ‘hi’. Creates new set tree nodes if needed, either because the result exceeds the vector threshold size, or because one or more pairs of equivalent members were found.
fset.
If ‘value’ is in ‘tree’, returns ‘tree’; otherwise returns ‘tree’ with ‘value’ added. ‘value’ may be an ‘Equivalent-Node’.
fset.
fset.
ch-replay-set)) ¶wb-replay-set)) ¶wb-custom-set)) ¶wb-default-set)) ¶fset.
ch-replay-set)) ¶wb-replay-set)) ¶wb-custom-set)) ¶wb-default-set)) ¶fset.
ch-2-relation)) ¶wb-2-relation)) ¶Returns a functional iterator for the collection. (These iterators are
thread-safe.) The iterator is a function of one argument; given ‘:empty?’, it
returns true iff the iterator is exhausted; given ‘:more?’, it returns true iff
the iterator is _not_ exhausted. Given ‘:first’, if it is not exhausted, it
returns the next element (pair, for a map, as two values), with an additional
true value; if it is exhausted, it returns two (three, for a map) ‘nil’
values. Given ‘:rest’, if it is not exhausted, it returns an iterator for the
rest of the collection.
If ‘from-end?’ is true, the collection is iterated in reverse order. The bag method also takes a ‘pairs?’ keyword argument; if true, it returns each element only once, with its multiplicity as the second value, as for a map.
fset.
ch-2-relation) &key from-end?) ¶wb-2-relation) &key from-end?) ¶wb-custom-set) &key from-end?) ¶wb-default-set) &key from-end?) ¶sequence) &key from-end?) ¶string) &key from-end?) ¶vector) &key from-end?) ¶list) &key from-end?) ¶fset.
ch-list-relation) mask) ¶Returns a seq of size equal to the arity of ‘rel’. For each 1 bit in ‘mask’, the corresponding result element is the index to use for that tuple position. Indices are returned as internal ch-map trees.
wb-list-relation) mask) ¶Returns a seq of size equal to the arity of ‘rel’. For each 1 bit in ‘mask’, the corresponding result element is the index to use for that tuple position. Indices are returned as internal wb-map trees.
fset.
ch-2-relation) elt-fn value-fn) ¶wb-2-relation) elt-fn value-fn) ¶fset.
query-registry) elt-fn value-fn) ¶Calls ‘elt-fn’ on successive pairs of the bag (the second argument is
the multiplicity); when done, calls ‘value-fn’ on no arguments and returns the
result(s). This is called by ‘do-bag’ to provide for the possibility of
different bag implementations; it is not for public use. ‘elt-fn’ and
‘value-fn’ must be function objects, not symbols.
fset.
ch-list-relation) elt-fn value-fn) ¶wb-list-relation) elt-fn value-fn) ¶Calls ‘elt-fn’ on successive pairs of the map (as two arguments); when done, calls ‘value-fn’ on no arguments and returns the result(s). This is called by ‘do-map’ to provide for the possibility of different map implementations; it is not for public use. ‘elt-fn’ and ‘value-fn’ must be function objects, not symbols.
fset.
replay-map) elt-fn value-fn) ¶Calls ‘elt-fn’ on successive elements of ‘seq’, possibly restricted by ‘start’ and ‘end’, and in reverse order if ‘from-end?’ is true. When done, calls ‘value-fn’ on no arguments and returns the result(s). This is called by ‘do-seq’ to provide for the possibility of different seq implementations; it is not for public use. ‘elt-fn’ and ‘value-fn’ must be function objects, not symbols.
Internally, a seq is represented as a tree whose leaves are vectors, each either a ‘simple-vector’ or a ‘simple-string’. Calls ‘vec-fn’ on successive vectors of ‘seq’. When done, calls ‘value-fn’ on no arguments and returns the result(s). This is called by ‘do-seq-chunks’ to provide for the possibility of different seq implementations; it is not for public use. ‘vec-fn’ and ‘value-fn’ must be function objects, not symbols.
Calls ‘elt-fn’ on successive elements of the set; when done, calls ‘value-fn’ on no arguments and returns the result(s). This is called by ‘do-set’ to provide for the possibility of different set implementations; it is not for public use. ‘elt-fn’ and ‘value-fn’ must be function objects, not symbols.
fset.
bounded-set) elt-fn value-fn) ¶complement-set) elt-fn value-fn) ¶replay-set) elt-fn value-fn) ¶wb-custom-set) elt-fn value-fn) ¶wb-default-set) elt-fn value-fn) ¶Calls ‘elt-fn’ on successive pairs of the tuple (as two arguments); when done, calls ‘value-fn’ on no arguments and returns the result(s). This is called by ‘do-tuple’ to provide for the possibility of different tuple implementations; it is not for public use. ‘elt-fn’ and ‘value-fn’ must be function objects, not symbols.
fset.
fset.
ch-replay-map)) ¶wb-replay-map)) ¶fset.
ch-replay-map)) ¶wb-replay-map)) ¶fset.
interval-set) lower upper lower-closed? upper-closed?) ¶fset.
my-identity-ordered-obj)) ¶automatically generated reader method
fset.
my-identity-ordered-obj)) ¶automatically generated writer method
fset.
my-sequence)) ¶automatically generated reader method
fset.
my-sequence)) ¶automatically generated writer method
fset.
my-unhandled-obj)) ¶automatically generated reader method
fset.
my-unhandled-obj)) ¶automatically generated writer method
fset.
identity-ordering-mixin)) ¶automatically generated reader method
identity-equality-mixin)) ¶automatically generated reader method
fset.
identity-ordering-mixin)) ¶automatically generated writer method
identity-equality-mixin)) ¶automatically generated writer method
fset.
wb-custom-set) (s2 wb-custom-set)) ¶wb-default-set) (s2 wb-default-set)) ¶The transitive closure of the set over the relation. The relation may also be supplied as a function returning a set.
fset.
2-relation) (s set)) ¶fset.
tuple-default-type-error)) ¶fset.
tuple-value-type-error)) ¶key.
fset.
ch-replay-map)) ¶wb-replay-map)) ¶fset.
ch-replay-map)) ¶wb-replay-map)) ¶fset.
interval-set) lower upper lower-closed? upper-closed?) ¶A class of functional relations of arbitrary arity >= 1, whose tuples are in list form.
A "complement set" is the complement of an ordinary set. It’s infinite, so it can’t be enumerated as is. But its complement is ordinary, of course, as is its intersection with an ordinary set, and the difference of it and another complement set.
fset.
set.
arb.
compare.
compare.
compare.
complement.
contains?.
disjoint?.
disjoint?.
disjoint?.
hash-value.
internal-do-set.
intersection.
intersection.
intersection.
less.
make-load-form.
print-object.
set-difference.
set-difference.
set-difference.
size.
subset?.
subset?.
subset?.
union.
union.
union.
with.
This slot is read-only.
fset.
structure-object.
symbol
This slot is read-only.
function
This slot is read-only.
function
This slot is read-only.
function
This slot is read-only.
function
This slot is read-only.
function
This slot is read-only.
function
This slot is read-only.
fset.
structure-object.
symbol
This slot is read-only.
function
This slot is read-only.
function
This slot is read-only.
symbol
This slot is read-only.
function
This slot is read-only.
function
This slot is read-only.
fset.
structure-object.
symbol
This slot is read-only.
function
This slot is read-only.
function
This slot is read-only.
function
This slot is read-only.
fset.
structure-object.
symbol
This slot is read-only.
function
This slot is read-only.
symbol
This slot is read-only.
function
This slot is read-only.
Defines an ordering to be used by ‘wb-custom-set’. The name is used when printing instances.
fset.
structure-object.
This slot is read-only.
simple-vector
(vector)
This slot is read-only.
This slot is read-only.
(fset:empty-ch-map nil (quote fset::tuple-desc-compare) (quote fset:eql-compare))
(fset:empty-ch-map nil (quote fset::key-compare) (quote fset:eql-compare))
fixnum
0
This slot is read-only.
fset.
structure-object.
fset::wb-bag-tree
This slot is read-only.
fset::wb-bag-tree
This slot is read-only.
This slot is read-only.
integer
0
This slot is read-only.
integer
0
This slot is read-only.
fixnum
0
This slot is read-only.
A class of functional sets represented as weight-balanced binary trees, and ordered by ‘fset:compare’. This is the default implementation of sets in FSet.
fset.
arb.
at-rank.
compare.
compare-fn.
compare-fn-name.
contains?.
convert.
disjoint?.
empty-set-like.
empty?.
filter.
filter.
filter.
filter.
filter.
filter.
fun-iterator.
greatest.
hash-value.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
image.
internal-do-set.
intersection.
iterator.
least.
less.
lookup.
lookup.
make-load-form.
partition.
partition.
partition.
partition.
partition.
partition.
print-object.
rank.
rank.
set-difference.
set-difference-2.
set-difference-rev.
set-size.
size.
split-above.
split-below.
split-from.
split-through.
subset?.
union.
with.
fset.
structure-object.
fset::symmetric-fixnum
0
This slot is read-only.
(or null simple-vector simple-string)
fset::wb-seq-tree
(or null simple-vector simple-string)
fset.
structure-object.
fset::wb-map-tree
This slot is read-only.
fset::wb-map-tree
This slot is read-only.
This slot is read-only.
This slot is read-only.
fixnum
0
This slot is read-only.
fset.
structure-object.
fset::symmetric-fixnum
0
This slot is read-only.
fset::wb-seq-tree
This slot is read-only.
fset::wb-seq-tree
This slot is read-only.
fset.
structure-object.
fset::wb-set-tree
This slot is read-only.
fset::wb-set-tree
This slot is read-only.
This slot is read-only.
fixnum
0
This slot is read-only.
Object that has identity ordering
An example of an SBCL user-defined sequence class
Object on which we have defined no FSet methods.
Excludes ‘most-negative-fixnum’, so negating it doesn’t need to check for overflow.
fset.
| Jump to: | #
(
1
2
@
A B C D E F G H I J K L M N O P Q R S T U V W X Z |
|---|
| Jump to: | #
(
1
2
@
A B C D E F G H I J K L M N O P Q R S T U V W X Z |
|---|
| Jump to: | *
+
A B C D E H I K L M N O P R S T U V W |
|---|
| Jump to: | *
+
A B C D E H I K L M N O P R S T U V W |
|---|
| Jump to: | 2
A B C D E F H I L M N O P Q R S T W |
|---|
| Jump to: | 2
A B C D E F H I L M N O P Q R S T W |
|---|