The dexador Reference Manual

This is the dexador Reference Manual, version 0.9.15, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 16:17:20 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 dexador

Yet another HTTP client for Common Lisp

Author

Eitaro Fukamachi

License

MIT

Version

0.9.15

Defsystem Dependency

trivial-features (system).

Dependencies
  • fast-http (system).
  • quri (system).
  • fast-io (system).
  • babel (system).
  • trivial-gray-streams (system).
  • trivial-garbage (system).
  • chunga (system).
  • cl-ppcre (system).
  • cl-cookie (system).
  • trivial-mimes (system).
  • chipz (system).
  • cl-base64 (system).
  • usocket (system).
  • flexi-streams (system)., for feature :windows
  • cl+ssl (system)., for feature (:and (:not :windows) (:not :dexador-no-ssl))
  • bordeaux-threads (system).
  • alexandria (system).
  • uiop (system)., at least version "3.1.1"
Source

dexador.asd.

Child Component

src (module).


3 Modules

Modules are listed depth-first from the system components tree.


3.1 dexador/src

Source

dexador.asd.

Parent Component

dexador (system).

Child Components

3.2 dexador/src/backend

Dependencies
Source

dexador.asd.

Parent Component

src (module).

Child Components

4 Files

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


4.1 Lisp


4.1.1 dexador/dexador.asd

Source

dexador.asd.

Parent Component

dexador (system).

ASDF Systems

dexador.


4.1.2 dexador/src/dexador.lisp

Dependencies
Source

dexador.asd.

Parent Component

src (module).

Packages

dexador.

Public Interface
Internals

retry-request-ntimes (function).


4.1.3 dexador/src/encoding.lisp

Source

dexador.asd.

Parent Component

src (module).

Packages

dexador.encoding.

Public Interface

detect-charset (function).

Internals

4.1.4 dexador/src/connection-cache.lisp

Source

dexador.asd.

Parent Component

src (module).

Packages

dexador.connection-cache.

Public Interface
Internals

4.1.5 dexador/src/decoding-stream.lisp

Source

dexador.asd.

Parent Component

src (module).

Packages

dexador.decoding-stream.

Public Interface
Internals

4.1.6 dexador/src/keep-alive-stream.lisp

Source

dexador.asd.

Parent Component

src (module).

Packages

dexador.keep-alive-stream.

Public Interface
Internals

4.1.7 dexador/src/body.lisp

Dependencies
Source

dexador.asd.

Parent Component

src (module).

Packages

dexador.body.

Public Interface
Internals

content-disposition (function).


4.1.8 dexador/src/error.lisp

Source

dexador.asd.

Parent Component

src (module).

Packages

dexador.error.

Public Interface
Internals

4.1.9 dexador/src/util.lisp

Source

dexador.asd.

Parent Component

src (module).

Packages

dexador.util.

Public Interface
Internals

4.1.10 dexador/src/backend/usocket.lisp

Source

dexador.asd.

Parent Component

backend (module).

Packages

dexador.backend.usocket.

Public Interface
Internals

4.1.11 dexador/src/backend/winhttp.lisp

If Feature

:windows

Source

dexador.asd.

Parent Component

backend (module).


5 Packages

Packages are listed by definition order.


5.1 dexador.keep-alive-stream

Source

keep-alive-stream.lisp.

Use List

common-lisp.

Public Interface
Internals

5.2 dexador.backend.usocket

Source

usocket.lisp.

Nickname

dex.usocket

Use List
Used By List

dexador.

Public Interface
Internals

5.3 dexador.util

Source

util.lisp.

Use List

common-lisp.

Used By List

dexador.backend.usocket.

Public Interface
Internals

5.4 dexador.body

Source

body.lisp.

Use List

common-lisp.

Public Interface
Internals

content-disposition (function).


5.5 dexador.encoding

Source

encoding.lisp.

Use List

common-lisp.

Used By List

dexador.backend.usocket.

Public Interface

detect-charset (function).

Internals

5.6 dexador.decoding-stream

Provides character decoding stream.
Similar to flexi-input-stream, except this uses Babel for decoding.

Source

decoding-stream.lisp.

Use List

common-lisp.

Public Interface
Internals

5.7 dexador

Source

dexador.lisp.

Nickname

dex

Use List
Public Interface
Internals

retry-request-ntimes (function).


5.8 dexador.connection-cache

Source

connection-cache.lisp.

Use List

common-lisp.

Public Interface
Internals

5.9 dexador.error

Source

error.lisp.

Use List

common-lisp.

Used By List

dexador.

Public Interface
Internals

6 Definitions

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


6.1 Public Interface


6.1.1 Special variables

Special Variable: *connection-pool*
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Special Variable: *default-connect-timeout*
Package

dexador.util.

Source

util.lisp.

Special Variable: *default-proxy*

If specified will be used as the default value of PROXY in calls to dexador. Defaults to the value of the environment variable HTTPS_PROXY or HTTP_PROXY if not on Windows.

Package

dexador.util.

Source

util.lisp.

Special Variable: *default-read-timeout*
Package

dexador.util.

Source

util.lisp.

Special Variable: *default-user-agent*
Package

dexador.util.

Source

util.lisp.

Special Variable: *max-active-connections*

Allowed number of active connections to all hosts. If you change this, then call (make-new-connection-pool).

Package

dexador.connection-cache.

Source

connection-cache.lisp.

Special Variable: *not-verify-ssl*
Package

dexador.util.

Source

util.lisp.

Special Variable: *use-connection-pool*
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Special Variable: *verbose*
Package

dexador.util.

Source

util.lisp.

Special Variable: +crlf+
Package

dexador.util.

Source

util.lisp.


6.1.2 Macros

Macro: defun-careful (name lambda-list &body body)
Package

dexador.util.

Source

util.lisp.

Macro: defun-speedy (name lambda-list &body body)
Package

dexador.util.

Source

util.lisp.

Macro: with-header-output ((buffer &optional output) &body body)
Package

dexador.util.

Source

util.lisp.


6.1.3 Compiler macros

Compiler Macro: ascii-string-to-octets (string)
Package

dexador.util.

Source

util.lisp.

Compiler Macro: write-header (name value &optional buffer)
Package

dexador.util.

Source

util.lisp.


6.1.4 Ordinary functions

Function: ascii-string-to-octets (string)
Package

dexador.util.

Source

util.lisp.

Function: clear-connection-pool ()

Remove all elements from the connection pool, calling their eviction-callbacks.

Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: decode-body (content-type body &key default-charset on-close)
Package

dexador.body.

Source

body.lisp.

Function: decompress-body (content-encoding body)
Package

dexador.body.

Source

body.lisp.

Function: delete (uri &rest args &key version headers basic-auth cookie-jar keep-alive use-connection-pool connect-timeout read-timeout force-binary force-string want-stream content ssl-key-file ssl-cert-file ssl-key-password stream verbose proxy insecure ca-path)
Package

dexador.

Source

dexador.lisp.

Function: detect-charset (content-type body)
Package

dexador.encoding.

Source

encoding.lisp.

Function: fetch (uri destination &rest args &key if-exists version headers basic-auth cookie-jar keep-alive use-connection-pool connect-timeout read-timeout max-redirects ssl-key-file ssl-cert-file ssl-key-password stream verbose proxy insecure ca-path)
Package

dexador.

Source

dexador.lisp.

Function: get (uri &rest args &key version headers basic-auth cookie-jar keep-alive use-connection-pool connect-timeout read-timeout max-redirects force-binary force-string want-stream content ssl-key-file ssl-cert-file ssl-key-password stream verbose proxy insecure ca-path)

Make a GET request to URI and return
(values body-or-stream status response-headers uri &optional opaque-socket-stream)

You may pass a real stream in as STREAM if you want us to communicate with the server via it – though if any errors occur, we will open a new connection to the server. If you have a previous OPAQUE-SOCKET-STREAM you can pass that in as STREAM as well and we will re-use that connection.

OPAQUE-SOCKET-STREAM is not returned if USE-CONNECTION-POOL is T, instead we keep track of it and re-use it when needed.

If WANT-STREAM is T, then a STREAM is returned as the first value. You may read this as needed to get the body of the response. If KEEP-ALIVE and USE-CONNECTION-POOL are T, then the stream will be returned to the connection pool when you have read all the data or closed the stream. If KEEP-ALIVE is NIL then you are responsible for closing the stream when done.

If KEEP-ALIVE is T and USE-CONNECTION-POOL is NIL, then the fifth value returned is a stream which you can then pass in again using the STREAM option to re-use the active connection. If you ignore the stream, it will get closed during garbage collection.

If KEEP-ALIVE is T and USE-CONNECTION-POOL is T, then there is no fifth
value (OPAQUE-SOCKET-STREAM) returned, but the active connection to the host/port may be reused in subsequent calls. This removes the need for the caller to keep track of the active socket-stream for subsequent calls.

While CONTENT is allowed in a GET request the results are ill-defined and not advised.

Package

dexador.

Source

dexador.lisp.

Function: head (uri &rest args &key version headers basic-auth cookie-jar connect-timeout read-timeout max-redirects ssl-key-file ssl-cert-file ssl-key-password stream verbose proxy insecure ca-path)
Package

dexador.

Source

dexador.lisp.

Function: http-request-failed (status &key body headers uri method)
Package

dexador.error.

Source

error.lisp.

Function: ignore-and-continue (e)
Package

dexador.backend.usocket.

Source

dexador.lisp.

Function: keep-alive-stream-close-underlying-stream (underlying-stream abort)
Package

dexador.keep-alive-stream.

Source

keep-alive-stream.lisp.

Function: make-connection-pool (&optional max-active-connections)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: make-decoding-stream (stream &key encoding on-close)
Package

dexador.decoding-stream.

Source

decoding-stream.lisp.

Function: make-keep-alive-stream (stream &key end chunked-stream on-close-or-eof)

ON-CLOSE-OR-EOF takes a single parameter, STREAM (the stream passed in here, not the keep-alive-stream), and should handle clean-up of it

Package

dexador.keep-alive-stream.

Source

keep-alive-stream.lisp.

Function: make-random-string (&optional length)
Package

dexador.util.

Source

util.lisp.

Function: multipart-value-content-type (value)
Package

dexador.body.

Source

body.lisp.

Function: patch (uri &rest args &key version content headers basic-auth cookie-jar keep-alive use-connection-pool connect-timeout read-timeout force-binary force-string want-stream ssl-key-file ssl-cert-file ssl-key-password stream verbose proxy insecure ca-path)
Package

dexador.

Source

dexador.lisp.

Function: post (uri &rest args &key version content headers basic-auth cookie-jar keep-alive use-connection-pool connect-timeout read-timeout force-binary force-string want-stream ssl-key-file ssl-cert-file ssl-key-password stream verbose proxy insecure ca-path)
Package

dexador.

Source

dexador.lisp.

Function: push-connection (host-port stream &optional eviction-callback)

Add STREAM back to connection pool with key HOST-PORT. EVICTION-CALLBACK must be a function of a single parameter, and will be called with STREAM if the HOST-PORT/SOCKET pair is evicted from the connection pool.

Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: put (uri &rest args &key version content headers basic-auth cookie-jar keep-alive use-connection-pool connect-timeout read-timeout force-binary force-string want-stream ssl-key-file ssl-cert-file ssl-key-password stream verbose proxy insecure ca-path)
Package

dexador.

Source

dexador.lisp.

Function: request (uri &rest args &key method version content headers basic-auth cookie-jar connect-timeout read-timeout keep-alive use-connection-pool max-redirects ssl-key-file ssl-cert-file ssl-key-password stream verbose force-binary force-string want-stream proxy insecure ca-path)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: retry-request (times &key interval)
Package

dexador.backend.usocket.

Source

dexador.lisp.

Function: steal-connection (host-port)

Return the STREAM associated with key HOST-PORT

Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: write-connect-header (uri version buffer &optional proxy-auth)
Package

dexador.util.

Source

util.lisp.

Function: write-first-line (method uri version &optional buffer)
Package

dexador.util.

Source

util.lisp.

Function: write-header (name value &optional buffer)
Package

dexador.util.

Source

util.lisp.

Function: write-multipart-content (content boundary stream)
Package

dexador.body.

Source

body.lisp.


6.1.5 Generic functions

Generic Reader: keep-alive-stream-stream (object)
Generic Writer: (setf keep-alive-stream-stream) (object)
Package

dexador.keep-alive-stream.

Methods
Reader Method: keep-alive-stream-stream ((keep-alive-stream keep-alive-stream))
Writer Method: (setf keep-alive-stream-stream) ((keep-alive-stream keep-alive-stream))

A stream; when we read END elements from it, we call CLOSE-ACTION on it and set this slot to nil.

Source

keep-alive-stream.lisp.

Target Slot

stream.

Generic Reader: request-method (condition)
Package

dexador.error.

Methods
Reader Method: request-method ((condition http-request-failed))
Source

error.lisp.

Target Slot

method.

Generic Reader: request-uri (condition)
Package

dexador.error.

Methods
Reader Method: request-uri ((condition http-request-failed))
Source

error.lisp.

Target Slot

uri.

Generic Reader: response-body (condition)
Package

dexador.error.

Methods
Reader Method: response-body ((condition http-request-failed))
Source

error.lisp.

Target Slot

body.

Generic Reader: response-headers (condition)
Package

dexador.error.

Methods
Reader Method: response-headers ((condition http-request-failed))
Source

error.lisp.

Target Slot

headers.

Generic Reader: response-status (condition)
Package

dexador.error.

Methods
Reader Method: response-status ((condition http-request-failed))
Source

error.lisp.

Target Slot

status.


6.1.6 Standalone methods

Method: close ((stream keep-alive-stream) &key abort)
Source

keep-alive-stream.lisp.

Method: close ((u usocket-wrapped-stream) &key abort)
Source

usocket.lisp.

Method: close ((stream decoding-stream) &key abort)
Source

decoding-stream.lisp.

Method: initialize-instance :after ((stream decoding-stream) &rest initargs)
Source

decoding-stream.lisp.

Method: open-stream-p ((stream keep-alive-stream))
Source

keep-alive-stream.lisp.

Method: open-stream-p ((u usocket-wrapped-stream))
Source

usocket.lisp.

Method: open-stream-p ((stream decoding-stream))
Source

decoding-stream.lisp.

Method: print-object ((obj lru-pool-elt) str)
Source

connection-cache.lisp.

Method: print-object ((obj lru-pool) str)
Source

connection-cache.lisp.

Method: stream-element-type ((stream keep-alive-stream))
Source

keep-alive-stream.lisp.

Method: stream-element-type ((stream keep-alive-chunked-stream))
Source

keep-alive-stream.lisp.

Method: stream-element-type ((stream decoding-stream))
Source

decoding-stream.lisp.

Method: stream-read-byte ((stream keep-alive-stream))

Return :EOF or byte read. When we hit EOF or finish reading our allowed content, call the close-action on our underlying-stream and return EOF.

Package

sb-gray.

Source

keep-alive-stream.lisp.

Method: stream-read-byte ((stream keep-alive-chunked-stream))

Return :EOF or byte read. When we hit :EOF or finish reading our chunk, call the close-action on our underlying-stream and return :EOF

Package

sb-gray.

Source

keep-alive-stream.lisp.

Method: stream-read-char ((stream decoding-stream))
Package

sb-gray.

Source

decoding-stream.lisp.

Method: stream-read-sequence ((stream keep-alive-stream) sequence start end &key)
Package

trivial-gray-streams.

Source

keep-alive-stream.lisp.

Method: stream-read-sequence ((stream keep-alive-chunked-stream) sequence start end &key)
Package

trivial-gray-streams.

Source

keep-alive-stream.lisp.

Method: stream-unread-char ((stream decoding-stream) char)
Package

sb-gray.

Source

decoding-stream.lisp.


6.1.7 Conditions

Condition: http-request-bad-gateway
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-bad-request
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-conflict
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-expectation-failed
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-failed
Package

dexador.error.

Source

error.lisp.

Direct superclasses

error.

Direct subclasses
Direct methods
Direct slots
Slot: body
Initargs

:body

Readers

response-body.

Writers

This slot is read-only.

Slot: status
Initargs

:status

Readers

response-status.

Writers

This slot is read-only.

Slot: headers
Initargs

:headers

Readers

response-headers.

Writers

This slot is read-only.

Slot: uri
Initargs

:uri

Readers

request-uri.

Writers

This slot is read-only.

Slot: method
Package

common-lisp.

Initargs

:method

Readers

request-method.

Writers

This slot is read-only.

Condition: http-request-forbidden
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-gateway-timeout
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-gone
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-http-version-not-supported
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-internal-server-error
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-length-required
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-method-not-allowed
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-misdirected-request
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-not-acceptable
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-not-found
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-not-implemented
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-payload-too-large
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-payment-required
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-precondition-failed
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-proxy-authentication-required
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-range-not-satisfiable
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-request-timeout
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-service-unavailable
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-too-many-requests
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-unauthorized
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-unsupported-media-type
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-upgrade-required
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: http-request-uri-too-long
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Condition: socks5-proxy-request-failed
Package

dexador.error.

Source

error.lisp.

Direct superclasses

http-request-failed.

Direct slots
Slot: reason
Initargs

:reason


6.1.8 Classes

Class: decoding-stream
Package

dexador.decoding-stream.

Source

decoding-stream.lisp.

Direct superclasses

fundamental-character-input-stream.

Direct methods
Direct slots
Slot: stream
Package

common-lisp.

Type

stream

Initform

(error ":stream is required")

Initargs

:stream

Readers

decoding-stream-stream.

Writers

(setf decoding-stream-stream).

Slot: encoding
Initform

(error ":encoding is required")

Initargs

:encoding

Readers

decoding-stream-encoding.

Writers

(setf decoding-stream-encoding).

Slot: buffer
Type

(simple-array (unsigned-byte 8) (128))

Initform

(make-array dexador.decoding-stream::+buffer-size+ :element-type (quote (unsigned-byte 8)))

Readers

decoding-stream-buffer.

Writers

(setf decoding-stream-buffer).

Slot: buffer-position
Type

fixnum

Initform

dexador.decoding-stream::+buffer-size+

Readers

decoding-stream-buffer-position.

Writers

(setf decoding-stream-buffer-position).

Slot: buffer-end-position
Type

fixnum

Initform

-1

Readers

decoding-stream-buffer-end-position.

Writers

(setf decoding-stream-buffer-end-position).

Slot: last-char
Type

character

Initform

#\nul

Readers

decoding-stream-last-char.

Writers

(setf decoding-stream-last-char).

Slot: last-char-size
Type

fixnum

Initform

0

Readers

decoding-stream-last-char-size.

Writers

(setf decoding-stream-last-char-size).

Slot: on-close
Type

(or null function)

Initargs

:on-close

Class: keep-alive-chunked-stream
Package

dexador.keep-alive-stream.

Source

keep-alive-stream.lisp.

Direct superclasses

keep-alive-stream.

Direct methods
Direct slots
Slot: chunga-stream
Initargs

:chunga-stream

Readers

chunga-stream.

Writers

(setf chunga-stream).

Class: keep-alive-stream
Package

dexador.keep-alive-stream.

Source

keep-alive-stream.lisp.

Direct superclasses

fundamental-input-stream.

Direct subclasses

keep-alive-chunked-stream.

Direct methods
Direct slots
Slot: stream

A stream; when we read END elements from it, we call CLOSE-ACTION on it and set this slot to nil.

Package

common-lisp.

Type

(or null stream)

Initform

(error ":stream is required")

Initargs

:stream

Readers

keep-alive-stream-stream.

Writers

(setf keep-alive-stream-stream).

Slot: end
Initargs

:end

Readers

keep-alive-stream-end.

Writers

(setf keep-alive-stream-end).

Slot: close-action

A (lambda (stream abort)) which will be called with keep-alive-stream-stream when the stream is either closed or we hit end of file or we hit end

Initargs

:on-close-or-eof

Readers

close-action.

Writers

This slot is read-only.


6.1.9 Types

Type: octets (&optional len)
Package

dexador.util.

Source

util.lisp.


6.2 Internals


6.2.1 Constants

Constant: +buffer-size+
Package

dexador.decoding-stream.

Source

decoding-stream.lisp.

Constant: +socks5-connect+
Package

dexador.backend.usocket.

Source

usocket.lisp.

Constant: +socks5-domainname+
Package

dexador.backend.usocket.

Source

usocket.lisp.

Constant: +socks5-ipv4+
Package

dexador.backend.usocket.

Source

usocket.lisp.

Constant: +socks5-ipv6+
Package

dexador.backend.usocket.

Source

usocket.lisp.

Constant: +socks5-no-auth+
Package

dexador.backend.usocket.

Source

usocket.lisp.

Constant: +socks5-reserved+
Package

dexador.backend.usocket.

Source

usocket.lisp.

Constant: +socks5-succeeded+
Package

dexador.backend.usocket.

Source

usocket.lisp.

Constant: +socks5-version+
Package

dexador.backend.usocket.

Source

usocket.lisp.


6.2.2 Special variables

Special Variable: *ca-bundle*
Package

dexador.backend.usocket.

Source

usocket.lisp.

Special Variable: *careful-declaration*
Package

dexador.util.

Source

util.lisp.

Special Variable: *dexador-version*
Package

dexador.util.

Source

util.lisp.

Special Variable: *header-buffer*
Package

dexador.util.

Source

util.lisp.

Special Variable: *request-failed-error*
Package

dexador.error.

Source

error.lisp.

Special Variable: *speedy-declaration*
Package

dexador.util.

Source

util.lisp.

Special Variable: +empty-body+
Package

dexador.backend.usocket.

Source

usocket.lisp.


6.2.3 Macros

Macro: define-request-failed-condition (name code)
Package

dexador.error.

Source

error.lisp.

Macro: with-lock (lock &body body)
Package

dexador.connection-cache.

Source

connection-cache.lisp.


6.2.4 Ordinary functions

Function: %ascii-string-to-octets (string)
Package

dexador.util.

Source

util.lisp.

Function: add-to-lru-pool (lru-pool key elt eviction-callback)

Adds ELT to an LRU-POOL with potentially non-unique KEY, potentially evicting another element to make room. EVICTION-CALLBACK will be called with one parameter ELT, when ELT is evicted from the LRU-POOL. ADD-TO-LRU-POOL must be called with LRU-POOL-LOCK held.

If an element was evicted to make space, returns (values evicted-elt eviction-callback t) otherwise nil. The EVICTION-CALLBACK should take one parameter, the evicted element.

Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: build-cookie-headers (uri cookie-jar)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: charset-to-encoding (charset &optional default)
Package

dexador.encoding.

Source

encoding.lisp.

Function: content-disposition (key val)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: content-disposition (key val)
Package

dexador.body.

Source

body.lisp.

Function: convert-body (body content-encoding content-type content-length chunkedp force-binary force-string keep-alive-p on-close)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: copy-lru-pool (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: copy-lru-pool-elt (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: copy-usocket-wrapped-stream (instance)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: detect-charset-from-html (body)

Detect the body’s charset by (roughly) searching meta tags which has "charset" attribute.

Package

dexador.encoding.

Source

encoding.lisp.

Function: ensure-socks5-connected (input output uri http-method)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: evict-tail (lru-pool)

Removes the least recently used element of the LRU-POOL and returns
(values evicted-element eviction-callback t) if there was
an element to remove, otherwise nil. Must be called with LRU-POOL-LOCK held.

Outside the LRU-POOL-LOCK you must call the returned EVICTION-CALLBACK with the EVICTED-ELEMENT.

Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: fill-buffer (stream)
Package

dexador.decoding-stream.

Source

decoding-stream.lisp.

Function: get-from-lru-pool (lru-pool key)

Takes an element from the LRU-POOL matching KEY. Must be called with LRU-POOL-LOCK held. The element is removed from the pool.

Package

dexador.connection-cache.

Source

connection-cache.lisp.

Reader: lru-pool-elt-elt (instance)
Writer: (setf lru-pool-elt-elt) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

elt.

Reader: lru-pool-elt-eviction-callback (instance)
Writer: (setf lru-pool-elt-eviction-callback) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

eviction-callback.

Reader: lru-pool-elt-key (instance)
Writer: (setf lru-pool-elt-key) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

key.

Reader: lru-pool-elt-next (instance)
Writer: (setf lru-pool-elt-next) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

next.

Function: lru-pool-elt-p (object)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Reader: lru-pool-elt-prev (instance)
Writer: (setf lru-pool-elt-prev) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

prev.

Reader: lru-pool-hash-table (instance)
Writer: (setf lru-pool-hash-table) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

hash-table.

Reader: lru-pool-head (instance)
Writer: (setf lru-pool-head) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

head.

Reader: lru-pool-lock (instance)
Writer: (setf lru-pool-lock) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

lock.

Reader: lru-pool-max-elts (instance)
Writer: (setf lru-pool-max-elts) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

max-elts.

Reader: lru-pool-num-elts (instance)
Writer: (setf lru-pool-num-elts) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

num-elts.

Function: lru-pool-p (object)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Reader: lru-pool-tail (instance)
Writer: (setf lru-pool-tail) (instance)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Target Slot

tail.

Function: make-connect-stream (uri version stream &optional proxy-auth)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: make-lru-pool (&key lock hash-table head tail num-elts max-elts)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: make-lru-pool-elt (&key prev next elt key eviction-callback)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: make-new-connection-pool (&optional max-active-connections)
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Function: make-proxy-authorization (uri)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: make-ssl-stream (stream ca-path ssl-key-file ssl-cert-file ssl-key-password hostname insecure)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: make-usocket-wrapped-stream (&key stream)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: maybe-close (stream &optional close-if)

Will close the underlying stream if close-if is T (unless it is already closed). If the stream is already closed or we closed it returns :EOF otherwise NIL.

Package

dexador.keep-alive-stream.

Source

keep-alive-stream.lisp.

Function: multipart-content-length (content boundary)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: needs-to-fill-buffer-p (stream)
Package

dexador.decoding-stream.

Source

decoding-stream.lisp.

Function: parse-content-type (content-type)
Package

dexador.encoding.

Source

encoding.lisp.

Function: print-verbose-data (direction &rest data)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: read-response (stream has-body collect-headers read-body)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: read-until-crlf*2 (stream)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Function: retry-request-ntimes (n &key interval)
Package

dexador.

Source

dexador.lisp.

Function: usocket-wrapped-stream-p (object)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Reader: usocket-wrapped-stream-stream (instance)
Writer: (setf usocket-wrapped-stream-stream) (instance)
Package

dexador.backend.usocket.

Source

usocket.lisp.

Target Slot

stream.

Function: write-header-field (name buffer)
Package

dexador.util.

Source

util.lisp.

Function: write-header-value (value buffer)
Package

dexador.util.

Source

util.lisp.


6.2.5 Generic functions

Generic Reader: chunga-stream (object)
Package

dexador.keep-alive-stream.

Methods
Reader Method: chunga-stream ((keep-alive-chunked-stream keep-alive-chunked-stream))

automatically generated reader method

Source

keep-alive-stream.lisp.

Target Slot

chunga-stream.

Generic Writer: (setf chunga-stream) (object)
Package

dexador.keep-alive-stream.

Methods
Writer Method: (setf chunga-stream) ((keep-alive-chunked-stream keep-alive-chunked-stream))

automatically generated writer method

Source

keep-alive-stream.lisp.

Target Slot

chunga-stream.

Generic Reader: close-action (object)
Package

dexador.keep-alive-stream.

Methods
Reader Method: close-action ((keep-alive-stream keep-alive-stream))

A (lambda (stream abort)) which will be called with keep-alive-stream-stream when the stream is either closed or we hit end of file or we hit end

Source

keep-alive-stream.lisp.

Target Slot

close-action.

Generic Reader: decoding-stream-buffer (object)
Package

dexador.decoding-stream.

Methods
Reader Method: decoding-stream-buffer ((decoding-stream decoding-stream))

automatically generated reader method

Source

decoding-stream.lisp.

Target Slot

buffer.

Generic Writer: (setf decoding-stream-buffer) (object)
Package

dexador.decoding-stream.

Methods
Writer Method: (setf decoding-stream-buffer) ((decoding-stream decoding-stream))

automatically generated writer method

Source

decoding-stream.lisp.

Target Slot

buffer.

Generic Reader: decoding-stream-buffer-end-position (object)
Package

dexador.decoding-stream.

Methods
Reader Method: decoding-stream-buffer-end-position ((decoding-stream decoding-stream))

automatically generated reader method

Source

decoding-stream.lisp.

Target Slot

buffer-end-position.

Generic Writer: (setf decoding-stream-buffer-end-position) (object)
Package

dexador.decoding-stream.

Methods
Writer Method: (setf decoding-stream-buffer-end-position) ((decoding-stream decoding-stream))

automatically generated writer method

Source

decoding-stream.lisp.

Target Slot

buffer-end-position.

Generic Reader: decoding-stream-buffer-position (object)
Package

dexador.decoding-stream.

Methods
Reader Method: decoding-stream-buffer-position ((decoding-stream decoding-stream))

automatically generated reader method

Source

decoding-stream.lisp.

Target Slot

buffer-position.

Generic Writer: (setf decoding-stream-buffer-position) (object)
Package

dexador.decoding-stream.

Methods
Writer Method: (setf decoding-stream-buffer-position) ((decoding-stream decoding-stream))

automatically generated writer method

Source

decoding-stream.lisp.

Target Slot

buffer-position.

Generic Reader: decoding-stream-encoding (object)
Package

dexador.decoding-stream.

Methods
Reader Method: decoding-stream-encoding ((decoding-stream decoding-stream))

automatically generated reader method

Source

decoding-stream.lisp.

Target Slot

encoding.

Generic Writer: (setf decoding-stream-encoding) (object)
Package

dexador.decoding-stream.

Methods
Writer Method: (setf decoding-stream-encoding) ((decoding-stream decoding-stream))

automatically generated writer method

Source

decoding-stream.lisp.

Target Slot

encoding.

Generic Reader: decoding-stream-last-char (object)
Package

dexador.decoding-stream.

Methods
Reader Method: decoding-stream-last-char ((decoding-stream decoding-stream))

automatically generated reader method

Source

decoding-stream.lisp.

Target Slot

last-char.

Generic Writer: (setf decoding-stream-last-char) (object)
Package

dexador.decoding-stream.

Methods
Writer Method: (setf decoding-stream-last-char) ((decoding-stream decoding-stream))

automatically generated writer method

Source

decoding-stream.lisp.

Target Slot

last-char.

Generic Reader: decoding-stream-last-char-size (object)
Package

dexador.decoding-stream.

Methods
Reader Method: decoding-stream-last-char-size ((decoding-stream decoding-stream))

automatically generated reader method

Source

decoding-stream.lisp.

Target Slot

last-char-size.

Generic Writer: (setf decoding-stream-last-char-size) (object)
Package

dexador.decoding-stream.

Methods
Writer Method: (setf decoding-stream-last-char-size) ((decoding-stream decoding-stream))

automatically generated writer method

Source

decoding-stream.lisp.

Target Slot

last-char-size.

Generic Reader: decoding-stream-stream (object)
Package

dexador.decoding-stream.

Methods
Reader Method: decoding-stream-stream ((decoding-stream decoding-stream))

automatically generated reader method

Source

decoding-stream.lisp.

Target Slot

stream.

Generic Writer: (setf decoding-stream-stream) (object)
Package

dexador.decoding-stream.

Methods
Writer Method: (setf decoding-stream-stream) ((decoding-stream decoding-stream))

automatically generated writer method

Source

decoding-stream.lisp.

Target Slot

stream.

Generic Reader: keep-alive-stream-end (object)
Package

dexador.keep-alive-stream.

Methods
Reader Method: keep-alive-stream-end ((keep-alive-stream keep-alive-stream))

automatically generated reader method

Source

keep-alive-stream.lisp.

Target Slot

end.

Generic Writer: (setf keep-alive-stream-end) (object)
Package

dexador.keep-alive-stream.

Methods
Writer Method: (setf keep-alive-stream-end) ((keep-alive-stream keep-alive-stream))

automatically generated writer method

Source

keep-alive-stream.lisp.

Target Slot

end.


6.2.6 Structures

Structure: lru-pool
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: lock
Initform

(bordeaux-threads-2:make-lock :name "connection pool lock")

Readers

lru-pool-lock.

Writers

(setf lru-pool-lock).

Slot: hash-table
Package

common-lisp.

Type

(or null hash-table)

Readers

lru-pool-hash-table.

Writers

(setf lru-pool-hash-table).

Slot: head
Type

(or null dexador.connection-cache::lru-pool-elt)

Readers

lru-pool-head.

Writers

(setf lru-pool-head).

Slot: tail
Type

(or null dexador.connection-cache::lru-pool-elt)

Readers

lru-pool-tail.

Writers

(setf lru-pool-tail).

Slot: num-elts
Type

fixnum

Initform

0

Readers

lru-pool-num-elts.

Writers

(setf lru-pool-num-elts).

Slot: max-elts
Type

fixnum

Initform

8

Readers

lru-pool-max-elts.

Writers

(setf lru-pool-max-elts).

Structure: lru-pool-elt
Package

dexador.connection-cache.

Source

connection-cache.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: prev
Type

(or null dexador.connection-cache::lru-pool-elt)

Readers

lru-pool-elt-prev.

Writers

(setf lru-pool-elt-prev).

Slot: next
Type

(or null dexador.connection-cache::lru-pool-elt)

Readers

lru-pool-elt-next.

Writers

(setf lru-pool-elt-next).

Slot: elt
Package

common-lisp.

Readers

lru-pool-elt-elt.

Writers

(setf lru-pool-elt-elt).

Slot: key
Readers

lru-pool-elt-key.

Writers

(setf lru-pool-elt-key).

Slot: eviction-callback
Type

(or null function)

Readers

lru-pool-elt-eviction-callback.

Writers

(setf lru-pool-elt-eviction-callback).

Structure: usocket-wrapped-stream
Package

dexador.backend.usocket.

Source

usocket.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: stream
Package

common-lisp.

Readers

usocket-wrapped-stream-stream.

Writers

(setf usocket-wrapped-stream-stream).


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
A   B   C   D   E   F   G   H   I   K   L   M   N   O   P   R   S   U   W  
Index Entry  Section

%
%ascii-string-to-octets: Private ordinary functions

(
(setf chunga-stream): Private generic functions
(setf chunga-stream): Private generic functions
(setf decoding-stream-buffer): Private generic functions
(setf decoding-stream-buffer): Private generic functions
(setf decoding-stream-buffer-end-position): Private generic functions
(setf decoding-stream-buffer-end-position): Private generic functions
(setf decoding-stream-buffer-position): Private generic functions
(setf decoding-stream-buffer-position): Private generic functions
(setf decoding-stream-encoding): Private generic functions
(setf decoding-stream-encoding): Private generic functions
(setf decoding-stream-last-char): Private generic functions
(setf decoding-stream-last-char): Private generic functions
(setf decoding-stream-last-char-size): Private generic functions
(setf decoding-stream-last-char-size): Private generic functions
(setf decoding-stream-stream): Private generic functions
(setf decoding-stream-stream): Private generic functions
(setf keep-alive-stream-end): Private generic functions
(setf keep-alive-stream-end): Private generic functions
(setf keep-alive-stream-stream): Public generic functions
(setf keep-alive-stream-stream): Public generic functions
(setf lru-pool-elt-elt): Private ordinary functions
(setf lru-pool-elt-eviction-callback): Private ordinary functions
(setf lru-pool-elt-key): Private ordinary functions
(setf lru-pool-elt-next): Private ordinary functions
(setf lru-pool-elt-prev): Private ordinary functions
(setf lru-pool-hash-table): Private ordinary functions
(setf lru-pool-head): Private ordinary functions
(setf lru-pool-lock): Private ordinary functions
(setf lru-pool-max-elts): Private ordinary functions
(setf lru-pool-num-elts): Private ordinary functions
(setf lru-pool-tail): Private ordinary functions
(setf usocket-wrapped-stream-stream): Private ordinary functions

A
add-to-lru-pool: Private ordinary functions
ascii-string-to-octets: Public compiler macros
ascii-string-to-octets: Public ordinary functions

B
build-cookie-headers: Private ordinary functions

C
charset-to-encoding: Private ordinary functions
chunga-stream: Private generic functions
chunga-stream: Private generic functions
clear-connection-pool: Public ordinary functions
close: Public standalone methods
close: Public standalone methods
close: Public standalone methods
close-action: Private generic functions
close-action: Private generic functions
Compiler Macro, ascii-string-to-octets: Public compiler macros
Compiler Macro, write-header: Public compiler macros
content-disposition: Private ordinary functions
content-disposition: Private ordinary functions
convert-body: Private ordinary functions
copy-lru-pool: Private ordinary functions
copy-lru-pool-elt: Private ordinary functions
copy-usocket-wrapped-stream: Private ordinary functions

D
decode-body: Public ordinary functions
decoding-stream-buffer: Private generic functions
decoding-stream-buffer: Private generic functions
decoding-stream-buffer-end-position: Private generic functions
decoding-stream-buffer-end-position: Private generic functions
decoding-stream-buffer-position: Private generic functions
decoding-stream-buffer-position: Private generic functions
decoding-stream-encoding: Private generic functions
decoding-stream-encoding: Private generic functions
decoding-stream-last-char: Private generic functions
decoding-stream-last-char: Private generic functions
decoding-stream-last-char-size: Private generic functions
decoding-stream-last-char-size: Private generic functions
decoding-stream-stream: Private generic functions
decoding-stream-stream: Private generic functions
decompress-body: Public ordinary functions
define-request-failed-condition: Private macros
defun-careful: Public macros
defun-speedy: Public macros
delete: Public ordinary functions
detect-charset: Public ordinary functions
detect-charset-from-html: Private ordinary functions

E
ensure-socks5-connected: Private ordinary functions
evict-tail: Private ordinary functions

F
fetch: Public ordinary functions
fill-buffer: Private ordinary functions
Function, %ascii-string-to-octets: Private ordinary functions
Function, (setf lru-pool-elt-elt): Private ordinary functions
Function, (setf lru-pool-elt-eviction-callback): Private ordinary functions
Function, (setf lru-pool-elt-key): Private ordinary functions
Function, (setf lru-pool-elt-next): Private ordinary functions
Function, (setf lru-pool-elt-prev): Private ordinary functions
Function, (setf lru-pool-hash-table): Private ordinary functions
Function, (setf lru-pool-head): Private ordinary functions
Function, (setf lru-pool-lock): Private ordinary functions
Function, (setf lru-pool-max-elts): Private ordinary functions
Function, (setf lru-pool-num-elts): Private ordinary functions
Function, (setf lru-pool-tail): Private ordinary functions
Function, (setf usocket-wrapped-stream-stream): Private ordinary functions
Function, add-to-lru-pool: Private ordinary functions
Function, ascii-string-to-octets: Public ordinary functions
Function, build-cookie-headers: Private ordinary functions
Function, charset-to-encoding: Private ordinary functions
Function, clear-connection-pool: Public ordinary functions
Function, content-disposition: Private ordinary functions
Function, content-disposition: Private ordinary functions
Function, convert-body: Private ordinary functions
Function, copy-lru-pool: Private ordinary functions
Function, copy-lru-pool-elt: Private ordinary functions
Function, copy-usocket-wrapped-stream: Private ordinary functions
Function, decode-body: Public ordinary functions
Function, decompress-body: Public ordinary functions
Function, delete: Public ordinary functions
Function, detect-charset: Public ordinary functions
Function, detect-charset-from-html: Private ordinary functions
Function, ensure-socks5-connected: Private ordinary functions
Function, evict-tail: Private ordinary functions
Function, fetch: Public ordinary functions
Function, fill-buffer: Private ordinary functions
Function, get: Public ordinary functions
Function, get-from-lru-pool: Private ordinary functions
Function, head: Public ordinary functions
Function, http-request-failed: Public ordinary functions
Function, ignore-and-continue: Public ordinary functions
Function, keep-alive-stream-close-underlying-stream: Public ordinary functions
Function, lru-pool-elt-elt: Private ordinary functions
Function, lru-pool-elt-eviction-callback: Private ordinary functions
Function, lru-pool-elt-key: Private ordinary functions
Function, lru-pool-elt-next: Private ordinary functions
Function, lru-pool-elt-p: Private ordinary functions
Function, lru-pool-elt-prev: Private ordinary functions
Function, lru-pool-hash-table: Private ordinary functions
Function, lru-pool-head: Private ordinary functions
Function, lru-pool-lock: Private ordinary functions
Function, lru-pool-max-elts: Private ordinary functions
Function, lru-pool-num-elts: Private ordinary functions
Function, lru-pool-p: Private ordinary functions
Function, lru-pool-tail: Private ordinary functions
Function, make-connect-stream: Private ordinary functions
Function, make-connection-pool: Public ordinary functions
Function, make-decoding-stream: Public ordinary functions
Function, make-keep-alive-stream: Public ordinary functions
Function, make-lru-pool: Private ordinary functions
Function, make-lru-pool-elt: Private ordinary functions
Function, make-new-connection-pool: Private ordinary functions
Function, make-proxy-authorization: Private ordinary functions
Function, make-random-string: Public ordinary functions
Function, make-ssl-stream: Private ordinary functions
Function, make-usocket-wrapped-stream: Private ordinary functions
Function, maybe-close: Private ordinary functions
Function, multipart-content-length: Private ordinary functions
Function, multipart-value-content-type: Public ordinary functions
Function, needs-to-fill-buffer-p: Private ordinary functions
Function, parse-content-type: Private ordinary functions
Function, patch: Public ordinary functions
Function, post: Public ordinary functions
Function, print-verbose-data: Private ordinary functions
Function, push-connection: Public ordinary functions
Function, put: Public ordinary functions
Function, read-response: Private ordinary functions
Function, read-until-crlf*2: Private ordinary functions
Function, request: Public ordinary functions
Function, retry-request: Public ordinary functions
Function, retry-request-ntimes: Private ordinary functions
Function, steal-connection: Public ordinary functions
Function, usocket-wrapped-stream-p: Private ordinary functions
Function, usocket-wrapped-stream-stream: Private ordinary functions
Function, write-connect-header: Public ordinary functions
Function, write-first-line: Public ordinary functions
Function, write-header: Public ordinary functions
Function, write-header-field: Private ordinary functions
Function, write-header-value: Private ordinary functions
Function, write-multipart-content: Public ordinary functions

G
Generic Function, (setf chunga-stream): Private generic functions
Generic Function, (setf decoding-stream-buffer): Private generic functions
Generic Function, (setf decoding-stream-buffer-end-position): Private generic functions
Generic Function, (setf decoding-stream-buffer-position): Private generic functions
Generic Function, (setf decoding-stream-encoding): Private generic functions
Generic Function, (setf decoding-stream-last-char): Private generic functions
Generic Function, (setf decoding-stream-last-char-size): Private generic functions
Generic Function, (setf decoding-stream-stream): Private generic functions
Generic Function, (setf keep-alive-stream-end): Private generic functions
Generic Function, (setf keep-alive-stream-stream): Public generic functions
Generic Function, chunga-stream: Private generic functions
Generic Function, close-action: Private generic functions
Generic Function, decoding-stream-buffer: Private generic functions
Generic Function, decoding-stream-buffer-end-position: Private generic functions
Generic Function, decoding-stream-buffer-position: Private generic functions
Generic Function, decoding-stream-encoding: Private generic functions
Generic Function, decoding-stream-last-char: Private generic functions
Generic Function, decoding-stream-last-char-size: Private generic functions
Generic Function, decoding-stream-stream: Private generic functions
Generic Function, keep-alive-stream-end: Private generic functions
Generic Function, keep-alive-stream-stream: Public generic functions
Generic Function, request-method: Public generic functions
Generic Function, request-uri: Public generic functions
Generic Function, response-body: Public generic functions
Generic Function, response-headers: Public generic functions
Generic Function, response-status: Public generic functions
get: Public ordinary functions
get-from-lru-pool: Private ordinary functions

H
head: Public ordinary functions
http-request-failed: Public ordinary functions

I
ignore-and-continue: Public ordinary functions
initialize-instance: Public standalone methods

K
keep-alive-stream-close-underlying-stream: Public ordinary functions
keep-alive-stream-end: Private generic functions
keep-alive-stream-end: Private generic functions
keep-alive-stream-stream: Public generic functions
keep-alive-stream-stream: Public generic functions

L
lru-pool-elt-elt: Private ordinary functions
lru-pool-elt-eviction-callback: Private ordinary functions
lru-pool-elt-key: Private ordinary functions
lru-pool-elt-next: Private ordinary functions
lru-pool-elt-p: Private ordinary functions
lru-pool-elt-prev: Private ordinary functions
lru-pool-hash-table: Private ordinary functions
lru-pool-head: Private ordinary functions
lru-pool-lock: Private ordinary functions
lru-pool-max-elts: Private ordinary functions
lru-pool-num-elts: Private ordinary functions
lru-pool-p: Private ordinary functions
lru-pool-tail: Private ordinary functions

M
Macro, define-request-failed-condition: Private macros
Macro, defun-careful: Public macros
Macro, defun-speedy: Public macros
Macro, with-header-output: Public macros
Macro, with-lock: Private macros
make-connect-stream: Private ordinary functions
make-connection-pool: Public ordinary functions
make-decoding-stream: Public ordinary functions
make-keep-alive-stream: Public ordinary functions
make-lru-pool: Private ordinary functions
make-lru-pool-elt: Private ordinary functions
make-new-connection-pool: Private ordinary functions
make-proxy-authorization: Private ordinary functions
make-random-string: Public ordinary functions
make-ssl-stream: Private ordinary functions
make-usocket-wrapped-stream: Private ordinary functions
maybe-close: Private ordinary functions
Method, (setf chunga-stream): Private generic functions
Method, (setf decoding-stream-buffer): Private generic functions
Method, (setf decoding-stream-buffer-end-position): Private generic functions
Method, (setf decoding-stream-buffer-position): Private generic functions
Method, (setf decoding-stream-encoding): Private generic functions
Method, (setf decoding-stream-last-char): Private generic functions
Method, (setf decoding-stream-last-char-size): Private generic functions
Method, (setf decoding-stream-stream): Private generic functions
Method, (setf keep-alive-stream-end): Private generic functions
Method, (setf keep-alive-stream-stream): Public generic functions
Method, chunga-stream: Private generic functions
Method, close: Public standalone methods
Method, close: Public standalone methods
Method, close: Public standalone methods
Method, close-action: Private generic functions
Method, decoding-stream-buffer: Private generic functions
Method, decoding-stream-buffer-end-position: Private generic functions
Method, decoding-stream-buffer-position: Private generic functions
Method, decoding-stream-encoding: Private generic functions
Method, decoding-stream-last-char: Private generic functions
Method, decoding-stream-last-char-size: Private generic functions
Method, decoding-stream-stream: Private generic functions
Method, initialize-instance: Public standalone methods
Method, keep-alive-stream-end: Private generic functions
Method, keep-alive-stream-stream: Public generic functions
Method, open-stream-p: Public standalone methods
Method, open-stream-p: Public standalone methods
Method, open-stream-p: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, request-method: Public generic functions
Method, request-uri: Public generic functions
Method, response-body: Public generic functions
Method, response-headers: Public generic functions
Method, response-status: Public generic functions
Method, stream-element-type: Public standalone methods
Method, stream-element-type: Public standalone methods
Method, stream-element-type: Public standalone methods
Method, stream-read-byte: Public standalone methods
Method, stream-read-byte: Public standalone methods
Method, stream-read-char: Public standalone methods
Method, stream-read-sequence: Public standalone methods
Method, stream-read-sequence: Public standalone methods
Method, stream-unread-char: Public standalone methods
multipart-content-length: Private ordinary functions
multipart-value-content-type: Public ordinary functions

N
needs-to-fill-buffer-p: Private ordinary functions

O
open-stream-p: Public standalone methods
open-stream-p: Public standalone methods
open-stream-p: Public standalone methods

P
parse-content-type: Private ordinary functions
patch: Public ordinary functions
post: Public ordinary functions
print-object: Public standalone methods
print-object: Public standalone methods
print-verbose-data: Private ordinary functions
push-connection: Public ordinary functions
put: Public ordinary functions

R
read-response: Private ordinary functions
read-until-crlf*2: Private ordinary functions
request: Public ordinary functions
request-method: Public generic functions
request-method: Public generic functions
request-uri: Public generic functions
request-uri: Public generic functions
response-body: Public generic functions
response-body: Public generic functions
response-headers: Public generic functions
response-headers: Public generic functions
response-status: Public generic functions
response-status: Public generic functions
retry-request: Public ordinary functions
retry-request-ntimes: Private ordinary functions

S
steal-connection: Public ordinary functions
stream-element-type: Public standalone methods
stream-element-type: Public standalone methods
stream-element-type: Public standalone methods
stream-read-byte: Public standalone methods
stream-read-byte: Public standalone methods
stream-read-char: Public standalone methods
stream-read-sequence: Public standalone methods
stream-read-sequence: Public standalone methods
stream-unread-char: Public standalone methods

U
usocket-wrapped-stream-p: Private ordinary functions
usocket-wrapped-stream-stream: Private ordinary functions

W
with-header-output: Public macros
with-lock: Private macros
write-connect-header: Public ordinary functions
write-first-line: Public ordinary functions
write-header: Public compiler macros
write-header: Public ordinary functions
write-header-field: Private ordinary functions
write-header-value: Private ordinary functions
write-multipart-content: Public ordinary functions


A.3 Variables

Jump to:   *   +  
B   C   E   H   K   L   M   N   O   P   R   S   T   U  
Index Entry  Section

*
*ca-bundle*: Private special variables
*careful-declaration*: Private special variables
*connection-pool*: Public special variables
*default-connect-timeout*: Public special variables
*default-proxy*: Public special variables
*default-read-timeout*: Public special variables
*default-user-agent*: Public special variables
*dexador-version*: Private special variables
*header-buffer*: Private special variables
*max-active-connections*: Public special variables
*not-verify-ssl*: Public special variables
*request-failed-error*: Private special variables
*speedy-declaration*: Private special variables
*use-connection-pool*: Public special variables
*verbose*: Public special variables

+
+buffer-size+: Private constants
+crlf+: Public special variables
+empty-body+: Private special variables
+socks5-connect+: Private constants
+socks5-domainname+: Private constants
+socks5-ipv4+: Private constants
+socks5-ipv6+: Private constants
+socks5-no-auth+: Private constants
+socks5-reserved+: Private constants
+socks5-succeeded+: Private constants
+socks5-version+: Private constants

B
body: Public conditions
buffer: Public classes
buffer-end-position: Public classes
buffer-position: Public classes

C
chunga-stream: Public classes
close-action: Public classes
Constant, +buffer-size+: Private constants
Constant, +socks5-connect+: Private constants
Constant, +socks5-domainname+: Private constants
Constant, +socks5-ipv4+: Private constants
Constant, +socks5-ipv6+: Private constants
Constant, +socks5-no-auth+: Private constants
Constant, +socks5-reserved+: Private constants
Constant, +socks5-succeeded+: Private constants
Constant, +socks5-version+: Private constants

E
elt: Private structures
encoding: Public classes
end: Public classes
eviction-callback: Private structures

H
hash-table: Private structures
head: Private structures
headers: Public conditions

K
key: Private structures

L
last-char: Public classes
last-char-size: Public classes
lock: Private structures

M
max-elts: Private structures
method: Public conditions

N
next: Private structures
num-elts: Private structures

O
on-close: Public classes

P
prev: Private structures

R
reason: Public conditions

S
Slot, body: Public conditions
Slot, buffer: Public classes
Slot, buffer-end-position: Public classes
Slot, buffer-position: Public classes
Slot, chunga-stream: Public classes
Slot, close-action: Public classes
Slot, elt: Private structures
Slot, encoding: Public classes
Slot, end: Public classes
Slot, eviction-callback: Private structures
Slot, hash-table: Private structures
Slot, head: Private structures
Slot, headers: Public conditions
Slot, key: Private structures
Slot, last-char: Public classes
Slot, last-char-size: Public classes
Slot, lock: Private structures
Slot, max-elts: Private structures
Slot, method: Public conditions
Slot, next: Private structures
Slot, num-elts: Private structures
Slot, on-close: Public classes
Slot, prev: Private structures
Slot, reason: Public conditions
Slot, status: Public conditions
Slot, stream: Public classes
Slot, stream: Public classes
Slot, stream: Private structures
Slot, tail: Private structures
Slot, uri: Public conditions
Special Variable, *ca-bundle*: Private special variables
Special Variable, *careful-declaration*: Private special variables
Special Variable, *connection-pool*: Public special variables
Special Variable, *default-connect-timeout*: Public special variables
Special Variable, *default-proxy*: Public special variables
Special Variable, *default-read-timeout*: Public special variables
Special Variable, *default-user-agent*: Public special variables
Special Variable, *dexador-version*: Private special variables
Special Variable, *header-buffer*: Private special variables
Special Variable, *max-active-connections*: Public special variables
Special Variable, *not-verify-ssl*: Public special variables
Special Variable, *request-failed-error*: Private special variables
Special Variable, *speedy-declaration*: Private special variables
Special Variable, *use-connection-pool*: Public special variables
Special Variable, *verbose*: Public special variables
Special Variable, +crlf+: Public special variables
Special Variable, +empty-body+: Private special variables
status: Public conditions
stream: Public classes
stream: Public classes
stream: Private structures

T
tail: Private structures

U
uri: Public conditions


A.4 Data types

Jump to:   B   C   D   E   F   H   K   L   M   O   P   S   T   U   W  
Index Entry  Section

B
backend: The dexador/src/backend module
body.lisp: The dexador/src/body․lisp file

C
Class, decoding-stream: Public classes
Class, keep-alive-chunked-stream: Public classes
Class, keep-alive-stream: Public classes
Condition, http-request-bad-gateway: Public conditions
Condition, http-request-bad-request: Public conditions
Condition, http-request-conflict: Public conditions
Condition, http-request-expectation-failed: Public conditions
Condition, http-request-failed: Public conditions
Condition, http-request-forbidden: Public conditions
Condition, http-request-gateway-timeout: Public conditions
Condition, http-request-gone: Public conditions
Condition, http-request-http-version-not-supported: Public conditions
Condition, http-request-internal-server-error: Public conditions
Condition, http-request-length-required: Public conditions
Condition, http-request-method-not-allowed: Public conditions
Condition, http-request-misdirected-request: Public conditions
Condition, http-request-not-acceptable: Public conditions
Condition, http-request-not-found: Public conditions
Condition, http-request-not-implemented: Public conditions
Condition, http-request-payload-too-large: Public conditions
Condition, http-request-payment-required: Public conditions
Condition, http-request-precondition-failed: Public conditions
Condition, http-request-proxy-authentication-required: Public conditions
Condition, http-request-range-not-satisfiable: Public conditions
Condition, http-request-request-timeout: Public conditions
Condition, http-request-service-unavailable: Public conditions
Condition, http-request-too-many-requests: Public conditions
Condition, http-request-unauthorized: Public conditions
Condition, http-request-unsupported-media-type: Public conditions
Condition, http-request-upgrade-required: Public conditions
Condition, http-request-uri-too-long: Public conditions
Condition, socks5-proxy-request-failed: Public conditions
connection-cache.lisp: The dexador/src/connection-cache․lisp file

D
decoding-stream: Public classes
decoding-stream.lisp: The dexador/src/decoding-stream․lisp file
dexador: The dexador system
dexador: The dexador package
dexador.asd: The dexador/dexador․asd file
dexador.backend.usocket: The dexador․backend․usocket package
dexador.body: The dexador․body package
dexador.connection-cache: The dexador․connection-cache package
dexador.decoding-stream: The dexador․decoding-stream package
dexador.encoding: The dexador․encoding package
dexador.error: The dexador․error package
dexador.keep-alive-stream: The dexador․keep-alive-stream package
dexador.lisp: The dexador/src/dexador․lisp file
dexador.util: The dexador․util package

E
encoding.lisp: The dexador/src/encoding․lisp file
error.lisp: The dexador/src/error․lisp file

F
File, body.lisp: The dexador/src/body․lisp file
File, connection-cache.lisp: The dexador/src/connection-cache․lisp file
File, decoding-stream.lisp: The dexador/src/decoding-stream․lisp file
File, dexador.asd: The dexador/dexador․asd file
File, dexador.lisp: The dexador/src/dexador․lisp file
File, encoding.lisp: The dexador/src/encoding․lisp file
File, error.lisp: The dexador/src/error․lisp file
File, keep-alive-stream.lisp: The dexador/src/keep-alive-stream․lisp file
File, usocket.lisp: The dexador/src/backend/usocket․lisp file
File, util.lisp: The dexador/src/util․lisp file
File, winhttp.lisp: The dexador/src/backend/winhttp․lisp file

H
http-request-bad-gateway: Public conditions
http-request-bad-request: Public conditions
http-request-conflict: Public conditions
http-request-expectation-failed: Public conditions
http-request-failed: Public conditions
http-request-forbidden: Public conditions
http-request-gateway-timeout: Public conditions
http-request-gone: Public conditions
http-request-http-version-not-supported: Public conditions
http-request-internal-server-error: Public conditions
http-request-length-required: Public conditions
http-request-method-not-allowed: Public conditions
http-request-misdirected-request: Public conditions
http-request-not-acceptable: Public conditions
http-request-not-found: Public conditions
http-request-not-implemented: Public conditions
http-request-payload-too-large: Public conditions
http-request-payment-required: Public conditions
http-request-precondition-failed: Public conditions
http-request-proxy-authentication-required: Public conditions
http-request-range-not-satisfiable: Public conditions
http-request-request-timeout: Public conditions
http-request-service-unavailable: Public conditions
http-request-too-many-requests: Public conditions
http-request-unauthorized: Public conditions
http-request-unsupported-media-type: Public conditions
http-request-upgrade-required: Public conditions
http-request-uri-too-long: Public conditions

K
keep-alive-chunked-stream: Public classes
keep-alive-stream: Public classes
keep-alive-stream.lisp: The dexador/src/keep-alive-stream․lisp file

L
lru-pool: Private structures
lru-pool-elt: Private structures

M
Module, backend: The dexador/src/backend module
Module, src: The dexador/src module

O
octets: Public types

P
Package, dexador: The dexador package
Package, dexador.backend.usocket: The dexador․backend․usocket package
Package, dexador.body: The dexador․body package
Package, dexador.connection-cache: The dexador․connection-cache package
Package, dexador.decoding-stream: The dexador․decoding-stream package
Package, dexador.encoding: The dexador․encoding package
Package, dexador.error: The dexador․error package
Package, dexador.keep-alive-stream: The dexador․keep-alive-stream package
Package, dexador.util: The dexador․util package

S
socks5-proxy-request-failed: Public conditions
src: The dexador/src module
Structure, lru-pool: Private structures
Structure, lru-pool-elt: Private structures
Structure, usocket-wrapped-stream: Private structures
System, dexador: The dexador system

T
Type, octets: Public types

U
usocket-wrapped-stream: Private structures
usocket.lisp: The dexador/src/backend/usocket․lisp file
util.lisp: The dexador/src/util․lisp file

W
winhttp.lisp: The dexador/src/backend/winhttp․lisp file