The org.tfeb.dsm Reference Manual

This is the org.tfeb.dsm Reference Manual, version 1.2.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sat Dec 03 21:20:54 2022 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 org.tfeb.dsm

Destructuring match

Author

Tim Bradshaw

Home Page

https://github.com/tfeb/dsm

License

MIT

Version

1.2.1

Dependencies
  • org.tfeb.tools.require-module (system).
  • org.tfeb.hax.collecting (system).
  • org.tfeb.hax.iterate (system).
  • org.tfeb.hax.simple-loops (system).
  • org.tfeb.hax.utilities (system).
  • org.tfeb.hax.spam (system).
Source

org.tfeb.dsm.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 org.tfeb.dsm/org.tfeb.dsm.asd

Source

org.tfeb.dsm.asd.

Parent Component

org.tfeb.dsm (system).

ASDF Systems

org.tfeb.dsm.


3.1.2 org.tfeb.dsm/pkg.lisp

Source

org.tfeb.dsm.asd.

Parent Component

org.tfeb.dsm (system).

Packages

3.1.3 org.tfeb.dsm/low.lisp

Dependency

pkg.lisp (file).

Source

org.tfeb.dsm.asd.

Parent Component

org.tfeb.dsm (system).

Public Interface

3.1.4 org.tfeb.dsm/pll.lisp

Dependency

low.lisp (file).

Source

org.tfeb.dsm.asd.

Parent Component

org.tfeb.dsm (system).

Public Interface

parse-lambda-list (function).

Internals

3.1.5 org.tfeb.dsm/cpll.lisp

Dependency

pll.lisp (file).

Source

org.tfeb.dsm.asd.

Parent Component

org.tfeb.dsm (system).

Public Interface
Internals

3.1.6 org.tfeb.dsm/dsm.lisp

Dependency

cpll.lisp (file).

Source

org.tfeb.dsm.asd.

Parent Component

org.tfeb.dsm (system).

Public Interface

destructuring-match (macro).

Internals

compute-guard (function).


4 Packages

Packages are listed by definition order.


4.1 org.tfeb.dsm

Source

pkg.lisp.

Use List
  • common-lisp.
  • org.tfeb.dsm/impl.
  • org.tfeb.hax.collecting.
  • org.tfeb.hax.simple-loops.
  • org.tfeb.hax.spam.
  • org.tfeb.hax.utilities.
  • org.tfeb.tools.require-module.
Public Interface

destructuring-match (macro).

Internals

compute-guard (function).


4.2 org.tfeb.dsm/impl

Source

pkg.lisp.

Use List
  • common-lisp.
  • org.tfeb.hax.collecting.
  • org.tfeb.hax.iterate.
  • org.tfeb.hax.simple-loops.
  • org.tfeb.hax.spam.
  • org.tfeb.hax.utilities.
  • org.tfeb.tools.require-module.
Used By List

org.tfeb.dsm.

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 Macros

Macro: destructuring-match (form &body clauses)

Match FORM against CLAUSES, returning the values of the matching clause

Each clause in clauses is ({<dsm-ll> | OTHERWISE | T} [<guard>] . <decls/body>).

<dsm-ll> is either a lambda list suitable for DESTRUCTURING-BIND,
except that any non-keyword variables whose name is _ are blanks which
are ignored, and each blank is different, or a variable symbol which
binds the whole FORM. OTHERWISE and T are default clauses.

<guard> is of the form ({:when | :unless} <expression> ...) and, if
present, causes the expressions to be called, with variables bound, to decide if the clause matched.

Package

org.tfeb.dsm.

Source

dsm.lisp.


5.1.2 Ordinary functions

Function: catastrophe (control &rest arguments)
Package

org.tfeb.dsm/impl.

Source

low.lisp.

Function: compile-lambda-list (ll decls/body &optional pll-compilers)
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Function: compile-parsed-lambda-list (pll variables anonymous decls/body &optional pll-compilers)
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Function: parse-lambda-list (lambda-list &rest args &key &allow-other-keys)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: scold (control &rest arguments)
Package

org.tfeb.dsm/impl.

Source

low.lisp.


5.1.3 Conditions

Condition: catastrophe
Package

org.tfeb.dsm/impl.

Source

low.lisp.

Direct superclasses
Condition: dsm-error
Package

org.tfeb.dsm/impl.

Source

low.lisp.

Direct superclasses

error.

Direct subclasses
Condition: dsm-error/mine
Package

org.tfeb.dsm/impl.

Source

low.lisp.

Direct superclasses

dsm-error.

Direct subclasses

catastrophe.

Condition: dsm-error/yours
Package

org.tfeb.dsm/impl.

Source

low.lisp.

Direct superclasses

dsm-error.

Direct subclasses

scold.

Condition: scold
Package

org.tfeb.dsm/impl.

Source

low.lisp.

Direct superclasses

5.2 Internals


5.2.1 Constants

Constant: <auxvars>
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Constant: <ds-lambda-list>
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Constant: <end-of-keywords>
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Constant: <end-of-rest>
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Constant: <end>
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Constant: <keywords>
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Constant: <optionals>
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Constant: <required>
Package

org.tfeb.dsm/impl.

Source

pll.lisp.


5.2.2 Special variables

Special Variable: *anonymous-variable-names*
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Special Variable: *final-state*
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Special Variable: *initial-state*
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Special Variable: *pll-compilers*
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Special Variable: *state-recognizers*
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Special Variable: *states*
Package

org.tfeb.dsm/impl.

Source

pll.lisp.


5.2.3 Macros

Macro: define-pll-compiler (name/in (clause-body <thing> <fail>) &body decls/forms)
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Macro: define-state-recognizer ((name from/s predicate &key priority state-recognizers) (ll collector) &body decls/forms)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Macro: define-states (&body states)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.


5.2.4 Ordinary functions

Function: ->keyword (thing)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: anonymize-variables (recognized-lambda-list &optional anonymous-variable-names)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: canonicalize-declarations (declarations)
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Function: clear-pll-compilers ()
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Function: clear-state-recognizers (&optional and-states)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: coalesce-keywords (recognized-lambda-list)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: compute-guard (clauses)
Package

org.tfeb.dsm.

Source

dsm.lisp.

Function: declarations-for (variables canonical-declarations)
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Function: fail (failure-continuation &optional argument &rest args)
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Function: install-state-recognizer (name from/s priority recognizer &optional state-recognizers)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: make-state-recognizer (predicate function)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: make-state-recognizers (&optional parent)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: pll-compiler (for &optional pll-compilers)
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Function: (setf pll-compiler) (for &optional pll-compilers)
Package

org.tfeb.dsm/impl.

Source

cpll.lisp.

Function: recognize (state ll collector &optional state-recognizers)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: recognize-lambda-list (lambda-list &key initial-state final-state state-recognizers trace)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: statep (s)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: unique-variables (recognized-lambda-list)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.

Function: validate-keywords (recognized-lambda-list)
Package

org.tfeb.dsm/impl.

Source

pll.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (   -  
A   C   D   F   I   M   P   R   S   U   V  
Index Entry  Section

(
(setf pll-compiler): Private ordinary functions

-
->keyword: Private ordinary functions

A
anonymize-variables: Private ordinary functions

C
canonicalize-declarations: Private ordinary functions
catastrophe: Public ordinary functions
clear-pll-compilers: Private ordinary functions
clear-state-recognizers: Private ordinary functions
coalesce-keywords: Private ordinary functions
compile-lambda-list: Public ordinary functions
compile-parsed-lambda-list: Public ordinary functions
compute-guard: Private ordinary functions

D
declarations-for: Private ordinary functions
define-pll-compiler: Private macros
define-state-recognizer: Private macros
define-states: Private macros
destructuring-match: Public macros

F
fail: Private ordinary functions
Function, (setf pll-compiler): Private ordinary functions
Function, ->keyword: Private ordinary functions
Function, anonymize-variables: Private ordinary functions
Function, canonicalize-declarations: Private ordinary functions
Function, catastrophe: Public ordinary functions
Function, clear-pll-compilers: Private ordinary functions
Function, clear-state-recognizers: Private ordinary functions
Function, coalesce-keywords: Private ordinary functions
Function, compile-lambda-list: Public ordinary functions
Function, compile-parsed-lambda-list: Public ordinary functions
Function, compute-guard: Private ordinary functions
Function, declarations-for: Private ordinary functions
Function, fail: Private ordinary functions
Function, install-state-recognizer: Private ordinary functions
Function, make-state-recognizer: Private ordinary functions
Function, make-state-recognizers: Private ordinary functions
Function, parse-lambda-list: Public ordinary functions
Function, pll-compiler: Private ordinary functions
Function, recognize: Private ordinary functions
Function, recognize-lambda-list: Private ordinary functions
Function, scold: Public ordinary functions
Function, statep: Private ordinary functions
Function, unique-variables: Private ordinary functions
Function, validate-keywords: Private ordinary functions

I
install-state-recognizer: Private ordinary functions

M
Macro, define-pll-compiler: Private macros
Macro, define-state-recognizer: Private macros
Macro, define-states: Private macros
Macro, destructuring-match: Public macros
make-state-recognizer: Private ordinary functions
make-state-recognizers: Private ordinary functions

P
parse-lambda-list: Public ordinary functions
pll-compiler: Private ordinary functions

R
recognize: Private ordinary functions
recognize-lambda-list: Private ordinary functions

S
scold: Public ordinary functions
statep: Private ordinary functions

U
unique-variables: Private ordinary functions

V
validate-keywords: Private ordinary functions


A.4 Data types