The cl-table Reference Manual

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

Table of Contents


1 Introduction


2 Systems

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


2.1 cl-table

Hierarchical tables in Lisp

Author

Roman Klochkov <>

License

BSD

Version

0.9

Dependency

iterate (system).

Source

cl-table.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 cl-table/cl-table.asd

Source

cl-table.asd.

Parent Component

cl-table (system).

ASDF Systems

cl-table.

Packages

cl-table-system.


3.1.2 cl-table/package.lisp

Source

cl-table.asd.

Parent Component

cl-table (system).

Packages

cl-table.


3.1.3 cl-table/table.lisp

Dependency

package.lisp (file).

Source

cl-table.asd.

Parent Component

cl-table (system).

Public Interface
Internals

3.1.4 cl-table/iterator.lisp

Dependency

table.lisp (file).

Source

cl-table.asd.

Parent Component

cl-table (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 cl-table

Source

package.lisp.

Use List
  • common-lisp.
  • iterate.
Public Interface
Internals

4.2 cl-table-system

Source

cl-table.asd.

Use List
  • asdf/interface.
  • common-lisp.

5 Definitions

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


5.1 Public Interface


5.1.1 Setf expanders

Setf Expander: (setf field) (str key)
Package

cl-table.

Source

table.lisp.

Reader

field (function).


5.1.2 Ordinary functions

Function: drop-columns! (table columns)
Package

cl-table.

Source

table.lisp.

Function: field (str key)

Returns field of row STR with name symbol KEY

Package

cl-table.

Source

table.lisp.

Setf expander for this function

(setf field).

Function: make-iterator (table)

Returns array of iter-row

Package

cl-table.

Source

iterator.lisp.


5.1.3 Generic functions

Generic Function: add (to-place)
Package

cl-table.

Source

table.lisp.

Methods
Method: add ((row row))
Method: add ((table table))
Generic Reader: columns (object)
Package

cl-table.

Methods
Reader Method: columns ((table table))

automatically generated reader method

Source

table.lisp.

Target Slot

columns.

Generic Writer: (setf columns) (object)
Package

cl-table.

Methods
Writer Method: (setf columns) ((table table))

automatically generated writer method

Source

table.lisp.

Target Slot

columns.

Generic Function: path->row (table path)
Package

cl-table.

Source

table.lisp.

Methods
Method: path->row ((iter-row iter-row) path)
Source

iterator.lisp.

Method: path->row ((iter-table iter-table) path)
Source

iterator.lisp.

Method: path->row ((table table) path)
Method: path->row :around (table (path fixnum))

5.1.4 Standalone methods

Method: shared-initialize :after ((table table) slot-names &key columns)
Source

table.lisp.


5.1.5 Classes

Class: table
Package

cl-table.

Source

table.lisp.

Direct methods
Direct slots
Slot: columns
Type

list

Readers

columns.

Writers

(setf columns).

Slot: rows

List of lists = data in (car row), list of children rows in (cdr row) Assert (length (car row)) == (length columns)

Type

list

Readers

rows.

Writers

(setf rows).

Slot: indexes
Type

list

Readers

indexes.

Writers

(setf indexes).


5.2 Internals


5.2.1 Macros

Macro: append-item (item list)
Package

cl-table.

Source

table.lisp.

Macro: clause-for-in-table-1 (&key for in-table)

Rows of a table: row = (table field1 field2 ...)

Package

cl-table.

Source

table.lisp.

Macro: clause-for-in-table-row-2 (&key for in-table-row)

Rows of a table: row = (table field1 field2 ...)

Package

cl-table.

Source

table.lisp.


5.2.2 Ordinary functions

Function: aref* (array index)
Package

cl-table.

Source

iterator.lisp.

Reader: column-name (instance)
Writer: (setf column-name) (instance)
Package

cl-table.

Source

table.lisp.

Target Slot

name.

Function: column-p (object)
Package

cl-table.

Source

table.lisp.

Reader: column-type (instance)
Writer: (setf column-type) (instance)
Package

cl-table.

Source

table.lisp.

Target Slot

type.

Function: compare-rows (cols pred row1 row2)
Package

cl-table.

Source

table.lisp.

Function: copy-column (instance)
Package

cl-table.

Source

table.lisp.

Function: copy-iter-row (instance)
Package

cl-table.

Source

iterator.lisp.

Function: copy-iter-table (instance)
Package

cl-table.

Source

iterator.lisp.

Function: copy-row (instance)
Package

cl-table.

Source

table.lisp.

Function: equal-rows (cols row1 row2)
Package

cl-table.

Source

table.lisp.

Function: iter-row-children (instance)
Package

cl-table.

Source

iterator.lisp.

Function: (setf iter-row-children) (instance)
Package

cl-table.

Source

iterator.lisp.

Reader: iter-row-children-vector (instance)
Writer: (setf iter-row-children-vector) (instance)
Package

cl-table.

Source

iterator.lisp.

Target Slot

children-vector.

Function: iter-row-data (instance)
Package

cl-table.

Source

iterator.lisp.

Function: (setf iter-row-data) (instance)
Package

cl-table.

Source

iterator.lisp.

Reader: iter-row-id (instance)
Writer: (setf iter-row-id) (instance)
Package

cl-table.

Source

iterator.lisp.

Target Slot

id.

Function: iter-row-num (instance)
Package

cl-table.

Source

iterator.lisp.

Function: (setf iter-row-num) (instance)
Package

cl-table.

Source

iterator.lisp.

Function: iter-row-p (object)
Package

cl-table.

Source

iterator.lisp.

Function: iter-row-parent (instance)
Package

cl-table.

Source

iterator.lisp.

Function: (setf iter-row-parent) (instance)
Package

cl-table.

Source

iterator.lisp.

Function: iter-row-ref (instance)
Package

cl-table.

Source

iterator.lisp.

Function: (setf iter-row-ref) (instance)
Package

cl-table.

Source

iterator.lisp.

Function: iter-row-table (instance)
Package

cl-table.

Source

iterator.lisp.

Function: (setf iter-row-table) (instance)
Package

cl-table.

Source

iterator.lisp.

Reader: iter-table-all (instance)
Writer: (setf iter-table-all) (instance)
Package

cl-table.

Source

iterator.lisp.

Target Slot

all.

Function: iter-table-p (object)
Package

cl-table.

Source

iterator.lisp.

Reader: iter-table-top (instance)
Writer: (setf iter-table-top) (instance)
Package

cl-table.

Source

iterator.lisp.

Target Slot

top.

Function: make-column (&key name type)
Package

cl-table.

Source

table.lisp.

Function: make-iter-row (&key parent ref children table num data id children-vector)
Package

cl-table.

Source

iterator.lisp.

Function: make-iter-table (&key all top)
Package

cl-table.

Source

iterator.lisp.

Function: make-row (&key parent ref children table num data)
Package

cl-table.

Source

table.lisp.

Function: map-table (func table)
Package

cl-table.

Source

table.lisp.

Function: map-table-row (func row)
Package

cl-table.

Source

table.lisp.

Reader: row-children (instance)
Writer: (setf row-children) (instance)
Package

cl-table.

Source

table.lisp.

Target Slot

children.

Reader: row-data (instance)
Writer: (setf row-data) (instance)
Package

cl-table.

Source

table.lisp.

Target Slot

data.

Reader: row-num (instance)
Writer: (setf row-num) (instance)
Package

cl-table.

Source

table.lisp.

Target Slot

num.

Function: row-p (object)
Package

cl-table.

Source

table.lisp.

Reader: row-parent (instance)
Writer: (setf row-parent) (instance)
Package

cl-table.

Source

table.lisp.

Target Slot

parent.

Reader: row-ref (instance)
Writer: (setf row-ref) (instance)
Package

cl-table.

Source

table.lisp.

Target Slot

ref.

Reader: row-table (instance)
Writer: (setf row-table) (instance)
Package

cl-table.

Source

table.lisp.

Target Slot

table.

Function: sort! (table columns)
Package

cl-table.

Source

table.lisp.

Function: sum-columns! (sum-columns dst-row src-row)

For each column in list SUM-COLUMNS put sum of fields from dst and src rows to dst-row

Package

cl-table.

Source

table.lisp.

Function: wrap! (table group-columns sum-columns)
Package

cl-table.

Source

table.lisp.


5.2.3 Generic functions

Generic Function: generic-lessp (x y)

Order by numbers or strings

Package

cl-table.

Source

table.lisp.

Methods
Method: generic-lessp ((x string) (y string))
Method: generic-lessp ((x string) y)
Method: generic-lessp (x (y string))
Method: generic-lessp ((x number) (y number))
Generic Reader: indexes (object)
Package

cl-table.

Methods
Reader Method: indexes ((table table))

automatically generated reader method

Source

table.lisp.

Target Slot

indexes.

Generic Writer: (setf indexes) (object)
Package

cl-table.

Methods
Writer Method: (setf indexes) ((table table))

automatically generated writer method

Source

table.lisp.

Target Slot

indexes.

Generic Reader: rows (object)
Generic Writer: (setf rows) (object)
Package

cl-table.

Methods
Reader Method: rows ((table table))
Writer Method: (setf rows) ((table table))

List of lists = data in (car row), list of children rows in (cdr row) Assert (length (car row)) == (length columns)

Source

table.lisp.

Target Slot

rows.


5.2.4 Structures

Structure: column
Package

cl-table.

Source

table.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: name
Type

(and symbol (not null))

Readers

column-name.

Writers

(setf column-name).

Slot: type
Package

common-lisp.

Type

(or symbol list)

Initform

t

Readers

column-type.

Writers

(setf column-type).

Structure: iter-row

Iterator element

Package

cl-table.

Source

iterator.lisp.

Direct superclasses

row.

Direct methods

path->row.

Direct slots
Slot: id
Type

fixnum

Initform

0

Readers

iter-row-id.

Writers

(setf iter-row-id).

Slot: children-vector
Type

(vector cl-table::iter-row)

Initform

#()

Readers

iter-row-children-vector.

Writers

(setf iter-row-children-vector).

Structure: iter-table
Package

cl-table.

Source

iterator.lisp.

Direct superclasses

structure-object.

Direct methods

path->row.

Direct slots
Slot: all
Type

(vector cl-table::iter-row)

Initform

#()

Readers

iter-table-all.

Writers

(setf iter-table-all).

Slot: top
Type

(vector cl-table::iter-row)

Initform

#()

Readers

iter-table-top.

Writers

(setf iter-table-top).

Structure: row

Struct for representing row in table

Package

cl-table.

Source

table.lisp.

Direct superclasses

structure-object.

Direct subclasses

iter-row.

Direct methods

add.

Direct slots
Slot: parent
Type

(or null cl-table::row)

Readers

row-parent.

Writers

(setf row-parent).

Slot: ref
Type

list

Readers

row-ref.

Writers

(setf row-ref).

Slot: children
Type

list

Readers

row-children.

Writers

(setf row-children).

Slot: table
Type

cl-table:table

Readers

row-table.

Writers

(setf row-table).

Slot: num
Type

fixnum

Initform

0

Readers

row-num.

Writers

(setf row-num).

Slot: data
Type

list

Readers

row-data.

Writers

(setf row-data).


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (  
A   C   D   E   F   G   I   M   P   R   S   W  
Index Entry  Section

(
(setf column-name): Private ordinary functions
(setf column-type): Private ordinary functions
(setf columns): Public generic functions
(setf columns): Public generic functions
(setf field): Public setf expanders
(setf indexes): Private generic functions
(setf indexes): Private generic functions
(setf iter-row-children): Private ordinary functions
(setf iter-row-children-vector): Private ordinary functions
(setf iter-row-data): Private ordinary functions
(setf iter-row-id): Private ordinary functions
(setf iter-row-num): Private ordinary functions
(setf iter-row-parent): Private ordinary functions
(setf iter-row-ref): Private ordinary functions
(setf iter-row-table): Private ordinary functions
(setf iter-table-all): Private ordinary functions
(setf iter-table-top): Private ordinary functions
(setf row-children): Private ordinary functions
(setf row-data): Private ordinary functions
(setf row-num): Private ordinary functions
(setf row-parent): Private ordinary functions
(setf row-ref): Private ordinary functions
(setf row-table): Private ordinary functions
(setf rows): Private generic functions
(setf rows): Private generic functions

A
add: Public generic functions
add: Public generic functions
add: Public generic functions
append-item: Private macros
aref*: Private ordinary functions

C
clause-for-in-table-1: Private macros
clause-for-in-table-row-2: Private macros
column-name: Private ordinary functions
column-p: Private ordinary functions
column-type: Private ordinary functions
columns: Public generic functions
columns: Public generic functions
compare-rows: Private ordinary functions
copy-column: Private ordinary functions
copy-iter-row: Private ordinary functions
copy-iter-table: Private ordinary functions
copy-row: Private ordinary functions

D
drop-columns!: Public ordinary functions

E
equal-rows: Private ordinary functions

F
field: Public ordinary functions
Function, (setf column-name): Private ordinary functions
Function, (setf column-type): Private ordinary functions
Function, (setf iter-row-children): Private ordinary functions
Function, (setf iter-row-children-vector): Private ordinary functions
Function, (setf iter-row-data): Private ordinary functions
Function, (setf iter-row-id): Private ordinary functions
Function, (setf iter-row-num): Private ordinary functions
Function, (setf iter-row-parent): Private ordinary functions
Function, (setf iter-row-ref): Private ordinary functions
Function, (setf iter-row-table): Private ordinary functions
Function, (setf iter-table-all): Private ordinary functions
Function, (setf iter-table-top): Private ordinary functions
Function, (setf row-children): Private ordinary functions
Function, (setf row-data): Private ordinary functions
Function, (setf row-num): Private ordinary functions
Function, (setf row-parent): Private ordinary functions
Function, (setf row-ref): Private ordinary functions
Function, (setf row-table): Private ordinary functions
Function, aref*: Private ordinary functions
Function, column-name: Private ordinary functions
Function, column-p: Private ordinary functions
Function, column-type: Private ordinary functions
Function, compare-rows: Private ordinary functions
Function, copy-column: Private ordinary functions
Function, copy-iter-row: Private ordinary functions
Function, copy-iter-table: Private ordinary functions
Function, copy-row: Private ordinary functions
Function, drop-columns!: Public ordinary functions
Function, equal-rows: Private ordinary functions
Function, field: Public ordinary functions
Function, iter-row-children: Private ordinary functions
Function, iter-row-children-vector: Private ordinary functions
Function, iter-row-data: Private ordinary functions
Function, iter-row-id: Private ordinary functions
Function, iter-row-num: Private ordinary functions
Function, iter-row-p: Private ordinary functions
Function, iter-row-parent: Private ordinary functions
Function, iter-row-ref: Private ordinary functions
Function, iter-row-table: Private ordinary functions
Function, iter-table-all: Private ordinary functions
Function, iter-table-p: Private ordinary functions
Function, iter-table-top: Private ordinary functions
Function, make-column: Private ordinary functions
Function, make-iter-row: Private ordinary functions
Function, make-iter-table: Private ordinary functions
Function, make-iterator: Public ordinary functions
Function, make-row: Private ordinary functions
Function, map-table: Private ordinary functions
Function, map-table-row: Private ordinary functions
Function, row-children: Private ordinary functions
Function, row-data: Private ordinary functions
Function, row-num: Private ordinary functions
Function, row-p: Private ordinary functions
Function, row-parent: Private ordinary functions
Function, row-ref: Private ordinary functions
Function, row-table: Private ordinary functions
Function, sort!: Private ordinary functions
Function, sum-columns!: Private ordinary functions
Function, wrap!: Private ordinary functions

G
Generic Function, (setf columns): Public generic functions
Generic Function, (setf indexes): Private generic functions
Generic Function, (setf rows): Private generic functions
Generic Function, add: Public generic functions
Generic Function, columns: Public generic functions
Generic Function, generic-lessp: Private generic functions
Generic Function, indexes: Private generic functions
Generic Function, path->row: Public generic functions
Generic Function, rows: Private generic functions
generic-lessp: Private generic functions
generic-lessp: Private generic functions
generic-lessp: Private generic functions
generic-lessp: Private generic functions
generic-lessp: Private generic functions

I
indexes: Private generic functions
indexes: Private generic functions
iter-row-children: Private ordinary functions
iter-row-children-vector: Private ordinary functions
iter-row-data: Private ordinary functions
iter-row-id: Private ordinary functions
iter-row-num: Private ordinary functions
iter-row-p: Private ordinary functions
iter-row-parent: Private ordinary functions
iter-row-ref: Private ordinary functions
iter-row-table: Private ordinary functions
iter-table-all: Private ordinary functions
iter-table-p: Private ordinary functions
iter-table-top: Private ordinary functions

M
Macro, append-item: Private macros
Macro, clause-for-in-table-1: Private macros
Macro, clause-for-in-table-row-2: Private macros
make-column: Private ordinary functions
make-iter-row: Private ordinary functions
make-iter-table: Private ordinary functions
make-iterator: Public ordinary functions
make-row: Private ordinary functions
map-table: Private ordinary functions
map-table-row: Private ordinary functions
Method, (setf columns): Public generic functions
Method, (setf indexes): Private generic functions
Method, (setf rows): Private generic functions
Method, add: Public generic functions
Method, add: Public generic functions
Method, columns: Public generic functions
Method, generic-lessp: Private generic functions
Method, generic-lessp: Private generic functions
Method, generic-lessp: Private generic functions
Method, generic-lessp: Private generic functions
Method, indexes: Private generic functions
Method, path->row: Public generic functions
Method, path->row: Public generic functions
Method, path->row: Public generic functions
Method, path->row: Public generic functions
Method, rows: Private generic functions
Method, shared-initialize: Public standalone methods

P
path->row: Public generic functions
path->row: Public generic functions
path->row: Public generic functions
path->row: Public generic functions
path->row: Public generic functions

R
row-children: Private ordinary functions
row-data: Private ordinary functions
row-num: Private ordinary functions
row-p: Private ordinary functions
row-parent: Private ordinary functions
row-ref: Private ordinary functions
row-table: Private ordinary functions
rows: Private generic functions
rows: Private generic functions

S
Setf Expander, (setf field): Public setf expanders
shared-initialize: Public standalone methods
sort!: Private ordinary functions
sum-columns!: Private ordinary functions

W
wrap!: Private ordinary functions