commander/support
0.1.0Table of Contents
System Information
Definition Index
-
ORG.SHIRAKUMO.COMMANDER.SUPPORT
No documentation provided.-
EXTERNAL SPECIAL-VARIABLE *DEBUG*
No documentation provided. -
EXTERNAL SPECIAL-VARIABLE *INFO*
No documentation provided. -
EXTERNAL CLASS CLIENT
No documentation provided. -
EXTERNAL CLASS CLIENT-STREAM
No documentation provided. -
EXTERNAL CLASS NAMED
No documentation provided. -
EXTERNAL CLASS THREADED
No documentation provided. -
EXTERNAL CONDITION QUERY-FAILURE
No documentation provided. -
EXTERNAL STRUCTURE MINIQUEUE
No documentation provided. -
EXTERNAL FUNCTION DBG
- FORMAT
- &REST
- ARGS
Write to the debug output. See *DEBUG*
-
EXTERNAL FUNCTION MAKE-IDENTIFIER
Return a random, 4-character identifier string.
-
EXTERNAL FUNCTION MAKE-MINIQUEUE
Create a new miniqueue instance. See MINIQUEUE (type)
-
EXTERNAL FUNCTION MAYBE-INVOKE-DEBUGGER
- CONDITION
Will call INVOKE-DEBUGGER if *DEBUGGER* is set.
-
EXTERNAL FUNCTION MINIQUEUE-FIND-IF
- TEST
- MINIQUEUE
- &KEY
- TIMEOUT
- DEFAULT
Return the next element in the queue matching a test and remove it. TEST should be a function of one argument, the value to check, which returns true if the value is considered to match the find. If no matching value is in the queue, the call blocks for up to TIMEOUT seconds, or forever if TIMEOUT is NIL. Two values are returned: the value that was removed from the queue, or DEFAULT if none, and a boolean that indicates whether a value was removed from the queue or not. See MINIQUEUE-WAIT See MINIQUEUE (type)
-
EXTERNAL FUNCTION MINIQUEUE-LENGTH
- INSTANCE
Return the number of objects currently in the queue. This is thread-safe. See MINIQUEUE (type)
-
EXTERNAL FUNCTION (SETF MINIQUEUE-LENGTH)
- VALUE
- INSTANCE
No documentation provided. -
EXTERNAL FUNCTION MINIQUEUE-POP
- MINIQUEUE
- &OPTIONAL
- DEFAULT
Return the next element in the queue and remove it. If the queue is empty, DEFAULT is returned. This is thread-safe. See MINIQUEUE (type)
-
EXTERNAL FUNCTION MINIQUEUE-PUSH
- VALUE
- MINIQUEUE
Add a new value to the end of the queue. See MINIQUEUE (type)
-
EXTERNAL FUNCTION MINIQUEUE-WAIT
- MINIQUEUE
- &KEY
- TIMEOUT
Return the next element in the queue and remove it, or wait until there is one. If the queue is empty, the call blocks for up to TIMEOUT seconds, or forever if TIMEOUT is NIL. Two values are returned: the value that was removed from the queue, if any, and a boolean that indicates whether a value was removed from the queue or not. This is thread-safe. See MINIQUEUE-FIND-IF See MINIQUEUE (type)
-
EXTERNAL FUNCTION NOTE
- FORMAT
- &REST
- ARGS
Note the object to the debug output and return it again. See DBG
-
EXTERNAL FUNCTION QUERY-UNWRAP
- HANDLER
- COMMAND
- &REST
- ARGS
Convenience function to call UNWRAP-MESSAGE on QUERY. See QUERY See UNWRAP-MESSAGE
-
EXTERNAL FUNCTION UNWRAP-MESSAGE
- RESPONSE
Unpacks the reply message. In case of a failure, a QUERY-FAILURE is signalled. In case of a return, its values are returned. In case of an ok, T is returned. See QUERY-FAILURE (type) See V1:FAILURE See V1:RETURN See V1:OK
-
EXTERNAL GENERIC-FUNCTION ALIVE-P
- THREADED
Returns true if the threaded's thread is currently running. See START See STOP See THREADED (type)
-
EXTERNAL GENERIC-FUNCTION CLIENT-STREAM
- OBJECT
A stream that relays stream operations to the client via messages. This is a bidirectional character stream. By default this stream is *not* buffered, meaning any stream operation will result in a query to the client to perform the operation. Especially with remote clients and character-based operations this can be exceedingly slow. See CLIENT See PURPOSE See MAKE-CLIENT-STREAM See BUFFERING
-
EXTERNAL GENERIC-FUNCTION CONNECTED-P
- CLIENT
Returns true if the client is still connected. Note that this does not guarantee that a write or read on the client's stream will succeed. See CLIENT (type)
-
EXTERNAL GENERIC-FUNCTION MESSAGE
- CONDITION
The failure message associated with the condition. See QUERY-FAILURE (type)
-
EXTERNAL GENERIC-FUNCTION NAME
- OBJECT
Returns the name of the object. See NAMED (type)
-
EXTERNAL GENERIC-FUNCTION QUERY
- CLIENT
- MESSAGE
- &REST
- ARGS
Send a query and block until a reply is received. Once a reply has been received, that message is returned. If the reply never arrives (because the client is stopped, its stream breaks, or some other error), then NIL is returned instead. See SEND! See CLIENT (type)
-
EXTERNAL GENERIC-FUNCTION RECEIVE
- CLIENT
Receives a message from the client's stream. Returns NIL if the receiving or decoding fails. See ORG.SHIRAKUMO.COMMANDER.PROTOCOL:MESSAGE (type) See CLIENT (type)
-
EXTERNAL GENERIC-FUNCTION REMOTE-EVAL
- CLIENT
- FORM
- &KEY
- PACKAGE
- &ALLOW-OTHER-KEYS
Runs the FORM on the remote server the CLIENT is connected to. Note that FORM must be a Lisp form which can be turned to a string representation via PRIN1. Further, the code will be evaluated in the given package on the server side. If the package is NIL, the *PACKAGE* will be whatever it is on the server side already. Returns whatever values are returned on the server side. See CLIENT (type) See WITH-REMOTE-EVAL
-
EXTERNAL GENERIC-FUNCTION REPLY-TABLE
- OBJECT
Returns a hash table to associate message IDs to receiving threads. See CLIENT (type)
-
EXTERNAL GENERIC-FUNCTION REPLY-TO
- CONDITION
The ID of the message to which this failure relates. See QUERY-FAILURE (type)
-
EXTERNAL GENERIC-FUNCTION RUN
- THREADED
The function to run within the THREADED's thread. Within primary methods of RUN, the threaded's THREAD is set, and the STOP restart is active. See THREADED (type)
-
EXTERNAL GENERIC-FUNCTION SEND
- CLIENT
- MESSAGE
- &REST
- ARGS
Sends a message over the client's stream. MESSAGE may either be a PROTO:MESSAGE instance, in which case ARGS are ignored, or a symbol naming a constructor function to which ARGS are passed before SENDing it out. While writing the message to the stream, the WRITE-LOCK is acquired to ensure no interleaved writes occur. Unlike SEND!, this function does not flush the underlying stream. See WRITE-LOCK See CLIENT (type) See SEND
-
EXTERNAL GENERIC-FUNCTION SEND!
- CLIENT
- MESSAGE
- &REST
- ARGS
Sends a message over the client's stream immediately. Like SEND, but flushes the stream. See SEND See CLIENT (type)
-
EXTERNAL GENERIC-FUNCTION SOCKET
- OBJECT
Returns the socket of the server, if any. See SERVER (type)
-
EXTERNAL GENERIC-FUNCTION START
- THREADED
Starts the threaded if it is not yet alive. Upon return, ALIVE-P should be true. See THREADED (type) See ALIVE-P
-
EXTERNAL GENERIC-FUNCTION STOP
- THREADED
Stops the threaded if it is currently alive. If this is executed within the thread managed by the threaded, then the STOP restart is invoked. Otherwise if the thread is alive, the STOP restart is invoked within it. After calling this function, ALIVE-P should be false. See THREADED (type) See ALIVE-P
-
EXTERNAL GENERIC-FUNCTION THREAD
- OBJECT
The thread that the object manages, if any. See THREADED (type) See ALIVE-P
-
EXTERNAL GENERIC-FUNCTION (SETF THREAD)
- NEW-VALUE
- OBJECT
No documentation provided. -
EXTERNAL GENERIC-FUNCTION VERSION
- OBJECT
Returns the protocol version the client uses to communicate. See ORG.SHIRAKUMO.COMMANDER.PROTOCOL:VERSION See CLIENT (type)
-
EXTERNAL GENERIC-FUNCTION WRITE-LOCK
- OBJECT
Returns the lock used to protect against write collisions on the stream. See CLIENT (type)
-
EXTERNAL MACRO WITH-REMOTE-EVAL
- CLIENT
- &KEY
- PACKAGE
- &BODY
- BODY
No documentation provided. -
EXTERNAL SOURCE-TRANSFORM MINIQUEUE-LENGTH
No documentation provided. -
EXTERNAL SOURCE-TRANSFORM (SETF MINIQUEUE-LENGTH)
No documentation provided.
-