The cl-hamt Reference Manual

This is the cl-hamt Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 15:19:11 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 cl-hamt

Dictionary & set data structure using hash array-mapped tries

Author

Daniel Shapero <>

License

BSD 3-clause

Dependency

cl-murmurhash (system).

Source

cl-hamt.asd.

Child Component

src (module).


3 Modules

Modules are listed depth-first from the system components tree.


3.1 cl-hamt/src

Source

cl-hamt.asd.

Parent Component

cl-hamt (system).

Child Components

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


4.1 Lisp


4.1.1 cl-hamt/cl-hamt.asd

Source

cl-hamt.asd.

Parent Component

cl-hamt (system).

ASDF Systems

cl-hamt.


4.1.2 cl-hamt/src/package.lisp

Source

cl-hamt.asd.

Parent Component

src (module).

Packages

cl-hamt.


4.1.3 cl-hamt/src/util.lisp

Dependency

package.lisp (file).

Source

cl-hamt.asd.

Parent Component

src (module).

Internals

4.1.4 cl-hamt/src/hamt.lisp

Dependency

util.lisp (file).

Source

cl-hamt.asd.

Parent Component

src (module).

Internals

4.1.5 cl-hamt/src/hash-dict.lisp

Dependency

hamt.lisp (file).

Source

cl-hamt.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.6 cl-hamt/src/hash-set.lisp

Dependency

hash-dict.lisp (file).

Source

cl-hamt.asd.

Parent Component

src (module).

Public Interface
Internals

5 Packages

Packages are listed by definition order.


5.1 cl-hamt

Source

package.lisp.

Nickname

hamt

Use List

common-lisp.

Public Interface
Internals

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


6.1 Public Interface


6.1.1 Ordinary functions

Function: dict->alist (dict)
Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-eq (dict1 dict2 &key value-test)
Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-filter (predicate dict)

Return a new dict consisting of the key/value pairs satisfying the given predicate.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-insert (dict &rest args)

Return a new dictionary with the key/value pairs added. The key/value pairs are assumed to be alternating in the &rest argument, so to add the key/value pairs (k1, v1), ..., (kn, vn), one would invoke
(dict-insert dict k1 v1 ... kn vn).
If any of the keys are already present in the dict passed, they are mapped to the new values in the returned dict.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-lookup (dict key)

Multiply-return the value mapped to by the key in the dictionary and whether or not the value is present in the dictionary.
The multiple return is necessary in case a key is present but maps to nil.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-map-keys (func dict &key test hash)

Return a new dict with the keys mapped by the given function.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-map-values (func dict &key test hash)

Return a new dict with the values mapped by the given function. Optionally use new comparison and hash functions for the mapped dict.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-reduce (func dict initial-value)

Successively apply a function to key/value pairs of the dict.
The function is assumed to have the signature
‘func :: A K V -> A‘,
where ‘A‘ is the type of the initial-value, ‘K‘ is the type of the dict keys and ‘V‘ is the type of dictionary values.
Note that HAMTs do not store items in any order, so the reduction operation cannot be sensitive to the order in which the items are reduced.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-reduce-keys (func dict initial-value)

Reducing over dictionary keys, ignoring the values.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-reduce-values (func dict initial-value)

Reducing over dictionary values, ignoring the keys.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-remove (dict &rest keys)

Return a new dict with the keys removed. Any keys passed that are not already present in the dict are ignored.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: dict-size (dict)

Return the number of key/value pairs in the dict

Package

cl-hamt.

Source

hash-dict.lisp.

Function: empty-dict (&key test hash)

Return an empty hash-dict, in which keys will be compared and hashed with the supplied test and hash functions. The hash must be a 32-bit hash.

Package

cl-hamt.

Source

hash-dict.lisp.

Function: empty-set (&key test hash)

Return an empty hash-set, in which elements will be compared and hashed with the supplied test and hash functions. The hash must be a 32-bit hash.

Package

cl-hamt.

Source

hash-set.lisp.

Function: set->list (set)
Package

cl-hamt.

Source

hash-set.lisp.

Function: set-diff (set &rest args)
Package

cl-hamt.

Source

hash-set.lisp.

Function: set-eq (set1 set2)
Package

cl-hamt.

Source

hash-set.lisp.

Function: set-filter (predicate set)

Return the elements of the set satisfying a given predicate.

Package

cl-hamt.

Source

hash-set.lisp.

Function: set-insert (set &rest xs)

Return a new set with the elements xs added to it. Elements already in the set are ignored.

Package

cl-hamt.

Source

hash-set.lisp.

Function: set-intersection (set &rest args)
Package

cl-hamt.

Source

hash-set.lisp.

Function: set-lookup (set x)

Return true if the object x is in the set, false otherwise

Package

cl-hamt.

Source

hash-set.lisp.

Function: set-map (func set &key test hash)

Return the image of a set under a given function. Optionally use new comparison and hash functions for the mapped set.

Package

cl-hamt.

Source

hash-set.lisp.

Function: set-reduce (func set initial-value)

Successively apply a function to elements of the set. The function is assumed to have the signature
‘func :: A B -> A‘,
where A is the type of ‘initial-value‘ and ‘B‘ is the type of set elements. Note that HAMTs do not store items in any order, so the reduction operation cannot be sensitive to the order in which the items are reduced.

Package

cl-hamt.

Source

hash-set.lisp.

Function: set-remove (set &rest xs)

Return a new set with the elements xs removed from it. If an item x in xs is not in the set, it is ignored.

Package

cl-hamt.

Source

hash-set.lisp.

Function: set-size (set)

Return the size of the set

Package

cl-hamt.

Source

hash-set.lisp.

Function: set-symmetric-diff (set1 set2)
Package

cl-hamt.

Source

hash-set.lisp.

Function: set-union (set &rest args)
Package

cl-hamt.

Source

hash-set.lisp.


6.1.2 Classes

Class: hash-dict
Package

cl-hamt.

Source

hash-dict.lisp.

Direct superclasses

hamt.

Direct methods

hamt-table.

Direct slots
Slot: table
Initform

(make-instance (quote cl-hamt::dict-table) :bitmap 0 :table (make-array 0))

Initargs

:table

Readers

hamt-table.

Writers

This slot is read-only.

Class: hash-set
Package

cl-hamt.

Source

hash-set.lisp.

Direct superclasses

hamt.

Direct methods

hamt-table.

Direct slots
Slot: table
Initform

(make-instance (quote cl-hamt::set-table) :bitmap 0 :table (make-array 0))

Initargs

:table

Readers

hamt-table.

Writers

This slot is read-only.


6.2 Internals


6.2.1 Macros

Macro: with-hamt (hamt (&key test hash table) &body body)

Accessing HAMT slots

Package

cl-hamt.

Source

hamt.lisp.

Macro: with-table (node hash depth (bitmap array bits index hit) &body body)

Bitshifting in HAMT tables

Package

cl-hamt.

Source

hamt.lisp.


6.2.2 Ordinary functions

Function: alist-remove (key alist test)
Package

cl-hamt.

Source

hash-dict.lisp.

Function: array-eq (arr1 arr2 test)
Package

cl-hamt.

Source

hamt.lisp.

Function: dict-clone (dict test hash)
Package

cl-hamt.

Source

hash-dict.lisp.

Function: get-bits (hash depth)

Extract bits 5*depth : 5*(depth+1) from the number hash.

Package

cl-hamt.

Source

util.lisp.

Function: get-index (bits bitmap)

Given the 5-bit int extracted from a hash at the present depth, find the index in the current array corresponding to this bit sequence.

Package

cl-hamt.

Source

util.lisp.

Function: vec-insert (vec pos item)
Package

cl-hamt.

Source

util.lisp.

Function: vec-remove (vec pos)
Package

cl-hamt.

Source

util.lisp.

Function: vec-update (vec pos item)
Package

cl-hamt.

Source

util.lisp.


6.2.3 Generic functions

Generic Function: %dict-insert (node key value hash depth test)
Package

cl-hamt.

Source

hash-dict.lisp.

Methods
Method: %dict-insert ((node dict-table) key value hash depth test)
Method: %dict-insert ((node dict-conflict) key value hash depth test)
Method: %dict-insert ((node dict-leaf) key value hash depth test)
Generic Function: %hamt-lookup (node key hash depth test)
Package

cl-hamt.

Source

hamt.lisp.

Methods
Method: %hamt-lookup ((node set-conflict) key hash depth test)
Source

hash-set.lisp.

Method: %hamt-lookup ((node set-table) key hash depth test)
Source

hash-set.lisp.

Method: %hamt-lookup ((node set-leaf) key hash depth test)
Source

hash-set.lisp.

Method: %hamt-lookup ((node dict-conflict) key hash depth test)
Source

hash-dict.lisp.

Method: %hamt-lookup ((node dict-table) key hash depth test)
Source

hash-dict.lisp.

Method: %hamt-lookup ((node dict-leaf) key hash depth test)
Source

hash-dict.lisp.

Generic Function: %hamt-reduce (func node initial-value)
Package

cl-hamt.

Methods
Method: %hamt-reduce (func (node set-conflict) initial-value)
Source

hash-set.lisp.

Method: %hamt-reduce (func (node set-leaf) initial-value)
Source

hash-set.lisp.

Method: %hamt-reduce (func (node dict-conflict) initial-value)
Source

hash-dict.lisp.

Method: %hamt-reduce (func (node dict-leaf) initial-value)
Source

hash-dict.lisp.

Method: %hamt-reduce (func (node table) initial-value)
Source

hamt.lisp.

Method: %hamt-reduce (func node initial-value)
Source

hamt.lisp.

Generic Function: %hamt-remove (node key hash depth test)
Package

cl-hamt.

Source

hamt.lisp.

Methods
Method: %hamt-remove ((node set-conflict) key hash depth test)
Source

hash-set.lisp.

Method: %hamt-remove ((node dict-conflict) key hash depth test)
Source

hash-dict.lisp.

Method: %hamt-remove ((node table) key hash depth test)
Method: %hamt-remove ((node leaf) key hash depth test)
Generic Function: %hamt-size (node)
Package

cl-hamt.

Source

hamt.lisp.

Methods
Method: %hamt-size ((node conflict))
Method: %hamt-size ((node table))
Method: %hamt-size ((node leaf))
Generic Function: %hash-dict-eq (dict1 dict2 key-test value-test)
Package

cl-hamt.

Source

hash-dict.lisp.

Methods
Method: %hash-dict-eq ((node1 dict-table) (node2 dict-table) key-test value-test)
Method: %hash-dict-eq ((node1 dict-conflict) (node2 dict-conflict) key-test value-test)
Method: %hash-dict-eq ((node1 dict-leaf) (node2 dict-leaf) key-test value-test)
Method: %hash-dict-eq (dict1 dict2 key-test value-test)
Generic Function: %hash-set-eq (set1 set2 test)
Package

cl-hamt.

Source

hash-set.lisp.

Methods
Method: %hash-set-eq ((node1 set-table) (node2 set-table) test)
Method: %hash-set-eq ((node1 set-conflict) (node2 set-conflict) test)
Method: %hash-set-eq ((node1 set-leaf) (node2 set-leaf) test)
Method: %hash-set-eq (node1 node2 test)
Generic Function: %set-insert (node key hash depth test)
Package

cl-hamt.

Source

hash-set.lisp.

Methods
Method: %set-insert ((node set-table) key hash depth test)
Method: %set-insert ((node set-conflict) key hash depth test)
Method: %set-insert ((node set-leaf) key hash depth test)
Generic Reader: conflict-entries (object)
Package

cl-hamt.

Methods
Reader Method: conflict-entries ((conflict conflict))

automatically generated reader method

Source

hamt.lisp.

Target Slot

entries.

Generic Reader: conflict-hash (object)
Package

cl-hamt.

Methods
Reader Method: conflict-hash ((conflict conflict))

automatically generated reader method

Source

hamt.lisp.

Target Slot

hash.

Generic Reader: hamt-hash (object)
Package

cl-hamt.

Methods
Reader Method: hamt-hash ((hamt hamt))

automatically generated reader method

Source

hamt.lisp.

Target Slot

hash.

Generic Reader: hamt-table (object)
Package

cl-hamt.

Methods
Reader Method: hamt-table ((hash-set hash-set))

automatically generated reader method

Source

hash-set.lisp.

Target Slot

table.

Reader Method: hamt-table ((hash-dict hash-dict))

automatically generated reader method

Source

hash-dict.lisp.

Target Slot

table.

Reader Method: hamt-table ((hamt hamt))

automatically generated reader method

Source

hamt.lisp.

Target Slot

table.

Generic Reader: hamt-test (object)
Package

cl-hamt.

Methods
Reader Method: hamt-test ((hamt hamt))

automatically generated reader method

Source

hamt.lisp.

Target Slot

test.

Generic Reader: node-key (object)
Package

cl-hamt.

Methods
Reader Method: node-key ((leaf leaf))

automatically generated reader method

Source

hamt.lisp.

Target Slot

key.

Generic Reader: node-value (object)
Package

cl-hamt.

Methods
Reader Method: node-value ((dict-leaf dict-leaf))

automatically generated reader method

Source

hash-dict.lisp.

Target Slot

value.

Generic Reader: table-array (object)
Package

cl-hamt.

Methods
Reader Method: table-array ((table table))

automatically generated reader method

Source

hamt.lisp.

Target Slot

table.

Generic Reader: table-bitmap (object)
Package

cl-hamt.

Methods
Reader Method: table-bitmap ((table table))

automatically generated reader method

Source

hamt.lisp.

Target Slot

bitmap.


6.2.4 Conditions

Condition: incompatible-tests-error
Package

cl-hamt.

Source

hamt.lisp.

Direct superclasses

error.


6.2.5 Classes

Class: conflict
Package

cl-hamt.

Source

hamt.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: hash
Initargs

:hash

Readers

conflict-hash.

Writers

This slot is read-only.

Slot: entries
Initform

(quote nil)

Initargs

:entries

Readers

conflict-entries.

Writers

This slot is read-only.

Class: dict-conflict
Package

cl-hamt.

Source

hash-dict.lisp.

Direct superclasses

conflict.

Direct methods
Class: dict-leaf
Package

cl-hamt.

Source

hash-dict.lisp.

Direct superclasses

leaf.

Direct methods
Direct slots
Slot: value
Initargs

:value

Readers

node-value.

Writers

This slot is read-only.

Class: dict-table
Package

cl-hamt.

Source

hash-dict.lisp.

Direct superclasses

table.

Direct methods
Class: hamt
Package

cl-hamt.

Source

hamt.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: test
Initform

(function equal)

Initargs

:test

Readers

hamt-test.

Writers

This slot is read-only.

Slot: hash
Initform

(function cl-murmurhash:murmurhash)

Initargs

:hash

Readers

hamt-hash.

Writers

This slot is read-only.

Slot: table
Initargs

:table

Readers

hamt-table.

Writers

This slot is read-only.

Class: leaf
Package

cl-hamt.

Source

hamt.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: key
Initargs

:key

Readers

node-key.

Writers

This slot is read-only.

Class: set-conflict
Package

cl-hamt.

Source

hash-set.lisp.

Direct superclasses

conflict.

Direct methods
Class: set-leaf
Package

cl-hamt.

Source

hash-set.lisp.

Direct superclasses

leaf.

Direct methods
Class: set-table
Package

cl-hamt.

Source

hash-set.lisp.

Direct superclasses

table.

Direct methods
Class: table
Package

cl-hamt.

Source

hamt.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: bitmap
Type

(unsigned-byte 32)

Initform

0

Initargs

:bitmap

Readers

table-bitmap.

Writers

This slot is read-only.

Slot: table
Initform

(make-array 0 :initial-element nil)

Initargs

:table

Readers

table-array.

Writers

This slot is read-only.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %  
A   C   D   E   F   G   H   M   N   S   T   V   W  
Index Entry  Section

%
%dict-insert: Private generic functions
%dict-insert: Private generic functions
%dict-insert: Private generic functions
%dict-insert: Private generic functions
%hamt-lookup: Private generic functions
%hamt-lookup: Private generic functions
%hamt-lookup: Private generic functions
%hamt-lookup: Private generic functions
%hamt-lookup: Private generic functions
%hamt-lookup: Private generic functions
%hamt-lookup: Private generic functions
%hamt-reduce: Private generic functions
%hamt-reduce: Private generic functions
%hamt-reduce: Private generic functions
%hamt-reduce: Private generic functions
%hamt-reduce: Private generic functions
%hamt-reduce: Private generic functions
%hamt-reduce: Private generic functions
%hamt-remove: Private generic functions
%hamt-remove: Private generic functions
%hamt-remove: Private generic functions
%hamt-remove: Private generic functions
%hamt-remove: Private generic functions
%hamt-size: Private generic functions
%hamt-size: Private generic functions
%hamt-size: Private generic functions
%hamt-size: Private generic functions
%hash-dict-eq: Private generic functions
%hash-dict-eq: Private generic functions
%hash-dict-eq: Private generic functions
%hash-dict-eq: Private generic functions
%hash-dict-eq: Private generic functions
%hash-set-eq: Private generic functions
%hash-set-eq: Private generic functions
%hash-set-eq: Private generic functions
%hash-set-eq: Private generic functions
%hash-set-eq: Private generic functions
%set-insert: Private generic functions
%set-insert: Private generic functions
%set-insert: Private generic functions
%set-insert: Private generic functions

A
alist-remove: Private ordinary functions
array-eq: Private ordinary functions

C
conflict-entries: Private generic functions
conflict-entries: Private generic functions
conflict-hash: Private generic functions
conflict-hash: Private generic functions

D
dict->alist: Public ordinary functions
dict-clone: Private ordinary functions
dict-eq: Public ordinary functions
dict-filter: Public ordinary functions
dict-insert: Public ordinary functions
dict-lookup: Public ordinary functions
dict-map-keys: Public ordinary functions
dict-map-values: Public ordinary functions
dict-reduce: Public ordinary functions
dict-reduce-keys: Public ordinary functions
dict-reduce-values: Public ordinary functions
dict-remove: Public ordinary functions
dict-size: Public ordinary functions

E
empty-dict: Public ordinary functions
empty-set: Public ordinary functions

F
Function, alist-remove: Private ordinary functions
Function, array-eq: Private ordinary functions
Function, dict->alist: Public ordinary functions
Function, dict-clone: Private ordinary functions
Function, dict-eq: Public ordinary functions
Function, dict-filter: Public ordinary functions
Function, dict-insert: Public ordinary functions
Function, dict-lookup: Public ordinary functions
Function, dict-map-keys: Public ordinary functions
Function, dict-map-values: Public ordinary functions
Function, dict-reduce: Public ordinary functions
Function, dict-reduce-keys: Public ordinary functions
Function, dict-reduce-values: Public ordinary functions
Function, dict-remove: Public ordinary functions
Function, dict-size: Public ordinary functions
Function, empty-dict: Public ordinary functions
Function, empty-set: Public ordinary functions
Function, get-bits: Private ordinary functions
Function, get-index: Private ordinary functions
Function, set->list: Public ordinary functions
Function, set-diff: Public ordinary functions
Function, set-eq: Public ordinary functions
Function, set-filter: Public ordinary functions
Function, set-insert: Public ordinary functions
Function, set-intersection: Public ordinary functions
Function, set-lookup: Public ordinary functions
Function, set-map: Public ordinary functions
Function, set-reduce: Public ordinary functions
Function, set-remove: Public ordinary functions
Function, set-size: Public ordinary functions
Function, set-symmetric-diff: Public ordinary functions
Function, set-union: Public ordinary functions
Function, vec-insert: Private ordinary functions
Function, vec-remove: Private ordinary functions
Function, vec-update: Private ordinary functions

G
Generic Function, %dict-insert: Private generic functions
Generic Function, %hamt-lookup: Private generic functions
Generic Function, %hamt-reduce: Private generic functions
Generic Function, %hamt-remove: Private generic functions
Generic Function, %hamt-size: Private generic functions
Generic Function, %hash-dict-eq: Private generic functions
Generic Function, %hash-set-eq: Private generic functions
Generic Function, %set-insert: Private generic functions
Generic Function, conflict-entries: Private generic functions
Generic Function, conflict-hash: Private generic functions
Generic Function, hamt-hash: Private generic functions
Generic Function, hamt-table: Private generic functions
Generic Function, hamt-test: Private generic functions
Generic Function, node-key: Private generic functions
Generic Function, node-value: Private generic functions
Generic Function, table-array: Private generic functions
Generic Function, table-bitmap: Private generic functions
get-bits: Private ordinary functions
get-index: Private ordinary functions

H
hamt-hash: Private generic functions
hamt-hash: Private generic functions
hamt-table: Private generic functions
hamt-table: Private generic functions
hamt-table: Private generic functions
hamt-table: Private generic functions
hamt-test: Private generic functions
hamt-test: Private generic functions

M
Macro, with-hamt: Private macros
Macro, with-table: Private macros
Method, %dict-insert: Private generic functions
Method, %dict-insert: Private generic functions
Method, %dict-insert: Private generic functions
Method, %hamt-lookup: Private generic functions
Method, %hamt-lookup: Private generic functions
Method, %hamt-lookup: Private generic functions
Method, %hamt-lookup: Private generic functions
Method, %hamt-lookup: Private generic functions
Method, %hamt-lookup: Private generic functions
Method, %hamt-reduce: Private generic functions
Method, %hamt-reduce: Private generic functions
Method, %hamt-reduce: Private generic functions
Method, %hamt-reduce: Private generic functions
Method, %hamt-reduce: Private generic functions
Method, %hamt-reduce: Private generic functions
Method, %hamt-remove: Private generic functions
Method, %hamt-remove: Private generic functions
Method, %hamt-remove: Private generic functions
Method, %hamt-remove: Private generic functions
Method, %hamt-size: Private generic functions
Method, %hamt-size: Private generic functions
Method, %hamt-size: Private generic functions
Method, %hash-dict-eq: Private generic functions
Method, %hash-dict-eq: Private generic functions
Method, %hash-dict-eq: Private generic functions
Method, %hash-dict-eq: Private generic functions
Method, %hash-set-eq: Private generic functions
Method, %hash-set-eq: Private generic functions
Method, %hash-set-eq: Private generic functions
Method, %hash-set-eq: Private generic functions
Method, %set-insert: Private generic functions
Method, %set-insert: Private generic functions
Method, %set-insert: Private generic functions
Method, conflict-entries: Private generic functions
Method, conflict-hash: Private generic functions
Method, hamt-hash: Private generic functions
Method, hamt-table: Private generic functions
Method, hamt-table: Private generic functions
Method, hamt-table: Private generic functions
Method, hamt-test: Private generic functions
Method, node-key: Private generic functions
Method, node-value: Private generic functions
Method, table-array: Private generic functions
Method, table-bitmap: Private generic functions

N
node-key: Private generic functions
node-key: Private generic functions
node-value: Private generic functions
node-value: Private generic functions

S
set->list: Public ordinary functions
set-diff: Public ordinary functions
set-eq: Public ordinary functions
set-filter: Public ordinary functions
set-insert: Public ordinary functions
set-intersection: Public ordinary functions
set-lookup: Public ordinary functions
set-map: Public ordinary functions
set-reduce: Public ordinary functions
set-remove: Public ordinary functions
set-size: Public ordinary functions
set-symmetric-diff: Public ordinary functions
set-union: Public ordinary functions

T
table-array: Private generic functions
table-array: Private generic functions
table-bitmap: Private generic functions
table-bitmap: Private generic functions

V
vec-insert: Private ordinary functions
vec-remove: Private ordinary functions
vec-update: Private ordinary functions

W
with-hamt: Private macros
with-table: Private macros


A.4 Data types

Jump to:   C   D   F   H   I   L   M   P   S   T   U  
Index Entry  Section

C
cl-hamt: The cl-hamt system
cl-hamt: The cl-hamt package
cl-hamt.asd: The cl-hamt/cl-hamt․asd file
Class, conflict: Private classes
Class, dict-conflict: Private classes
Class, dict-leaf: Private classes
Class, dict-table: Private classes
Class, hamt: Private classes
Class, hash-dict: Public classes
Class, hash-set: Public classes
Class, leaf: Private classes
Class, set-conflict: Private classes
Class, set-leaf: Private classes
Class, set-table: Private classes
Class, table: Private classes
Condition, incompatible-tests-error: Private conditions
conflict: Private classes

D
dict-conflict: Private classes
dict-leaf: Private classes
dict-table: Private classes

F
File, cl-hamt.asd: The cl-hamt/cl-hamt․asd file
File, hamt.lisp: The cl-hamt/src/hamt․lisp file
File, hash-dict.lisp: The cl-hamt/src/hash-dict․lisp file
File, hash-set.lisp: The cl-hamt/src/hash-set․lisp file
File, package.lisp: The cl-hamt/src/package․lisp file
File, util.lisp: The cl-hamt/src/util․lisp file

H
hamt: Private classes
hamt.lisp: The cl-hamt/src/hamt․lisp file
hash-dict: Public classes
hash-dict.lisp: The cl-hamt/src/hash-dict․lisp file
hash-set: Public classes
hash-set.lisp: The cl-hamt/src/hash-set․lisp file

I
incompatible-tests-error: Private conditions

L
leaf: Private classes

M
Module, src: The cl-hamt/src module

P
Package, cl-hamt: The cl-hamt package
package.lisp: The cl-hamt/src/package․lisp file

S
set-conflict: Private classes
set-leaf: Private classes
set-table: Private classes
src: The cl-hamt/src module
System, cl-hamt: The cl-hamt system

T
table: Private classes

U
util.lisp: The cl-hamt/src/util․lisp file