The metabang-bind Reference Manual

This is the metabang-bind Reference Manual, version 0.8.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:18:52 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 metabang-bind

Bind is a macro that generalizes multiple-value-bind, let, let*, destructuring-bind, structure and slot accessors, and a whole lot more.

Author

Gary Warren King <>

License

MIT License

Version

0.8.0

Source

metabang-bind.asd.

Child Component

dev (module).


3 Modules

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


3.1 metabang-bind/dev

Source

metabang-bind.asd.

Parent Component

metabang-bind (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 metabang-bind/metabang-bind.asd

Source

metabang-bind.asd.

Parent Component

metabang-bind (system).

ASDF Systems

metabang-bind.

Packages

metabang.bind-system.


4.1.2 metabang-bind/dev/packages.lisp

Source

metabang-bind.asd.

Parent Component

dev (module).

Packages

4.1.3 metabang-bind/dev/macros.lisp

Dependency

packages.lisp (file).

Source

metabang-bind.asd.

Parent Component

dev (module).

Public Interface
Internals

4.1.4 metabang-bind/dev/bind.lisp

Dependency

macros.lisp (file).

Source

metabang-bind.asd.

Parent Component

dev (module).

Public Interface
Internals

4.1.5 metabang-bind/dev/binding-forms.lisp

Dependency

bind.lisp (file).

Source

metabang-bind.asd.

Parent Component

dev (module).

Internals

5 Packages

Packages are listed by definition order.


5.1 metabang.bind-system

Source

metabang-bind.asd.

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

5.2 metabang.bind

Source

packages.lisp.

Nicknames
  • bind
  • metabang-bind
Use List

common-lisp.

Used By List

metabang.bind.developer.

Public Interface
Internals

5.3 metabang.bind.developer

Source

packages.lisp.

Use List

6 Definitions

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


6.1 Public Interface


6.1.1 Special variables

Special Variable: *bind-all-declarations*
Package

metabang.bind.

Source

bind.lisp.

Special Variable: *bind-lambda-list-markers*
Package

metabang.bind.

Source

bind.lisp.

Special Variable: *bind-non-var-declarations*
Package

metabang.bind.

Source

bind.lisp.

Special Variable: *unused-declarations-behavior*

Tells bind how to behave when it encounters an unused declaration.

The possible options are

* :print-warning (the current default) - print a warning about the problem and signal a ‘bind-unused-declarations-condition‘

* :warn - signal a ‘bind-unused-declarations-warning‘ warning

* :error - signal a ‘bind-unused-declarations-error‘ error

Package

metabang.bind.

Source

bind.lisp.


6.1.2 Macros

Macro: bind ((&rest bindings) &body body)

Bind is a replacement for let*, destructuring-bind, multiple-value-bind and more.

An example is probably the best way to describe its syntax:

(bind ((a 2)
((b &rest args &key (c 2) &allow-other-keys) ’(:a :c 5 :d 10 :e 54)) ((:values d e) (truncate 4.5))
((:structure xxx- slot1 slot2) (make-xxx))
((:flet name (arg1 arg2)) (+ arg1 arg2)))
(list a b c d e args))

Simple bindings are as in let*. Destructuring is done if the first item
in a binding is a list. Multiple value binding is done if the first item
in a binding is a list and the first item in the list is ’:values’. Other forms have their own syntax. For example, :structure first has the conc
name and then slot names whereas :flet has the function name and a list
of arguments and then the function body (in an implicit progn).

Package

metabang.bind.

Source

bind.lisp.

Macro: fluid-bind ((&rest bindings) &body body)

Fluid-bind is an extension of bind that handles setting and resetting places. For example, suppose that an object of class foo has a slot named bar whose value is currently 3. The following code would evaluate the inner body with bar bound to 17 and restore it when the inner body is exited.

(fluid-bind (((bar foo) 17))
(print (bar foo)))
(print (bar foo))
==> (prints 17, then 3)

This is similar to dynamic-binding but _much_ less robust.

Package

metabang.bind.

Source

bind.lisp.

Macro: lambda-bind ((&rest instrs) &body body)

Use ‘bind’ to allow restructuring of argument to lambda expressions.

This lets you funcall and destructure simultaneously. For example

(let ((fn (lambda-bind ((a b) c) (cons a c))))
(funcall fn ’(1 2) 3))
;; => (1 . 3)

Via eschulte (see git://gist.github.com/902174.git).

Package

metabang.bind.

Source

macros.lisp.


6.1.3 Ordinary functions

Function: binding-form-docstring (name)

Returns the docstring for a binding form named ‘name‘.

Package

metabang.bind.

Source

macros.lisp.

Function: (setf binding-form-docstring) (name/s)
Package

metabang.bind.

Source

macros.lisp.

Function: binding-form-groups ()

Return a list of the available binding-forms grouped into their synonyms.

Package

metabang.bind.

Source

bind.lisp.

Function: binding-form-synonyms (name)

Return a list of synonyms for the binding-form ‘name‘.

For example

> (binding-form-synonyms :accessors) (:accessors :writable-accessors)

Package

metabang.bind.

Source

bind.lisp.

Function: binding-forms ()

Return a list of all binding-forms that bind supports in alphabetical order.

Package

metabang.bind.

Source

bind.lisp.


6.1.4 Conditions

Condition: bind-error
Package

metabang.bind.

Source

bind.lisp.

Direct superclasses

error.

Direct subclasses

bind-keyword/optional-nil-with-default-error.

Direct methods

binding.

Direct slots
Slot: binding
Initform

(quote nil)

Initargs

:binding

Readers

binding.

Writers

This slot is read-only.

Condition: bind-keyword/optional-nil-with-default-error
Package

metabang.bind.

Source

bind.lisp.

Direct superclasses

bind-error.

Direct methods

bad-variable.

Direct slots
Slot: bad-variable
Initform

(quote nil)

Initargs

:bad-variable

Readers

bad-variable.

Writers

This slot is read-only.

Condition: bind-missing-value-form-warning
Package

metabang.bind.

Source

bind.lisp.

Direct superclasses

simple-style-warning.

Direct methods

variable-form.

Direct slots
Slot: variable-form
Initform

(quote nil)

Initargs

:variable-form

Readers

variable-form.

Writers

This slot is read-only.

Condition: bind-too-many-value-forms-error
Package

metabang.bind.

Source

bind.lisp.

Direct superclasses

error.

Direct methods
Direct slots
Slot: variable-form
Initform

(quote nil)

Initargs

:variable-form

Readers

variable-form.

Writers

This slot is read-only.

Slot: value-form
Initform

(quote nil)

Initargs

:value-form

Readers

value-form.

Writers

This slot is read-only.

Condition: bind-unused-declarations-condition
Package

metabang.bind.

Source

bind.lisp.

Direct superclasses

condition.

Direct subclasses
Direct methods

unused-declarations.

Direct slots
Slot: unused-declarations
Initform

(quote (error "must supply unused-declarations"))

Initargs

:unused-declarations

Readers

unused-declarations.

Writers

This slot is read-only.

Condition: bind-unused-declarations-error
Package

metabang.bind.

Source

bind.lisp.

Direct superclasses
Condition: bind-unused-declarations-warning
Package

metabang.bind.

Source

bind.lisp.

Direct superclasses

6.2 Internals


6.2.1 Constants

Constant: +code-marker+
Package

metabang.bind.

Source

bind.lisp.

Constant: +decl-marker+
Package

metabang.bind.

Source

bind.lisp.


6.2.2 Special variables

Special Variable: *all-declarations*
Package

metabang.bind.

Source

bind.lisp.

Special Variable: *bind-simple-var-declarations*
Package

metabang.bind.

Source

bind.lisp.


6.2.3 Macros

Macro: defbinding-form ((name/s &key docstring remove-nils-p description use-values-p accept-multiple-forms-p) &body body)

Describe how ‘bind‘ should expand particular binding-forms.

‘defbinding-form‘ links a name or type with an expansion. These definitions are used by ‘bind‘ at macro-expansion time to generate the code that actually does the bindings for you. For example:

(defbinding-form (symbol :use-values-p nil)
(if (keywordp kind)
(error "Don’t have a binding form for ~s" kind) ‘(let (,@(if values
‘((,variables ,values)) ‘(,variables))))))

This binding form tells to expand clauses whose first element is a symbol using ‘let‘. (It also gets ‘bind‘ to signal an error if the first element is a keyword that doesn’t have a defined binding form.)

Package

metabang.bind.

Source

macros.lisp.


6.2.4 Ordinary functions

Function: bind-expand-declarations (declarations)
Package

metabang.bind.

Source

bind.lisp.

Function: bind-filter-declarations (var-names)
Package

metabang.bind.

Source

bind.lisp.

Function: bind-fix-nils (var-list)
Package

metabang.bind.

Source

bind.lisp.

Function: bind-fix-nils-destructured (var-list)
Package

metabang.bind.

Source

bind.lisp.

Function: bind-get-vars-from-lambda-list (lambda-list)
Package

metabang.bind.

Source

bind.lisp.

Function: bind-macro-helper (bindings body)
Package

metabang.bind.

Source

bind.lisp.

Function: check-for-unused-variable-declarations (declarations)
Package

metabang.bind.

Source

bind.lisp.

Function: dotted-pair-p (putative-pair)

Returns true if and only if ‘putative-pair‘ is a dotted-list. I.e., if ‘putative-pair‘ is a cons cell with a non-nil cdr.

Package

metabang.bind.

Source

bind.lisp.

Function: find-type-declaration (var declarations)
Package

metabang.bind.

Source

binding-forms.lisp.

Function: handle-plist (variables values form-keywords?)
Package

metabang.bind.

Source

binding-forms.lisp.

Function: map-tree (fn object)

apply ‘fn‘ to every leaf of ‘object‘.

Package

metabang.bind.

Source

bind.lisp.

Function: merge-binding-forms-p (form1 form2)
Package

metabang.bind.

Source

bind.lisp.

Function: mint-ignorable-variable ()
Package

metabang.bind.

Source

bind.lisp.

Function: next-value (x)
Package

metabang.bind.

Source

macros.lisp.

Function: simple-style-warning (message &rest args)
Package

metabang.bind.

Source

bind.lisp.

Function: tree-find (tree it &key test key)
Package

metabang.bind.

Source

bind.lisp.

Function: var-ignorable-p (var)
Package

metabang.bind.

Source

bind.lisp.


6.2.5 Generic functions

Generic Reader: bad-variable (condition)
Package

metabang.bind.

Methods
Reader Method: bad-variable ((condition bind-keyword/optional-nil-with-default-error))
Source

bind.lisp.

Target Slot

bad-variable.

Generic Function: bind-collect-variables (kind variable-form)
Package

metabang.bind.

Methods
Method: bind-collect-variables (kind variable-form)
Source

bind.lisp.

Generic Function: bind-generate-bindings (kind variable-form value-form)

Handle the expansion for a particular binding-form.

‘kind‘ specifies the binding form. It can be a type (e.g., symbol or array) or a keyword (e.g., :flet or :plist). ‘variable-form‘ and ‘value-form‘ are taken from the binding-form given to ‘bind‘. E.g., if you have a bind like

(bind (((:values a b c) (foo))
(x 2))
(declare (optimize (speed 3)) (type simple-array a))
...)

then ‘kind‘ will be :values, ‘variable-form‘ will be the list ‘(a b c)‘ and ‘value-form‘ will be the expression ‘(foo)‘. ‘bind-generate-bindings‘ uses these variables as data to construct the generated code.

Package

metabang.bind.

Source

binding-forms.lisp.

Methods
Method: bind-generate-bindings ((kind (eql :file)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :plist-)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :properties)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :property-list)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :plist)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :writable-accessors)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :accessors)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :accessors-r/o)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :accessors-read-only)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :read-only-accessors)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :slots)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :slots-r/o)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :slots-read-only)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :read-only-slots)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :assoc)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :alist)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :structure/rw)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :structure)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :struct)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :multiple-value-bind)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :mv-bind)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :values)) variable-form value-form)
Method: bind-generate-bindings ((kind cons) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :flabels)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :dynamic-labels)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :labels)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :dflet)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :dynamic-flet)) variable-form value-form)
Method: bind-generate-bindings ((kind (eql :flet)) variable-form value-form)
Method: bind-generate-bindings ((kind symbol) variable-form value-form)
Method: bind-generate-bindings ((kind array) variable-form value-form)
Generic Reader: binding (condition)
Package

metabang.bind.

Methods
Reader Method: binding ((condition bind-error))
Source

bind.lisp.

Target Slot

binding.

Generic Function: binding-form-accepts-multiple-forms-p (binding-form)

Returns true if a binding form can accept multiple forms (e.g., :flet)

Package

metabang.bind.

Source

bind.lisp.

Methods
Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :file)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :plist-)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :properties)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :property-list)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :plist)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :writable-accessors)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :accessors)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :accessors-r/o)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :accessors-read-only)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :read-only-accessors)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :slots)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :slots-r/o)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :slots-read-only)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :read-only-slots)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :assoc)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :alist)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :structure/rw)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :structure)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :struct)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :multiple-value-bind)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :mv-bind)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :values)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :flabels)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :dynamic-labels)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :labels)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :dflet)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :dynamic-flet)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p ((binding-form (eql :flet)))
Source

binding-forms.lisp.

Method: binding-form-accepts-multiple-forms-p (binding-form)
Generic Reader: unused-declarations (condition)
Package

metabang.bind.

Methods
Reader Method: unused-declarations ((condition bind-unused-declarations-condition))
Source

bind.lisp.

Target Slot

unused-declarations.

Generic Reader: value-form (condition)
Package

metabang.bind.

Methods
Reader Method: value-form ((condition bind-too-many-value-forms-error))
Source

bind.lisp.

Target Slot

value-form.

Generic Reader: variable-form (condition)
Package

metabang.bind.

Methods
Reader Method: variable-form ((condition bind-too-many-value-forms-error))
Source

bind.lisp.

Target Slot

variable-form.

Reader Method: variable-form ((condition bind-missing-value-form-warning))
Source

bind.lisp.

Target Slot

variable-form.


6.2.6 Conditions

Condition: simple-style-warning
Package

metabang.bind.

Source

bind.lisp.

Direct superclasses
  • simple-warning.
  • style-warning.
Direct subclasses

Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (  
B   C   D   F   G   H   L   M   N   S   T   U   V  
Index Entry  Section

(
(setf binding-form-docstring): Public ordinary functions

B
bad-variable: Private generic functions
bad-variable: Private generic functions
bind: Public macros
bind-collect-variables: Private generic functions
bind-collect-variables: Private generic functions
bind-expand-declarations: Private ordinary functions
bind-filter-declarations: Private ordinary functions
bind-fix-nils: Private ordinary functions
bind-fix-nils-destructured: Private ordinary functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-generate-bindings: Private generic functions
bind-get-vars-from-lambda-list: Private ordinary functions
bind-macro-helper: Private ordinary functions
binding: Private generic functions
binding: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-accepts-multiple-forms-p: Private generic functions
binding-form-docstring: Public ordinary functions
binding-form-groups: Public ordinary functions
binding-form-synonyms: Public ordinary functions
binding-forms: Public ordinary functions

C
check-for-unused-variable-declarations: Private ordinary functions

D
defbinding-form: Private macros
dotted-pair-p: Private ordinary functions

F
find-type-declaration: Private ordinary functions
fluid-bind: Public macros
Function, (setf binding-form-docstring): Public ordinary functions
Function, bind-expand-declarations: Private ordinary functions
Function, bind-filter-declarations: Private ordinary functions
Function, bind-fix-nils: Private ordinary functions
Function, bind-fix-nils-destructured: Private ordinary functions
Function, bind-get-vars-from-lambda-list: Private ordinary functions
Function, bind-macro-helper: Private ordinary functions
Function, binding-form-docstring: Public ordinary functions
Function, binding-form-groups: Public ordinary functions
Function, binding-form-synonyms: Public ordinary functions
Function, binding-forms: Public ordinary functions
Function, check-for-unused-variable-declarations: Private ordinary functions
Function, dotted-pair-p: Private ordinary functions
Function, find-type-declaration: Private ordinary functions
Function, handle-plist: Private ordinary functions
Function, map-tree: Private ordinary functions
Function, merge-binding-forms-p: Private ordinary functions
Function, mint-ignorable-variable: Private ordinary functions
Function, next-value: Private ordinary functions
Function, simple-style-warning: Private ordinary functions
Function, tree-find: Private ordinary functions
Function, var-ignorable-p: Private ordinary functions

G
Generic Function, bad-variable: Private generic functions
Generic Function, bind-collect-variables: Private generic functions
Generic Function, bind-generate-bindings: Private generic functions
Generic Function, binding: Private generic functions
Generic Function, binding-form-accepts-multiple-forms-p: Private generic functions
Generic Function, unused-declarations: Private generic functions
Generic Function, value-form: Private generic functions
Generic Function, variable-form: Private generic functions

H
handle-plist: Private ordinary functions

L
lambda-bind: Public macros

M
Macro, bind: Public macros
Macro, defbinding-form: Private macros
Macro, fluid-bind: Public macros
Macro, lambda-bind: Public macros
map-tree: Private ordinary functions
merge-binding-forms-p: Private ordinary functions
Method, bad-variable: Private generic functions
Method, bind-collect-variables: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, bind-generate-bindings: Private generic functions
Method, binding: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, binding-form-accepts-multiple-forms-p: Private generic functions
Method, unused-declarations: Private generic functions
Method, value-form: Private generic functions
Method, variable-form: Private generic functions
Method, variable-form: Private generic functions
mint-ignorable-variable: Private ordinary functions

N
next-value: Private ordinary functions

S
simple-style-warning: Private ordinary functions

T
tree-find: Private ordinary functions

U
unused-declarations: Private generic functions
unused-declarations: Private generic functions

V
value-form: Private generic functions
value-form: Private generic functions
var-ignorable-p: Private ordinary functions
variable-form: Private generic functions
variable-form: Private generic functions
variable-form: Private generic functions


A.3 Variables


A.4 Data types

Jump to:   B   C   D   F   M   P   S  
Index Entry  Section

B
bind-error: Public conditions
bind-keyword/optional-nil-with-default-error: Public conditions
bind-missing-value-form-warning: Public conditions
bind-too-many-value-forms-error: Public conditions
bind-unused-declarations-condition: Public conditions
bind-unused-declarations-error: Public conditions
bind-unused-declarations-warning: Public conditions
bind.lisp: The metabang-bind/dev/bind․lisp file
binding-forms.lisp: The metabang-bind/dev/binding-forms․lisp file

C
Condition, bind-error: Public conditions
Condition, bind-keyword/optional-nil-with-default-error: Public conditions
Condition, bind-missing-value-form-warning: Public conditions
Condition, bind-too-many-value-forms-error: Public conditions
Condition, bind-unused-declarations-condition: Public conditions
Condition, bind-unused-declarations-error: Public conditions
Condition, bind-unused-declarations-warning: Public conditions
Condition, simple-style-warning: Private conditions

D
dev: The metabang-bind/dev module

F
File, bind.lisp: The metabang-bind/dev/bind․lisp file
File, binding-forms.lisp: The metabang-bind/dev/binding-forms․lisp file
File, macros.lisp: The metabang-bind/dev/macros․lisp file
File, metabang-bind.asd: The metabang-bind/metabang-bind․asd file
File, packages.lisp: The metabang-bind/dev/packages․lisp file

M
macros.lisp: The metabang-bind/dev/macros․lisp file
metabang-bind: The metabang-bind system
metabang-bind.asd: The metabang-bind/metabang-bind․asd file
metabang.bind: The metabang․bind package
metabang.bind-system: The metabang․bind-system package
metabang.bind.developer: The metabang․bind․developer package
Module, dev: The metabang-bind/dev module

P
Package, metabang.bind: The metabang․bind package
Package, metabang.bind-system: The metabang․bind-system package
Package, metabang.bind.developer: The metabang․bind․developer package
packages.lisp: The metabang-bind/dev/packages․lisp file

S
simple-style-warning: Private conditions
System, metabang-bind: The metabang-bind system