The persistent-tables Reference Manual

This is the persistent-tables Reference Manual, version 0.0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:32:07 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 persistent-tables

Persistent tables.

Maintainer

Vincent Toups

Author

Vincent Toups

Version

0.0.1

Dependencies
  • random-access-lists (system).
  • lisp-unit (system).
Source

persistent-tables.asd.

Child Components

3 Files

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


3.1 Lisp


3.1.1 persistent-tables/persistent-tables.asd

Source

persistent-tables.asd.

Parent Component

persistent-tables (system).

ASDF Systems

persistent-tables.


3.1.2 persistent-tables/package.lisp

Source

persistent-tables.asd.

Parent Component

persistent-tables (system).

Packages

persistent-tables.


3.1.3 persistent-tables/persistent-tables.lisp

Dependency

package.lisp (file).

Source

persistent-tables.asd.

Parent Component

persistent-tables (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 persistent-tables

Source

package.lisp.

Use List
  • common-lisp.
  • random-access-lists.
Public Interface
Internals

5 Definitions

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


5.1 Public Interface


5.1.1 Ordinary functions

Function: fresh-ptbl (&optional n test)

Create a fresh persistent hash table with N (107) bins and TEST for equality.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl->alist (tbl)

Return an association list with the same assocations as TBL.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl->ppstring (tbl)

Produce a nice string representation of the persistent hash table TBL.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl-get (tbl key &optional or-value)

Retreive the association for KEY from the persistent hashtable TBL. Return OR-VALUE if no association exists, which defaults to NIL.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl-keys (tbl)

Return a list of all keys in the persistent hash table TBL. Order is unspecified.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl-set (tbl key val)

Return a new persistent hash table which is like TBL except that KEY is associated with VAL.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl-values (tbl)

Return a list of all values in the persistent hash table TBL. Order is unspecified.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: {} (maybe-ptbl &rest args)

Construct or augment a PTBL with the KEY/VAL pairs in ARGS. If MAYBE-PTBL is not a PTBL, treat it as the first key and use an empty persistent table.

Package

persistent-tables.

Source

persistent-tables.lisp.


5.2 Internals


5.2.1 Special variables

Special Variable: the-empty-ptbl

An empty EQUAL testing persistent hash table.

Package

persistent-tables.

Source

persistent-tables.lisp.

Special Variable: the-empty-ptbl-eq

An empty EQ testing persistent hash table.

Package

persistent-tables.

Source

persistent-tables.lisp.


5.2.2 Macros

Macro: named-let (name bindings &body body)
Package

persistent-tables.

Source

persistent-tables.lisp.


5.2.3 Ordinary functions

Function: bucket-keys (bucket)

Return all the keys in a BUCKET.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: bucket-values (bucket)

Return all the values in a BUCKET.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: copy-ptbl (instance)
Package

persistent-tables.

Source

persistent-tables.lisp.

Function: empty? (x)
Package

persistent-tables.

Source

persistent-tables.lisp.

Function: make-ptbl (&key buckets test)
Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl-add-to-bucket (bucket key val test &optional acc)

Add an association to BUCKET with KEY, VAL and KEY equality tested under TEST.

Package

persistent-tables.

Source

persistent-tables.lisp.

Reader: ptbl-buckets (instance)
Writer: (setf ptbl-buckets) (instance)
Package

persistent-tables.

Source

persistent-tables.lisp.

Target Slot

buckets.

Function: ptbl-dip-buckets (p f)

Set the BUCKETS part of a persistent table P to (FUNCALL F B), where B is the old buckets.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl-get-from-bucket (bucket key test)

Find an association to BUCKET with KEY. TEST defines key equality.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl-n-buckets (p)

Return the number of buckets in the table P.

Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl-p (object)
Package

persistent-tables.

Source

persistent-tables.lisp.

Function: ptbl-set-buckets (p b)

Set the BUCKETS part of a persistent table P to B.

Package

persistent-tables.

Source

persistent-tables.lisp.

Reader: ptbl-test (instance)
Writer: (setf ptbl-test) (instance)
Package

persistent-tables.

Source

persistent-tables.lisp.

Target Slot

test.

Function: ptbl? (object)
Package

persistent-tables.

Alias for

ptbl-p.


5.2.4 Structures

Structure: ptbl
Package

persistent-tables.

Source

persistent-tables.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: buckets
Readers

ptbl-buckets.

Writers

(setf ptbl-buckets).

Slot: test
Readers

ptbl-test.

Writers

(setf ptbl-test).


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (   {  
B   C   E   F   M   N   P  
Index Entry  Section

(
(setf ptbl-buckets): Private ordinary functions
(setf ptbl-test): Private ordinary functions

{
{}: Public ordinary functions

B
bucket-keys: Private ordinary functions
bucket-values: Private ordinary functions

C
copy-ptbl: Private ordinary functions

E
empty?: Private ordinary functions

F
fresh-ptbl: Public ordinary functions
Function, (setf ptbl-buckets): Private ordinary functions
Function, (setf ptbl-test): Private ordinary functions
Function, bucket-keys: Private ordinary functions
Function, bucket-values: Private ordinary functions
Function, copy-ptbl: Private ordinary functions
Function, empty?: Private ordinary functions
Function, fresh-ptbl: Public ordinary functions
Function, make-ptbl: Private ordinary functions
Function, ptbl->alist: Public ordinary functions
Function, ptbl->ppstring: Public ordinary functions
Function, ptbl-add-to-bucket: Private ordinary functions
Function, ptbl-buckets: Private ordinary functions
Function, ptbl-dip-buckets: Private ordinary functions
Function, ptbl-get: Public ordinary functions
Function, ptbl-get-from-bucket: Private ordinary functions
Function, ptbl-keys: Public ordinary functions
Function, ptbl-n-buckets: Private ordinary functions
Function, ptbl-p: Private ordinary functions
Function, ptbl-set: Public ordinary functions
Function, ptbl-set-buckets: Private ordinary functions
Function, ptbl-test: Private ordinary functions
Function, ptbl-values: Public ordinary functions
Function, ptbl?: Private ordinary functions
Function, {}: Public ordinary functions

M
Macro, named-let: Private macros
make-ptbl: Private ordinary functions

N
named-let: Private macros

P
ptbl->alist: Public ordinary functions
ptbl->ppstring: Public ordinary functions
ptbl-add-to-bucket: Private ordinary functions
ptbl-buckets: Private ordinary functions
ptbl-dip-buckets: Private ordinary functions
ptbl-get: Public ordinary functions
ptbl-get-from-bucket: Private ordinary functions
ptbl-keys: Public ordinary functions
ptbl-n-buckets: Private ordinary functions
ptbl-p: Private ordinary functions
ptbl-set: Public ordinary functions
ptbl-set-buckets: Private ordinary functions
ptbl-test: Private ordinary functions
ptbl-values: Public ordinary functions
ptbl?: Private ordinary functions