The cl-speedy-queue Reference Manual

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

The cl-speedy-queue Reference Manual

This is the cl-speedy-queue Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Aug 15 04:03:11 2022 GMT+0.

Table of Contents


1 Introduction

About

cl-speedy-queue is a portable, non-consing, optimized queue implementation. It was originally written by Adlai Chandrasekhar for use in ChanL.

API

[function] make-queue size

Creates a new queue of SIZE.

[function] enqueue object queue

Enqueues OBJECT in QUEUE.

[function] dequeue queue

Dequeues QUEUE.

[function] queue-count queue

Returns the current size of QUEUE.

[function] queue-length queue

Returns the maximum size of QUEUE.

[function] queue-peek queue

Returns the next item that would be dequeued without dequeueing it.

[function] queue-full-p queue

Returns NIL if more items can be enqueued.

[function] queue-empty-p queue

Returns NIL if there are still items in the queue.


2 Systems

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


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

2.1 cl-speedy-queue

cl-speedy-queue is a portable, non-consing, optimized queue implementation.

Author

Adlai Chandrasekhar <munchking@gmail.com>

License

MIT

Source

cl-speedy-queue.asd.

Child Component

cl-speedy-queue.lisp (file).


3 Files

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


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

3.1 Lisp


3.1.1 cl-speedy-queue/cl-speedy-queue.asd

Source

cl-speedy-queue.asd.

Parent Component

cl-speedy-queue (system).

ASDF Systems

cl-speedy-queue.


3.1.2 cl-speedy-queue/cl-speedy-queue.lisp

Source

cl-speedy-queue.asd.

Parent Component

cl-speedy-queue (system).

Packages

cl-speedy-queue.

Public Interface
Internals

4 Packages

Packages are listed by definition order.


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

4.1 cl-speedy-queue

Source

cl-speedy-queue.lisp.

Use List

common-lisp.

Public Interface
Internals

5 Definitions

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


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

5.1 Public Interface


5.1.1 Ordinary functions

Function: dequeue (queue)

Dequeues QUEUE

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: enqueue (object queue)

Enqueues OBJECT in QUEUE

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: make-queue (size)

Makes a queue of maximum size SIZE

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: queue-count (queue)

Returns the current size of QUEUE

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: queue-empty-p (queue)

Tests whether QUEUE is empty

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: queue-full-p (queue)

Returns NIL if more items can be enqueued.

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: queue-length (queue)

Returns the maximum size of QUEUE

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: queue-peek (queue)

Returns the next item that would be dequeued without dequeueing it.

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.


5.2 Internals


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

5.2.1 Macros

Macro: define-speedy-function (name args &body body)
Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.


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

5.2.2 Ordinary functions

Function: %dequeue ()

Sets QUEUE’s tail to QUEUE, increments QUEUE’s tail pointer, and returns the previous tail ref

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %enqueue ()

Enqueue OBJECT and increment QUEUE’s entry pointer

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %make-queue ()

Creates a new queue of maximum size LENGTH

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %next-index ()
Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %queue-count ()

Returns QUEUE’s effective length

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %queue-empty-p ()

Checks whether QUEUE is effectively empty

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %queue-full-p ()

Checks whether QUEUE is effectively full

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %queue-in ()

QUEUE’s entry pointer

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %queue-length ()

Returns QUEUE’s maximum length

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %queue-out ()

QUEUE’s exit pointer

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %queue-peek ()

Dereference QUEUE’s exit pointer

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: %queue-zero-p ()

Checks whether QUEUE’s theoretical length is zero

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Function: queuep ()

If this returns NIL, X is not a queue

Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.


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

5.2.3 Generic functions

Generic Reader: queue-condition-queue (condition)
Package

cl-speedy-queue.

Methods
Reader Method: queue-condition-queue ((condition queue-condition))
Source

cl-speedy-queue.lisp.

Target Slot

queue.

Generic Reader: queue-error-attempted-length (condition)
Package

cl-speedy-queue.

Methods
Reader Method: queue-error-attempted-length ((condition queue-length-error))
Source

cl-speedy-queue.lisp.

Target Slot

attempted-length.

Generic Reader: queue-overflow-extra-item (condition)
Package

cl-speedy-queue.

Methods
Reader Method: queue-overflow-extra-item ((condition queue-overflow-error))
Source

cl-speedy-queue.lisp.

Target Slot

item.


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

5.2.4 Conditions

Condition: queue-condition
Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Direct superclasses

error.

Direct subclasses
Direct methods

queue-condition-queue.

Direct slots
Slot: queue
Initargs

:queue

Readers

queue-condition-queue.

Writers

This slot is read-only.

Condition: queue-length-error
Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Direct superclasses

queue-condition.

Direct methods

queue-error-attempted-length.

Direct slots
Slot: attempted-length
Initargs

:attempted-length

Readers

queue-error-attempted-length.

Writers

This slot is read-only.

Condition: queue-overflow-error
Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Direct superclasses

queue-condition.

Direct methods

queue-overflow-extra-item.

Direct slots
Slot: item
Initargs

:item

Readers

queue-overflow-extra-item.

Writers

This slot is read-only.

Condition: queue-underflow-error
Package

cl-speedy-queue.

Source

cl-speedy-queue.lisp.

Direct superclasses

queue-condition.


Appendix A Indexes


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

A.1 Concepts


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

A.2 Functions

Jump to:   %  
D   E   F   G   M   Q  
Index Entry  Section

%
%dequeue: Private ordinary functions
%enqueue: Private ordinary functions
%make-queue: Private ordinary functions
%next-index: Private ordinary functions
%queue-count: Private ordinary functions
%queue-empty-p: Private ordinary functions
%queue-full-p: Private ordinary functions
%queue-in: Private ordinary functions
%queue-length: Private ordinary functions
%queue-out: Private ordinary functions
%queue-peek: Private ordinary functions
%queue-zero-p: Private ordinary functions

D
define-speedy-function: Private macros
dequeue: Public ordinary functions

E
enqueue: Public ordinary functions

F
Function, %dequeue: Private ordinary functions
Function, %enqueue: Private ordinary functions
Function, %make-queue: Private ordinary functions
Function, %next-index: Private ordinary functions
Function, %queue-count: Private ordinary functions
Function, %queue-empty-p: Private ordinary functions
Function, %queue-full-p: Private ordinary functions
Function, %queue-in: Private ordinary functions
Function, %queue-length: Private ordinary functions
Function, %queue-out: Private ordinary functions
Function, %queue-peek: Private ordinary functions
Function, %queue-zero-p: Private ordinary functions
Function, dequeue: Public ordinary functions
Function, enqueue: Public ordinary functions
Function, make-queue: Public ordinary functions
Function, queue-count: Public ordinary functions
Function, queue-empty-p: Public ordinary functions
Function, queue-full-p: Public ordinary functions
Function, queue-length: Public ordinary functions
Function, queue-peek: Public ordinary functions
Function, queuep: Private ordinary functions

G
Generic Function, queue-condition-queue: Private generic functions
Generic Function, queue-error-attempted-length: Private generic functions
Generic Function, queue-overflow-extra-item: Private generic functions

M
Macro, define-speedy-function: Private macros
make-queue: Public ordinary functions
Method, queue-condition-queue: Private generic functions
Method, queue-error-attempted-length: Private generic functions
Method, queue-overflow-extra-item: Private generic functions

Q
queue-condition-queue: Private generic functions
queue-condition-queue: Private generic functions
queue-count: Public ordinary functions
queue-empty-p: Public ordinary functions
queue-error-attempted-length: Private generic functions
queue-error-attempted-length: Private generic functions
queue-full-p: Public ordinary functions
queue-length: Public ordinary functions
queue-overflow-extra-item: Private generic functions
queue-overflow-extra-item: Private generic functions
queue-peek: Public ordinary functions
queuep: Private ordinary functions

Jump to:   %  
D   E   F   G   M   Q  

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

A.3 Variables

Jump to:   A   I   Q   S  
Index Entry  Section

A
attempted-length: Private conditions

I
item: Private conditions

Q
queue: Private conditions

S
Slot, attempted-length: Private conditions
Slot, item: Private conditions
Slot, queue: Private conditions

Jump to:   A   I   Q   S