This is the swank-client Reference Manual, version 1.7, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 08 19:40:45 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
swank-client
Client side of the Swank protocol.
Robert Brown <robert.brown@gmail.com>
GPL version 2. See the copyright messages in individual files.
An implementation of the client side of Slime’s Swank debugging protocol.
1.7
bordeaux-threads
(system).
com.google.base
(system).
swank
(system).
usocket
(system).
package.lisp
(file).
swank-client.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
swank-client/swank-client.lisp
package.lisp
(file).
swank-client
(system).
slime-close
(function).
slime-connect
(function).
slime-eval
(function).
slime-eval-async
(function).
slime-migrate-evals
(function).
slime-network-error
(condition).
slime-pending-evals-p
(function).
swank-connection
(class).
with-slime-connection
(macro).
*connections-lock*
(special variable).
*io-package*
(special variable).
*open-connections*
(special variable).
*thread-offset*
(special variable).
+abort+
(constant).
+maximum-thread-count+
(constant).
add-open-connection
(function).
connection-lock
(reader method).
continuation-counter
(reader method).
(setf continuation-counter)
(writer method).
destructure-case
(macro).
find-connection-for-thread-id
(function).
forward-event-to-worker
(function).
host-name
(reader method).
port
(reader method).
port
(type).
remove-open-connection
(function).
rex-continuations
(reader method).
(setf rex-continuations)
(writer method).
send-to-emacs
(function).
server-thread-id
(function).
slime-dispatch-event
(function).
slime-dispatch-events
(function).
slime-net-connect
(function).
slime-net-encode-length
(function).
slime-net-read
(function).
slime-net-send
(function).
slime-rex
(macro).
slime-secret
(function).
slime-send
(function).
socket-keep-alive
(function).
state
(reader method).
(setf state)
(writer method).
thread-offset
(reader method).
usocket
(reader method).
Packages are listed by definition order.
swank-client
A client interface to Swank servers.
common-lisp
.
slime-close
(function).
slime-connect
(function).
slime-eval
(function).
slime-eval-async
(function).
slime-migrate-evals
(function).
slime-network-error
(condition).
slime-pending-evals-p
(function).
swank-connection
(class).
with-slime-connection
(macro).
*connections-lock*
(special variable).
*io-package*
(special variable).
*open-connections*
(special variable).
*thread-offset*
(special variable).
+abort+
(constant).
+maximum-thread-count+
(constant).
add-open-connection
(function).
connection-lock
(generic reader).
continuation-counter
(generic reader).
(setf continuation-counter)
(generic writer).
destructure-case
(macro).
find-connection-for-thread-id
(function).
forward-event-to-worker
(function).
host-name
(generic reader).
port
(generic reader).
port
(type).
remove-open-connection
(function).
rex-continuations
(generic reader).
(setf rex-continuations)
(generic writer).
send-to-emacs
(function).
server-thread-id
(function).
slime-dispatch-event
(function).
slime-dispatch-events
(function).
slime-net-connect
(function).
slime-net-encode-length
(function).
slime-net-read
(function).
slime-net-send
(function).
slime-rex
(macro).
slime-secret
(function).
slime-send
(function).
socket-keep-alive
(function).
state
(generic reader).
(setf state)
(generic writer).
thread-offset
(generic reader).
usocket
(generic reader).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Wraps BODY in a LET form where VARIABLE is bound to the value returned by (SLIME-CONNECT HOST-NAME PORT CONNECTION-CLOSED-HOOK). Arranges for the Swank connection to be closed when control exits BODY.
Closes CONNECTION to a Swank server.
Connects to the Swank server running on HOST-NAME that is listening on PORT. Returns a SWANK-CONNECTION if the connection attempt is successful. Otherwise, returns NIL. May signal SLIME-NETWORK-ERROR if the user has a Slime secret file and there are network problems sending its contents to the remote Swank server. If provided, function CONNECTION-CLOSED-HOOK is called when the connection is closed.
Sends SEXP over CONNECTION to a Swank server for evaluation and waits for the result. When the result is received, it is returned. Signals SLIME-NETWORK-ERROR when there are network problems sending SEXP.
Sends SEXP over CONNECTION to a Swank server for evaluation, then immediately returns. Some time later, after the evaluation is finished, CONTINUATION is called with the result as argument. Signals SLIME-NETWORK-ERROR when there are network problems sending SEXP.
Evaluates on NEW-CONNECTION all the work pending on a closed OLD-CONNECTION. Signals SLIME-NETWORK-ERROR when there are network problems.
Returns T if there are outstanding evaluations pending on CONNECTION; otherwise, returns NIL.
Network problem while evaluating a form.
error
.
A connection to a Swank server.
Name of the host where the Swank server is running.
string
(com.google.base:missing-argument)
:host-name
This slot is read-only.
Port number used to make a Swank server connection.
swank-client::port
(com.google.base:missing-argument)
:port
port
.
This slot is read-only.
USOCKET used to communicate with the Swank server.
usocket:stream-usocket
(com.google.base:missing-argument)
:usocket
This slot is read-only.
All threads for this connection are presented to Emacs with this value added to their thread ID.
(integer 0 *)
(incf swank-client::*thread-offset* swank-client::+maximum-thread-count+)
This slot is read-only.
Used to associate an ID with each evaluated form.
(integer 0 *)
0
List of (ID, continuation) pairs, one for each evaluation in progress. Used to match each returned value with the continuation it should be passed to.
list
(quote nil)
State of the connection, either :ALIVE, :CLOSING, or :DEAD.
(member :alive :closing :dead)
:alive
Lock protecting slots of this connection that are read and written by concurrently running threads.
(bordeaux-threads:make-lock)
This slot is read-only.
Unique object used to signal that a computation was aborted on the server.
Maximum number of threads per Swank connection.
Lock protecting *OPEN-CONNECTIONS*.
A package used by the Swank client code when printing s-expressions, so that symbols in the printed output contain their package names.
List of all open Swank connections.
Counter used to assign each Swank connection a unique range of thread IDs.
Dispatches VALUE to one of PATTERNS. A cross between CASE and DESTRUCTURING-BIND. The pattern syntax is: ((HEAD . ARGS) . BODY). The list of patterns is searched for a HEAD that’s EQ to the car of VALUE. If one is found, BODY is executed with ARGS bound to the corresponding values in the CDR of VALUE.
(slime-rex (VAR ...) (SEXP CONNECTION) CLAUSES ...)
Remote EXecute SEXP.
VARs are a list of saved variables visible in the other forms. Each VAR is
either a symbol or a list (VAR INIT-VALUE).
SEXP is evaluated and the PRIN1-ed version is sent over CONNECTION to a remote
Lisp.
CLAUSES is a list of patterns with same syntax as ‘destructure-case’. The
result of the evaluation of SEXP is dispatched on CLAUSES. The result is either
a sexp of the form (:ok VALUE) or (:abort CONDITION). CLAUSES is executed
asynchronously.
Signals SLIME-NETWORK-ERROR when there are network problems sending SEXP.
Adds CONNECTION to the set of open Swank connections.
Returns the open Swank connection associated with THREAD-ID.
Determines whether an :emacs-rex event is intended for a remote worker Lisp
and if so forwards it. When forwarding is successful, FORWARD-EVENT-TO-WORKER
returns T; otherwise, it returns NIL.
FORWARD-EVENT-TO-WORKER is called by code in Swank Crew’s patch to Slime’s swank.lisp source file. The forwarding it performs is used by Swank Crew to handle debugging of conditions signalled on remote worker Lisps. See swank.lisp-patch in https://github.com/brown/swank-crew.
Removes CONNECTION from the set of open Swank connections.
Sends EVENT to Emacs.
Maps the THREAD-ID in an event that must be forwarded to the thread ID known by the remote Lisp to which it will be sent.
Handles EVENT for a Swank CONNECTION. Signals SLIME-NETWORK-ERROR if there are communications problems.
Reads and dispatches incoming events for a CONNECTION to a Swank server. If provided, function CONNECTION-CLOSED-HOOK is called when CONNECTION is closed.
Establishes a connection to the Swank server listening on PORT of HOST-NAME. Returns a SWANK-CONNECTION when the connection attempt is successful. Otherwise, returns NIL. May signal SLIME-NETWORK-ERROR if the user has a Slime secret file and there are network problems sending its contents to the remote Swank server.
Encodes an integer as a 6-character, 24-bit hex string.
Reads a Swank message from a network CONNECTION to a Swank server. Returns the Swank event or NIL, if there was a problem reading data.
Sends SEXP to a Swank server over USOCKET. The s-expression is read and evaluated by the remote Lisp.
Finds the secret file in the user’s home directory. Returns NIL if the file doesn’t exist; otherwise, returns the first line of the file.
Sends SEXP to a Swank server using CONNECTION. Signals SLIME-NETWORK-ERROR if there are communications problems.
Configures TCP keep alive packets for SOCKET. The socket connection will be considered dead if keep alive packets are lost.
swank-connection
)) ¶Lock protecting slots of this connection that are read and written by concurrently running threads.
swank-connection
)) ¶swank-connection
)) ¶Used to associate an ID with each evaluated form.
swank-connection
)) ¶Name of the host where the Swank server is running.
swank-connection
)) ¶Port number used to make a Swank server connection.
port
.
swank-connection
)) ¶swank-connection
)) ¶List of (ID, continuation) pairs, one for each evaluation in progress. Used to match each returned value with the continuation it should be passed to.
swank-connection
)) ¶swank-connection
)) ¶State of the connection, either :ALIVE, :CLOSING, or :DEAD.
swank-connection
)) ¶All threads for this connection are presented to Emacs with this value added to their thread ID.
swank-connection
)) ¶USOCKET used to communicate with the Swank server.
Jump to: | (
A C D F G H M P R S T U W |
---|
Jump to: | (
A C D F G H M P R S T U W |
---|
Jump to: | *
+
C H P R S T U |
---|
Jump to: | *
+
C H P R S T U |
---|
Jump to: | C F P S T |
---|
Jump to: | C F P S T |
---|