The damn-fast-priority-queue Reference Manual

This is the damn-fast-priority-queue Reference Manual, version 0.0.2, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 16:11:46 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 damn-fast-priority-queue

A heap-based priority queue whose first and foremost priority is speed.

Author

Michał "phoe" Herda <>

License

MIT

Version

0.0.2

Dependency

alexandria (system).

Source

damn-fast-priority-queue.asd.

Child Component

src.lisp (file).


3 Files

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


3.1 Lisp


3.1.1 damn-fast-priority-queue/damn-fast-priority-queue.asd

Source

damn-fast-priority-queue.asd.

Parent Component

damn-fast-priority-queue (system).

ASDF Systems

damn-fast-priority-queue.


3.1.2 damn-fast-priority-queue/src.lisp

Source

damn-fast-priority-queue.asd.

Parent Component

damn-fast-priority-queue (system).

Packages

damn-fast-priority-queue.

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 damn-fast-priority-queue

Source

src.lisp.

Use List

common-lisp.

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: do-queue ((object queue &optional result) &body body)
Package

damn-fast-priority-queue.

Source

src.lisp.


5.1.2 Ordinary functions

Function: copy-queue (queue)
Package

damn-fast-priority-queue.

Source

src.lisp.

Function: dequeue (queue)
Package

damn-fast-priority-queue.

Source

src.lisp.

Function: enqueue (queue object priority)
Package

damn-fast-priority-queue.

Source

src.lisp.

Function: make-queue (&optional initial-storage-size extension-factor extend-queue-p)
Package

damn-fast-priority-queue.

Source

src.lisp.

Function: map (queue function)
Package

damn-fast-priority-queue.

Source

src.lisp.

Function: peek (queue)
Package

damn-fast-priority-queue.

Source

src.lisp.

Function: size (queue)
Package

damn-fast-priority-queue.

Source

src.lisp.

Function: trim (queue)
Package

damn-fast-priority-queue.

Source

src.lisp.


5.1.3 Generic functions

Generic Reader: queue-size-limit-reached-object (condition)
Package

damn-fast-priority-queue.

Methods
Reader Method: queue-size-limit-reached-object ((condition queue-size-limit-reached))
Source

src.lisp.

Target Slot

%object.

Generic Reader: queue-size-limit-reached-queue (condition)
Package

damn-fast-priority-queue.

Methods
Reader Method: queue-size-limit-reached-queue ((condition queue-size-limit-reached))
Source

src.lisp.

Target Slot

%queue.


5.1.4 Standalone methods

Method: print-object ((object queue) stream)
Source

src.lisp.


5.1.5 Conditions

Condition: queue-size-limit-reached
Package

damn-fast-priority-queue.

Source

src.lisp.

Direct superclasses

error.

Direct methods
Direct Default Initargs
InitargValue
:object(required-argument object)
:queue(required-argument queue)
Direct slots
Slot: %queue
Initargs

:queue

Readers

queue-size-limit-reached-queue.

Writers

This slot is read-only.

Slot: %object
Initargs

:element

Readers

queue-size-limit-reached-object.

Writers

This slot is read-only.


5.1.6 Structures

Structure: queue
Package

damn-fast-priority-queue.

Source

src.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: data-vector
Type

damn-fast-priority-queue::data-vector-type

Initform

(make-array 256 :element-type (quote damn-fast-priority-queue::data-type))

Readers

%data-vector.

Writers

(setf %data-vector).

Slot: prio-vector
Type

damn-fast-priority-queue::prio-vector-type

Initform

(make-array 256 :element-type (quote damn-fast-priority-queue::prio-type))

Readers

%prio-vector.

Writers

(setf %prio-vector).

Slot: size
Type

alexandria:array-length

Initform

0

Readers

%size.

Writers

(setf %size).

Slot: extension-factor
Type

damn-fast-priority-queue::extension-factor-type

Initform

2

Readers

%extension-factor.

Writers

(setf %extension-factor).

Slot: extend-queue-p
Type

boolean

Initform

t

Readers

%extend-queue-p.

Writers

(setf %extend-queue-p).


5.2 Internals


5.2.1 Special variables

Special Variable: *optimize-qualities*
Package

damn-fast-priority-queue.

Source

src.lisp.


5.2.2 Ordinary functions

Reader: %data-vector (instance)
Writer: (setf %data-vector) (instance)
Package

damn-fast-priority-queue.

Source

src.lisp.

Target Slot

data-vector.

Reader: %extend-queue-p (instance)
Writer: (setf %extend-queue-p) (instance)
Package

damn-fast-priority-queue.

Source

src.lisp.

Target Slot

extend-queue-p.

Reader: %extension-factor (instance)
Writer: (setf %extension-factor) (instance)
Package

damn-fast-priority-queue.

Source

src.lisp.

Target Slot

extension-factor.

Function: %make (&key data-vector prio-vector size extension-factor extend-queue-p)
Package

damn-fast-priority-queue.

Source

src.lisp.

Reader: %prio-vector (instance)
Writer: (setf %prio-vector) (instance)
Package

damn-fast-priority-queue.

Source

src.lisp.

Target Slot

prio-vector.

Reader: %size (instance)
Writer: (setf %size) (instance)
Package

damn-fast-priority-queue.

Source

src.lisp.

Target Slot

size.

Function: heapify-downwards (data-vector prio-vector size)
Package

damn-fast-priority-queue.

Source

src.lisp.

Function: heapify-upwards (data-vector prio-vector index)
Package

damn-fast-priority-queue.

Source

src.lisp.

Function: report-queue-size-limit-reached (condition stream)
Package

damn-fast-priority-queue.

Source

src.lisp.


5.2.3 Types

Type: data-type ()
Package

damn-fast-priority-queue.

Source

src.lisp.

Type: data-vector-type ()
Package

damn-fast-priority-queue.

Source

src.lisp.

Type: extension-factor-type ()
Package

damn-fast-priority-queue.

Source

src.lisp.

Type: prio-type ()
Package

damn-fast-priority-queue.

Source

src.lisp.

Type: prio-vector-type ()
Package

damn-fast-priority-queue.

Source

src.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
C   D   E   F   G   H   M   P   Q   R   S   T  
Index Entry  Section

%
%data-vector: Private ordinary functions
%extend-queue-p: Private ordinary functions
%extension-factor: Private ordinary functions
%make: Private ordinary functions
%prio-vector: Private ordinary functions
%size: Private ordinary functions

(
(setf %data-vector): Private ordinary functions
(setf %extend-queue-p): Private ordinary functions
(setf %extension-factor): Private ordinary functions
(setf %prio-vector): Private ordinary functions
(setf %size): Private ordinary functions

C
copy-queue: Public ordinary functions

D
dequeue: Public ordinary functions
do-queue: Public macros

E
enqueue: Public ordinary functions

F
Function, %data-vector: Private ordinary functions
Function, %extend-queue-p: Private ordinary functions
Function, %extension-factor: Private ordinary functions
Function, %make: Private ordinary functions
Function, %prio-vector: Private ordinary functions
Function, %size: Private ordinary functions
Function, (setf %data-vector): Private ordinary functions
Function, (setf %extend-queue-p): Private ordinary functions
Function, (setf %extension-factor): Private ordinary functions
Function, (setf %prio-vector): Private ordinary functions
Function, (setf %size): Private ordinary functions
Function, copy-queue: Public ordinary functions
Function, dequeue: Public ordinary functions
Function, enqueue: Public ordinary functions
Function, heapify-downwards: Private ordinary functions
Function, heapify-upwards: Private ordinary functions
Function, make-queue: Public ordinary functions
Function, map: Public ordinary functions
Function, peek: Public ordinary functions
Function, report-queue-size-limit-reached: Private ordinary functions
Function, size: Public ordinary functions
Function, trim: Public ordinary functions

G
Generic Function, queue-size-limit-reached-object: Public generic functions
Generic Function, queue-size-limit-reached-queue: Public generic functions

H
heapify-downwards: Private ordinary functions
heapify-upwards: Private ordinary functions

M
Macro, do-queue: Public macros
make-queue: Public ordinary functions
map: Public ordinary functions
Method, print-object: Public standalone methods
Method, queue-size-limit-reached-object: Public generic functions
Method, queue-size-limit-reached-queue: Public generic functions

P
peek: Public ordinary functions
print-object: Public standalone methods

Q
queue-size-limit-reached-object: Public generic functions
queue-size-limit-reached-object: Public generic functions
queue-size-limit-reached-queue: Public generic functions
queue-size-limit-reached-queue: Public generic functions

R
report-queue-size-limit-reached: Private ordinary functions

S
size: Public ordinary functions

T
trim: Public ordinary functions