The rfc2388-binary Reference Manual

Table of Contents

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

The rfc2388-binary Reference Manual

This is the rfc2388-binary Reference Manual, generated automatically by Declt version 2.4 "Will Decker" on Wed Jun 20 12:31:20 2018 GMT+0.


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

1 Systems

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


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

1.1 rfc2388-binary

Source

rfc2388-binary.asd (file)

Components

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

2 Modules

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


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

2.1 rfc2388-binary/source

Parent

rfc2388-binary (system)

Location

source/

Components

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

3 Files

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


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

3.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.1 rfc2388-binary.asd

Location

rfc2388-binary.asd

Systems

rfc2388-binary (system)


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.2 rfc2388-binary/source/packages.lisp

Parent

source (module)

Location

source/packages.lisp

Packages

rfc2388-binary


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.3 rfc2388-binary/source/utils.lisp

Dependency

packages.lisp (file)

Parent

source (module)

Location

source/utils.lisp

Internal Definitions

Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.4 rfc2388-binary/source/api.lisp

Dependencies
Parent

source (module)

Location

source/api.lisp

Exported Definitions
Internal Definitions

mime-header (class)


Previous: , Up: Lisp files   [Contents][Index]

3.1.5 rfc2388-binary/source/parsing.lisp

Dependencies
Parent

source (module)

Location

source/parsing.lisp

Exported Definitions
Internal Definitions

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

3.2 Other


Previous: , Up: Other files   [Contents][Index]

3.2.1 rfc2388-binary/rfc2388-binary.asd

Parent

rfc2388-binary (system)

Location

rfc2388-binary.asd


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

4 Packages

Packages are listed by definition order.


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

4.1 rfc2388-binary

Source

packages.lisp (file)

Use List

common-lisp

Exported Definitions
Internal Definitions

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

5 Definitions

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


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

5.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.1 Functions

Function: parse-header-value ()

Returns the value in header-value-string and any associated attributes.

Package

rfc2388-binary

Source

parsing.lisp (file)

Function: parse-mime SOURCE BOUNDARY &key WRITE-CONTENT-TO-FILE BYTE-ENCODER

Parses MIME entities, returning them as a list.

Each element in the list is of form: (body headers), where BODY is the contents of MIME part, and HEADERS are all headers for that part. BOUNDARY is a string used to separate MIME entities.

This is the convenience interface to READ-MIME, all data is read into memory or a file and we assume that every byte in the data corresponds to exactly one character.

The SOURCE and BOUNDARY arguments are passed unchanged to READ-MIME. See READ-MIME’s documentation for details.

Package

rfc2388-binary

Source

api.lisp (file)

Function: print-mime-part PART &optional STREAM
Package

rfc2388-binary

Source

api.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.2 Generic functions

Generic Function: content OBJECT
Generic Function: (setf content) NEW-VALUE OBJECT
Package

rfc2388-binary

Methods
Method: content (MIME-PART mime-part)

automatically generated reader method

Source

api.lisp (file)

Method: (setf content) NEW-VALUE (MIME-PART mime-part)

automatically generated writer method

Source

api.lisp (file)

Generic Function: content-charset OBJECT
Generic Function: (setf content-charset) NEW-VALUE OBJECT
Package

rfc2388-binary

Methods
Method: content-charset (MIME-PART mime-part)

automatically generated reader method

Source

api.lisp (file)

Method: (setf content-charset) NEW-VALUE (MIME-PART mime-part)

automatically generated writer method

Source

api.lisp (file)

Generic Function: content-length OBJECT
Generic Function: (setf content-length) NEW-VALUE OBJECT
Package

rfc2388-binary

Methods
Method: content-length (MIME-PART mime-part)

automatically generated reader method

Source

api.lisp (file)

Method: (setf content-length) NEW-VALUE (MIME-PART mime-part)

automatically generated writer method

Source

api.lisp (file)

Generic Function: content-type OBJECT
Generic Function: (setf content-type) NEW-VALUE OBJECT
Package

rfc2388-binary

Methods
Method: content-type (MIME-PART mime-part)

automatically generated reader method

Source

api.lisp (file)

Method: (setf content-type) NEW-VALUE (MIME-PART mime-part)

automatically generated writer method

Source

api.lisp (file)

Generic Function: get-header PART HEADER-NAME

Returns the mime-header object for the header named HEADER-NAME (a string).

Package

rfc2388-binary

Source

api.lisp (file)

Methods
Method: get-header (PART mime-part) (HEADER-NAME string)
Generic Function: get-header-attribute HEADER NAME

Returns the value of the attribute named NAME in the header HEADER.

Package

rfc2388-binary

Source

api.lisp (file)

Methods
Method: get-header-attribute (HEADER mime-header) (NAME string)
Generic Function: header-attributes OBJECT
Generic Function: (setf header-attributes) NEW-VALUE OBJECT
Package

rfc2388-binary

Methods
Method: header-attributes (MIME-HEADER mime-header)

automatically generated reader method

Source

api.lisp (file)

Method: (setf header-attributes) NEW-VALUE (MIME-HEADER mime-header)

automatically generated writer method

Source

api.lisp (file)

Generic Function: header-name OBJECT
Generic Function: (setf header-name) NEW-VALUE OBJECT
Package

rfc2388-binary

Methods
Method: header-name (MIME-HEADER mime-header)

automatically generated reader method

Source

api.lisp (file)

Method: (setf header-name) NEW-VALUE (MIME-HEADER mime-header)

automatically generated writer method

Source

api.lisp (file)

Generic Function: header-value OBJECT
Generic Function: (setf header-value) NEW-VALUE OBJECT
Package

rfc2388-binary

Methods
Method: header-value (MIME-HEADER mime-header)

automatically generated reader method

Source

api.lisp (file)

Method: (setf header-value) NEW-VALUE (MIME-HEADER mime-header)

automatically generated writer method

Source

api.lisp (file)

Generic Function: headers OBJECT
Generic Function: (setf headers) NEW-VALUE OBJECT
Package

rfc2388-binary

Methods
Method: headers (MIME-PART mime-part)

automatically generated reader method

Source

api.lisp (file)

Method: (setf headers) NEW-VALUE (MIME-PART mime-part)

automatically generated writer method

Source

api.lisp (file)

Generic Function: mime-part-p OBJECT
Package

rfc2388-binary

Source

api.lisp (file)

Methods
Method: mime-part-p (OBJECT mime-part)
Method: mime-part-p OBJECT
Generic Function: read-mime SOURCE BOUNDARY CALLBACK

Parses the MIME entites in SOURCE.

SOURCE is either a vector of (unsigned-byte 8) or a stream whose element-type is (unsigned-byte 8). BOUNDARY is either a string of US-ASCII encodeable characters or a byte vector. CALLBACK is a function which will be passed one argument, a MIME-PART containing the headers of the mime part and must return the following values:

- a byte-handler function. This is a one argument function which will be passed every byte in the mime part’s content.

- a termination function. This is a function without arguments and will be called when the operation finishes without errors. It must return whatever is to be returned from read-mime.

- an optional abort function. This is a function without arguments and will be called when the operation is aborted due to an error.

READ-MIME consumes bytes from SOURCE and returns a list of the whatever the various termination functions returned.

Example:

(read-mime #<a binary stream> "123"
(lambda (mime-part)
(values (lambda (byte) (collect-byte-somewhere byte)) (lambda () mime-part))))

This call would return a list of mime-part objects passing each byte to collect-byte-somewhere.

You may also want to look at UCW for a real-world example.

Package

rfc2388-binary

Source

api.lisp (file)

Methods
Method: read-mime (SOURCE stream) (BOUNDARY array) CALLBACK-FACTORY
Source

parsing.lisp (file)

Method: read-mime (SOURCE stream) (BOUNDARY string) CALLBACK-FACTORY
Source

parsing.lisp (file)

Method: read-mime (SOURCE string) BOUNDARY CALLBACK-FACTORY
Source

parsing.lisp (file)


Previous: , Up: Exported definitions   [Contents][Index]

5.1.3 Classes

Class: mime-part ()
Package

rfc2388-binary

Source

api.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: content
Readers

content (generic function)

Writers

(setf content) (generic function)

Slot: content-length
Readers

content-length (generic function)

Writers

(setf content-length) (generic function)

Slot: content-type
Readers

content-type (generic function)

Writers

(setf content-type) (generic function)

Slot: content-charset
Readers

content-charset (generic function)

Writers

(setf content-charset) (generic function)

Slot: headers
Initform

(quote nil)

Readers

headers (generic function)

Writers

(setf headers) (generic function)


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

5.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.1 Special variables

Special Variable: *debug*

When T we compile the code with some logging statements built in.

Package

rfc2388-binary

Source

utils.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.2 Macros

Macro: debug-message MESSAGE &rest MESSAGE-CONTROL
Package

rfc2388-binary

Source

utils.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.3 Functions

Function: as-ascii-char BYTE

Assuming BYTE is an ASCII coded character retun the corresponding character.

Package

rfc2388-binary

Source

utils.lisp (file)

Function: ascii-string-to-boundary-array STRING
Package

rfc2388-binary

Source

utils.lisp (file)

Function: linear-whitespace-byte? BYTE

In short: is it a space or a tab?

Package

rfc2388-binary

Source

utils.lisp (file)

Function: make-mime-buffer-writer &key BYTE-ENCODER
Package

rfc2388-binary

Source

utils.lisp (file)

Function: make-mime-file-writer FILE-NAME &key BYTE-ENCODER
Package

rfc2388-binary

Source

utils.lisp (file)

Function: mime-part-headers-to-alist MIME-PART CONTENT
Package

rfc2388-binary

Source

utils.lisp (file)

Function: parse-key-values ()

Returns an alist of the keys and values in KEY-VALUE-STRING.

KEY-VALUE-STRING is of the form: (w+="w+";)*

Package

rfc2388-binary

Source

parsing.lisp (file)

Function: read-next-header ()

Reads the next header from STREAM. Returns, as the first value, T if a header was found and NIL otherwise. When a header is found two more values are returned: the header name (a string) and the header value (also a string). Headers are assumed to be encoded in 7bit ASCII.

The returned strings may actually be displaced arrays.

Package

rfc2388-binary

Source

parsing.lisp (file)

Function: read-until-next-boundary ()

Reads from STREAM up to the next boundary. For every byte of data in stream we call DATA-HANDLER passing it the byte. Returns T if there’s more data to be read, NIL otherwise.

The ASSUME-FIRST-BOUNDARY parameter should T if we’re reading the first part of a MIME message, where there is no leading CR LF sequence.

Package

rfc2388-binary

Source

parsing.lisp (file)


Previous: , Up: Internal definitions   [Contents][Index]

5.2.4 Classes

Class: mime-header ()
Package

rfc2388-binary

Source

api.lisp (file)

Direct superclasses

standard-object (class)

Direct methods
Direct slots
Slot: name
Initargs

:name

Readers

header-name (generic function)

Writers

(setf header-name) (generic function)

Slot: value
Initargs

:value

Readers

header-value (generic function)

Writers

(setf header-value) (generic function)

Slot: attributes
Initargs

:attributes

Readers

header-attributes (generic function)

Writers

(setf header-attributes) (generic function)


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

Appendix A Indexes


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

A.1 Concepts

Jump to:   F   L   M   O   R  
Index Entry  Section

F
File, Lisp, rfc2388-binary.asd: The rfc2388-binary<dot>asd file
File, Lisp, rfc2388-binary/source/api.lisp: The rfc2388-binary/source/api<dot>lisp file
File, Lisp, rfc2388-binary/source/packages.lisp: The rfc2388-binary/source/packages<dot>lisp file
File, Lisp, rfc2388-binary/source/parsing.lisp: The rfc2388-binary/source/parsing<dot>lisp file
File, Lisp, rfc2388-binary/source/utils.lisp: The rfc2388-binary/source/utils<dot>lisp file
File, other, rfc2388-binary/rfc2388-binary.asd: The rfc2388-binary/rfc2388-binary<dot>asd file

L
Lisp File, rfc2388-binary.asd: The rfc2388-binary<dot>asd file
Lisp File, rfc2388-binary/source/api.lisp: The rfc2388-binary/source/api<dot>lisp file
Lisp File, rfc2388-binary/source/packages.lisp: The rfc2388-binary/source/packages<dot>lisp file
Lisp File, rfc2388-binary/source/parsing.lisp: The rfc2388-binary/source/parsing<dot>lisp file
Lisp File, rfc2388-binary/source/utils.lisp: The rfc2388-binary/source/utils<dot>lisp file

M
Module, rfc2388-binary/source: The rfc2388-binary/source module

O
Other File, rfc2388-binary/rfc2388-binary.asd: The rfc2388-binary/rfc2388-binary<dot>asd file

R
rfc2388-binary.asd: The rfc2388-binary<dot>asd file
rfc2388-binary/rfc2388-binary.asd: The rfc2388-binary/rfc2388-binary<dot>asd file
rfc2388-binary/source: The rfc2388-binary/source module
rfc2388-binary/source/api.lisp: The rfc2388-binary/source/api<dot>lisp file
rfc2388-binary/source/packages.lisp: The rfc2388-binary/source/packages<dot>lisp file
rfc2388-binary/source/parsing.lisp: The rfc2388-binary/source/parsing<dot>lisp file
rfc2388-binary/source/utils.lisp: The rfc2388-binary/source/utils<dot>lisp file

Jump to:   F   L   M   O   R  

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

A.2 Functions

Jump to:   (  
A   C   D   F   G   H   L   M   P   R  
Index Entry  Section

(
(setf content): Exported generic functions
(setf content): Exported generic functions
(setf content-charset): Exported generic functions
(setf content-charset): Exported generic functions
(setf content-length): Exported generic functions
(setf content-length): Exported generic functions
(setf content-type): Exported generic functions
(setf content-type): Exported generic functions
(setf header-attributes): Exported generic functions
(setf header-attributes): Exported generic functions
(setf header-name): Exported generic functions
(setf header-name): Exported generic functions
(setf header-value): Exported generic functions
(setf header-value): Exported generic functions
(setf headers): Exported generic functions
(setf headers): Exported generic functions

A
as-ascii-char: Internal functions
ascii-string-to-boundary-array: Internal functions

C
content: Exported generic functions
content: Exported generic functions
content-charset: Exported generic functions
content-charset: Exported generic functions
content-length: Exported generic functions
content-length: Exported generic functions
content-type: Exported generic functions
content-type: Exported generic functions

D
debug-message: Internal macros

F
Function, as-ascii-char: Internal functions
Function, ascii-string-to-boundary-array: Internal functions
Function, linear-whitespace-byte?: Internal functions
Function, make-mime-buffer-writer: Internal functions
Function, make-mime-file-writer: Internal functions
Function, mime-part-headers-to-alist: Internal functions
Function, parse-header-value: Exported functions
Function, parse-key-values: Internal functions
Function, parse-mime: Exported functions
Function, print-mime-part: Exported functions
Function, read-next-header: Internal functions
Function, read-until-next-boundary: Internal functions

G
Generic Function, (setf content): Exported generic functions
Generic Function, (setf content-charset): Exported generic functions
Generic Function, (setf content-length): Exported generic functions
Generic Function, (setf content-type): Exported generic functions
Generic Function, (setf header-attributes): Exported generic functions
Generic Function, (setf header-name): Exported generic functions
Generic Function, (setf header-value): Exported generic functions
Generic Function, (setf headers): Exported generic functions
Generic Function, content: Exported generic functions
Generic Function, content-charset: Exported generic functions
Generic Function, content-length: Exported generic functions
Generic Function, content-type: Exported generic functions
Generic Function, get-header: Exported generic functions
Generic Function, get-header-attribute: Exported generic functions
Generic Function, header-attributes: Exported generic functions
Generic Function, header-name: Exported generic functions
Generic Function, header-value: Exported generic functions
Generic Function, headers: Exported generic functions
Generic Function, mime-part-p: Exported generic functions
Generic Function, read-mime: Exported generic functions
get-header: Exported generic functions
get-header: Exported generic functions
get-header-attribute: Exported generic functions
get-header-attribute: Exported generic functions

H
header-attributes: Exported generic functions
header-attributes: Exported generic functions
header-name: Exported generic functions
header-name: Exported generic functions
header-value: Exported generic functions
header-value: Exported generic functions
headers: Exported generic functions
headers: Exported generic functions

L
linear-whitespace-byte?: Internal functions

M
Macro, debug-message: Internal macros
make-mime-buffer-writer: Internal functions
make-mime-file-writer: Internal functions
Method, (setf content): Exported generic functions
Method, (setf content-charset): Exported generic functions
Method, (setf content-length): Exported generic functions
Method, (setf content-type): Exported generic functions
Method, (setf header-attributes): Exported generic functions
Method, (setf header-name): Exported generic functions
Method, (setf header-value): Exported generic functions
Method, (setf headers): Exported generic functions
Method, content: Exported generic functions
Method, content-charset: Exported generic functions
Method, content-length: Exported generic functions
Method, content-type: Exported generic functions
Method, get-header: Exported generic functions
Method, get-header-attribute: Exported generic functions
Method, header-attributes: Exported generic functions
Method, header-name: Exported generic functions
Method, header-value: Exported generic functions
Method, headers: Exported generic functions
Method, mime-part-p: Exported generic functions
Method, mime-part-p: Exported generic functions
Method, read-mime: Exported generic functions
Method, read-mime: Exported generic functions
Method, read-mime: Exported generic functions
mime-part-headers-to-alist: Internal functions
mime-part-p: Exported generic functions
mime-part-p: Exported generic functions
mime-part-p: Exported generic functions

P
parse-header-value: Exported functions
parse-key-values: Internal functions
parse-mime: Exported functions
print-mime-part: Exported functions

R
read-mime: Exported generic functions
read-mime: Exported generic functions
read-mime: Exported generic functions
read-mime: Exported generic functions
read-next-header: Internal functions
read-until-next-boundary: Internal functions

Jump to:   (  
A   C   D   F   G   H   L   M   P   R  

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

A.3 Variables

Jump to:   *  
A   C   H   N   S   V  
Index Entry  Section

*
*debug*: Internal special variables

A
attributes: Internal classes

C
content: Exported classes
content-charset: Exported classes
content-length: Exported classes
content-type: Exported classes

H
headers: Exported classes

N
name: Internal classes

S
Slot, attributes: Internal classes
Slot, content: Exported classes
Slot, content-charset: Exported classes
Slot, content-length: Exported classes
Slot, content-type: Exported classes
Slot, headers: Exported classes
Slot, name: Internal classes
Slot, value: Internal classes
Special Variable, *debug*: Internal special variables

V
value: Internal classes

Jump to:   *  
A   C   H   N   S   V  

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

A.4 Data types

Jump to:   C   M   P   R   S  
Index Entry  Section

C
Class, mime-header: Internal classes
Class, mime-part: Exported classes

M
mime-header: Internal classes
mime-part: Exported classes

P
Package, rfc2388-binary: The rfc2388-binary package

R
rfc2388-binary: The rfc2388-binary system
rfc2388-binary: The rfc2388-binary package

S
System, rfc2388-binary: The rfc2388-binary system

Jump to:   C   M   P   R   S