The descriptions Reference Manual

This is the descriptions Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 16:17:13 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 descriptions

A domain model meta level description library

Author

Mariano Montone

License

MIT

Dependencies
  • alexandria (system).
  • anaphora (system).
  • sheeple (system).
  • closer-mop (system).
Source

descriptions.asd.

Child Component

src (module).


3 Modules

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


3.1 descriptions/src

Source

descriptions.asd.

Parent Component

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

Source

descriptions.asd.

Parent Component

descriptions (system).

ASDF Systems

descriptions.


4.1.2 descriptions/src/package.lisp

Source

descriptions.asd.

Parent Component

src (module).

Packages

descriptions.


4.1.3 descriptions/src/descriptions.lisp

Dependency

package.lisp (file).

Source

descriptions.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.4 descriptions/src/mop.lisp

Dependency

descriptions.lisp (file).

Source

descriptions.asd.

Parent Component

src (module).

Public Interface
Internals

5 Packages

Packages are listed by definition order.


5.1 descriptions

Source

package.lisp.

Nicknames
  • desc
  • {}
Use List
  • alexandria.
  • anaphora.
  • common-lisp.
  • sheeple.
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 Special variables

Special Variable: =>
Package

descriptions.

Special Variable: =>boolean

Boolean attribute

Package

descriptions.

Special Variable: =>email

Email attribute

Package

descriptions.

Special Variable: =>integer

Integer attribute

Package

descriptions.

Special Variable: =>keyword

Keyword attribute

Package

descriptions.

Special Variable: =>multiple-option
Package

descriptions.

Special Variable: =>password

Password attribute

Package

descriptions.

Special Variable: =>single-option
Package

descriptions.

Special Variable: =>string

String attribute

Package

descriptions.

Special Variable: =>symbol

Symbol attribute

Package

descriptions.

Special Variable: =>to-many-relation
Package

descriptions.

Special Variable: =>to-one-relation
Package

descriptions.

Special Variable: =>valued
Package

descriptions.

Special Variable: =>view
Package

descriptions.

Special Variable: {description}
Package

descriptions.


6.1.2 Macros

Macro: => (type-spec &rest property-values)

Attribute builder macro

Package

descriptions.

Source

descriptions.lisp.

Macro: define-attribute (name parents properties &rest options)

Define an attribute type

:param name: the attribute type name.
:param parents: the attribute type parents. :param properties: list of properties.
:param options: options, like :documentation, etc

Package

descriptions.

Source

descriptions.lisp.

Macro: define-described-class (name direct-superclasses direct-slots &rest options)
Package

descriptions.

Source

mop.lisp.

Macro: define-description (name parents attributes &rest options)

Define a new description

Package

descriptions.

Source

descriptions.lisp.

Macro: with-described-object (attributes (object &optional description) &body body)
Package

descriptions.

Source

descriptions.lisp.

Macro: with-description-attributes (attributes description &body body)

Run body with description attributes bound

Package

descriptions.

Source

descriptions.lisp.


6.1.3 Ordinary functions

Function: =>boolean (&rest property-values)

Create a =>BOOLEAN attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>email (&rest property-values)

Create a =>EMAIL attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>integer (&rest property-values)

Create a =>INTEGER attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>keyword (&rest property-values)

Create a =>KEYWORD attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>multiple-option (&rest property-values)

Create a =>MULTIPLE-OPTION attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>password (&rest property-values)

Create a =>PASSWORD attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>single-option (&rest property-values)

Create a =>SINGLE-OPTION attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>string (&rest property-values)

Create a =>STRING attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>symbol (&rest property-values)

Create a =>SYMBOL attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>to-many-relation (&rest property-values)

Create a =>TO-MANY-RELATION attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>to-one-relation (&rest property-values)

Create a =>TO-ONE-RELATION attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>valued (&rest property-values)

Create a =>VALUED attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>view (&rest property-values)

Create a =>VIEW attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: add-attribute (description attribute &key reader writer accessor)
Package

descriptions.

Source

descriptions.lisp.

Function: attribute-documentation (attribute)
Package

descriptions.

Source

descriptions.lisp.

Function: attribute-properties (attribute)
Package

descriptions.

Source

descriptions.lisp.

Function: description-attributes (description)

Obtain a description attributes. :param description: the description.

Package

descriptions.

Source

descriptions.lisp.

Function: display-object (object &optional description stream)
Package

descriptions.

Source

descriptions.lisp.

Function: get-attribute (description attribute-name)
Package

descriptions.

Source

descriptions.lisp.

Function: make-attribute (attribute-type &rest property-values)

Create an attribute.

:param attribute-type: The attribute type :property-values: A plist of attribute properties values

Package

descriptions.

Source

descriptions.lisp.

Function: make-description (&key parents attributes)
Package

descriptions.

Source

descriptions.lisp.

Function: undefinedp (value)
Package

descriptions.

Source

descriptions.lisp.


6.1.4 Generic functions

Generic Reader: default-description (object)
Package

descriptions.

Methods
Reader Method: default-description ((described-object-class described-object-class))

automatically generated reader method

Source

mop.lisp.

Target Slot

default-description.

Reader Method: default-description ((described-object described-object))

automatically generated reader method

Source

mop.lisp.

Target Slot

default-description.

Generic Writer: (setf default-description) (object)
Package

descriptions.

Methods
Writer Method: (setf default-description) ((described-object-class described-object-class))

automatically generated writer method

Source

mop.lisp.

Target Slot

default-description.

Writer Method: (setf default-description) ((described-object described-object))

automatically generated writer method

Source

mop.lisp.

Target Slot

default-description.


6.1.5 Standalone methods

Method: compute-effective-slot-definition ((class described-object-class) name direct-slots)
Package

sb-mop.

Source

mop.lisp.

Method: direct-slot-definition-class ((class described-object-class) &rest initargs)
Package

sb-mop.

Source

mop.lisp.

Method: effective-slot-definition-class ((class described-object-class) &rest initargs)
Package

sb-mop.

Source

mop.lisp.

Method: shared-initialize :after ((obj described-object) slot-names &rest args)

Initialize the default object description

Source

mop.lisp.

Method: shared-initialize :around ((class described-object-class) slot-names &rest args &key direct-superclasses)

Ensures we inherit from described-object.

Source

mop.lisp.

Method: validate-superclass ((class described-object-class) (superclass standard-class))
Package

sb-mop.

Source

mop.lisp.


6.1.6 Classes

Class: described-object
Package

descriptions.

Source

mop.lisp.

Direct methods
Direct slots
Slot: default-description
Initargs

:default-description

Readers

default-description.

Writers

(setf default-description).

Slot: parent-descriptions
Initform

(list descriptions:{description})

Initargs

:parent-descriptions

Readers

parent-descriptions.

Writers

(setf parent-descriptions).

Slot: default-description-name
Initargs

:default-description-name

Readers

default-description-name.

Writers

(setf default-description-name).

Class: described-object-class
Package

descriptions.

Source

mop.lisp.

Direct superclasses

standard-class.

Direct methods
Direct slots
Slot: default-description
Initargs

:default-description

Readers

default-description.

Writers

(setf default-description).


6.2 Internals


6.2.1 Special variables

Special Variable: %undefined%
Package

descriptions.

Source

descriptions.lisp.

Special Variable: =>option
Package

descriptions.

Special Variable: =>reference
Package

descriptions.

Special Variable: =>relation
Package

descriptions.


6.2.2 Symbol macros

Symbol Macro: +undefined+
Package

descriptions.

Source

descriptions.lisp.


6.2.3 Ordinary functions

Function: =>option (&rest property-values)

Create a =>OPTION attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>reference (&rest property-values)

Create a =>REFERENCE attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: =>relation (&rest property-values)

Create a =>RELATION attribute. Takes a plist of property values for the created attribute

Package

descriptions.

Source

descriptions.lisp.

Function: copy-undefined (instance)
Package

descriptions.

Source

descriptions.lisp.

Function: make-undefined (&key)
Package

descriptions.

Source

descriptions.lisp.

Function: plist-keys (plist)
Package

descriptions.

Source

mop.lisp.

Function: plist-values (plist)
Package

descriptions.

Source

mop.lisp.

Function: symbol->keyword (symbol)
Package

descriptions.

Source

descriptions.lisp.

Function: undefined-p (object)
Package

descriptions.

Source

descriptions.lisp.


6.2.4 Generic functions

Generic Reader: default-description-name (object)
Package

descriptions.

Methods
Reader Method: default-description-name ((described-object described-object))

automatically generated reader method

Source

mop.lisp.

Target Slot

default-description-name.

Generic Writer: (setf default-description-name) (object)
Package

descriptions.

Methods
Writer Method: (setf default-description-name) ((described-object described-object))

automatically generated writer method

Source

mop.lisp.

Target Slot

default-description-name.

Generic Function: described-p (object)
Package

descriptions.

Methods
Method: described-p (slot)
Source

mop.lisp.

Reader Method: described-p ((described-object-slot-mixin described-object-slot-mixin))

automatically generated reader method

Source

mop.lisp.

Target Slot

described-p.

Generic Writer: (setf described-p) (object)
Package

descriptions.

Methods
Writer Method: (setf described-p) ((described-object-slot-mixin described-object-slot-mixin))

automatically generated writer method

Source

mop.lisp.

Target Slot

described-p.

Generic Function: described-slot-p (slot)
Package

descriptions.

Source

mop.lisp.

Methods
Method: described-slot-p (slot)
Method: described-slot-p ((slot described-object-slot-mixin))
Generic Reader: parent-descriptions (object)
Package

descriptions.

Methods
Reader Method: parent-descriptions ((described-object described-object))

automatically generated reader method

Source

mop.lisp.

Target Slot

parent-descriptions.

Generic Writer: (setf parent-descriptions) (object)
Package

descriptions.

Methods
Writer Method: (setf parent-descriptions) ((described-object described-object))

automatically generated writer method

Source

mop.lisp.

Target Slot

parent-descriptions.

Generic Function: slot-attribute (object)
Package

descriptions.

Methods
Method: slot-attribute (slot)
Source

mop.lisp.

Reader Method: slot-attribute ((described-object-slot-mixin described-object-slot-mixin))

automatically generated reader method

Source

mop.lisp.

Target Slot

attribute.

Generic Writer: (setf slot-attribute) (object)
Package

descriptions.

Methods
Writer Method: (setf slot-attribute) ((described-object-slot-mixin described-object-slot-mixin))

automatically generated writer method

Source

mop.lisp.

Target Slot

attribute.

Generic Function: slot-attribute-name (slot)
Package

descriptions.

Methods
Method: slot-attribute-name (slot)
Source

mop.lisp.


6.2.5 Structures

Structure: undefined
Package

descriptions.

Source

descriptions.lisp.

Direct superclasses

structure-object.


6.2.6 Classes

Class: described-object-direct-slot-definition
Package

descriptions.

Source

mop.lisp.

Direct superclasses
Class: described-object-effective-slot-definition
Package

descriptions.

Source

mop.lisp.

Direct superclasses
Class: described-object-slot-mixin
Package

descriptions.

Source

mop.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: attribute
Initargs

:attribute

Readers

slot-attribute.

Writers

(setf slot-attribute).

Slot: described-p
Initform

t

Initargs

:described-p

Readers

described-p.

Writers

(setf described-p).


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (   =  
A   C   D   E   F   G   M   P   S   U   V   W  
Index Entry  Section

(
(setf default-description): Public generic functions
(setf default-description): Public generic functions
(setf default-description): Public generic functions
(setf default-description-name): Private generic functions
(setf default-description-name): Private generic functions
(setf described-p): Private generic functions
(setf described-p): Private generic functions
(setf parent-descriptions): Private generic functions
(setf parent-descriptions): Private generic functions
(setf slot-attribute): Private generic functions
(setf slot-attribute): Private generic functions

=
=>: Public macros
=>boolean: Public ordinary functions
=>email: Public ordinary functions
=>integer: Public ordinary functions
=>keyword: Public ordinary functions
=>multiple-option: Public ordinary functions
=>option: Private ordinary functions
=>password: Public ordinary functions
=>reference: Private ordinary functions
=>relation: Private ordinary functions
=>single-option: Public ordinary functions
=>string: Public ordinary functions
=>symbol: Public ordinary functions
=>to-many-relation: Public ordinary functions
=>to-one-relation: Public ordinary functions
=>valued: Public ordinary functions
=>view: Public ordinary functions

A
add-attribute: Public ordinary functions
attribute-documentation: Public ordinary functions
attribute-properties: Public ordinary functions

C
compute-effective-slot-definition: Public standalone methods
copy-undefined: Private ordinary functions

D
default-description: Public generic functions
default-description: Public generic functions
default-description: Public generic functions
default-description-name: Private generic functions
default-description-name: Private generic functions
define-attribute: Public macros
define-described-class: Public macros
define-description: Public macros
described-p: Private generic functions
described-p: Private generic functions
described-p: Private generic functions
described-slot-p: Private generic functions
described-slot-p: Private generic functions
described-slot-p: Private generic functions
description-attributes: Public ordinary functions
direct-slot-definition-class: Public standalone methods
display-object: Public ordinary functions

E
effective-slot-definition-class: Public standalone methods

F
Function, =>boolean: Public ordinary functions
Function, =>email: Public ordinary functions
Function, =>integer: Public ordinary functions
Function, =>keyword: Public ordinary functions
Function, =>multiple-option: Public ordinary functions
Function, =>option: Private ordinary functions
Function, =>password: Public ordinary functions
Function, =>reference: Private ordinary functions
Function, =>relation: Private ordinary functions
Function, =>single-option: Public ordinary functions
Function, =>string: Public ordinary functions
Function, =>symbol: Public ordinary functions
Function, =>to-many-relation: Public ordinary functions
Function, =>to-one-relation: Public ordinary functions
Function, =>valued: Public ordinary functions
Function, =>view: Public ordinary functions
Function, add-attribute: Public ordinary functions
Function, attribute-documentation: Public ordinary functions
Function, attribute-properties: Public ordinary functions
Function, copy-undefined: Private ordinary functions
Function, description-attributes: Public ordinary functions
Function, display-object: Public ordinary functions
Function, get-attribute: Public ordinary functions
Function, make-attribute: Public ordinary functions
Function, make-description: Public ordinary functions
Function, make-undefined: Private ordinary functions
Function, plist-keys: Private ordinary functions
Function, plist-values: Private ordinary functions
Function, symbol->keyword: Private ordinary functions
Function, undefined-p: Private ordinary functions
Function, undefinedp: Public ordinary functions

G
Generic Function, (setf default-description): Public generic functions
Generic Function, (setf default-description-name): Private generic functions
Generic Function, (setf described-p): Private generic functions
Generic Function, (setf parent-descriptions): Private generic functions
Generic Function, (setf slot-attribute): Private generic functions
Generic Function, default-description: Public generic functions
Generic Function, default-description-name: Private generic functions
Generic Function, described-p: Private generic functions
Generic Function, described-slot-p: Private generic functions
Generic Function, parent-descriptions: Private generic functions
Generic Function, slot-attribute: Private generic functions
Generic Function, slot-attribute-name: Private generic functions
get-attribute: Public ordinary functions

M
Macro, =>: Public macros
Macro, define-attribute: Public macros
Macro, define-described-class: Public macros
Macro, define-description: Public macros
Macro, with-described-object: Public macros
Macro, with-description-attributes: Public macros
make-attribute: Public ordinary functions
make-description: Public ordinary functions
make-undefined: Private ordinary functions
Method, (setf default-description): Public generic functions
Method, (setf default-description): Public generic functions
Method, (setf default-description-name): Private generic functions
Method, (setf described-p): Private generic functions
Method, (setf parent-descriptions): Private generic functions
Method, (setf slot-attribute): Private generic functions
Method, compute-effective-slot-definition: Public standalone methods
Method, default-description: Public generic functions
Method, default-description: Public generic functions
Method, default-description-name: Private generic functions
Method, described-p: Private generic functions
Method, described-p: Private generic functions
Method, described-slot-p: Private generic functions
Method, described-slot-p: Private generic functions
Method, direct-slot-definition-class: Public standalone methods
Method, effective-slot-definition-class: Public standalone methods
Method, parent-descriptions: Private generic functions
Method, shared-initialize: Public standalone methods
Method, shared-initialize: Public standalone methods
Method, slot-attribute: Private generic functions
Method, slot-attribute: Private generic functions
Method, slot-attribute-name: Private generic functions
Method, validate-superclass: Public standalone methods

P
parent-descriptions: Private generic functions
parent-descriptions: Private generic functions
plist-keys: Private ordinary functions
plist-values: Private ordinary functions

S
shared-initialize: Public standalone methods
shared-initialize: Public standalone methods
slot-attribute: Private generic functions
slot-attribute: Private generic functions
slot-attribute: Private generic functions
slot-attribute-name: Private generic functions
slot-attribute-name: Private generic functions
symbol->keyword: Private ordinary functions

U
undefined-p: Private ordinary functions
undefinedp: Public ordinary functions

V
validate-superclass: Public standalone methods

W
with-described-object: Public macros
with-description-attributes: Public macros


A.3 Variables

Jump to:   %   +   =   {  
A   D   P   S  
Index Entry  Section

%
%undefined%: Private special variables

+
+undefined+: Private symbol macros

=
=>: Public special variables
=>boolean: Public special variables
=>email: Public special variables
=>integer: Public special variables
=>keyword: Public special variables
=>multiple-option: Public special variables
=>option: Private special variables
=>password: Public special variables
=>reference: Private special variables
=>relation: Private special variables
=>single-option: Public special variables
=>string: Public special variables
=>symbol: Public special variables
=>to-many-relation: Public special variables
=>to-one-relation: Public special variables
=>valued: Public special variables
=>view: Public special variables

{
{description}: Public special variables

A
attribute: Private classes

D
default-description: Public classes
default-description: Public classes
default-description-name: Public classes
described-p: Private classes

P
parent-descriptions: Public classes

S
Slot, attribute: Private classes
Slot, default-description: Public classes
Slot, default-description: Public classes
Slot, default-description-name: Public classes
Slot, described-p: Private classes
Slot, parent-descriptions: Public classes
Special Variable, %undefined%: Private special variables
Special Variable, =>: Public special variables
Special Variable, =>boolean: Public special variables
Special Variable, =>email: Public special variables
Special Variable, =>integer: Public special variables
Special Variable, =>keyword: Public special variables
Special Variable, =>multiple-option: Public special variables
Special Variable, =>option: Private special variables
Special Variable, =>password: Public special variables
Special Variable, =>reference: Private special variables
Special Variable, =>relation: Private special variables
Special Variable, =>single-option: Public special variables
Special Variable, =>string: Public special variables
Special Variable, =>symbol: Public special variables
Special Variable, =>to-many-relation: Public special variables
Special Variable, =>to-one-relation: Public special variables
Special Variable, =>valued: Public special variables
Special Variable, =>view: Public special variables
Special Variable, {description}: Public special variables
Symbol Macro, +undefined+: Private symbol macros


A.4 Data types