The submarine Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The submarine Reference Manual

This is the submarine Reference Manual, generated automatically by Declt version 2.4 "Will Decker" on Wed Jun 20 12:37:53 2018 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Systems

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


Previous: , Up: Systems   [Contents][Index]

1.1 submarine

Dependencies
Source

submarine.asd (file)

Components

Next: , Previous: , Up: Top   [Contents][Index]

2 Files

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


Previous: , Up: Files   [Contents][Index]

2.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

2.1.1 submarine.asd

Location

submarine.asd

Systems

submarine (system)

Packages

submarine-system


Next: , Previous: , Up: Lisp files   [Contents][Index]

2.1.2 submarine/package.lisp

Parent

submarine (system)

Location

package.lisp

Packages

submarine


Next: , Previous: , Up: Lisp files   [Contents][Index]

2.1.3 submarine/conditions.lisp

Dependency

package.lisp (file)

Parent

submarine (system)

Location

conditions.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

2.1.4 submarine/utilities.lisp

Dependency

conditions.lisp (file)

Parent

submarine (system)

Location

utilities.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

2.1.5 submarine/mop.lisp

Dependency

utilities.lisp (file)

Parent

submarine (system)

Location

mop.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

2.1.6 submarine/db.lisp

Dependency

mop.lisp (file)

Parent

submarine (system)

Location

db.lisp

Internal Definitions

Previous: , Up: Lisp files   [Contents][Index]

2.1.7 submarine/dao.lisp

Dependency

db.lisp (file)

Parent

submarine (system)

Location

dao.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

3 Packages

Packages are listed by definition order.


Next: , Previous: , Up: Packages   [Contents][Index]

3.1 submarine-system

Source

submarine.asd

Use List

Previous: , Up: Packages   [Contents][Index]

3.2 submarine

A very simple quasi-object persistency system built on top of Postmodern.

Source

package.lisp (file)

Use List
Exported Definitions
Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

4 Definitions

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


Next: , Previous: , Up: Definitions   [Contents][Index]

4.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

4.1.1 Macros

Macro: def-many-to-many CLASS1-NAME CLASS2-NAME &key CONNECTION-SPEC NAME

Defines a possibly named many-to-many mapping between two persistent classes. There can be only one unnamed mapping between any two classes, and any number of named mappings. CLASS*-NAME should be an (unquoted) symbol with class name.

Defines additional mapping persistent class ‘NAME’ (if ‘NAME’ is not provided, ‘CLASS1-NAME-CLASS2-NAME’ is used), and for each of classes, a method that retrieves list of instances of second class (named like that class or, if the relation is named, CLASS-NAME-IN-NAME. Mapping class has three slots, ‘CLASS1-NAME’ and ‘CLASS2-NAME’ that hold instances of first and second class, and ‘WEIGHT’ that holds an integer representing the strength of the relationship. The following functions are available:

* A predicate ‘RELATEDP’, taking a keyword argument ‘RELATION’, which tells whether two objects are in a relation (if ‘RELATION’ is not provided, the unnamed relation is assumed). It returns a ‘NAME’ or ‘CLASS1-NAME-CLASS2-NAME’ object. It has an accessor ‘WEIGHT’.

* A function ‘RELATE’ (‘RELATE-IN-NAME’) that establishes a relationship between its two arguments. It takes a key-argument, ‘WEIGHT’, by default 1. The order in which the object arguments are provided is irrelevant. ‘CONNECTION-SPEC’ specifies the connection to be used to create the link table.

Package

submarine

Source

dao.lisp (file)

Macro: defdao NAME SUPERS &body BODY

Wrapper macro for defining a class inheriting from DAO and with the metaclass set to DB-CLASS.

Package

submarine

Source

mop.lisp (file)

Macro: make-and-save TYPE &rest REST

Make a DAO and immediately save it. Takes the same arguments as (make-instance ((dao dao))).

Package

submarine

Source

dao.lisp (file)

Macro: query-dao TYPE QUERY

Execute the given ‘QUERY’ (which can be either a string or a S-SQL expression, which won’t be evaluated) and return the result as daos of the given ‘TYPE’. The names of the fields returned by the query must match the slots of the dao.

Package

submarine

Source

dao.lisp (file)

Macro: select-dao TYPE &optional TEST

Select daos of TYPE for the rows in its table for which the given TEST holds.

Package

submarine

Source

dao.lisp (file)

Macro: with-class-connection (CLASS) &body BODY

Run BODY in an environment with an always pooled connection to the database specified by the DB-CLASS-CONNECTION-SPEC of CLASS.

Package

submarine

Source

utilities.lisp (file)

Macro: with-connection (DATABASE USER PASSWORD HOST &key PORT POOLED-P) &body BODY

Binds *database* to a new connection and runs body in that scope.

Package

submarine

Source

utilities.lisp (file)

Macro: with-object-connection (OBJECT) &body BODY

Run BODY in an environment with a connection to the database specified by the DB-CLASS-CONNECTION-SPEC of the class of OBJECT.

Package

submarine

Source

utilities.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

4.1.2 Functions

Function: get-dao TYPE ID

Get the dao corresponding to the given primary key, or return nil if it does not exist.

Package

submarine

Source

dao.lisp (file)

Function: make-dao TYPE INITARGS

Create a DAO of the given ‘TYPE’ and initialize it according to the values of the alist ‘INITARGS’. ‘Initargs’ may contain additional values, not used in the initialization proccess.

Package

submarine

Source

dao.lisp (file)

Function: query-dao-fun TYPE QUERY

Execute the given ‘QUERY’ (which can be either a string or a S-SQL expression, which will be evaluated) and return the result as daos of the given ‘TYPE’. The names of the fields returned by the query must match the slots of the dao. This is a functional interface for ‘QUERY-DAO’.

Package

submarine

Source

dao.lisp (file)

Function: relate OBJECT1 OBJECT2 &key RELATION WEIGHT

Make OBJECT1 and OBJECT2 enter into the many-to-many relation ‘RELATION’. If ‘RELATION’ is not provided, the unnamed relation is assumed.

Package

submarine

Source

dao.lisp (file)

Function: relatedp OBJECT1 OBJECT2 &key RELATION

Tell whether ‘OBJECT1’ and ‘OBJECT2’ are in the many-to-many relation ‘RELATION’ (or the unnamed relation if ‘RELATION’ is not provided).

Package

submarine

Source

dao.lisp (file)

Function: select-dao-fun TYPE TEST

Functional interface for SELECT-DAO.

Package

submarine

Source

dao.lisp (file)

Function: slot-value-or-id-if-foreign OBJECT SLOT

SLOT-VALUE if SLOT in OBJECT is not foreign, the ID of the object in the slot otherwise. If the object is not saved, save it.

Package

submarine

Source

dao.lisp (file)

Function: unrelate OBJECT1 OBJECT2 &key RELATION

‘OBJECT1’ stops being with ‘OBJECT2’ in ‘RELATION’.

Package

submarine

Source

dao.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

4.1.3 Generic functions

Generic Function: dao-exists-p DAO

Return a boolean indicating whether the given DAO exists in the database.

Package

submarine

Source

dao.lisp (file)

Methods
Method: dao-exists-p (DAO dao)
Generic Function: dao= LEFT RIGHT &key TEST

T if all the slot-values of ‘LEFT’ and ‘RIGHT’
are the same. If the compared values are not DAO’s, they are compared using ‘TEST’ (which defaults to ‘EQL’). Otherwise, they are ‘DAO=’ed, with the same ‘TEST’ argument as specified in the topmost call of ‘DAO=’. If neither ‘LEFT’ nor ‘RIGHT’ are DAOs, ‘TEST’ is called.

Package

submarine

Source

dao.lisp (file)

Methods
Method: dao= (LEFT dao) (RIGHT dao) &key TEST
Method: dao= LEFT RIGHT &key TEST
Generic Function: delete-dao DAO

Delete the given dao from the database.

Package

submarine

Source

dao.lisp (file)

Methods
Method: delete-dao (DAO dao)
Generic Function: foreign-type-p OBJECT
Generic Function: (setf foreign-type-p) NEW-VALUE OBJECT
Package

submarine

Methods
Method: foreign-type-p (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)

automatically generated reader method

Source

mop.lisp (file)

Method: (setf foreign-type-p) NEW-VALUE (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)

automatically generated writer method

Source

mop.lisp (file)

Generic Function: get-all TYPE OBJECT

Get all objects of TYPE that stand in a many-to-one relation with OBJECT.

Package

submarine

Source

dao.lisp (file)

Methods
Method: get-all TYPE OBJECT
Generic Function: get-id OBJECT
Generic Function: (setf get-id) NEW-VALUE OBJECT
Package

submarine

Methods
Method: get-id (DAO dao)

automatically generated reader method

Source

dao.lisp (file)

Method: (setf get-id) NEW-VALUE (DAO dao)

automatically generated writer method

Source

dao.lisp (file)

Generic Function: insert-dao DAO

Insert the given DAO into the database.

Package

submarine

Source

dao.lisp (file)

Methods
Method: insert-dao (DAO dao)
Generic Function: save-dao OBJECT

Save a dao: update it when it already exists, insert it otherwise.

Package

submarine

Source

dao.lisp (file)

Methods
Method: save-dao (DAO dao)
Generic Function: update-dao DAO

Update the DAO’s representation in the database with the values in the given object and return it.

Package

submarine

Source

dao.lisp (file)

Methods
Method: update-dao (DAO dao)

Next: , Previous: , Up: Exported definitions   [Contents][Index]

4.1.4 Conditions

Condition: dao-error ()

Base class for DAO related errors.

Package

submarine

Source

conditions.lisp (file)

Direct superclasses

simple-error (condition)

Direct subclasses
Direct methods

table-name (method)

Direct slots
Slot: type
Initargs

:type

Readers

table-name (generic function)

Condition: dao-nonexistent-id ()

Condition signaling the attempt to initialize a dao with a non-existant ID.

Package

submarine

Source

conditions.lisp (file)

Direct superclasses

dao-error (condition)

Direct methods

id (method)

Direct slots
Slot: id
Initargs

:id

Readers

id (generic function)

Condition: unresolved-foreign-key ()

Condition signaling that a class with a foreign-key reference to a non-defined class has been tried to be used.

Package

submarine

Source

conditions.lisp (file)

Direct superclasses

dao-error (condition)


Previous: , Up: Exported definitions   [Contents][Index]

4.1.5 Classes

Class: dao ()

Base class for any PostgreSQL aware classes.

Package

submarine

Source

dao.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: id
Type

integer

Initargs

:id

Readers

get-id (generic function)

Writers

(setf get-id) (generic function)

Class: db-class ()

Metaclass for PostgreSQL aware classes. It takes
two additional arguments in DEFTABLE: :INDICES (which slots are used as indices) and :CONNECTION-SPEC, which specifies how the class should connect to the database (its format is the same as in POSTMODERN:CONNECT-TOPLEVEL). If :CONNECTION-SPEC is not provided, SUBMARINE assumes it is a class created just for the sake of inheritance and does not create any tables for it.

Package

submarine

Source

mop.lisp (file)

Direct superclasses

standard-class (class)

Direct methods
Direct slots
Slot: indices
Initargs

:indices

Readers

db-class-indices (generic function)

Slot: unique
Initargs

:unique

Readers

db-class-unique (generic function)

Slot: connection-spec
Initargs

:connection-spec

Readers

db-class-connection-spec (generic function)

Slot: unfinished-classes

A class allocated slot
containing classes for whom not all the constraints could be applied.

Allocation

:class

Readers

db-class-unfinished-classes (generic function)

Writers

(setf db-class-unfinished-classes) (generic function)

Slot: foreign-keys

List of foreign-key slots.

Readers

db-class-foreign-keys (generic function)

Writers

(setf db-class-foreign-keys) (generic function)

Slot: unique-keys

List of slots whose value should be unique.

Readers

db-class-unique-keys (generic function)

Writers

(setf db-class-unique-keys) (generic function)


Previous: , Up: Definitions   [Contents][Index]

4.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

4.2.1 Functions

Function: class-db-slots CLASS

Return the list of non-transient, instance allocated slots of a class.

Package

submarine

Source

utilities.lisp (file)

Function: db-slots-of OBJECT

List of non-transient, instance allocated slots of OBJECT

Package

submarine

Source

utilities.lisp (file)

Function: id-seq-name CLASS
Package

submarine

Source

dao.lisp (file)

Function: non-db-slot SLOT

Slot is transient or its allocation is :CLASS.

Package

submarine

Source

utilities.lisp (file)

Function: set-fields OBJECT
Package

submarine

Source

dao.lisp (file)

Function: with-class-connection-fun CLASS WHAT-TO-DO

Functional interface to the macro WITH-CLASS-CONNECTION. the connection will be pooled.

Package

submarine

Source

utilities.lisp (file)

Function: with-connection-fun CONNECTION-SPEC WHAT-TO-DO

Functional interface to the macro WITH-CONNECTION.

Package

submarine

Source

utilities.lisp (file)

Function: with-object-connection-fun OBJECT WHAT-TO-DO

Functional interface to the macro WITH-OBJECT-CONNECTION.

Package

submarine

Source

utilities.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

4.2.2 Generic functions

Generic Function: actual-type CONDITION
Package

submarine

Methods
Method: actual-type (CONDITION sql-column-error)
Source

db.lisp (file)

Generic Function: add-constraint SLOT CONSTRAINT

Add a constraint to this slot’s class’ table.

Package

submarine

Source

db.lisp (file)

Methods
Method: add-constraint (LIST list) (CONSTRAINT (eql unique))
Method: add-constraint (SLOT db-class-slot-definition) (CONSTRAINT (eql unique))
Method: add-constraint (SLOT db-class-slot-definition) (CONSTRAINT (eql foreign-key))
Method: add-constraint (SLOT db-class-slot-definition) CONSTRAINT around
Generic Function: apply-foreign-key-constraints CLASS
Package

submarine

Methods
Method: apply-foreign-key-constraints (CLASS db-class)
Source

db.lisp (file)

Generic Function: apply-unique-constraints CLASS
Package

submarine

Methods
Method: apply-unique-constraints (CLASS db-class)
Source

db.lisp (file)

Generic Function: collect-constraints CLASS
Package

submarine

Methods
Method: collect-constraints (CLASS db-class)
Source

mop.lisp (file)

Generic Function: column-name CONDITION
Package

submarine

Methods
Method: column-name (CONDITION sql-column-does-not-exist)
Source

db.lisp (file)

Method: column-name (CONDITION sql-column-error)
Source

db.lisp (file)

Generic Function: column-type CONDITION
Package

submarine

Methods
Method: column-type (CONDITION sql-column-does-not-exist)
Source

db.lisp (file)

Generic Function: create-table CLASS

Create a table whose columns match the fields of
CLASS in the connected database. If CLASS is a symbol, the class it names is used.

Package

submarine

Source

db.lisp (file)

Methods
Method: create-table (NAME symbol)
Method: create-table (CLASS db-class)
Generic Function: database-consistent-with-specification CLASS

Return nothing if TABLE in the connected-p database
meets its specification. Otherwise, throw an appropriate error. There must exist a connection to the DATABASE in order to run this function.

Package

submarine

Source

db.lisp (file)

Methods
Method: database-consistent-with-specification (CLASS db-class)
Generic Function: db-class-connection-spec OBJECT
Package

submarine

Methods
Method: db-class-connection-spec (DB-CLASS db-class)

automatically generated reader method

Source

mop.lisp (file)

Generic Function: db-class-foreign-keys OBJECT
Generic Function: (setf db-class-foreign-keys) NEW-VALUE OBJECT
Package

submarine

Methods
Method: db-class-foreign-keys (DB-CLASS db-class)
Method: (setf db-class-foreign-keys) NEW-VALUE (DB-CLASS db-class)

List of foreign-key slots.

Source

mop.lisp (file)

Generic Function: db-class-indices OBJECT
Package

submarine

Methods
Method: db-class-indices (DB-CLASS db-class)

automatically generated reader method

Source

mop.lisp (file)

Generic Function: db-class-unfinished-classes OBJECT
Generic Function: (setf db-class-unfinished-classes) NEW-VALUE OBJECT
Package

submarine

Methods
Method: db-class-unfinished-classes (DB-CLASS db-class)
Method: (setf db-class-unfinished-classes) NEW-VALUE (DB-CLASS db-class)

A class allocated slot
containing classes for whom not all the constraints could be applied.

Source

mop.lisp (file)

Generic Function: db-class-unique OBJECT
Package

submarine

Methods
Method: db-class-unique (DB-CLASS db-class)

automatically generated reader method

Source

mop.lisp (file)

Generic Function: db-class-unique-keys OBJECT
Generic Function: (setf db-class-unique-keys) NEW-VALUE OBJECT
Package

submarine

Methods
Method: db-class-unique-keys (DB-CLASS db-class)
Method: (setf db-class-unique-keys) NEW-VALUE (DB-CLASS db-class)

List of slots whose value should be unique.

Source

mop.lisp (file)

Generic Function: delayed-constraint OBJECT
Generic Function: (setf delayed-constraint) NEW-VALUE OBJECT
Package

submarine

Methods
Method: delayed-constraint (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)
Method: (setf delayed-constraint) NEW-VALUE (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)

Closures adding constraints
that, for some reason, could not be executed. If there’s a slot with this attribute not-NIL in a class definition, then there’s something wrong with its SQL counterpart.

Source

mop.lisp (file)

Generic Function: id CONDITION
Package

submarine

Methods
Method: id (CONDITION dao-nonexistent-id)
Source

conditions.lisp (file)

Generic Function: needed-type CONDITION
Package

submarine

Methods
Method: needed-type (CONDITION sql-column-error)
Source

db.lisp (file)

Generic Function: not-null-p OBJECT
Generic Function: (setf not-null-p) NEW-VALUE OBJECT
Package

submarine

Methods
Method: not-null-p (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)
Method: (setf not-null-p) NEW-VALUE (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)

If non-NIL, a NON NULL database constrained will be introduced.

Source

mop.lisp (file)

Generic Function: on-delete OBJECT
Generic Function: (setf on-delete) NEW-VALUE OBJECT
Package

submarine

Methods
Method: on-delete (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)
Method: (setf on-delete) NEW-VALUE (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)

Action to be performed for this slot
when the refering row in the database ceases to exist. Possible values: :CASCADE, :RESTRICT, :SET-NULL, :SET-DEFAULT. If this slot is not a foreign key, it does nothing.

Source

mop.lisp (file)

Generic Function: relate-method OBJECT1 OBJECT2 RELATION WEIGHT

Relate ‘OBJECT1’ with ‘OBJECT2’ in ‘RELATION’.

Package

submarine

Source

dao.lisp (file)

Generic Function: relatedp-method OBJECT1 OBJECT2 RELATION

Tell if ‘OBJECT1’ is related to ‘OBJECT2’ in ‘RELATION’.

Package

submarine

Source

dao.lisp (file)

Generic Function: remove-finished-classes CLASS

Remove classes that are already finished from UNFINISHED-CLASSES of CLASS.

Package

submarine

Source

mop.lisp (file)

Methods
Method: remove-finished-classes (CLASS db-class)
Generic Function: table-name CONDITION
Package

submarine

Methods
Method: table-name (CONDITION sql-error)
Source

db.lisp (file)

Method: table-name (CONDITION dao-error)
Source

conditions.lisp (file)

Generic Function: transient-p OBJECT
Generic Function: (setf transient-p) NEW-VALUE OBJECT
Package

submarine

Methods
Method: transient-p (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)
Method: (setf transient-p) NEW-VALUE (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)

If non-NIL, this slot should be treated as transient and ignored in all database related operations.

Source

mop.lisp (file)

Generic Function: try-delayed-constraints CLASS

Try to call all the delayed constraints present.

Package

submarine

Source

mop.lisp (file)

Methods
Method: try-delayed-constraints (CLASS db-class)
Generic Function: unique OBJECT
Generic Function: (setf unique) NEW-VALUE OBJECT
Package

submarine

Methods
Method: unique (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)

automatically generated reader method

Source

mop.lisp (file)

Method: (setf unique) NEW-VALUE (DB-CLASS-SLOT-DEFINITION db-class-slot-definition)

automatically generated writer method

Source

mop.lisp (file)

Generic Function: unrelate-method OBJECT1 OBJECT2 RELATION

‘OBJECT1’ stops being with ‘OBJECT2’ in ‘RELATION’.

Package

submarine

Source

dao.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

4.2.3 Conditions

Condition: sql-column-does-not-exist ()

Condition signaling a missing column in an existing table.

Package

submarine

Source

db.lisp (file)

Direct superclasses

sql-error (condition)

Direct methods
Direct slots
Slot: name
Initargs

:name

Readers

column-name (generic function)

Slot: type
Initargs

:type

Readers

column-type (generic function)

Condition: sql-column-error ()

An error symbolizing that there is a column of the right name in the table, but its type is wrong

Package

submarine

Source

db.lisp (file)

Direct superclasses

sql-error (condition)

Direct methods
Direct slots
Slot: name
Initargs

:name

Readers

column-name (generic function)

Slot: needed-type
Initargs

:needed

Readers

needed-type (generic function)

Slot: actual-type
Initargs

:actual

Readers

actual-type (generic function)


Previous: , Up: Internal definitions   [Contents][Index]

4.2.4 Classes

Class: db-class-direct-slot-definition ()
Package

submarine

Source

mop.lisp (file)

Direct superclasses
Class: db-class-effective-slot-definition ()
Package

submarine

Source

mop.lisp (file)

Direct superclasses
Class: db-class-slot-definition ()
Package

submarine

Source

mop.lisp (file)

Direct superclasses

standard-object (class)

Direct subclasses
Direct methods
Direct slots
Slot: transient

If non-NIL, this slot should be treated as transient and ignored in all database related operations.

Initargs

:transient

Readers

transient-p (generic function)

Writers

(setf transient-p) (generic function)

Slot: not-null

If non-NIL, a NON NULL database constrained will be introduced.

Initargs

:not-null

Readers

not-null-p (generic function)

Writers

(setf not-null-p) (generic function)

Slot: foreign
Initargs

:foreign

Readers

foreign-type-p (generic function)

Writers

(setf foreign-type-p) (generic function)

Slot: unique
Initargs

:unique

Readers

unique (generic function)

Writers

(setf unique) (generic function)

Slot: on-delete

Action to be performed for this slot
when the refering row in the database ceases to exist. Possible values: :CASCADE, :RESTRICT, :SET-NULL, :SET-DEFAULT. If this slot is not a foreign key, it does nothing.

Initargs

:on-delete

Initform

:cascade

Readers

on-delete (generic function)

Writers

(setf on-delete) (generic function)

Slot: delayed-constraint

Closures adding constraints
that, for some reason, could not be executed. If there’s a slot with this attribute not-NIL in a class definition, then there’s something wrong with its SQL counterpart.

Readers

delayed-constraint (generic function)

Writers

(setf delayed-constraint) (generic function)


Previous: , Up: Top   [Contents][Index]

Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts

Jump to:   F   L   S  
Index Entry  Section

F
File, Lisp, submarine.asd: The submarine<dot>asd file
File, Lisp, submarine/conditions.lisp: The submarine/conditions<dot>lisp file
File, Lisp, submarine/dao.lisp: The submarine/dao<dot>lisp file
File, Lisp, submarine/db.lisp: The submarine/db<dot>lisp file
File, Lisp, submarine/mop.lisp: The submarine/mop<dot>lisp file
File, Lisp, submarine/package.lisp: The submarine/package<dot>lisp file
File, Lisp, submarine/utilities.lisp: The submarine/utilities<dot>lisp file

L
Lisp File, submarine.asd: The submarine<dot>asd file
Lisp File, submarine/conditions.lisp: The submarine/conditions<dot>lisp file
Lisp File, submarine/dao.lisp: The submarine/dao<dot>lisp file
Lisp File, submarine/db.lisp: The submarine/db<dot>lisp file
Lisp File, submarine/mop.lisp: The submarine/mop<dot>lisp file
Lisp File, submarine/package.lisp: The submarine/package<dot>lisp file
Lisp File, submarine/utilities.lisp: The submarine/utilities<dot>lisp file

S
submarine.asd: The submarine<dot>asd file
submarine/conditions.lisp: The submarine/conditions<dot>lisp file
submarine/dao.lisp: The submarine/dao<dot>lisp file
submarine/db.lisp: The submarine/db<dot>lisp file
submarine/mop.lisp: The submarine/mop<dot>lisp file
submarine/package.lisp: The submarine/package<dot>lisp file
submarine/utilities.lisp: The submarine/utilities<dot>lisp file

Jump to:   F   L   S  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   (  
A   C   D   F   G   I   M   N   O   Q   R   S   T   U   W  
Index Entry  Section

(
(setf db-class-foreign-keys): Internal generic functions
(setf db-class-foreign-keys): Internal generic functions
(setf db-class-unfinished-classes): Internal generic functions
(setf db-class-unfinished-classes): Internal generic functions
(setf db-class-unique-keys): Internal generic functions
(setf db-class-unique-keys): Internal generic functions
(setf delayed-constraint): Internal generic functions
(setf delayed-constraint): Internal generic functions
(setf foreign-type-p): Exported generic functions
(setf foreign-type-p): Exported generic functions
(setf get-id): Exported generic functions
(setf get-id): Exported generic functions
(setf not-null-p): Internal generic functions
(setf not-null-p): Internal generic functions
(setf on-delete): Internal generic functions
(setf on-delete): Internal generic functions
(setf transient-p): Internal generic functions
(setf transient-p): Internal generic functions
(setf unique): Internal generic functions
(setf unique): Internal generic functions

A
actual-type: Internal generic functions
actual-type: Internal generic functions
add-constraint: Internal generic functions
add-constraint: Internal generic functions
add-constraint: Internal generic functions
add-constraint: Internal generic functions
add-constraint: Internal generic functions
apply-foreign-key-constraints: Internal generic functions
apply-foreign-key-constraints: Internal generic functions
apply-unique-constraints: Internal generic functions
apply-unique-constraints: Internal generic functions

C
class-db-slots: Internal functions
collect-constraints: Internal generic functions
collect-constraints: Internal generic functions
column-name: Internal generic functions
column-name: Internal generic functions
column-name: Internal generic functions
column-type: Internal generic functions
column-type: Internal generic functions
create-table: Internal generic functions
create-table: Internal generic functions
create-table: Internal generic functions

D
dao-exists-p: Exported generic functions
dao-exists-p: Exported generic functions
dao=: Exported generic functions
dao=: Exported generic functions
dao=: Exported generic functions
database-consistent-with-specification: Internal generic functions
database-consistent-with-specification: Internal generic functions
db-class-connection-spec: Internal generic functions
db-class-connection-spec: Internal generic functions
db-class-foreign-keys: Internal generic functions
db-class-foreign-keys: Internal generic functions
db-class-indices: Internal generic functions
db-class-indices: Internal generic functions
db-class-unfinished-classes: Internal generic functions
db-class-unfinished-classes: Internal generic functions
db-class-unique: Internal generic functions
db-class-unique: Internal generic functions
db-class-unique-keys: Internal generic functions
db-class-unique-keys: Internal generic functions
db-slots-of: Internal functions
def-many-to-many: Exported macros
defdao: Exported macros
delayed-constraint: Internal generic functions
delayed-constraint: Internal generic functions
delete-dao: Exported generic functions
delete-dao: Exported generic functions

F
foreign-type-p: Exported generic functions
foreign-type-p: Exported generic functions
Function, class-db-slots: Internal functions
Function, db-slots-of: Internal functions
Function, get-dao: Exported functions
Function, id-seq-name: Internal functions
Function, make-dao: Exported functions
Function, non-db-slot: Internal functions
Function, query-dao-fun: Exported functions
Function, relate: Exported functions
Function, relatedp: Exported functions
Function, select-dao-fun: Exported functions
Function, set-fields: Internal functions
Function, slot-value-or-id-if-foreign: Exported functions
Function, unrelate: Exported functions
Function, with-class-connection-fun: Internal functions
Function, with-connection-fun: Internal functions
Function, with-object-connection-fun: Internal functions

G
Generic Function, (setf db-class-foreign-keys): Internal generic functions
Generic Function, (setf db-class-unfinished-classes): Internal generic functions
Generic Function, (setf db-class-unique-keys): Internal generic functions
Generic Function, (setf delayed-constraint): Internal generic functions
Generic Function, (setf foreign-type-p): Exported generic functions
Generic Function, (setf get-id): Exported generic functions
Generic Function, (setf not-null-p): Internal generic functions
Generic Function, (setf on-delete): Internal generic functions
Generic Function, (setf transient-p): Internal generic functions
Generic Function, (setf unique): Internal generic functions
Generic Function, actual-type: Internal generic functions
Generic Function, add-constraint: Internal generic functions
Generic Function, apply-foreign-key-constraints: Internal generic functions
Generic Function, apply-unique-constraints: Internal generic functions
Generic Function, collect-constraints: Internal generic functions
Generic Function, column-name: Internal generic functions
Generic Function, column-type: Internal generic functions
Generic Function, create-table: Internal generic functions
Generic Function, dao-exists-p: Exported generic functions
Generic Function, dao=: Exported generic functions
Generic Function, database-consistent-with-specification: Internal generic functions
Generic Function, db-class-connection-spec: Internal generic functions
Generic Function, db-class-foreign-keys: Internal generic functions
Generic Function, db-class-indices: Internal generic functions
Generic Function, db-class-unfinished-classes: Internal generic functions
Generic Function, db-class-unique: Internal generic functions
Generic Function, db-class-unique-keys: Internal generic functions
Generic Function, delayed-constraint: Internal generic functions
Generic Function, delete-dao: Exported generic functions
Generic Function, foreign-type-p: Exported generic functions
Generic Function, get-all: Exported generic functions
Generic Function, get-id: Exported generic functions
Generic Function, id: Internal generic functions
Generic Function, insert-dao: Exported generic functions
Generic Function, needed-type: Internal generic functions
Generic Function, not-null-p: Internal generic functions
Generic Function, on-delete: Internal generic functions
Generic Function, relate-method: Internal generic functions
Generic Function, relatedp-method: Internal generic functions
Generic Function, remove-finished-classes: Internal generic functions
Generic Function, save-dao: Exported generic functions
Generic Function, table-name: Internal generic functions
Generic Function, transient-p: Internal generic functions
Generic Function, try-delayed-constraints: Internal generic functions
Generic Function, unique: Internal generic functions
Generic Function, unrelate-method: Internal generic functions
Generic Function, update-dao: Exported generic functions
get-all: Exported generic functions
get-all: Exported generic functions
get-dao: Exported functions
get-id: Exported generic functions
get-id: Exported generic functions

I
id: Internal generic functions
id: Internal generic functions
id-seq-name: Internal functions
insert-dao: Exported generic functions
insert-dao: Exported generic functions

M
Macro, def-many-to-many: Exported macros
Macro, defdao: Exported macros
Macro, make-and-save: Exported macros
Macro, query-dao: Exported macros
Macro, select-dao: Exported macros
Macro, with-class-connection: Exported macros
Macro, with-connection: Exported macros
Macro, with-object-connection: Exported macros
make-and-save: Exported macros
make-dao: Exported functions
Method, (setf db-class-foreign-keys): Internal generic functions
Method, (setf db-class-unfinished-classes): Internal generic functions
Method, (setf db-class-unique-keys): Internal generic functions
Method, (setf delayed-constraint): Internal generic functions
Method, (setf foreign-type-p): Exported generic functions
Method, (setf get-id): Exported generic functions
Method, (setf not-null-p): Internal generic functions
Method, (setf on-delete): Internal generic functions
Method, (setf transient-p): Internal generic functions
Method, (setf unique): Internal generic functions
Method, actual-type: Internal generic functions
Method, add-constraint: Internal generic functions
Method, add-constraint: Internal generic functions
Method, add-constraint: Internal generic functions
Method, add-constraint: Internal generic functions
Method, apply-foreign-key-constraints: Internal generic functions
Method, apply-unique-constraints: Internal generic functions
Method, collect-constraints: Internal generic functions
Method, column-name: Internal generic functions
Method, column-name: Internal generic functions
Method, column-type: Internal generic functions
Method, create-table: Internal generic functions
Method, create-table: Internal generic functions
Method, dao-exists-p: Exported generic functions
Method, dao=: Exported generic functions
Method, dao=: Exported generic functions
Method, database-consistent-with-specification: Internal generic functions
Method, db-class-connection-spec: Internal generic functions
Method, db-class-foreign-keys: Internal generic functions
Method, db-class-indices: Internal generic functions
Method, db-class-unfinished-classes: Internal generic functions
Method, db-class-unique: Internal generic functions
Method, db-class-unique-keys: Internal generic functions
Method, delayed-constraint: Internal generic functions
Method, delete-dao: Exported generic functions
Method, foreign-type-p: Exported generic functions
Method, get-all: Exported generic functions
Method, get-id: Exported generic functions
Method, id: Internal generic functions
Method, insert-dao: Exported generic functions
Method, needed-type: Internal generic functions
Method, not-null-p: Internal generic functions
Method, on-delete: Internal generic functions
Method, remove-finished-classes: Internal generic functions
Method, save-dao: Exported generic functions
Method, table-name: Internal generic functions
Method, table-name: Internal generic functions
Method, transient-p: Internal generic functions
Method, try-delayed-constraints: Internal generic functions
Method, unique: Internal generic functions
Method, update-dao: Exported generic functions

N
needed-type: Internal generic functions
needed-type: Internal generic functions
non-db-slot: Internal functions
not-null-p: Internal generic functions
not-null-p: Internal generic functions

O
on-delete: Internal generic functions
on-delete: Internal generic functions

Q
query-dao: Exported macros
query-dao-fun: Exported functions

R
relate: Exported functions
relate-method: Internal generic functions
relatedp: Exported functions
relatedp-method: Internal generic functions
remove-finished-classes: Internal generic functions
remove-finished-classes: Internal generic functions

S
save-dao: Exported generic functions
save-dao: Exported generic functions
select-dao: Exported macros
select-dao-fun: Exported functions
set-fields: Internal functions
slot-value-or-id-if-foreign: Exported functions

T
table-name: Internal generic functions
table-name: Internal generic functions
table-name: Internal generic functions
transient-p: Internal generic functions
transient-p: Internal generic functions
try-delayed-constraints: Internal generic functions
try-delayed-constraints: Internal generic functions

U
unique: Internal generic functions
unique: Internal generic functions
unrelate: Exported functions
unrelate-method: Internal generic functions
update-dao: Exported generic functions
update-dao: Exported generic functions

W
with-class-connection: Exported macros
with-class-connection-fun: Internal functions
with-connection: Exported macros
with-connection-fun: Internal functions
with-object-connection: Exported macros
with-object-connection-fun: Internal functions

Jump to:   (  
A   C   D   F   G   I   M   N   O   Q   R   S   T   U   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   A   C   D   F   I   N   O   S   T   U  
Index Entry  Section

A
actual-type: Internal conditions

C
connection-spec: Exported classes

D
delayed-constraint: Internal classes

F
foreign: Internal classes
foreign-keys: Exported classes

I
id: Exported conditions
id: Exported classes
indices: Exported classes

N
name: Internal conditions
name: Internal conditions
needed-type: Internal conditions
not-null: Internal classes

O
on-delete: Internal classes

S
Slot, actual-type: Internal conditions
Slot, connection-spec: Exported classes
Slot, delayed-constraint: Internal classes
Slot, foreign: Internal classes
Slot, foreign-keys: Exported classes
Slot, id: Exported conditions
Slot, id: Exported classes
Slot, indices: Exported classes
Slot, name: Internal conditions
Slot, name: Internal conditions
Slot, needed-type: Internal conditions
Slot, not-null: Internal classes
Slot, on-delete: Internal classes
Slot, transient: Internal classes
Slot, type: Exported conditions
Slot, type: Internal conditions
Slot, unfinished-classes: Exported classes
Slot, unique: Exported classes
Slot, unique: Internal classes
Slot, unique-keys: Exported classes

T
transient: Internal classes
type: Exported conditions
type: Internal conditions

U
unfinished-classes: Exported classes
unique: Exported classes
unique: Internal classes
unique-keys: Exported classes

Jump to:   A   C   D   F   I   N   O   S   T   U  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   C   D   P   S   U  
Index Entry  Section

C
Class, dao: Exported classes
Class, db-class: Exported classes
Class, db-class-direct-slot-definition: Internal classes
Class, db-class-effective-slot-definition: Internal classes
Class, db-class-slot-definition: Internal classes
Condition, dao-error: Exported conditions
Condition, dao-nonexistent-id: Exported conditions
Condition, sql-column-does-not-exist: Internal conditions
Condition, sql-column-error: Internal conditions
Condition, unresolved-foreign-key: Exported conditions

D
dao: Exported classes
dao-error: Exported conditions
dao-nonexistent-id: Exported conditions
db-class: Exported classes
db-class-direct-slot-definition: Internal classes
db-class-effective-slot-definition: Internal classes
db-class-slot-definition: Internal classes

P
Package, submarine: The submarine package
Package, submarine-system: The submarine-system package

S
sql-column-does-not-exist: Internal conditions
sql-column-error: Internal conditions
submarine: The submarine system
submarine: The submarine package
submarine-system: The submarine-system package
System, submarine: The submarine system

U
unresolved-foreign-key: Exported conditions

Jump to:   C   D   P   S   U