The pounds Reference Manual

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

Table of Contents


1 Introduction


2 Systems

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


2.1 pounds

Provides portable file mappings and related utilities.

Author

Frank James <>

License

MIT

Version

0.2.1

Dependencies
  • cffi (system).
  • trivial-gray-streams (system).
  • nibbles (system).
  • babel (system).
  • bordeaux-threads (system).
Source

pounds.asd.

Child Components

3 Files

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


3.1 Lisp


3.1.1 pounds/pounds.asd

Source

pounds.asd.

Parent Component

pounds (system).

ASDF Systems

pounds.


3.1.2 pounds/package.lisp

Source

pounds.asd.

Parent Component

pounds (system).

Packages

pounds.


3.1.3 pounds/ffi.lisp

Dependency

package.lisp (file).

Source

pounds.asd.

Parent Component

pounds (system).

Public Interface
Internals

3.1.4 pounds/mappings.lisp

Dependency

ffi.lisp (file).

Source

pounds.asd.

Parent Component

pounds (system).

Public Interface
Internals

3.1.5 pounds/log.lisp

Dependency

mappings.lisp (file).

Source

pounds.asd.

Parent Component

pounds (system).

Packages

pounds.log.

Public Interface
Internals

3.1.6 pounds/database.lisp

Dependency

log.lisp (file).

Source

pounds.asd.

Parent Component

pounds (system).

Packages

pounds.db.

Public Interface
Internals

3.1.7 pounds/blog.lisp

Dependency

database.lisp (file).

Source

pounds.asd.

Parent Component

pounds (system).

Packages

pounds.blog.

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 pounds.blog

Source

blog.lisp.

Use List
Public Interface
Internals

4.2 pounds

Source

package.lisp.

Use List
  • cffi.
  • common-lisp.
  • trivial-gray-streams.
Used By List
Public Interface
Internals

4.3 pounds.log

Source

log.lisp.

Nickname

plog

Use List
  • common-lisp.
  • pounds.
  • trivial-gray-streams.
Public Interface
Internals

4.4 pounds.db

Source

database.lisp.

Use List
Public Interface
Internals

5 Definitions

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


5.1 Public Interface


5.1.1 Macros

Macro: doentries ((var db &optional result) &body body)

Iterate over all entries in the database, evaluating the body forms with VAR bound to each entry.

VAR ::= symbol bound to the entry.
DB ::= database, as returned from OPEN-DB.
RESULT ::= optional result form.

The body forms are evaluated in the context of two local macros:
CLEAR-ENTRY ::= delete the current entry
UPDATE-ENTRY val ::= overwrite the current entry with VAL.

Package

pounds.db.

Source

database.lisp.

Macro: with-locked-mapping ((mapping-stream) &body body)

Evaluate the body with the mapping lock held.

Package

pounds.

Source

mappings.lisp.


5.1.2 Ordinary functions

Function: blog-properties (blog)

Read the current blog properties.

Package

pounds.blog.

Source

blog.lisp.

Function: close-blog (blog)

Close the binary log and free all resources.

Package

pounds.blog.

Source

blog.lisp.

Function: close-db (db)

Close the database.

Package

pounds.db.

Source

database.lisp.

Function: close-log (log)

Close the log and its associated file mapping.

Package

pounds.log.

Source

log.lisp.

Function: close-mapping (mapping)

Close the file mapping.

Package

pounds.

Source

ffi.lisp.

Function: db-seqno (db)

Read the database sequence number.

Package

pounds.db.

Source

database.lisp.

Function: dump-log (log &key stream tag levels)

Dump the contents of the log to the stream. Filters the messages on tag and levels, if provided.

Package

pounds.log.

Source

log.lisp.

Function: find-entry (item db &key key test)

Search for the item in the database.

Package

pounds.db.

Source

database.lisp.

Function: (setf find-entry) (item db &key key test)
Package

pounds.db.

Source

database.lisp.

Function: find-entry-if (predicate db &key key)

Find the item in the database.

Package

pounds.db.

Source

database.lisp.

Function: header (db reader)
Package

pounds.db.

Source

database.lisp.

Function: (setf header) (db writer)
Package

pounds.db.

Source

database.lisp.

Function: make-mapping-stream (mapping)
Package

pounds.

Source

mappings.lisp.

Function: mapentries (function db)

Map over the entries in the database.

Package

pounds.db.

Source

database.lisp.

Reader: mapping-size (instance)
Writer: (setf mapping-size) (instance)
Package

pounds.

Source

ffi.lisp.

Target Slot

size.

Function: open-blog (pathspec &key nblocks block-size header-size)

Open the binary log.
PATHSPEC ::= path to the file.
NBLOCKS ::= number of blocks in the log.
BLOCK-SIZE ::= number of bytes in each block.
HEADER-SIZE ::= number of bytes to assign to user customizable header.

Returns the BLOG structure. Close using CLOSE-BLOG.

Package

pounds.blog.

Source

blog.lisp.

Function: open-db (pathspec reader writer &key count block-size)

Open the database.
PATHSPEC ::= pathspec to the file.
READER ::= function (stream) which reads an entry.
WRITER ::= function (stream entry) which writes the entry to the stream. COUNT ::= default initial number of entries.
BLOCK-SIZE ::= agreed block size. Must be at least 16.

Returns the database.

Package

pounds.db.

Source

database.lisp.

Function: open-log (&key path count size tag)

Open a log file, creating it if it doesn’t exist.

PATH should be a string representing a pathname to the log file to use. THe file will be created if it doesn’t exist. The pathname MUST be in the local system format.

COUNT, if provided, is the number of blocks to use in the log file. Default is 16k.

SIZE is the size of each block. Default is 128 bytes. The total filesize is (* SIZE COUNT).

TAG, if provided, should be a string of exactly 4 characters which is used to tag each message written to the log file.

Returns a PLOG structure.

Package

pounds.log.

Source

log.lisp.

Function: open-mapping (path size)

Opens the file named by PATH and maps it into memory. SIZE is the size in bytes of the file to map.

Package

pounds.

Source

ffi.lisp.

Function: read-entries (blog id nmsgs sequence &key start end)

Read a set of messages starting from message ID.

BLOG ::= the binary log
ID ::= starting ID.
NMSGS ::= number of messages to read.
SEQUENCE ::= octet vector to receive the messages.
START, END ::= region of sequence to read into.

Returns a list of (count id start end) for each message.
COUNT ::= the length of the message, even if it couldn’t fit into the buffer.
ID ::= message ID.
START, END ::= region of SEQUENCE that the message was written into. If the message may have only been partially read into SEQUENCE if insufficient space was provided.

Note that this function does not update the internal properties and therefore does not affect subsequent calls to READ-ENTRY.

Package

pounds.blog.

Source

blog.lisp.

Function: read-entry (blog sequence &key start end)

Read the entry starting at the index currently pointed to by the log properties.

BLOG ::= binary log
SEQUENCE ::= octet vector
START, END ::= region of sequence to read into.

If the message is larger than the sequence provided will read as much as it can, returning the truncated message in the sequence. You can use READ-ENTRY-DETAILS before calling this to ensure you have allocated sufficient space.

Updates the blog properties (but does not persist the updated properties) to the index of the next message to read.

Returns (values count id) where
COUNT ::= the number of bytes in the message.
ID ::= message ID

Package

pounds.blog.

Source

blog.lisp.

Function: read-entry-details (blog)

Read the properties of the next entry. BLOG ::= the binary log.
Returns (values count id) where COUTN ::= length of the message
ID ::= the ID of the message.

Package

pounds.blog.

Source

blog.lisp.

Function: read-header (blog sequence &key start end)

Read the user header data.
BLOG ::= binary log
SEQUENCE ::= octet vector
START, END ::= region of sequence to read into.

Package

pounds.blog.

Source

blog.lisp.

Function: read-message (log)

Read the next message from the log

Package

pounds.log.

Source

log.lisp.

Function: remap (mapping size)

Remap the file. SIZE should be the new size.

Package

pounds.

Source

ffi.lisp.

Function: remove-entry (item db &key key test)

Delete the item from the database.

Package

pounds.db.

Source

database.lisp.

Function: reset-blog (blog)

Reset the binary log. Clears all data blocks and assigns new tag and seqno.

Package

pounds.blog.

Source

blog.lisp.

Function: start-following (log &key stream tag levels)

Start following the log. If TAG is provided, only those messages with a matching tag will be displayed.

Package

pounds.log.

Source

log.lisp.

Function: stop-following ()

Stop following the log.

Package

pounds.log.

Source

log.lisp.

Function: sync-blog (blog)

Synchronize the binary log. Flushes the file mapping, reads and sets current properties.

Package

pounds.blog.

Source

blog.lisp.

Function: write-entry (blog sequence &key start end)

Write a new message into the log.
BLOG ::= binary log
SEQUENCE ::= octet vector
START, END ::= region of sequence to write.

Writes the data into the log starting at the currently persisted index. Updates the persisted properties to the next index, ID and increments the seqno.

Returns the ID of the message that was written.

Package

pounds.blog.

Source

blog.lisp.

Function: write-header (blog sequence &key start end)

Write the user header data.
BLOG ::= binary log
SEQUENCE ::= octet vector
START, END ::= region of sequence to write.

Note that the header is a free-access region with no record of how much of the allocated space (if any) is actually in use.

Package

pounds.blog.

Source

blog.lisp.

Function: write-message (log lvl message &key tag)

Write a message to the log. Updates the log header information and advances the underlying mapping stream.

LVL should be a keyword namign a log level.

MESSAGE should be a string with the message to write.

TAG, if provided, will be the message tag, otherwise the default tag for the log will be used.

Package

pounds.log.

Source

log.lisp.


5.1.3 Generic functions

Generic Reader: mapping-stream-mapping (object)
Package

pounds.

Methods
Reader Method: mapping-stream-mapping ((mapping-stream mapping-stream))

automatically generated reader method

Source

mappings.lisp.

Target Slot

mapping.

Generic Reader: mapping-stream-position (object)
Generic Writer: (setf mapping-stream-position) (object)
Package

pounds.

Methods
Reader Method: mapping-stream-position ((mapping-stream mapping-stream))
Writer Method: (setf mapping-stream-position) ((mapping-stream mapping-stream))

Stores the current position in the remote file.

Source

mappings.lisp.

Target Slot

position.


5.1.4 Standalone methods

Method: stream-element-type ((stream mapping-stream))

The element type is always OCTET by definition.

Source

mappings.lisp.

Method: (setf stream-file-position) ((stream mapping-stream))

Sets the index into the underlying vector if POSITION-SPEC is acceptable.

Package

trivial-gray-streams.

Source

mappings.lisp.

Method: stream-file-position ((stream mapping-stream))

Simply returns the index into the underlying vector.

Package

trivial-gray-streams.

Source

mappings.lisp.

Method: stream-finish-output ((stream mapping-stream))
Package

sb-gray.

Source

mappings.lisp.

Method: stream-force-output ((stream mapping-stream))
Package

sb-gray.

Source

mappings.lisp.

Method: stream-listen ((stream mapping-stream))

checks whether there are bytes left to read

Package

sb-gray.

Source

mappings.lisp.

Method: stream-read-byte ((stream mapping-stream))

Returns the byte or :EOF

Package

sb-gray.

Source

mappings.lisp.

Method: stream-read-sequence ((stream mapping-stream) sequence start end &key)

Returns the index of last byte read.

Package

trivial-gray-streams.

Source

mappings.lisp.

Method: stream-write-byte ((stream mapping-stream) byte)

write the byte to the local buffer, flush it if at the end of the buffer

Package

sb-gray.

Source

mappings.lisp.

Method: stream-write-sequence ((stream mapping-stream) sequence start end &key)

Returns the index of last byte written.

Package

trivial-gray-streams.

Source

mappings.lisp.


5.1.5 Classes

Class: mapping-stream
Package

pounds.

Source

mappings.lisp.

Direct superclasses
  • fundamental-binary-input-stream.
  • fundamental-binary-output-stream.
  • trivial-gray-stream-mixin.
Direct methods
Direct slots
Slot: mapping
Initargs

:mapping

Readers

mapping-stream-mapping.

Writers

This slot is read-only.

Slot: position

Stores the current position in the remote file.

Package

common-lisp.

Initform

0

Readers

mapping-stream-position.

Writers

(setf mapping-stream-position).


5.2 Internals


5.2.1 Constants

Constant: +blog-version+
Package

pounds.blog.

Source

blog.lisp.

Constant: +default-block-size+
Package

pounds.db.

Source

database.lisp.

Constant: +default-count+
Package

pounds.log.

Source

log.lisp.

Constant: +default-count+
Package

pounds.db.

Source

database.lisp.

Constant: +default-size+
Package

pounds.log.

Source

log.lisp.

Constant: +eintr+
Package

pounds.

Source

ffi.lisp.

Constant: +entry-size+
Package

pounds.blog.

Source

blog.lisp.

Constant: +flag-more+
Package

pounds.blog.

Source

blog.lisp.

Constant: +lock-ex+
Package

pounds.

Source

ffi.lisp.

Constant: +lock-un+
Package

pounds.

Source

ffi.lisp.

Constant: +msg-magic+

Magic number placed at the start of a message block to make it easy to identify value messages in the log.

Package

pounds.log.

Source

log.lisp.

Constant: +props-block+
Package

pounds.blog.

Source

blog.lisp.


5.2.2 Special variables

Special Variable: *default-log-file*
Package

pounds.log.

Source

log.lisp.

Special Variable: *follower*
Package

pounds.log.

Source

log.lisp.


5.2.3 Symbol macros

Symbol Macro: *errno*
Package

pounds.

Source

ffi.lisp.


5.2.4 Macros

Macro: with-locked-db ((db) &body body)
Package

pounds.db.

Source

database.lisp.

Macro: with-mapping ((var filename size) &body body)
Package

pounds.

Source

mappings.lisp.

Macro: with-mapping-stream ((var mapping) &body body)
Package

pounds.

Source

mappings.lisp.

Macro: with-open-mapping ((var filename size) &body body)

Evaluate the body in the contect of a mapping stream.

Package

pounds.

Source

mappings.lisp.


5.2.5 Ordinary functions

Function: %close (fd)
Package

pounds.

Source

ffi.lisp.

Function: %copy-plog (instance)
Package

pounds.log.

Source

log.lisp.

Function: %flock (fd op)
Package

pounds.

Source

ffi.lisp.

Function: %fsync (fd)
Package

pounds.

Source

ffi.lisp.

Function: %lseek (fd offset whence)
Package

pounds.

Source

ffi.lisp.

Function: %make-follower (&key thread exit-p log output tag lvl)
Package

pounds.log.

Source

log.lisp.

Function: %make-plog (&key stream count size tag)
Package

pounds.log.

Source

log.lisp.

Function: %mmap (addr length prot flags fd offset)
Package

pounds.

Source

ffi.lisp.

Function: %munmap (p len)
Package

pounds.

Source

ffi.lisp.

Function: %open (path flags mode)
Package

pounds.

Source

ffi.lisp.

Function: %pread (fd buffer count offset)
Package

pounds.

Source

ffi.lisp.

Function: %pwrite (fd buffer count offset)
Package

pounds.

Source

ffi.lisp.

Function: %read (fd buffer count)
Package

pounds.

Source

ffi.lisp.

Function: %strerror (code)
Package

pounds.

Source

ffi.lisp.

Function: %var-accessor-*errno* ()
Package

pounds.

Source

ffi.lisp.

Function: (setf %var-accessor-*errno*) ()
Package

pounds.

Source

ffi.lisp.

Function: %write (fd buffer count)
Package

pounds.

Source

ffi.lisp.

Function: advance-to-block (log index)

Set the stream position to the block index

Package

pounds.log.

Source

log.lisp.

Function: advance-to-id (stream props id)
Package

pounds.blog.

Source

blog.lisp.

Function: advance-to-next (log)

Reset the log position of the next message.

Package

pounds.log.

Source

log.lisp.

Function: advance-to-next-block (log)

Advance the stream position to the start of the next block.

Package

pounds.log.

Source

log.lisp.

Function: blog-index (blog)
Package

pounds.blog.

Source

blog.lisp.

Function: (setf blog-index) (blog)
Package

pounds.blog.

Source

blog.lisp.

Reader: blog-mapping (instance)
Writer: (setf blog-mapping) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

mapping.

Function: blog-p (object)
Package

pounds.blog.

Source

blog.lisp.

Reader: blog-props (instance)
Writer: (setf blog-props) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

props.

Reader: blog-stream (instance)
Writer: (setf blog-stream) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

stream.

Function: check-if-open (stream)

Checks if STREAM is open and signals an error otherwise.

Package

pounds.

Source

mappings.lisp.

Function: copy-blog (instance)
Package

pounds.blog.

Source

blog.lisp.

Function: copy-db (instance)
Package

pounds.db.

Source

database.lisp.

Function: copy-entry (instance)
Package

pounds.blog.

Source

blog.lisp.

Function: copy-follower (instance)
Package

pounds.log.

Source

log.lisp.

Function: copy-log (log &key tag copy-stream)

Make a copy of the log stream, possibly changing the log tag

Package

pounds.log.

Source

log.lisp.

Function: copy-log-header (instance)
Package

pounds.log.

Source

log.lisp.

Function: copy-log-message (instance)
Package

pounds.log.

Source

log.lisp.

Function: copy-mapping (instance)
Package

pounds.

Source

ffi.lisp.

Function: copy-props (instance)
Package

pounds.blog.

Source

blog.lisp.

Function: copy-xdr-block (instance)
Package

pounds.blog.

Source

blog.lisp.

Reader: db-bsize (instance)
Writer: (setf db-bsize) (instance)
Package

pounds.db.

Source

database.lisp.

Target Slot

bsize.

Function: db-count (db)
Package

pounds.db.

Source

database.lisp.

Reader: db-header (instance)
Writer: (setf db-header) (instance)
Package

pounds.db.

Source

database.lisp.

Target Slot

header.

Reader: db-mapping (instance)
Writer: (setf db-mapping) (instance)
Package

pounds.db.

Source

database.lisp.

Target Slot

mapping.

Function: db-p (object)
Package

pounds.db.

Source

database.lisp.

Reader: db-reader (instance)
Writer: (setf db-reader) (instance)
Package

pounds.db.

Source

database.lisp.

Target Slot

reader.

Reader: db-stream (instance)
Writer: (setf db-stream) (instance)
Package

pounds.db.

Source

database.lisp.

Target Slot

stream.

Reader: db-writer (instance)
Writer: (setf db-writer) (instance)
Package

pounds.db.

Source

database.lisp.

Target Slot

writer.

Function: decode-entry (blk)
Package

pounds.blog.

Source

blog.lisp.

Function: decode-props (blk)
Package

pounds.blog.

Source

blog.lisp.

Function: decode-uint32 (blk)
Package

pounds.blog.

Source

blog.lisp.

Function: encode-entry (blk val)
Package

pounds.blog.

Source

blog.lisp.

Function: encode-props (blk val)
Package

pounds.blog.

Source

blog.lisp.

Function: encode-uint32 (blk int32)
Package

pounds.blog.

Source

blog.lisp.

Function: ensure-file-exists (path size)

Ensures the file exists with specified size.

Package

pounds.

Source

ffi.lisp.

Reader: entry-count (instance)
Writer: (setf entry-count) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

count.

Reader: entry-id (instance)
Writer: (setf entry-id) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

id.

Function: entry-p (object)
Package

pounds.blog.

Source

blog.lisp.

Function: flush-buffers (mapping)

Ensure changes to the file mappign are written to disk

Package

pounds.

Source

ffi.lisp.

Function: follow-log (follower)

Print the log messages to the output stream until the exit-p flag is signalled.

Package

pounds.log.

Source

log.lisp.

Reader: follower-exit-p (instance)
Writer: (setf follower-exit-p) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

exit-p.

Reader: follower-log (instance)
Writer: (setf follower-log) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

log.

Reader: follower-lvl (instance)
Writer: (setf follower-lvl) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

lvl.

Reader: follower-output (instance)
Writer: (setf follower-output) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

output.

Function: follower-p (object)
Package

pounds.log.

Source

log.lisp.

Reader: follower-tag (instance)
Writer: (setf follower-tag) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

tag.

Reader: follower-thread (instance)
Writer: (setf follower-thread) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

thread.

Function: get-last-error ()
Package

pounds.

Source

ffi.lisp.

Function: header-id (log)

Read the current message ID from the log header

Package

pounds.log.

Source

log.lisp.

Function: header-index (log)

Read the current block index from the header

Package

pounds.log.

Source

log.lisp.

Function: int-level (int)
Package

pounds.log.

Source

log.lisp.

Function: invalid-pointer-p (handle)
Package

pounds.

Source

ffi.lisp.

Function: level-int (lvl)
Package

pounds.log.

Source

log.lisp.

Function: lock-mapping (map)
Package

pounds.

Source

ffi.lisp.

Reader: log-header-count (instance)
Writer: (setf log-header-count) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

count.

Reader: log-header-id (instance)
Writer: (setf log-header-id) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

id.

Reader: log-header-index (instance)
Writer: (setf log-header-index) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

index.

Function: log-header-p (object)
Package

pounds.log.

Source

log.lisp.

Reader: log-header-size (instance)
Writer: (setf log-header-size) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

size.

Reader: log-message-id (instance)
Writer: (setf log-message-id) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

id.

Reader: log-message-lvl (instance)
Writer: (setf log-message-lvl) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

lvl.

Reader: log-message-magic (instance)
Writer: (setf log-message-magic) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

magic.

Reader: log-message-msg (instance)
Writer: (setf log-message-msg) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

msg.

Function: log-message-p (object)
Package

pounds.log.

Source

log.lisp.

Reader: log-message-tag (instance)
Writer: (setf log-message-tag) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

tag.

Reader: log-message-time (instance)
Writer: (setf log-message-time) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

time.

Function: make-blog (&key mapping stream props)
Package

pounds.blog.

Source

blog.lisp.

Function: make-db (&key mapping stream header bsize reader writer)
Package

pounds.db.

Source

database.lisp.

Function: make-entry (&key id count)
Package

pounds.blog.

Source

blog.lisp.

Function: make-follower (log &key stream tag levels)

Make a follower for the log streeam specified. Will output the messages to the stream provided.

Package

pounds.log.

Source

log.lisp.

Function: make-log-header (&key id index count size)
Package

pounds.log.

Source

log.lisp.

Function: make-log-message (&key magic id lvl time tag msg)
Package

pounds.log.

Source

log.lisp.

Function: make-mapping (&key fd ptr size lock)
Package

pounds.

Source

ffi.lisp.

Function: make-plog (mapping-stream size &key tag)

Make a plog instance from a mapping stream. SIZE should be the size of each block.

Package

pounds.log.

Source

log.lisp.

Function: make-props (&key version nblocks id index tag seqno header-size block-size)
Package

pounds.blog.

Source

blog.lisp.

Function: make-xdr-block (&key buffer count offset)
Package

pounds.blog.

Source

blog.lisp.

Reader: mapping-fd (instance)
Writer: (setf mapping-fd) (instance)
Package

pounds.

Source

ffi.lisp.

Target Slot

fd.

Reader: mapping-lock (instance)
Writer: (setf mapping-lock) (instance)
Package

pounds.

Source

ffi.lisp.

Target Slot

lock.

Function: mapping-p (object)
Package

pounds.

Source

ffi.lisp.

Reader: mapping-ptr (instance)
Writer: (setf mapping-ptr) (instance)
Package

pounds.

Source

ffi.lisp.

Target Slot

ptr.

Function: maybe-remap (db)
Package

pounds.db.

Source

database.lisp.

Function: next-index (i nblocks)
Package

pounds.blog.

Source

blog.lisp.

Reader: plog-count (instance)
Writer: (setf plog-count) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

count.

Function: plog-p (object)
Package

pounds.log.

Source

log.lisp.

Reader: plog-size (instance)
Writer: (setf plog-size) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

size.

Reader: plog-stream (instance)
Writer: (setf plog-stream) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

stream.

Reader: plog-tag (instance)
Writer: (setf plog-tag) (instance)
Package

pounds.log.

Source

log.lisp.

Target Slot

tag.

Function: prev-index (i nblocks)
Package

pounds.blog.

Source

blog.lisp.

Reader: props-block-size (instance)
Writer: (setf props-block-size) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

block-size.

Reader: props-header-size (instance)
Writer: (setf props-header-size) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

header-size.

Reader: props-id (instance)
Writer: (setf props-id) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

id.

Reader: props-index (instance)
Writer: (setf props-index) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

index.

Reader: props-nblocks (instance)
Writer: (setf props-nblocks) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

nblocks.

Function: props-p (object)
Package

pounds.blog.

Source

blog.lisp.

Reader: props-seqno (instance)
Writer: (setf props-seqno) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

seqno.

Reader: props-tag (instance)
Writer: (setf props-tag) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

tag.

Reader: props-version (instance)
Writer: (setf props-version) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

version.

Function: read-blog-entry-props (stream)
Package

pounds.blog.

Source

blog.lisp.

Function: read-blog-props (stream)
Package

pounds.blog.

Source

blog.lisp.

Function: read-entry (stream reader)
Package

pounds.db.

Source

database.lisp.

Function: read-entry-locked (props stream blk set-props-p)
Package

pounds.blog.

Source

blog.lisp.

Function: read-file (fd sequence offset &key start end)
Package

pounds.

Source

ffi.lisp.

Function: read-header (log)
Package

pounds.log.

Source

log.lisp.

Function: read-header (stream)
Package

pounds.db.

Source

database.lisp.

Function: read-log-header (stream)
Package

pounds.log.

Source

log.lisp.

Function: read-log-message (stream block-size fsize)
Package

pounds.log.

Source

log.lisp.

Function: read-mapping-block (sequence mapping offset &key start end)

Read from the mapping offset into the sequence.

Package

pounds.

Source

ffi.lisp.

Function: reset-xdr-block (blk)
Package

pounds.blog.

Source

blog.lisp.

Function: set-header-id-index (log id index)

Set the log header message id and block index

Package

pounds.log.

Source

log.lisp.

Function: space-or-lose (blk n)
Package

pounds.blog.

Source

blog.lisp.

Function: unlock-mapping (map)
Package

pounds.

Source

ffi.lisp.

Function: write-blog-entry (stream e blk)
Package

pounds.blog.

Source

blog.lisp.

Function: write-blog-entry-props (stream e)
Package

pounds.blog.

Source

blog.lisp.

Function: write-blog-props (stream props)
Package

pounds.blog.

Source

blog.lisp.

Function: write-entry (stream writer obj)
Package

pounds.db.

Source

database.lisp.

Function: write-file (fd offset sequence &key start end)
Package

pounds.

Source

ffi.lisp.

Function: write-header (header log)
Package

pounds.log.

Source

log.lisp.

Function: write-header (stream header)
Package

pounds.db.

Source

database.lisp.

Function: write-log-header (stream header)
Package

pounds.log.

Source

log.lisp.

Function: write-log-message (stream id lvl tag msg block-size fsize)
Package

pounds.log.

Source

log.lisp.

Function: write-mapping-block (sequence mapping offset &key start end)

Write the sequence into the mapping.

Package

pounds.

Source

ffi.lisp.

Function: write-message-to-stream (stream msg)

Format a message tothe stream

Package

pounds.log.

Source

log.lisp.

Function: write-zero-at (fd offset)
Package

pounds.

Source

ffi.lisp.

Function: xdr-block (&optional count)
Package

pounds.blog.

Source

blog.lisp.

Reader: xdr-block-buffer (instance)
Writer: (setf xdr-block-buffer) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

buffer.

Reader: xdr-block-count (instance)
Writer: (setf xdr-block-count) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

count.

Reader: xdr-block-offset (instance)
Writer: (setf xdr-block-offset) (instance)
Package

pounds.blog.

Source

blog.lisp.

Target Slot

offset.

Function: xdr-block-p (object)
Package

pounds.blog.

Source

blog.lisp.


5.2.6 Structures

Structure: blog
Package

pounds.blog.

Source

blog.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: mapping
Readers

blog-mapping.

Writers

(setf blog-mapping).

Slot: stream
Package

common-lisp.

Readers

blog-stream.

Writers

(setf blog-stream).

Slot: props
Readers

blog-props.

Writers

(setf blog-props).

Structure: db
Package

pounds.db.

Source

database.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: mapping
Readers

db-mapping.

Writers

(setf db-mapping).

Slot: stream
Package

common-lisp.

Readers

db-stream.

Writers

(setf db-stream).

Slot: header
Readers

db-header.

Writers

(setf db-header).

Slot: bsize
Readers

db-bsize.

Writers

(setf db-bsize).

Slot: reader
Readers

db-reader.

Writers

(setf db-reader).

Slot: writer
Readers

db-writer.

Writers

(setf db-writer).

Structure: entry
Package

pounds.blog.

Source

blog.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: id
Readers

entry-id.

Writers

(setf entry-id).

Slot: count
Package

common-lisp.

Readers

entry-count.

Writers

(setf entry-count).

Structure: follower
Package

pounds.log.

Source

log.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: thread
Readers

follower-thread.

Writers

(setf follower-thread).

Slot: exit-p
Readers

follower-exit-p.

Writers

(setf follower-exit-p).

Slot: log
Package

common-lisp.

Readers

follower-log.

Writers

(setf follower-log).

Slot: output
Readers

follower-output.

Writers

(setf follower-output).

Slot: tag
Readers

follower-tag.

Writers

(setf follower-tag).

Slot: lvl
Readers

follower-lvl.

Writers

(setf follower-lvl).

Structure: log-header
Package

pounds.log.

Source

log.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: id
Readers

log-header-id.

Writers

(setf log-header-id).

Slot: index
Readers

log-header-index.

Writers

(setf log-header-index).

Slot: count
Package

common-lisp.

Readers

log-header-count.

Writers

(setf log-header-count).

Slot: size
Readers

log-header-size.

Writers

(setf log-header-size).

Structure: log-message
Package

pounds.log.

Source

log.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: magic
Readers

log-message-magic.

Writers

(setf log-message-magic).

Slot: id
Readers

log-message-id.

Writers

(setf log-message-id).

Slot: lvl
Readers

log-message-lvl.

Writers

(setf log-message-lvl).

Slot: time
Package

common-lisp.

Readers

log-message-time.

Writers

(setf log-message-time).

Slot: tag
Readers

log-message-tag.

Writers

(setf log-message-tag).

Slot: msg
Readers

log-message-msg.

Writers

(setf log-message-msg).

Structure: mapping
Package

pounds.

Source

ffi.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: fd
Readers

mapping-fd.

Writers

(setf mapping-fd).

Slot: ptr
Readers

mapping-ptr.

Writers

(setf mapping-ptr).

Slot: size
Readers

mapping-size.

Writers

(setf mapping-size).

Slot: lock
Initform

(bordeaux-threads:make-lock)

Readers

mapping-lock.

Writers

(setf mapping-lock).

Structure: plog
Package

pounds.log.

Source

log.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: stream
Package

common-lisp.

Readers

plog-stream.

Writers

(setf plog-stream).

Slot: count
Package

common-lisp.

Readers

plog-count.

Writers

(setf plog-count).

Slot: size
Readers

plog-size.

Writers

(setf plog-size).

Slot: tag
Readers

plog-tag.

Writers

(setf plog-tag).

Structure: props
Package

pounds.blog.

Source

blog.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: version
Readers

props-version.

Writers

(setf props-version).

Slot: nblocks
Readers

props-nblocks.

Writers

(setf props-nblocks).

Slot: id
Readers

props-id.

Writers

(setf props-id).

Slot: index
Readers

props-index.

Writers

(setf props-index).

Slot: tag
Readers

props-tag.

Writers

(setf props-tag).

Slot: seqno
Readers

props-seqno.

Writers

(setf props-seqno).

Slot: header-size
Readers

props-header-size.

Writers

(setf props-header-size).

Slot: block-size
Readers

props-block-size.

Writers

(setf props-block-size).

Structure: xdr-block
Package

pounds.blog.

Source

blog.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: buffer
Type

(vector (unsigned-byte 8))

Initform

(make-array pounds.blog::+props-block+ :element-type (quote (unsigned-byte 8)) :initial-element 0)

Readers

xdr-block-buffer.

Writers

(setf xdr-block-buffer).

Slot: count
Package

common-lisp.

Type

integer

Initform

pounds.blog::+props-block+

Readers

xdr-block-count.

Writers

(setf xdr-block-count).

Slot: offset
Type

integer

Initform

0

Readers

xdr-block-offset.

Writers

(setf xdr-block-offset).


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
A   B   C   D   E   F   G   H   I   L   M   N   O   P   R   S   U   W   X  
Index Entry  Section

%
%close: Private ordinary functions
%copy-plog: Private ordinary functions
%flock: Private ordinary functions
%fsync: Private ordinary functions
%lseek: Private ordinary functions
%make-follower: Private ordinary functions
%make-plog: Private ordinary functions
%mmap: Private ordinary functions
%munmap: Private ordinary functions
%open: Private ordinary functions
%pread: Private ordinary functions
%pwrite: Private ordinary functions
%read: Private ordinary functions
%strerror: Private ordinary functions
%var-accessor-*errno*: Private ordinary functions
%write: Private ordinary functions

(
(setf %var-accessor-*errno*): Private ordinary functions
(setf blog-index): Private ordinary functions
(setf blog-mapping): Private ordinary functions
(setf blog-props): Private ordinary functions
(setf blog-stream): Private ordinary functions
(setf db-bsize): Private ordinary functions
(setf db-header): Private ordinary functions
(setf db-mapping): Private ordinary functions
(setf db-reader): Private ordinary functions
(setf db-stream): Private ordinary functions
(setf db-writer): Private ordinary functions
(setf entry-count): Private ordinary functions
(setf entry-id): Private ordinary functions
(setf find-entry): Public ordinary functions
(setf follower-exit-p): Private ordinary functions
(setf follower-log): Private ordinary functions
(setf follower-lvl): Private ordinary functions
(setf follower-output): Private ordinary functions
(setf follower-tag): Private ordinary functions
(setf follower-thread): Private ordinary functions
(setf header): Public ordinary functions
(setf log-header-count): Private ordinary functions
(setf log-header-id): Private ordinary functions
(setf log-header-index): Private ordinary functions
(setf log-header-size): Private ordinary functions
(setf log-message-id): Private ordinary functions
(setf log-message-lvl): Private ordinary functions
(setf log-message-magic): Private ordinary functions
(setf log-message-msg): Private ordinary functions
(setf log-message-tag): Private ordinary functions
(setf log-message-time): Private ordinary functions
(setf mapping-fd): Private ordinary functions
(setf mapping-lock): Private ordinary functions
(setf mapping-ptr): Private ordinary functions
(setf mapping-size): Public ordinary functions
(setf mapping-stream-position): Public generic functions
(setf mapping-stream-position): Public generic functions
(setf plog-count): Private ordinary functions
(setf plog-size): Private ordinary functions
(setf plog-stream): Private ordinary functions
(setf plog-tag): Private ordinary functions
(setf props-block-size): Private ordinary functions
(setf props-header-size): Private ordinary functions
(setf props-id): Private ordinary functions
(setf props-index): Private ordinary functions
(setf props-nblocks): Private ordinary functions
(setf props-seqno): Private ordinary functions
(setf props-tag): Private ordinary functions
(setf props-version): Private ordinary functions
(setf stream-file-position): Public standalone methods
(setf xdr-block-buffer): Private ordinary functions
(setf xdr-block-count): Private ordinary functions
(setf xdr-block-offset): Private ordinary functions

A
advance-to-block: Private ordinary functions
advance-to-id: Private ordinary functions
advance-to-next: Private ordinary functions
advance-to-next-block: Private ordinary functions

B
blog-index: Private ordinary functions
blog-mapping: Private ordinary functions
blog-p: Private ordinary functions
blog-properties: Public ordinary functions
blog-props: Private ordinary functions
blog-stream: Private ordinary functions

C
check-if-open: Private ordinary functions
close-blog: Public ordinary functions
close-db: Public ordinary functions
close-log: Public ordinary functions
close-mapping: Public ordinary functions
copy-blog: Private ordinary functions
copy-db: Private ordinary functions
copy-entry: Private ordinary functions
copy-follower: Private ordinary functions
copy-log: Private ordinary functions
copy-log-header: Private ordinary functions
copy-log-message: Private ordinary functions
copy-mapping: Private ordinary functions
copy-props: Private ordinary functions
copy-xdr-block: Private ordinary functions

D
db-bsize: Private ordinary functions
db-count: Private ordinary functions
db-header: Private ordinary functions
db-mapping: Private ordinary functions
db-p: Private ordinary functions
db-reader: Private ordinary functions
db-seqno: Public ordinary functions
db-stream: Private ordinary functions
db-writer: Private ordinary functions
decode-entry: Private ordinary functions
decode-props: Private ordinary functions
decode-uint32: Private ordinary functions
doentries: Public macros
dump-log: Public ordinary functions

E
encode-entry: Private ordinary functions
encode-props: Private ordinary functions
encode-uint32: Private ordinary functions
ensure-file-exists: Private ordinary functions
entry-count: Private ordinary functions
entry-id: Private ordinary functions
entry-p: Private ordinary functions

F
find-entry: Public ordinary functions
find-entry-if: Public ordinary functions
flush-buffers: Private ordinary functions
follow-log: Private ordinary functions
follower-exit-p: Private ordinary functions
follower-log: Private ordinary functions
follower-lvl: Private ordinary functions
follower-output: Private ordinary functions
follower-p: Private ordinary functions
follower-tag: Private ordinary functions
follower-thread: Private ordinary functions
Function, %close: Private ordinary functions
Function, %copy-plog: Private ordinary functions
Function, %flock: Private ordinary functions
Function, %fsync: Private ordinary functions
Function, %lseek: Private ordinary functions
Function, %make-follower: Private ordinary functions
Function, %make-plog: Private ordinary functions
Function, %mmap: Private ordinary functions
Function, %munmap: Private ordinary functions
Function, %open: Private ordinary functions
Function, %pread: Private ordinary functions
Function, %pwrite: Private ordinary functions
Function, %read: Private ordinary functions
Function, %strerror: Private ordinary functions
Function, %var-accessor-*errno*: Private ordinary functions
Function, %write: Private ordinary functions
Function, (setf %var-accessor-*errno*): Private ordinary functions
Function, (setf blog-index): Private ordinary functions
Function, (setf blog-mapping): Private ordinary functions
Function, (setf blog-props): Private ordinary functions
Function, (setf blog-stream): Private ordinary functions
Function, (setf db-bsize): Private ordinary functions
Function, (setf db-header): Private ordinary functions
Function, (setf db-mapping): Private ordinary functions
Function, (setf db-reader): Private ordinary functions
Function, (setf db-stream): Private ordinary functions
Function, (setf db-writer): Private ordinary functions
Function, (setf entry-count): Private ordinary functions
Function, (setf entry-id): Private ordinary functions
Function, (setf find-entry): Public ordinary functions
Function, (setf follower-exit-p): Private ordinary functions
Function, (setf follower-log): Private ordinary functions
Function, (setf follower-lvl): Private ordinary functions
Function, (setf follower-output): Private ordinary functions
Function, (setf follower-tag): Private ordinary functions
Function, (setf follower-thread): Private ordinary functions
Function, (setf header): Public ordinary functions
Function, (setf log-header-count): Private ordinary functions
Function, (setf log-header-id): Private ordinary functions
Function, (setf log-header-index): Private ordinary functions
Function, (setf log-header-size): Private ordinary functions
Function, (setf log-message-id): Private ordinary functions
Function, (setf log-message-lvl): Private ordinary functions
Function, (setf log-message-magic): Private ordinary functions
Function, (setf log-message-msg): Private ordinary functions
Function, (setf log-message-tag): Private ordinary functions
Function, (setf log-message-time): Private ordinary functions
Function, (setf mapping-fd): Private ordinary functions
Function, (setf mapping-lock): Private ordinary functions
Function, (setf mapping-ptr): Private ordinary functions
Function, (setf mapping-size): Public ordinary functions
Function, (setf plog-count): Private ordinary functions
Function, (setf plog-size): Private ordinary functions
Function, (setf plog-stream): Private ordinary functions
Function, (setf plog-tag): Private ordinary functions
Function, (setf props-block-size): Private ordinary functions
Function, (setf props-header-size): Private ordinary functions
Function, (setf props-id): Private ordinary functions
Function, (setf props-index): Private ordinary functions
Function, (setf props-nblocks): Private ordinary functions
Function, (setf props-seqno): Private ordinary functions
Function, (setf props-tag): Private ordinary functions
Function, (setf props-version): Private ordinary functions
Function, (setf xdr-block-buffer): Private ordinary functions
Function, (setf xdr-block-count): Private ordinary functions
Function, (setf xdr-block-offset): Private ordinary functions
Function, advance-to-block: Private ordinary functions
Function, advance-to-id: Private ordinary functions
Function, advance-to-next: Private ordinary functions
Function, advance-to-next-block: Private ordinary functions
Function, blog-index: Private ordinary functions
Function, blog-mapping: Private ordinary functions
Function, blog-p: Private ordinary functions
Function, blog-properties: Public ordinary functions
Function, blog-props: Private ordinary functions
Function, blog-stream: Private ordinary functions
Function, check-if-open: Private ordinary functions
Function, close-blog: Public ordinary functions
Function, close-db: Public ordinary functions
Function, close-log: Public ordinary functions
Function, close-mapping: Public ordinary functions
Function, copy-blog: Private ordinary functions
Function, copy-db: Private ordinary functions
Function, copy-entry: Private ordinary functions
Function, copy-follower: Private ordinary functions
Function, copy-log: Private ordinary functions
Function, copy-log-header: Private ordinary functions
Function, copy-log-message: Private ordinary functions
Function, copy-mapping: Private ordinary functions
Function, copy-props: Private ordinary functions
Function, copy-xdr-block: Private ordinary functions
Function, db-bsize: Private ordinary functions
Function, db-count: Private ordinary functions
Function, db-header: Private ordinary functions
Function, db-mapping: Private ordinary functions
Function, db-p: Private ordinary functions
Function, db-reader: Private ordinary functions
Function, db-seqno: Public ordinary functions
Function, db-stream: Private ordinary functions
Function, db-writer: Private ordinary functions
Function, decode-entry: Private ordinary functions
Function, decode-props: Private ordinary functions
Function, decode-uint32: Private ordinary functions
Function, dump-log: Public ordinary functions
Function, encode-entry: Private ordinary functions
Function, encode-props: Private ordinary functions
Function, encode-uint32: Private ordinary functions
Function, ensure-file-exists: Private ordinary functions
Function, entry-count: Private ordinary functions
Function, entry-id: Private ordinary functions
Function, entry-p: Private ordinary functions
Function, find-entry: Public ordinary functions
Function, find-entry-if: Public ordinary functions
Function, flush-buffers: Private ordinary functions
Function, follow-log: Private ordinary functions
Function, follower-exit-p: Private ordinary functions
Function, follower-log: Private ordinary functions
Function, follower-lvl: Private ordinary functions
Function, follower-output: Private ordinary functions
Function, follower-p: Private ordinary functions
Function, follower-tag: Private ordinary functions
Function, follower-thread: Private ordinary functions
Function, get-last-error: Private ordinary functions
Function, header: Public ordinary functions
Function, header-id: Private ordinary functions
Function, header-index: Private ordinary functions
Function, int-level: Private ordinary functions
Function, invalid-pointer-p: Private ordinary functions
Function, level-int: Private ordinary functions
Function, lock-mapping: Private ordinary functions
Function, log-header-count: Private ordinary functions
Function, log-header-id: Private ordinary functions
Function, log-header-index: Private ordinary functions
Function, log-header-p: Private ordinary functions
Function, log-header-size: Private ordinary functions
Function, log-message-id: Private ordinary functions
Function, log-message-lvl: Private ordinary functions
Function, log-message-magic: Private ordinary functions
Function, log-message-msg: Private ordinary functions
Function, log-message-p: Private ordinary functions
Function, log-message-tag: Private ordinary functions
Function, log-message-time: Private ordinary functions
Function, make-blog: Private ordinary functions
Function, make-db: Private ordinary functions
Function, make-entry: Private ordinary functions
Function, make-follower: Private ordinary functions
Function, make-log-header: Private ordinary functions
Function, make-log-message: Private ordinary functions
Function, make-mapping: Private ordinary functions
Function, make-mapping-stream: Public ordinary functions
Function, make-plog: Private ordinary functions
Function, make-props: Private ordinary functions
Function, make-xdr-block: Private ordinary functions
Function, mapentries: Public ordinary functions
Function, mapping-fd: Private ordinary functions
Function, mapping-lock: Private ordinary functions
Function, mapping-p: Private ordinary functions
Function, mapping-ptr: Private ordinary functions
Function, mapping-size: Public ordinary functions
Function, maybe-remap: Private ordinary functions
Function, next-index: Private ordinary functions
Function, open-blog: Public ordinary functions
Function, open-db: Public ordinary functions
Function, open-log: Public ordinary functions
Function, open-mapping: Public ordinary functions
Function, plog-count: Private ordinary functions
Function, plog-p: Private ordinary functions
Function, plog-size: Private ordinary functions
Function, plog-stream: Private ordinary functions
Function, plog-tag: Private ordinary functions
Function, prev-index: Private ordinary functions
Function, props-block-size: Private ordinary functions
Function, props-header-size: Private ordinary functions
Function, props-id: Private ordinary functions
Function, props-index: Private ordinary functions
Function, props-nblocks: Private ordinary functions
Function, props-p: Private ordinary functions
Function, props-seqno: Private ordinary functions
Function, props-tag: Private ordinary functions
Function, props-version: Private ordinary functions
Function, read-blog-entry-props: Private ordinary functions
Function, read-blog-props: Private ordinary functions
Function, read-entries: Public ordinary functions
Function, read-entry: Public ordinary functions
Function, read-entry: Private ordinary functions
Function, read-entry-details: Public ordinary functions
Function, read-entry-locked: Private ordinary functions
Function, read-file: Private ordinary functions
Function, read-header: Public ordinary functions
Function, read-header: Private ordinary functions
Function, read-header: Private ordinary functions
Function, read-log-header: Private ordinary functions
Function, read-log-message: Private ordinary functions
Function, read-mapping-block: Private ordinary functions
Function, read-message: Public ordinary functions
Function, remap: Public ordinary functions
Function, remove-entry: Public ordinary functions
Function, reset-blog: Public ordinary functions
Function, reset-xdr-block: Private ordinary functions
Function, set-header-id-index: Private ordinary functions
Function, space-or-lose: Private ordinary functions
Function, start-following: Public ordinary functions
Function, stop-following: Public ordinary functions
Function, sync-blog: Public ordinary functions
Function, unlock-mapping: Private ordinary functions
Function, write-blog-entry: Private ordinary functions
Function, write-blog-entry-props: Private ordinary functions
Function, write-blog-props: Private ordinary functions
Function, write-entry: Public ordinary functions
Function, write-entry: Private ordinary functions
Function, write-file: Private ordinary functions
Function, write-header: Public ordinary functions
Function, write-header: Private ordinary functions
Function, write-header: Private ordinary functions
Function, write-log-header: Private ordinary functions
Function, write-log-message: Private ordinary functions
Function, write-mapping-block: Private ordinary functions
Function, write-message: Public ordinary functions
Function, write-message-to-stream: Private ordinary functions
Function, write-zero-at: Private ordinary functions
Function, xdr-block: Private ordinary functions
Function, xdr-block-buffer: Private ordinary functions
Function, xdr-block-count: Private ordinary functions
Function, xdr-block-offset: Private ordinary functions
Function, xdr-block-p: Private ordinary functions

G
Generic Function, (setf mapping-stream-position): Public generic functions
Generic Function, mapping-stream-mapping: Public generic functions
Generic Function, mapping-stream-position: Public generic functions
get-last-error: Private ordinary functions

H
header: Public ordinary functions
header-id: Private ordinary functions
header-index: Private ordinary functions

I
int-level: Private ordinary functions
invalid-pointer-p: Private ordinary functions

L
level-int: Private ordinary functions
lock-mapping: Private ordinary functions
log-header-count: Private ordinary functions
log-header-id: Private ordinary functions
log-header-index: Private ordinary functions
log-header-p: Private ordinary functions
log-header-size: Private ordinary functions
log-message-id: Private ordinary functions
log-message-lvl: Private ordinary functions
log-message-magic: Private ordinary functions
log-message-msg: Private ordinary functions
log-message-p: Private ordinary functions
log-message-tag: Private ordinary functions
log-message-time: Private ordinary functions

M
Macro, doentries: Public macros
Macro, with-locked-db: Private macros
Macro, with-locked-mapping: Public macros
Macro, with-mapping: Private macros
Macro, with-mapping-stream: Private macros
Macro, with-open-mapping: Private macros
make-blog: Private ordinary functions
make-db: Private ordinary functions
make-entry: Private ordinary functions
make-follower: Private ordinary functions
make-log-header: Private ordinary functions
make-log-message: Private ordinary functions
make-mapping: Private ordinary functions
make-mapping-stream: Public ordinary functions
make-plog: Private ordinary functions
make-props: Private ordinary functions
make-xdr-block: Private ordinary functions
mapentries: Public ordinary functions
mapping-fd: Private ordinary functions
mapping-lock: Private ordinary functions
mapping-p: Private ordinary functions
mapping-ptr: Private ordinary functions
mapping-size: Public ordinary functions
mapping-stream-mapping: Public generic functions
mapping-stream-mapping: Public generic functions
mapping-stream-position: Public generic functions
mapping-stream-position: Public generic functions
maybe-remap: Private ordinary functions
Method, (setf mapping-stream-position): Public generic functions
Method, (setf stream-file-position): Public standalone methods
Method, mapping-stream-mapping: Public generic functions
Method, mapping-stream-position: Public generic functions
Method, stream-element-type: Public standalone methods
Method, stream-file-position: Public standalone methods
Method, stream-finish-output: Public standalone methods
Method, stream-force-output: Public standalone methods
Method, stream-listen: Public standalone methods
Method, stream-read-byte: Public standalone methods
Method, stream-read-sequence: Public standalone methods
Method, stream-write-byte: Public standalone methods
Method, stream-write-sequence: Public standalone methods

N
next-index: Private ordinary functions

O
open-blog: Public ordinary functions
open-db: Public ordinary functions
open-log: Public ordinary functions
open-mapping: Public ordinary functions

P
plog-count: Private ordinary functions
plog-p: Private ordinary functions
plog-size: Private ordinary functions
plog-stream: Private ordinary functions
plog-tag: Private ordinary functions
prev-index: Private ordinary functions
props-block-size: Private ordinary functions
props-header-size: Private ordinary functions
props-id: Private ordinary functions
props-index: Private ordinary functions
props-nblocks: Private ordinary functions
props-p: Private ordinary functions
props-seqno: Private ordinary functions
props-tag: Private ordinary functions
props-version: Private ordinary functions

R
read-blog-entry-props: Private ordinary functions
read-blog-props: Private ordinary functions
read-entries: Public ordinary functions
read-entry: Public ordinary functions
read-entry: Private ordinary functions
read-entry-details: Public ordinary functions
read-entry-locked: Private ordinary functions
read-file: Private ordinary functions
read-header: Public ordinary functions
read-header: Private ordinary functions
read-header: Private ordinary functions
read-log-header: Private ordinary functions
read-log-message: Private ordinary functions
read-mapping-block: Private ordinary functions
read-message: Public ordinary functions
remap: Public ordinary functions
remove-entry: Public ordinary functions
reset-blog: Public ordinary functions
reset-xdr-block: Private ordinary functions

S
set-header-id-index: Private ordinary functions
space-or-lose: Private ordinary functions
start-following: Public ordinary functions
stop-following: Public ordinary functions
stream-element-type: Public standalone methods
stream-file-position: Public standalone methods
stream-finish-output: Public standalone methods
stream-force-output: Public standalone methods
stream-listen: Public standalone methods
stream-read-byte: Public standalone methods
stream-read-sequence: Public standalone methods
stream-write-byte: Public standalone methods
stream-write-sequence: Public standalone methods
sync-blog: Public ordinary functions

U
unlock-mapping: Private ordinary functions

W
with-locked-db: Private macros
with-locked-mapping: Public macros
with-mapping: Private macros
with-mapping-stream: Private macros
with-open-mapping: Private macros
write-blog-entry: Private ordinary functions
write-blog-entry-props: Private ordinary functions
write-blog-props: Private ordinary functions
write-entry: Public ordinary functions
write-entry: Private ordinary functions
write-file: Private ordinary functions
write-header: Public ordinary functions
write-header: Private ordinary functions
write-header: Private ordinary functions
write-log-header: Private ordinary functions
write-log-message: Private ordinary functions
write-mapping-block: Private ordinary functions
write-message: Public ordinary functions
write-message-to-stream: Private ordinary functions
write-zero-at: Private ordinary functions

X
xdr-block: Private ordinary functions
xdr-block-buffer: Private ordinary functions
xdr-block-count: Private ordinary functions
xdr-block-offset: Private ordinary functions
xdr-block-p: Private ordinary functions


A.3 Variables

Jump to:   *   +  
B   C   E   F   H   I   L   M   N   O   P   R   S   T   V   W  
Index Entry  Section

*
*default-log-file*: Private special variables
*errno*: Private symbol macros
*follower*: Private special variables

+
+blog-version+: Private constants
+default-block-size+: Private constants
+default-count+: Private constants
+default-count+: Private constants
+default-size+: Private constants
+eintr+: Private constants
+entry-size+: Private constants
+flag-more+: Private constants
+lock-ex+: Private constants
+lock-un+: Private constants
+msg-magic+: Private constants
+props-block+: Private constants

B
block-size: Private structures
bsize: Private structures
buffer: Private structures

C
Constant, +blog-version+: Private constants
Constant, +default-block-size+: Private constants
Constant, +default-count+: Private constants
Constant, +default-count+: Private constants
Constant, +default-size+: Private constants
Constant, +eintr+: Private constants
Constant, +entry-size+: Private constants
Constant, +flag-more+: Private constants
Constant, +lock-ex+: Private constants
Constant, +lock-un+: Private constants
Constant, +msg-magic+: Private constants
Constant, +props-block+: Private constants
count: Private structures
count: Private structures
count: Private structures
count: Private structures

E
exit-p: Private structures

F
fd: Private structures

H
header: Private structures
header-size: Private structures

I
id: Private structures
id: Private structures
id: Private structures
id: Private structures
index: Private structures
index: Private structures

L
lock: Private structures
log: Private structures
lvl: Private structures
lvl: Private structures

M
magic: Private structures
mapping: Public classes
mapping: Private structures
mapping: Private structures
msg: Private structures

N
nblocks: Private structures

O
offset: Private structures
output: Private structures

P
position: Public classes
props: Private structures
ptr: Private structures

R
reader: Private structures

S
seqno: Private structures
size: Private structures
size: Private structures
size: Private structures
Slot, block-size: Private structures
Slot, bsize: Private structures
Slot, buffer: Private structures
Slot, count: Private structures
Slot, count: Private structures
Slot, count: Private structures
Slot, count: Private structures
Slot, exit-p: Private structures
Slot, fd: Private structures
Slot, header: Private structures
Slot, header-size: Private structures
Slot, id: Private structures
Slot, id: Private structures
Slot, id: Private structures
Slot, id: Private structures
Slot, index: Private structures
Slot, index: Private structures
Slot, lock: Private structures
Slot, log: Private structures
Slot, lvl: Private structures
Slot, lvl: Private structures
Slot, magic: Private structures
Slot, mapping: Public classes
Slot, mapping: Private structures
Slot, mapping: Private structures
Slot, msg: Private structures
Slot, nblocks: Private structures
Slot, offset: Private structures
Slot, output: Private structures
Slot, position: Public classes
Slot, props: Private structures
Slot, ptr: Private structures
Slot, reader: Private structures
Slot, seqno: Private structures
Slot, size: Private structures
Slot, size: Private structures
Slot, size: Private structures
Slot, stream: Private structures
Slot, stream: Private structures
Slot, stream: Private structures
Slot, tag: Private structures
Slot, tag: Private structures
Slot, tag: Private structures
Slot, tag: Private structures
Slot, thread: Private structures
Slot, time: Private structures
Slot, version: Private structures
Slot, writer: Private structures
Special Variable, *default-log-file*: Private special variables
Special Variable, *follower*: Private special variables
stream: Private structures
stream: Private structures
stream: Private structures
Symbol Macro, *errno*: Private symbol macros

T
tag: Private structures
tag: Private structures
tag: Private structures
tag: Private structures
thread: Private structures
time: Private structures

V
version: Private structures

W
writer: Private structures


A.4 Data types

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

B
blog: Private structures
blog.lisp: The pounds/blog․lisp file

C
Class, mapping-stream: Public classes

D
database.lisp: The pounds/database․lisp file
db: Private structures

E
entry: Private structures

F
ffi.lisp: The pounds/ffi․lisp file
File, blog.lisp: The pounds/blog․lisp file
File, database.lisp: The pounds/database․lisp file
File, ffi.lisp: The pounds/ffi․lisp file
File, log.lisp: The pounds/log․lisp file
File, mappings.lisp: The pounds/mappings․lisp file
File, package.lisp: The pounds/package․lisp file
File, pounds.asd: The pounds/pounds․asd file
follower: Private structures

L
log-header: Private structures
log-message: Private structures
log.lisp: The pounds/log․lisp file

M
mapping: Private structures
mapping-stream: Public classes
mappings.lisp: The pounds/mappings․lisp file

P
Package, pounds: The pounds package
Package, pounds.blog: The pounds․blog package
Package, pounds.db: The pounds․db package
Package, pounds.log: The pounds․log package
package.lisp: The pounds/package․lisp file
plog: Private structures
pounds: The pounds system
pounds: The pounds package
pounds.asd: The pounds/pounds․asd file
pounds.blog: The pounds․blog package
pounds.db: The pounds․db package
pounds.log: The pounds․log package
props: Private structures

S
Structure, blog: Private structures
Structure, db: Private structures
Structure, entry: Private structures
Structure, follower: Private structures
Structure, log-header: Private structures
Structure, log-message: Private structures
Structure, mapping: Private structures
Structure, plog: Private structures
Structure, props: Private structures
Structure, xdr-block: Private structures
System, pounds: The pounds system

X
xdr-block: Private structures