This is the cl-prevalence Reference Manual, version 6, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 08 17:17:29 2024 GMT+0.
cl-prevalence/cl-prevalence.asd
cl-prevalence/src/package.lisp
cl-prevalence/src/serialization/serialization.lisp
cl-prevalence/src/serialization/xml.lisp
cl-prevalence/src/serialization/sexp.lisp
cl-prevalence/src/prevalence.lisp
cl-prevalence/src/managed-prevalence.lisp
cl-prevalence/src/master-slave.lisp
cl-prevalence/src/blob.lisp
The main system appears first, followed by any subsystem dependency.
cl-prevalence
Common Lisp Prevalence Package
Alexander Artemenko <svetlyak.40wt@gmail.com>
Sven Van Caekenberghe <svc@mac.com>
Lesser Lisp General Public License
Common Lisp Prevalence is an implementation of Object Prevalence for Common Lisp
6
moptilities
(system).
s-xml
(system).
s-sysdeps
(system).
src
(module).
Modules are listed depth-first from the system components tree.
cl-prevalence/src
cl-prevalence
(system).
package.lisp
(file).
serialization
(module).
prevalence.lisp
(file).
managed-prevalence.lisp
(file).
master-slave.lisp
(file).
blob.lisp
(file).
cl-prevalence/src/serialization
package.lisp
(file).
src
(module).
serialization.lisp
(file).
xml.lisp
(file).
sexp.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
cl-prevalence/cl-prevalence.asd
cl-prevalence/src/package.lisp
cl-prevalence/src/serialization/serialization.lisp
cl-prevalence/src/serialization/xml.lisp
cl-prevalence/src/serialization/sexp.lisp
cl-prevalence/src/prevalence.lisp
cl-prevalence/src/managed-prevalence.lisp
cl-prevalence/src/master-slave.lisp
cl-prevalence/src/blob.lisp
cl-prevalence/src/serialization/serialization.lisp
serialization
(module).
make-serialization-state
(function).
reset-known-slots
(generic function).
serializable-slots
(generic function).
+cl-package+
(constant).
+keyword-package+
(constant).
get-counter
(reader method).
(setf get-counter)
(writer method).
get-hashtable
(reader method).
get-serializable-slots
(method).
get-xml-parser-state
(method).
known-object-id
(method).
reset
(method).
sequence-type-and-length
(function).
serialization-state
(class).
set-known-object
(method).
cl-prevalence/src/serialization/xml.lisp
serialization.lisp
(file).
serialization
(module).
deserialize-xml
(function).
serialize-xml
(function).
serialize-xml-slot
(generic function).
deserialize-xml-finish-element
(function).
deserialize-xml-finish-element-aux
(generic function).
deserialize-xml-new-element
(function).
deserialize-xml-new-element-aux
(generic function).
deserialize-xml-text
(function).
get-attribute-value
(function).
print-symbol-xml
(function).
serialize-sexp-internal
(method).
serialize-xml-internal
(generic function).
cl-prevalence/src/serialization/sexp.lisp
serialization.lisp
(file).
serialization
(module).
deserialize-sexp
(function).
deserialize-sexp-slot
(generic function).
serialize-sexp
(function).
serialize-sexp-slot
(generic function).
deserialize-class
(generic function).
deserialize-sexp-internal
(function).
deserialize-struct
(generic function).
print-symbol
(function).
serialize-sexp-internal
(generic function).
cl-prevalence/src/prevalence.lisp
serialization
(module).
src
(module).
backup
(generic function).
close-open-streams
(method).
execute
(generic function).
get-guard
(reader method).
(setf get-guard)
(writer method).
get-option
(generic function).
(setf get-option)
(generic function).
get-root-object
(generic function).
(setf get-root-object)
(generic function).
get-transaction-hook
(reader method).
(setf get-transaction-hook)
(writer method).
guarded-prevalence-system
(class).
initialize-instance
(method).
initiates-rollback
(generic function).
make-prevalence-system
(function).
make-transaction
(function).
no-rollback-error
(condition).
prevalence-system
(class).
print-object
(method).
query
(generic function).
remove-root-object
(generic function).
reset-known-slots
(method).
restore
(generic function).
snapshot
(generic function).
totally-destroy
(generic function).
transaction
(class).
copy-file
(function).
execute-on
(generic function).
get-args
(reader method).
(setf get-args)
(writer method).
get-deserializer
(reader method).
(setf get-deserializer)
(writer method).
get-directory
(reader method).
(setf get-directory)
(writer method).
get-file-extension
(reader method).
(setf get-file-extension)
(writer method).
get-function
(reader method).
(setf get-function)
(writer method).
get-root-objects
(reader method).
(setf get-root-objects)
(writer method).
get-serialization-state
(reader method).
get-serializer
(reader method).
(setf get-serializer)
(writer method).
get-snapshot
(reader method).
(setf get-snapshot)
(writer method).
get-snapshot-filename
(method).
get-transaction-log
(reader method).
(setf get-transaction-log)
(writer method).
get-transaction-log-filename
(method).
get-transaction-log-stream
(reader method).
get-transaction-log-stream
(method).
(setf get-transaction-log-stream)
(writer method).
log-transaction
(method).
log-transaction
(method).
timetag
(function).
truncate-file
(function).
cl-prevalence/src/managed-prevalence.lisp
prevalence.lisp
(file).
src
(module).
all-preferences-keys
(generic function).
drop-index-on
(function).
execute-transaction
(macro).
find-all-objects
(generic function).
find-object-with-id
(generic function).
find-object-with-slot
(generic function).
get-id
(generic reader).
get-preference
(generic function).
index-on
(function).
next-id
(method).
object-with-id
(class).
tx-change-object-slots
(function).
tx-create-id-counter
(function).
tx-create-object
(function).
tx-delete-object
(function).
tx-set-preference
(function).
add-object-to-slot-index
(function).
get-objects-root-name
(function).
get-objects-slot-index-name
(function).
remove-object-from-slot-index
(function).
slot-value-changed-p
(function).
tx-create-objects-slot-index
(function).
tx-remove-objects-slot-index
(function).
cl-prevalence/src/master-slave.lisp
prevalence.lisp
(file).
src
(module).
start-master-client
(function).
start-slave-server
(function).
stop-master-client
(function).
stop-slave-server
(function).
cl-prevalence/src/blob.lisp
managed-prevalence.lisp
(file).
src
(module).
*blob-root*
(special variable).
blob
(class).
copy-to-stream
(generic function).
destroy
(generic function).
fill-from-file
(generic function).
fill-from-stream
(generic function).
get-file
(generic function).
get-keywords
(generic reader).
(setf get-keywords)
(generic writer).
get-mime-type
(generic reader).
(setf get-mime-type)
(generic writer).
get-name
(generic reader).
(setf get-name)
(generic writer).
get-size
(generic function).
print-object
(method).
copy-stream
(function).
set-size-from-file
(method).
size-from-file
(method).
Packages are listed by definition order.
cl-prevalence
An implementation of Object Prevalence for Common Lisp
common-lisp
.
s-serialization
.
*blob-root*
(special variable).
all-preferences-keys
(generic function).
backup
(generic function).
blob
(class).
close-open-streams
(generic function).
copy-to-stream
(generic function).
destroy
(generic function).
drop-index-on
(function).
execute
(generic function).
execute-transaction
(macro).
fill-from-file
(generic function).
fill-from-stream
(generic function).
find-all-objects
(generic function).
find-object-with-id
(generic function).
find-object-with-slot
(generic function).
get-file
(generic function).
get-guard
(generic reader).
(setf get-guard)
(generic writer).
get-id
(generic reader).
get-keywords
(generic reader).
(setf get-keywords)
(generic writer).
get-mime-type
(generic reader).
(setf get-mime-type)
(generic writer).
get-name
(generic reader).
(setf get-name)
(generic writer).
get-option
(generic function).
(setf get-option)
(generic function).
get-preference
(generic function).
get-root-object
(generic function).
(setf get-root-object)
(generic function).
get-size
(generic function).
get-transaction-hook
(generic reader).
(setf get-transaction-hook)
(generic writer).
guarded-prevalence-system
(class).
index-on
(function).
initiates-rollback
(generic function).
make-prevalence-system
(function).
make-transaction
(function).
next-id
(generic function).
no-rollback-error
(condition).
object-with-id
(class).
prevalence-system
(class).
query
(generic function).
remove-root-object
(generic function).
restore
(generic function).
snapshot
(generic function).
start-master-client
(function).
start-slave-server
(function).
stop-master-client
(function).
stop-slave-server
(function).
totally-destroy
(generic function).
transaction
(class).
tx-change-object-slots
(function).
tx-create-id-counter
(function).
tx-create-object
(function).
tx-delete-object
(function).
tx-set-preference
(function).
add-object-to-slot-index
(function).
copy-file
(function).
copy-stream
(function).
execute-on
(generic function).
get-args
(generic reader).
(setf get-args)
(generic writer).
get-deserializer
(generic reader).
(setf get-deserializer)
(generic writer).
get-directory
(generic reader).
(setf get-directory)
(generic writer).
get-file-extension
(generic reader).
(setf get-file-extension)
(generic writer).
get-function
(generic reader).
(setf get-function)
(generic writer).
get-objects-root-name
(function).
get-objects-slot-index-name
(function).
get-root-objects
(generic reader).
(setf get-root-objects)
(generic writer).
get-serialization-state
(generic reader).
get-serializer
(generic reader).
(setf get-serializer)
(generic writer).
get-snapshot
(generic reader).
(setf get-snapshot)
(generic writer).
get-snapshot-filename
(generic function).
get-transaction-log
(generic reader).
(setf get-transaction-log)
(generic writer).
get-transaction-log-filename
(generic function).
get-transaction-log-stream
(generic function).
(setf get-transaction-log-stream)
(generic writer).
log-transaction
(generic function).
remove-object-from-slot-index
(function).
set-size-from-file
(generic function).
size-from-file
(generic function).
slot-value-changed-p
(function).
timetag
(function).
truncate-file
(function).
tx-create-objects-slot-index
(function).
tx-remove-objects-slot-index
(function).
s-serialization
XML and s-expression based serialization for Common Lisp and CLOS
closer-common-lisp
.
deserialize-sexp
(function).
deserialize-sexp-slot
(generic function).
deserialize-xml
(function).
make-serialization-state
(function).
reset-known-slots
(generic function).
serializable-slots
(generic function).
serialize-sexp
(function).
serialize-sexp-slot
(generic function).
serialize-xml
(function).
serialize-xml-slot
(generic function).
+cl-package+
(constant).
+keyword-package+
(constant).
deserialize-class
(generic function).
deserialize-sexp-internal
(function).
deserialize-struct
(generic function).
deserialize-xml-finish-element
(function).
deserialize-xml-finish-element-aux
(generic function).
deserialize-xml-new-element
(function).
deserialize-xml-new-element-aux
(generic function).
deserialize-xml-text
(function).
get-attribute-value
(function).
get-counter
(generic reader).
(setf get-counter)
(generic writer).
get-hashtable
(generic reader).
get-serializable-slots
(generic function).
get-xml-parser-state
(generic function).
known-object-id
(generic function).
print-symbol
(function).
print-symbol-xml
(function).
reset
(generic function).
sequence-type-and-length
(function).
serialization-state
(class).
serialize-sexp-internal
(generic function).
serialize-xml-internal
(generic function).
set-known-object
(generic function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
The directory in which to store the blob files
Create a transaction object from transaction-call and execute it
Read and return an s-expression serialized version of a lisp object from stream, optionally reusing a serialization state
Read and return an XML serialized version of a lisp object from stream, optionally reusing a serialization state
Drop indexes on each of the slots provided
Create indexes on each of the slots provided.
Create and return a new prevalence system on directory. When the directory contains a valid snapshot and/or transaction log file, the system will be restored. Optionally specify the prevalence system’s class.
Create a reusable serialization state to pass as optional argument to [de]serialize-xml
Create and return a new transaction specifying a function name and an argument list. The function should accept the system instance prepended to the argument list as arguments and implement the actual transaction in a re-entrant way.
Write a serialized version of object to stream using s-expressions, optionally reusing a serialization-state
Write a serialized version of object to stream using XML, optionally reusing a serialization-state
Start a connection to host:port to deliver transactions from prevalence-system
Start a server on port accepting transactions to be executed on prevalence-system Returns a thread object
Stop a connection from prevalence-system
Change some slots of the object of class with id in system using slots and values
Initialize the id counter to 0
Create a new object of class in system, assigning it a unique id, optionally setting some slots and values
Delete the object of class with id from the system
Set the value of the persistent preference key in system
Return a list of all persistent preference keys of system
prevalence-system
)) ¶Return a list of all persistent preference keys of system
Make backup copies of the current snapshot and transaction-log files
guarded-prevalence-system
) &key directory) ¶Do a backup on a system controlled by a guard
prevalence-system
) &key directory) ¶Make backup copies of the current snapshot and transaction-log files
prevalence-system
) &key abort) ¶Close all open stream associated with system (optionally aborting operations in progress)
Copy the bytes from blob to binary-output-stream
Read and return SLOT-VALUE, which corresponds to CLASS’s SLOT-NAME.
Completely destroy blob (removing its byte data file as well)
Ask for a transaction object to be executed on system with ACID properties
guarded-prevalence-system
) (transaction transaction
)) ¶Execute a transaction on a system controlled by a guard
prevalence-system
) (transaction transaction
)) ¶Execute a transaction on a system and log it to the transaction log
Fill the blob’s contents with the bytes read from the binary file at pathname
Fill the blob’s contents with the bytes from binary-input-stream
Return an unordered collection of all objects in system that are instances of class
prevalence-system
) class) ¶Return an unordered collection of all objects in system that are instances of class
Find and return the object in system of class with id, null if not found
prevalence-system
) class id) ¶Find and return the object in system of class with id, null if not found
Find and return the object in system of class with slot equal to value, null if not found
prevalence-system
) class slot value &optional test) ¶Find and return the object in system of class with slot equal to value, null if not found
Return the pathname to the bytes of blob
Access the guard function of a sytem
guarded-prevalence-system
)) ¶automatically generated reader method
Set the guard function of a system
guarded-prevalence-system
)) ¶automatically generated writer method
Return an external, unique, immutable identifier for object (typically an integer)
object-with-id
)) ¶automatically generated reader method
id
.
Return the list of keywords associated with blob
Set the keywords list of blob
Return the mime-type of blob as a string
Set the mime-type string of blob
Return the descriptive name of blob
Set the descriptive name of blob
Retrieve a named option from system
prevalence-system
) name) ¶Set a named option of system to value
prevalence-system
) name) ¶Retrieve the value of the persistent preference stored under key in system
prevalence-system
) key) ¶Retrieve the value of the persistent preference stored under key in system
Retrieve a root object by symbol name from system
prevalence-system
) name) ¶Set a symbol named root object of system to value
prevalence-system
) name) ¶Return the size of blob in bytes
prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated writer method
Return true when a condition initiates a rollback when thrown from a transaction
no-rollback-error
)) ¶condition
)) ¶prevalence-system
)) ¶Increment and return the next id
Ask for a query function to be executed on system with args
guarded-prevalence-system
) function &rest args) ¶Execute an exclusive query function on a sytem controlled by a guard
prevalence-system
) function &rest args) ¶Execute an exclusive query function on a sytem
Remove the root object by symbol name from system
prevalence-system
) name) ¶Clear the caching of known slots for class, or for all classes if class is nil
prevalence-system
) &optional class) ¶serialization-state
) &optional class) ¶Restore a system from permanent storage
guarded-prevalence-system
)) ¶Restore a system controlled by a guard
prevalence-system
)) ¶Load a system from persistent storage starting from the last snapshot and replaying the transaction log
Return a list of slot names that need serialization
Write a serialized version of OBJECT’s SLOT-NAME to STREAM using s-expressions.
standard-object
) slot-name stream serialization-state) ¶Write a serialized version of OBJECT’s SLOT-NAME to STREAM using XML.
standard-object
) slot-name stream serialization-state) ¶Take a snapshot of a system
guarded-prevalence-system
)) ¶Make a snapshot of a system controlled by a guard
prevalence-system
)) ¶Write to whole system to persistent storage resetting the transaction log
Totally destroy system from permanent storage by deleting any files that we find
prevalence-system
) &key abort) ¶Totally destroy system from permanent storage by deleting any files used by the system, remove all root objects
prevalence-system
) &rest initargs &key &allow-other-keys) ¶After a system is initialized, derive its file paths and try to restore it
transaction
) stream) ¶Thrown by code inside a transaction to indicate that no rollback is needed
error
.
A blob is a file-like collection of bytes with related metadata
A Prevalence system with a guard thunk
(function (lambda (cl-prevalence::thunk) (funcall cl-prevalence::thunk)))
Superclass for objects with an id
blob
.
Base Prevalence system implementation object
all-preferences-keys
.
backup
.
close-open-streams
.
execute
.
execute-on
.
find-all-objects
.
find-object-with-id
.
find-object-with-slot
.
(setf get-deserializer)
.
get-deserializer
.
(setf get-directory)
.
get-directory
.
(setf get-file-extension)
.
get-file-extension
.
(setf get-option)
.
get-option
.
get-preference
.
(setf get-root-object)
.
get-root-object
.
(setf get-root-objects)
.
get-root-objects
.
get-serialization-state
.
(setf get-serializer)
.
get-serializer
.
(setf get-snapshot)
.
get-snapshot
.
get-snapshot-filename
.
(setf get-transaction-hook)
.
get-transaction-hook
.
(setf get-transaction-log)
.
get-transaction-log
.
get-transaction-log-filename
.
get-transaction-log-stream
.
(setf get-transaction-log-stream)
.
get-transaction-log-stream
.
initialize-instance
.
log-transaction
.
log-transaction
.
next-id
.
query
.
remove-root-object
.
reset-known-slots
.
restore
.
snapshot
.
totally-destroy
.
common-lisp
.
:directory
(make-hash-table :test (quote eq))
(make-hash-table :test (quote eq))
(function s-serialization:serialize-xml)
:serializer
(function s-serialization:deserialize-xml)
:deserializer
"xml"
:file-extension
(s-serialization:make-serialization-state)
This slot is read-only.
(function identity)
:transaction-hook
A simple Transaction object joining a function and its arguments
Add an index entry using this slot to this object
Copy everything from in to out
Return the keyword symbol naming the root of instances of class
Return the keyword symbol naming the specified index of instances of class.
Remove the index entry using this slot to this object
Return true when slot in object is not eql to value (or when the slot was unbound)
Return a GMT string of universal-time as YYMMDDTHHMMSS
Truncate the physical file at position by copying and replacing it
Create an index for this object on this slot, with an optional test for the hash table (add existing objects)
Remove an index for this object on this slot
Read and return an the instance corresponding to CLASS-SYMBOL with SLOTS. SLOTS is a list of pairs: the first element is the slot name (a symbol) and the second element its value.
Read and return an the instance corresponding to STRUCT-SYMBOL with SLOTS.
Extend with your own types by overloading serialize-xml-internal and implementing deserialize aux functions
Extend with your own types by overloading serialize-xml-internal and implementing deserialize aux functions
Ask for a transaction object to execute its changes in the context of system
transaction
) (system prevalence-system
)) ¶Execute a transaction itself in the context of a system
transaction
)) ¶automatically generated reader method
args
.
transaction
)) ¶automatically generated writer method
args
.
serialization-state
)) ¶automatically generated reader method
serialization-state
)) ¶automatically generated writer method
prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated writer method
prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated writer method
prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated writer method
transaction
)) ¶automatically generated reader method
transaction
)) ¶automatically generated writer method
serialization-state
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated writer method
serialization-state
) object) ¶prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated writer method
prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated writer method
prevalence-system
) &optional suffix) ¶Return the name of the snapshot filename, optionally using a suffix
prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated writer method
prevalence-system
) &optional suffix) ¶Return the name of the transaction-log filename, optionally using a suffix
prevalence-system
)) ¶prevalence-system
)) ¶automatically generated reader method
prevalence-system
)) ¶automatically generated writer method
serialization-state
)) ¶serialization-state
) object) ¶prevalence-system
) (transaction transaction
)) ¶Execute the transaction-hook
prevalence-system
) (transaction transaction
)) ¶Log transaction for system
serialization-state
)) ¶Write a serialized version of object to stream using s-expressions
standard-object
) stream serialization-state) ¶structure-object
) stream serialization-state) ¶hash-table
) stream serialization-state) ¶sequence
) stream serialization-state) ¶symbol
) stream serialization-state) ¶character
) stream serialization-state) ¶string
) stream serialization-state) ¶pathname
) stream serialization-state) ¶(eql t)
) stream serialization-state) ¶null
) stream serialization-state) ¶Write a serialized version of object to stream using XML
standard-object
) stream serialization-state) ¶structure-object
) stream serialization-state) ¶hash-table
) stream serialization-state) ¶sequence
) stream serialization-state) ¶symbol
) stream serialization-state) ¶character
) stream serialization-state) ¶string
) stream serialization-state) ¶(eql t)
) stream serialization-state) ¶null
) stream serialization-state) ¶complex
) stream serialization-state) ¶float
) stream serialization-state) ¶ratio
) stream serialization-state) ¶integer
) stream serialization-state) ¶serialization-state
) object) ¶Jump to: | (
A B C D E F G I K L M N P Q R S T |
---|
Jump to: | (
A B C D E F G I K L M N P Q R S T |
---|
Jump to: | *
+
A C D F G H I K M N O R S T X |
---|
Jump to: | *
+
A C D F G H I K M N O R S T X |
---|
Jump to: | B C F G M N O P S T X |
---|
Jump to: | B C F G M N O P S T X |
---|