The eager-future Reference Manual
Table of Contents
The eager-future Reference Manual
This is the eager-future Reference Manual,
generated automatically by Declt version 3.0 "Montgomery Scott"
on Tue Dec 22 13:21:30 2020 GMT+0.
1 Systems
The main system appears first, followed by any subsystem dependency.
1.1 eager-future
- Dependency
bordeaux-threads
- Source
eager-future.asd (file)
- Components
-
2 Files
Files are sorted by type and then listed depth-first from the systems
components trees.
2.1 Lisp
2.1.1 eager-future.asd
- Location
eager-future.asd
- Systems
eager-future (system)
2.1.2 eager-future/package.lisp
- Parent
eager-future (system)
- Location
package.lisp
- Packages
eager-future
2.1.3 eager-future/future.lisp
- Dependency
package.lisp (file)
- Parent
eager-future (system)
- Location
future.lisp
- Exported Definitions
-
- Internal Definitions
-
2.1.4 eager-future/threads.lisp
- Dependency
future.lisp (file)
- Parent
eager-future (system)
- Location
threads.lisp
- Exported Definitions
-
- Internal Definitions
-
2.1.5 eager-future/eager-future.lisp
- Dependency
threads.lisp (file)
- Parent
eager-future (system)
- Location
eager-future.lisp
- Exported Definitions
-
3 Packages
Packages are listed by definition order.
3.1 eager-future
- Source
package.lisp (file)
- Use List
- bordeaux-threads
- common-lisp
- Exported Definitions
-
- Internal Definitions
-
4 Definitions
Definitions are sorted by export status, category, package, and then by
lexicographic order.
4.1 Exported definitions
4.1.1 Special variables
- Special Variable: *thread-pool*
-
- Package
eager-future
- Source
threads.lisp (file)
4.1.2 Macros
- Macro: pexec &body BODY
-
- Package
eager-future
- Source
eager-future.lisp (file)
- Macro: plet (&rest BINDINGS) &body BODY
-
- Package
eager-future
- Source
eager-future.lisp (file)
4.1.3 Functions
- Function: pcall THUNK
-
- Package
eager-future
- Source
eager-future.lisp (file)
- Function: ready-to-yield? FUTURE
-
- Package
eager-future
- Source
future.lisp (file)
- Function: select &rest FUTURES
-
Returns the first future that is ready to yield.
- Package
eager-future
- Source
future.lisp (file)
- Function: yield FUTURE
-
Block until future is ready to yield. If the future yielded an
error, it is re-raised as an EXECUTION-ERROR, otherwise the values
yielded by the future are returned.
- Package
eager-future
- Source
future.lisp (file)
4.1.4 Generic functions
- Generic Function: execution-error OBJECT
-
- Package
eager-future
- Methods
- Method: execution-error (FUTURE future)
-
automatically generated reader method
- Source
future.lisp (file)
- Generic Function: execution-error-cause CONDITION
-
- Package
eager-future
- Methods
- Method: execution-error-cause (CONDITION execution-error)
-
- Source
future.lisp (file)
- Generic Function: thread-limit OBJECT
-
- Generic Function: (setf thread-limit) NEW-VALUE OBJECT
-
- Package
eager-future
- Methods
- Method: thread-limit (THREAD-POOL thread-pool)
-
automatically generated reader method
- Source
threads.lisp (file)
- Method: (setf thread-limit) NEW-VALUE (THREAD-POOL thread-pool)
-
automatically generated writer method
- Source
threads.lisp (file)
4.1.5 Conditions
- Condition: execution-error ()
-
- Package
eager-future
- Source
future.lisp (file)
- Direct superclasses
error (condition)
- Direct methods
-
- Direct slots
- Slot: cause
-
- Initargs
:cause
- Readers
execution-error-cause (generic function)
4.1.6 Classes
- Class: fixed-fifo-thread-pool ()
-
- Package
eager-future
- Source
threads.lisp (file)
- Direct superclasses
thread-pool (class)
- Direct methods
assign-task (method)
- Class: future ()
-
- Package
eager-future
- Source
future.lisp (file)
- Direct superclasses
standard-object (class)
- Direct methods
-
- Direct slots
- Slot: lock
-
- Initform
(bordeaux-threads:make-lock "future lock")
- Readers
lock (generic function)
- Slot: done?
-
- Readers
done? (generic function)
- Writers
(setf done?) (generic function)
- Slot: execution-error
-
- Readers
execution-error (generic function)
- Slot: values-yielded
-
- Readers
values-yielded (generic function)
- Slot: wait-list
-
- Readers
wait-list (generic function)
- Writers
(setf wait-list) (generic function)
- Class: thread-pool ()
-
- Package
eager-future
- Source
threads.lisp (file)
- Direct superclasses
standard-object (class)
- Direct subclasses
fixed-fifo-thread-pool (class)
- Direct methods
-
- Direct slots
- Slot: threads
-
- Readers
threads (generic function)
- Writers
(setf threads) (generic function)
- Slot: free-thread-counter
-
- Initform
0
- Readers
free-thread-counter (generic function)
- Writers
(setf free-thread-counter) (generic function)
- Slot: thread-limit
-
- Readers
thread-limit (generic function)
- Writers
(setf thread-limit) (generic function)
- Slot: lock
-
- Initform
(bordeaux-threads:make-lock "thread pool lock")
- Readers
lock (generic function)
- Slot: leader-notifier
-
- Initform
(bordeaux-threads:make-condition-variable)
- Readers
leader-notifier (generic function)
- Slot: tasks
-
- Readers
tasks (generic function)
- Writers
(setf tasks) (generic function)
4.2 Internal definitions
4.2.1 Functions
- Function: make-task THUNK FUTURE
-
- Package
eager-future
- Source
future.lisp (file)
- Function: new-worker-thread THREAD-POOL TASK
-
- Package
eager-future
- Source
threads.lisp (file)
4.2.2 Generic functions
- Generic Function: assign-task TASK THREAD-POOL
-
- Package
eager-future
- Methods
- Method: assign-task TASK (THREAD-POOL fixed-fifo-thread-pool)
-
- Source
threads.lisp (file)
- Method: assign-task TASK (THREAD-POOL thread-pool)
-
- Source
threads.lisp (file)
- Method: assign-task TASK (THREAD-POOL thread-pool) around
-
- Source
threads.lisp (file)
- Generic Function: done? OBJECT
-
- Generic Function: (setf done?) NEW-VALUE OBJECT
-
- Package
eager-future
- Methods
- Method: done? (FUTURE future)
-
automatically generated reader method
- Source
future.lisp (file)
- Method: (setf done?) NEW-VALUE (FUTURE future)
-
automatically generated writer method
- Source
future.lisp (file)
- Generic Function: free-thread-counter OBJECT
-
- Generic Function: (setf free-thread-counter) NEW-VALUE OBJECT
-
- Package
eager-future
- Methods
- Method: free-thread-counter (THREAD-POOL thread-pool)
-
automatically generated reader method
- Source
threads.lisp (file)
- Method: (setf free-thread-counter) NEW-VALUE (THREAD-POOL thread-pool)
-
automatically generated writer method
- Source
threads.lisp (file)
- Generic Function: leader-notifier OBJECT
-
- Package
eager-future
- Methods
- Method: leader-notifier (THREAD-POOL thread-pool)
-
automatically generated reader method
- Source
threads.lisp (file)
- Generic Function: tasks OBJECT
-
- Generic Function: (setf tasks) NEW-VALUE OBJECT
-
- Package
eager-future
- Methods
- Method: tasks (THREAD-POOL thread-pool)
-
automatically generated reader method
- Source
threads.lisp (file)
- Method: (setf tasks) NEW-VALUE (THREAD-POOL thread-pool)
-
automatically generated writer method
- Source
threads.lisp (file)
- Generic Function: threads OBJECT
-
- Generic Function: (setf threads) NEW-VALUE OBJECT
-
- Package
eager-future
- Methods
- Method: threads (THREAD-POOL thread-pool)
-
automatically generated reader method
- Source
threads.lisp (file)
- Method: (setf threads) NEW-VALUE (THREAD-POOL thread-pool)
-
automatically generated writer method
- Source
threads.lisp (file)
- Generic Function: values-yielded OBJECT
-
- Package
eager-future
- Methods
- Method: values-yielded (FUTURE future)
-
automatically generated reader method
- Source
future.lisp (file)
- Generic Function: wait-list OBJECT
-
- Generic Function: (setf wait-list) NEW-VALUE OBJECT
-
- Package
eager-future
- Methods
- Method: wait-list (FUTURE future)
-
automatically generated reader method
- Source
future.lisp (file)
- Method: (setf wait-list) NEW-VALUE (FUTURE future)
-
automatically generated writer method
- Source
future.lisp (file)
Appendix A Indexes
A.1 Concepts
| Index Entry | | Section |
|
E | | |
| eager-future.asd: | | The eager-future․asd file |
| eager-future/eager-future.lisp: | | The eager-future/eager-future․lisp file |
| eager-future/future.lisp: | | The eager-future/future․lisp file |
| eager-future/package.lisp: | | The eager-future/package․lisp file |
| eager-future/threads.lisp: | | The eager-future/threads․lisp file |
|
F | | |
| File, Lisp, eager-future.asd: | | The eager-future․asd file |
| File, Lisp, eager-future/eager-future.lisp: | | The eager-future/eager-future․lisp file |
| File, Lisp, eager-future/future.lisp: | | The eager-future/future․lisp file |
| File, Lisp, eager-future/package.lisp: | | The eager-future/package․lisp file |
| File, Lisp, eager-future/threads.lisp: | | The eager-future/threads․lisp file |
|
L | | |
| Lisp File, eager-future.asd: | | The eager-future․asd file |
| Lisp File, eager-future/eager-future.lisp: | | The eager-future/eager-future․lisp file |
| Lisp File, eager-future/future.lisp: | | The eager-future/future․lisp file |
| Lisp File, eager-future/package.lisp: | | The eager-future/package․lisp file |
| Lisp File, eager-future/threads.lisp: | | The eager-future/threads․lisp file |
|
A.2 Functions
| Index Entry | | Section |
|
( | | |
| (setf done?) : | | Internal generic functions |
| (setf done?) : | | Internal generic functions |
| (setf free-thread-counter) : | | Internal generic functions |
| (setf free-thread-counter) : | | Internal generic functions |
| (setf tasks) : | | Internal generic functions |
| (setf tasks) : | | Internal generic functions |
| (setf thread-limit) : | | Exported generic functions |
| (setf thread-limit) : | | Exported generic functions |
| (setf threads) : | | Internal generic functions |
| (setf threads) : | | Internal generic functions |
| (setf wait-list) : | | Internal generic functions |
| (setf wait-list) : | | Internal generic functions |
|
A | | |
| assign-task : | | Internal generic functions |
| assign-task : | | Internal generic functions |
| assign-task : | | Internal generic functions |
| assign-task : | | Internal generic functions |
|
D | | |
| done? : | | Internal generic functions |
| done? : | | Internal generic functions |
|
E | | |
| execution-error : | | Exported generic functions |
| execution-error : | | Exported generic functions |
| execution-error-cause : | | Exported generic functions |
| execution-error-cause : | | Exported generic functions |
|
F | | |
| free-thread-counter : | | Internal generic functions |
| free-thread-counter : | | Internal generic functions |
| Function, make-task : | | Internal functions |
| Function, new-worker-thread : | | Internal functions |
| Function, pcall : | | Exported functions |
| Function, ready-to-yield? : | | Exported functions |
| Function, select : | | Exported functions |
| Function, yield : | | Exported functions |
|
G | | |
| Generic Function, (setf done?) : | | Internal generic functions |
| Generic Function, (setf free-thread-counter) : | | Internal generic functions |
| Generic Function, (setf tasks) : | | Internal generic functions |
| Generic Function, (setf thread-limit) : | | Exported generic functions |
| Generic Function, (setf threads) : | | Internal generic functions |
| Generic Function, (setf wait-list) : | | Internal generic functions |
| Generic Function, assign-task : | | Internal generic functions |
| Generic Function, done? : | | Internal generic functions |
| Generic Function, execution-error : | | Exported generic functions |
| Generic Function, execution-error-cause : | | Exported generic functions |
| Generic Function, free-thread-counter : | | Internal generic functions |
| Generic Function, leader-notifier : | | Internal generic functions |
| Generic Function, tasks : | | Internal generic functions |
| Generic Function, thread-limit : | | Exported generic functions |
| Generic Function, threads : | | Internal generic functions |
| Generic Function, values-yielded : | | Internal generic functions |
| Generic Function, wait-list : | | Internal generic functions |
|
L | | |
| leader-notifier : | | Internal generic functions |
| leader-notifier : | | Internal generic functions |
|
M | | |
| Macro, pexec : | | Exported macros |
| Macro, plet : | | Exported macros |
| make-task : | | Internal functions |
| Method, (setf done?) : | | Internal generic functions |
| Method, (setf free-thread-counter) : | | Internal generic functions |
| Method, (setf tasks) : | | Internal generic functions |
| Method, (setf thread-limit) : | | Exported generic functions |
| Method, (setf threads) : | | Internal generic functions |
| Method, (setf wait-list) : | | Internal generic functions |
| Method, assign-task : | | Internal generic functions |
| Method, assign-task : | | Internal generic functions |
| Method, assign-task : | | Internal generic functions |
| Method, done? : | | Internal generic functions |
| Method, execution-error : | | Exported generic functions |
| Method, execution-error-cause : | | Exported generic functions |
| Method, free-thread-counter : | | Internal generic functions |
| Method, leader-notifier : | | Internal generic functions |
| Method, tasks : | | Internal generic functions |
| Method, thread-limit : | | Exported generic functions |
| Method, threads : | | Internal generic functions |
| Method, values-yielded : | | Internal generic functions |
| Method, wait-list : | | Internal generic functions |
|
N | | |
| new-worker-thread : | | Internal functions |
|
P | | |
| pcall : | | Exported functions |
| pexec : | | Exported macros |
| plet : | | Exported macros |
|
R | | |
| ready-to-yield? : | | Exported functions |
|
S | | |
| select : | | Exported functions |
|
T | | |
| tasks : | | Internal generic functions |
| tasks : | | Internal generic functions |
| thread-limit : | | Exported generic functions |
| thread-limit : | | Exported generic functions |
| threads : | | Internal generic functions |
| threads : | | Internal generic functions |
|
V | | |
| values-yielded : | | Internal generic functions |
| values-yielded : | | Internal generic functions |
|
W | | |
| wait-list : | | Internal generic functions |
| wait-list : | | Internal generic functions |
|
Y | | |
| yield : | | Exported functions |
|
A.3 Variables
| Index Entry | | Section |
|
* | | |
| *thread-pool* : | | Exported special variables |
|
C | | |
| cause : | | Exported conditions |
|
D | | |
| done? : | | Exported classes |
|
E | | |
| execution-error : | | Exported classes |
|
F | | |
| free-thread-counter : | | Exported classes |
|
L | | |
| leader-notifier : | | Exported classes |
| lock : | | Exported classes |
| lock : | | Exported classes |
|
S | | |
| Slot, cause : | | Exported conditions |
| Slot, done? : | | Exported classes |
| Slot, execution-error : | | Exported classes |
| Slot, free-thread-counter : | | Exported classes |
| Slot, leader-notifier : | | Exported classes |
| Slot, lock : | | Exported classes |
| Slot, lock : | | Exported classes |
| Slot, tasks : | | Exported classes |
| Slot, thread-limit : | | Exported classes |
| Slot, threads : | | Exported classes |
| Slot, values-yielded : | | Exported classes |
| Slot, wait-list : | | Exported classes |
| Special Variable, *thread-pool* : | | Exported special variables |
|
T | | |
| tasks : | | Exported classes |
| thread-limit : | | Exported classes |
| threads : | | Exported classes |
|
V | | |
| values-yielded : | | Exported classes |
|
W | | |
| wait-list : | | Exported classes |
|
A.4 Data types