The binary-types Reference Manual

This is the binary-types Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 14:43:08 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 binary-types

A library for reading and writing binary records.

Maintainer

<>

Author

Frode V. Fjeld

License

BSD-like, see accopanying file COPYING.

Source

binary-types.asd.

Child Component

binary-types.lisp (file).


3 Files

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


3.1 Lisp


3.1.1 binary-types/binary-types.asd

Source

binary-types.asd.

Parent Component

binary-types (system).

ASDF Systems

binary-types.

Packages

binary-types-asd.


3.1.2 binary-types/binary-types.lisp

Source

binary-types.asd.

Parent Component

binary-types (system).

Packages

binary-types.

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.1 binary-types

Source

binary-types.lisp.

Use List

common-lisp.

Public Interface
Internals

4.2 binary-types-asd

Source

binary-types.asd.

Use List
  • asdf/interface.
  • common-lisp.

5 Definitions

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


5.1 Public Interface


5.1.1 Special variables

Special Variable: *binary-read-byte*

The low-level READ-BYTE function used by binary-types.

Package

binary-types.

Source

binary-types.lisp.

Special Variable: *binary-write-byte*

The low-level WRITE-BYTE function used by binary-types.

Package

binary-types.

Source

binary-types.lisp.

Special Variable: *endian*

*endian* must be (dynamically) bound to either :big-endian or :little-endian while reading endian-sensitive types.

Package

binary-types.

Source

binary-types.lisp.

Special Variable: *padding-byte*

The value written to padding octets.

Package

binary-types.

Source

binary-types.lisp.


5.1.2 Macros

Macro: define-binary-class (type-name supers slots &rest class-options)
Package

binary-types.

Source

binary-types.lisp.

Macro: define-binary-string (type-name size &key terminators)
Package

binary-types.

Source

binary-types.lisp.

Macro: define-binary-struct (name-and-options dummy-options &rest doc-slot-descriptions)
Package

binary-types.

Source

binary-types.lisp.

Macro: define-bitfield (type-name (storage-type) spec)
Package

binary-types.

Source

binary-types.lisp.

Macro: define-enum (type-name (storage-name &optional byte-spec) &rest spec)

A simple wrapper around DEFINE-BITFIELD for simple enum types.

Package

binary-types.

Source

binary-types.lisp.

Macro: define-null-terminated-string (type-name size)
Package

binary-types.

Source

binary-types.lisp.

Macro: define-signed (name size &optional endian)
Package

binary-types.

Source

binary-types.lisp.

Macro: define-unsigned (name size &optional endian)
Package

binary-types.

Source

binary-types.lisp.

Macro: with-binary-file ((stream-var path &rest key-args) &body body)

This is a thin wrapper around WITH-OPEN-FILE, that tries to set the stream’s element-type to that required by READ-BINARY and WRITE-BINARY. A run-time assertion on the stream’s actual element type is performed, unless you disable this feature by setting the keyword option :check-stream to nil.

Package

binary-types.

Source

binary-types.lisp.

Macro: with-binary-input-from-list ((stream-var list-form) &body body)

Bind STREAM-VAR to an object that, when passed to READ-BINARY, provides 8-bit bytes from LIST-FORM, which must yield a list.
Binds *BINARY-READ-BYTE* appropriately. This macro will break if this binding is shadowed.

Package

binary-types.

Source

binary-types.lisp.

Macro: with-binary-input-from-vector ((stream-var vector-form &key start) &body body)

Bind STREAM-VAR to an object that, when passed to READ-BINARY, provides 8-bit bytes from VECTOR-FORM, which must yield a vector.
Binds *BINARY-READ-BYTE* appropriately. This macro will break if this binding is shadowed.

Package

binary-types.

Source

binary-types.lisp.

Macro: with-binary-output-to-list ((stream-var) &body body)

Inside BODY, calls to WRITE-BINARY with stream STREAM-VAR will collect the individual 8-bit bytes in a list (of integers).
This list is returned by the form. (There is no way to get at
the return-value of BODY.)
This macro depends on the binding of *BINARY-WRITE-BYTE*, which should not be shadowed.

Package

binary-types.

Source

binary-types.lisp.

Macro: with-binary-output-to-vector ((stream-var &optional vector-or-size-form &key adjustable fill-pointer element-type on-full-array) &body body)

Arrange for STREAM-VAR to collect octets in a vector.
VECTOR-OR-SIZE-FORM is either a form that evaluates to a vector, or an integer in which case a new vector of that size is created. The vector’s fill-pointer is used as the write-index. If ADJUSTABLE nil (or not provided), an error will occur if the array is too small. Otherwise, the array will be adjusted in size, using VECTOR-PUSH-EXTEND. If ADJUSTABLE is an integer, that value will be passed as the EXTENSION argument to VECTOR-PUSH-EXTEND. If VECTOR-OR-SIZE-FORM is an integer, the created vector is returned, otherwise the value of BODY.

Package

binary-types.

Source

binary-types.lisp.


5.1.3 Ordinary functions

Function: binary-record-slot-names (type &key padding-slots-p match-tags)

Returns a list of the slot-names of TYPE, in sequence.

Package

binary-types.

Source

binary-types.lisp.

Function: binary-slot-tags (type slot-name)
Package

binary-types.

Source

binary-types.lisp.

Function: binary-slot-type (type slot-name)
Package

binary-types.

Source

binary-types.lisp.

Function: binary-slot-value (object slot-name)

Return the “binary” value of a slot, i.e the value mapped by any MAP-ON-WRITE slot mapper function.

Package

binary-types.

Source

binary-types.lisp.

Function: enum-symbolic-value (type binary-value)

The inverse of ENUM-VALUE.

Package

binary-types.

Source

binary-types.lisp.

Function: enum-value (type symbolic-value)

For an enum type (actually, for any bitfield-based type), ~ look up the numeric value of a symbol.

Package

binary-types.

Source

binary-types.lisp.

Function: find-binary-type (name &optional errorp)
Package

binary-types.

Source

binary-types.lisp.

Function: (setf find-binary-type) (name)
Package

binary-types.

Source

binary-types.lisp.

Function: merge-bytes (bytes from-size to-size)

Combine BYTES sized FROM-SIZE bits into new bytes sized TO-SIZE bits.

Package

binary-types.

Source

binary-types.lisp.

Function: read-binary-string (stream &key size terminators)

Read a string from STREAM, terminated by any member of the list TERMINATORS. If SIZE is provided and non-nil, exactly SIZE octets are read, but the returned string is still terminated by TERMINATORS. The string and the number of octets read are returned.

Package

binary-types.

Source

binary-types.lisp.

Function: slot-offset (type slot-name)

Return the offset (in number of octets) of SLOT-NAME in TYPE.

Package

binary-types.

Source

binary-types.lisp.

Function: split-bytes (bytes from-size to-size)

From a list of BYTES sized FROM-SIZE bits, split each byte into bytes of size TO-SIZE, according to *ENDIAN*. TO-SIZE must divide FROM-SIZE evenly. If this is not the case, you might want to apply MERGE-BYTES to the list of BYTES first.

Package

binary-types.

Source

binary-types.lisp.


5.1.4 Generic functions

Generic Function: read-binary (type stream &key start stop &allow-other-keys)

Read an object of binary TYPE from STREAM.

Package

binary-types.

Source

binary-types.lisp.

Methods
Method: read-binary ((type bitfield) stream &key &allow-other-keys)
Method: read-binary ((type binary-record) stream &key start stop &allow-other-keys)
Method: read-binary ((type binary-string) stream &key &allow-other-keys)
Method: read-binary ((type integer) stream &key &allow-other-keys)
Method: read-binary ((type binary-char8) stream &key &allow-other-keys)
Method: read-binary ((type binary-signed) stream &key &allow-other-keys)
Method: read-binary ((type binary-unsigned) stream &key &allow-other-keys)
Method: read-binary ((type symbol) stream &rest key-args)
Generic Function: read-binary-record (type-name stream &key start stop &allow-other-keys)
Package

binary-types.

Methods
Method: read-binary-record (type-name stream &key start stop &allow-other-keys)
Source

binary-types.lisp.

Generic Function: sizeof (type)

Return the size in octets of the single argument TYPE, or nil if TYPE is not constant-sized.

Package

binary-types.

Source

binary-types.lisp.

Methods
Method: sizeof ((type integer))
Reader Method: sizeof ((binary-type binary-type))

automatically generated reader method

Target Slot

sizeof.

Method: sizeof ((type symbol))
Method: sizeof (obj)
Generic Function: write-binary (type stream object &key start stop &allow-other-keys)

Write an OBJECT of TYPE to STREAM.

Package

binary-types.

Source

binary-types.lisp.

Methods
Method: write-binary ((type bitfield) stream symbolic-value &rest key-args)
Method: write-binary ((type binary-record) stream object &key start stop &allow-other-keys)
Method: write-binary ((type binary-string) stream obj &key &allow-other-keys)
Method: write-binary ((type integer) stream object &key &allow-other-keys)
Method: write-binary ((type binary-char8) stream object &key &allow-other-keys)
Method: write-binary ((type binary-integer) stream object &key &allow-other-keys)
Method: write-binary ((type symbol) stream object &rest key-args)
Generic Function: write-binary-record (object stream)
Package

binary-types.

Methods
Method: write-binary-record (object stream)
Source

binary-types.lisp.


5.1.5 Standalone methods

Method: make-load-form ((object record-slot) &optional environment)
Source

binary-types.lisp.

Method: print-object ((type binary-integer) stream)
Source

binary-types.lisp.

Method: print-object ((object binary-type) stream)
Source

binary-types.lisp.


5.1.6 Types

Type: char8 ()
Package

binary-types.

Source

binary-types.lisp.

Type: endianess ()

These are the legal declarations of endianess. The value NIL
means that the endianess is determined by the dynamic value of *endian*.

Package

binary-types.

Source

binary-types.lisp.

Type: s128 ()
Package

binary-types.

Source

binary-types.lisp.

Type: s16 ()
Package

binary-types.

Source

binary-types.lisp.

Type: s256 ()
Package

binary-types.

Source

binary-types.lisp.

Type: s32 ()
Package

binary-types.

Source

binary-types.lisp.

Type: s64 ()
Package

binary-types.

Source

binary-types.lisp.

Type: s8 ()
Package

binary-types.

Source

binary-types.lisp.

Type: u128 ()
Package

binary-types.

Source

binary-types.lisp.

Type: u16 ()
Package

binary-types.

Source

binary-types.lisp.

Type: u256 ()
Package

binary-types.

Source

binary-types.lisp.

Type: u32 ()
Package

binary-types.

Source

binary-types.lisp.

Type: u64 ()
Package

binary-types.

Source

binary-types.lisp.

Type: u8 ()
Package

binary-types.

Source

binary-types.lisp.


5.2 Internals


5.2.1 Special variables

Special Variable: *binary-type-namespace*

Maps binary type’s names (which are symbols) to their binary-type class object.

Package

binary-types.

Source

binary-types.lisp.

Special Variable: *ignore-hidden-slots-for-pcl*

Really ugly hack to allow older PCL-infested lisps to work in the precense of :map-binary-read-delayed.

Package

binary-types.

Source

binary-types.lisp.


5.2.2 Macros

Macro: define-fixed-size-nt-string (type-name size)
Package

binary-types.

Source

binary-types.lisp.


5.2.3 Ordinary functions

Function: binary-record-alist (obj)

Returns an assoc-list representation of (the slots of) a binary record object.

Package

binary-types.

Source

binary-types.lisp.

Function: bitfield-compute-numeric-value (type symbolic-value)

Returns the numeric representation of a bitfields symbolic value.

Package

binary-types.

Source

binary-types.lisp.

Function: bitfield-compute-symbolic-value (type numeric-value)

Return the symbolic value of a numeric bitfield

Package

binary-types.

Source

binary-types.lisp.

Reader: bitfield-entry-bytespec (instance)
Writer: (setf bitfield-entry-bytespec) (instance)
Package

binary-types.

Source

binary-types.lisp.

Target Slot

bytespec.

Function: bitfield-entry-p (object)
Package

binary-types.

Source

binary-types.lisp.

Reader: bitfield-entry-value (instance)
Writer: (setf bitfield-entry-value) (instance)
Package

binary-types.

Source

binary-types.lisp.

Target Slot

value.

Function: calculate-sizeof (slot-types)
Package

binary-types.

Source

binary-types.lisp.

Function: copy-bitfield-entry (instance)
Package

binary-types.

Source

binary-types.lisp.

Function: copy-record-slot (instance)
Package

binary-types.

Source

binary-types.lisp.

Function: find-binary-type-name (type)
Package

binary-types.

Source

binary-types.lisp.

Function: make-bitfield-entry (&key value bytespec)
Package

binary-types.

Source

binary-types.lisp.

Function: make-pairs (list)

(make-pairs ’(1 2 3 4)) => ((1 . 2) (3 . 4))

Package

binary-types.

Source

binary-types.lisp.

Function: make-record-slot (&key name type map-write map-read map-read-delayed hidden-read-slot tags)
Package

binary-types.

Source

binary-types.lisp.

Function: merge-binary-records (obj1 obj2)

Returns a record where every non-bound slot in obj1 is replaced with that slot’s value from obj2.

Package

binary-types.

Source

binary-types.lisp.

Function: parse-bt-spec (expr)

Takes a binary-type specifier (a symbol, integer, or define-xx form),
and returns three values: the binary-type’s name, the equivalent lisp type, and any nested declaration that must be expanded separately.

Package

binary-types.

Source

binary-types.lisp.

Function: quoted-name-p (form)
Package

binary-types.

Source

binary-types.lisp.

Reader: record-slot-hidden-read-slot (instance)
Writer: (setf record-slot-hidden-read-slot) (instance)
Package

binary-types.

Source

binary-types.lisp.

Target Slot

hidden-read-slot.

Reader: record-slot-map-read (instance)
Writer: (setf record-slot-map-read) (instance)
Package

binary-types.

Source

binary-types.lisp.

Target Slot

map-read.

Reader: record-slot-map-read-delayed (instance)
Writer: (setf record-slot-map-read-delayed) (instance)
Package

binary-types.

Source

binary-types.lisp.

Target Slot

map-read-delayed.

Reader: record-slot-map-write (instance)
Writer: (setf record-slot-map-write) (instance)
Package

binary-types.

Source

binary-types.lisp.

Target Slot

map-write.

Reader: record-slot-name (instance)
Writer: (setf record-slot-name) (instance)
Package

binary-types.

Source

binary-types.lisp.

Target Slot

name.

Function: record-slot-p (object)
Package

binary-types.

Source

binary-types.lisp.

Reader: record-slot-tags (instance)
Writer: (setf record-slot-tags) (instance)
Package

binary-types.

Source

binary-types.lisp.

Target Slot

tags.

Reader: record-slot-type (instance)
Writer: (setf record-slot-type) (instance)
Package

binary-types.

Source

binary-types.lisp.

Target Slot

type.


5.2.4 Generic functions

Generic Reader: binary-integer-endian (object)
Package

binary-types.

Methods
Reader Method: binary-integer-endian ((binary-integer binary-integer))

automatically generated reader method

Source

binary-types.lisp.

Target Slot

endian.

Generic Function: binary-record-make-instance (type)
Package

binary-types.

Methods
Method: binary-record-make-instance ((type binary-struct))
Source

binary-types.lisp.

Method: binary-record-make-instance ((type binary-class))
Source

binary-types.lisp.

Generic Reader: binary-record-slot-offset (object)
Package

binary-types.

Methods
Reader Method: binary-record-slot-offset ((binary-record binary-record))

automatically generated reader method

Source

binary-types.lisp.

Target Slot

offset.

Generic Reader: binary-record-slots (object)
Package

binary-types.

Methods
Reader Method: binary-record-slots ((binary-record binary-record))

automatically generated reader method

Source

binary-types.lisp.

Target Slot

slots.

Generic Writer: (setf binary-record-slots) (object)
Package

binary-types.

Methods
Writer Method: (setf binary-record-slots) ((binary-record binary-record))

automatically generated writer method

Source

binary-types.lisp.

Target Slot

slots.

Generic Reader: binary-string-terminators (object)
Package

binary-types.

Methods
Reader Method: binary-string-terminators ((binary-string binary-string))

automatically generated reader method

Source

binary-types.lisp.

Target Slot

terminators.

Generic Reader: binary-type-name (object)
Package

binary-types.

Methods
Reader Method: binary-type-name ((binary-type binary-type))

automatically generated reader method

Source

binary-types.lisp.

Target Slot

name.

Generic Reader: bitfield-hash (object)
Package

binary-types.

Methods
Reader Method: bitfield-hash ((bitfield bitfield))

automatically generated reader method

Source

binary-types.lisp.

Target Slot

hash.

Generic Writer: (setf bitfield-hash) (object)
Package

binary-types.

Methods
Writer Method: (setf bitfield-hash) ((bitfield bitfield))

automatically generated writer method

Source

binary-types.lisp.

Target Slot

hash.

Generic Reader: storage-type (object)
Package

binary-types.

Methods
Reader Method: storage-type ((bitfield bitfield))

automatically generated reader method

Source

binary-types.lisp.

Target Slot

storage-type.

Generic Writer: (setf storage-type) (object)
Package

binary-types.

Methods
Writer Method: (setf storage-type) ((bitfield bitfield))

automatically generated writer method

Source

binary-types.lisp.

Target Slot

storage-type.


5.2.5 Structures

Structure: bitfield-entry
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: value
Readers

bitfield-entry-value.

Writers

(setf bitfield-entry-value).

Slot: bytespec
Readers

bitfield-entry-bytespec.

Writers

(setf bitfield-entry-bytespec).

Structure: record-slot
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

structure-object.

Direct methods

make-load-form.

Direct slots
Slot: name
Readers

record-slot-name.

Writers

(setf record-slot-name).

Slot: type
Package

common-lisp.

Readers

record-slot-type.

Writers

(setf record-slot-type).

Slot: map-write
Readers

record-slot-map-write.

Writers

(setf record-slot-map-write).

Slot: map-read
Readers

record-slot-map-read.

Writers

(setf record-slot-map-read).

Slot: map-read-delayed
Readers

record-slot-map-read-delayed.

Writers

(setf record-slot-map-read-delayed).

Slot: hidden-read-slot
Readers

record-slot-hidden-read-slot.

Writers

(setf record-slot-hidden-read-slot).

Slot: tags
Readers

record-slot-tags.

Writers

(setf record-slot-tags).


5.2.6 Classes

Class: binary-char8
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

binary-type.

Direct methods
Class: binary-class
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

binary-record.

Direct methods

binary-record-make-instance.

Direct slots
Slot: instance-class
Type

standard-class

Initargs

binary-types::instance-class

Class: binary-integer
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

binary-type.

Direct subclasses
Direct methods
Direct slots
Slot: endian
Type

binary-types:endianess

Initargs

binary-types::endian

Readers

binary-integer-endian.

Writers

This slot is read-only.

Class: binary-record
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

binary-type.

Direct subclasses
Direct methods
Direct slots
Slot: slots
Initargs

binary-types::slots

Readers

binary-record-slots.

Writers

(setf binary-record-slots).

Slot: offset
Initargs

binary-types::offset

Readers

binary-record-slot-offset.

Writers

This slot is read-only.

Class: binary-signed
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

binary-integer.

Direct methods

read-binary.

Class: binary-string
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

binary-type.

Direct methods
Direct slots
Slot: terminators
Initargs

binary-types::terminators

Readers

binary-string-terminators.

Writers

This slot is read-only.

Class: binary-struct
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

binary-record.

Direct methods

binary-record-make-instance.

Direct slots
Slot: constructor
Initargs

binary-types::constructor

Class: binary-type

BINARY-TYPE is the base class for binary types meta-classes.

Package

binary-types.

Source

binary-types.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: name
Initform

(quote #:anonymous-binary-type)

Initargs

binary-types::name

Readers

binary-type-name.

Writers

This slot is read-only.

Slot: sizeof
Initargs

binary-types:sizeof

Readers

sizeof.

Writers

This slot is read-only.

Class: binary-unsigned
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

binary-integer.

Direct methods

read-binary.

Class: bitfield
Package

binary-types.

Source

binary-types.lisp.

Direct superclasses

binary-type.

Direct methods
Direct slots
Slot: storage-type
Initargs

binary-types::storage-type

Readers

storage-type.

Writers

(setf storage-type).

Slot: hash
Type

hash-table

Initform

(make-hash-table :test (function eq))

Readers

bitfield-hash.

Writers

(setf bitfield-hash).


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (  
B   C   D   E   F   G   M   P   Q   R   S   W  
Index Entry  Section

(
(setf binary-record-slots): Private generic functions
(setf binary-record-slots): Private generic functions
(setf bitfield-entry-bytespec): Private ordinary functions
(setf bitfield-entry-value): Private ordinary functions
(setf bitfield-hash): Private generic functions
(setf bitfield-hash): Private generic functions
(setf find-binary-type): Public ordinary functions
(setf record-slot-hidden-read-slot): Private ordinary functions
(setf record-slot-map-read): Private ordinary functions
(setf record-slot-map-read-delayed): Private ordinary functions
(setf record-slot-map-write): Private ordinary functions
(setf record-slot-name): Private ordinary functions
(setf record-slot-tags): Private ordinary functions
(setf record-slot-type): Private ordinary functions
(setf storage-type): Private generic functions
(setf storage-type): Private generic functions

B
binary-integer-endian: Private generic functions
binary-integer-endian: Private generic functions
binary-record-alist: Private ordinary functions
binary-record-make-instance: Private generic functions
binary-record-make-instance: Private generic functions
binary-record-make-instance: Private generic functions
binary-record-slot-names: Public ordinary functions
binary-record-slot-offset: Private generic functions
binary-record-slot-offset: Private generic functions
binary-record-slots: Private generic functions
binary-record-slots: Private generic functions
binary-slot-tags: Public ordinary functions
binary-slot-type: Public ordinary functions
binary-slot-value: Public ordinary functions
binary-string-terminators: Private generic functions
binary-string-terminators: Private generic functions
binary-type-name: Private generic functions
binary-type-name: Private generic functions
bitfield-compute-numeric-value: Private ordinary functions
bitfield-compute-symbolic-value: Private ordinary functions
bitfield-entry-bytespec: Private ordinary functions
bitfield-entry-p: Private ordinary functions
bitfield-entry-value: Private ordinary functions
bitfield-hash: Private generic functions
bitfield-hash: Private generic functions

C
calculate-sizeof: Private ordinary functions
copy-bitfield-entry: Private ordinary functions
copy-record-slot: Private ordinary functions

D
define-binary-class: Public macros
define-binary-string: Public macros
define-binary-struct: Public macros
define-bitfield: Public macros
define-enum: Public macros
define-fixed-size-nt-string: Private macros
define-null-terminated-string: Public macros
define-signed: Public macros
define-unsigned: Public macros

E
enum-symbolic-value: Public ordinary functions
enum-value: Public ordinary functions

F
find-binary-type: Public ordinary functions
find-binary-type-name: Private ordinary functions
Function, (setf bitfield-entry-bytespec): Private ordinary functions
Function, (setf bitfield-entry-value): Private ordinary functions
Function, (setf find-binary-type): Public ordinary functions
Function, (setf record-slot-hidden-read-slot): Private ordinary functions
Function, (setf record-slot-map-read): Private ordinary functions
Function, (setf record-slot-map-read-delayed): Private ordinary functions
Function, (setf record-slot-map-write): Private ordinary functions
Function, (setf record-slot-name): Private ordinary functions
Function, (setf record-slot-tags): Private ordinary functions
Function, (setf record-slot-type): Private ordinary functions
Function, binary-record-alist: Private ordinary functions
Function, binary-record-slot-names: Public ordinary functions
Function, binary-slot-tags: Public ordinary functions
Function, binary-slot-type: Public ordinary functions
Function, binary-slot-value: Public ordinary functions
Function, bitfield-compute-numeric-value: Private ordinary functions
Function, bitfield-compute-symbolic-value: Private ordinary functions
Function, bitfield-entry-bytespec: Private ordinary functions
Function, bitfield-entry-p: Private ordinary functions
Function, bitfield-entry-value: Private ordinary functions
Function, calculate-sizeof: Private ordinary functions
Function, copy-bitfield-entry: Private ordinary functions
Function, copy-record-slot: Private ordinary functions
Function, enum-symbolic-value: Public ordinary functions
Function, enum-value: Public ordinary functions
Function, find-binary-type: Public ordinary functions
Function, find-binary-type-name: Private ordinary functions
Function, make-bitfield-entry: Private ordinary functions
Function, make-pairs: Private ordinary functions
Function, make-record-slot: Private ordinary functions
Function, merge-binary-records: Private ordinary functions
Function, merge-bytes: Public ordinary functions
Function, parse-bt-spec: Private ordinary functions
Function, quoted-name-p: Private ordinary functions
Function, read-binary-string: Public ordinary functions
Function, record-slot-hidden-read-slot: Private ordinary functions
Function, record-slot-map-read: Private ordinary functions
Function, record-slot-map-read-delayed: Private ordinary functions
Function, record-slot-map-write: Private ordinary functions
Function, record-slot-name: Private ordinary functions
Function, record-slot-p: Private ordinary functions
Function, record-slot-tags: Private ordinary functions
Function, record-slot-type: Private ordinary functions
Function, slot-offset: Public ordinary functions
Function, split-bytes: Public ordinary functions

G
Generic Function, (setf binary-record-slots): Private generic functions
Generic Function, (setf bitfield-hash): Private generic functions
Generic Function, (setf storage-type): Private generic functions
Generic Function, binary-integer-endian: Private generic functions
Generic Function, binary-record-make-instance: Private generic functions
Generic Function, binary-record-slot-offset: Private generic functions
Generic Function, binary-record-slots: Private generic functions
Generic Function, binary-string-terminators: Private generic functions
Generic Function, binary-type-name: Private generic functions
Generic Function, bitfield-hash: Private generic functions
Generic Function, read-binary: Public generic functions
Generic Function, read-binary-record: Public generic functions
Generic Function, sizeof: Public generic functions
Generic Function, storage-type: Private generic functions
Generic Function, write-binary: Public generic functions
Generic Function, write-binary-record: Public generic functions

M
Macro, define-binary-class: Public macros
Macro, define-binary-string: Public macros
Macro, define-binary-struct: Public macros
Macro, define-bitfield: Public macros
Macro, define-enum: Public macros
Macro, define-fixed-size-nt-string: Private macros
Macro, define-null-terminated-string: Public macros
Macro, define-signed: Public macros
Macro, define-unsigned: Public macros
Macro, with-binary-file: Public macros
Macro, with-binary-input-from-list: Public macros
Macro, with-binary-input-from-vector: Public macros
Macro, with-binary-output-to-list: Public macros
Macro, with-binary-output-to-vector: Public macros
make-bitfield-entry: Private ordinary functions
make-load-form: Public standalone methods
make-pairs: Private ordinary functions
make-record-slot: Private ordinary functions
merge-binary-records: Private ordinary functions
merge-bytes: Public ordinary functions
Method, (setf binary-record-slots): Private generic functions
Method, (setf bitfield-hash): Private generic functions
Method, (setf storage-type): Private generic functions
Method, binary-integer-endian: Private generic functions
Method, binary-record-make-instance: Private generic functions
Method, binary-record-make-instance: Private generic functions
Method, binary-record-slot-offset: Private generic functions
Method, binary-record-slots: Private generic functions
Method, binary-string-terminators: Private generic functions
Method, binary-type-name: Private generic functions
Method, bitfield-hash: Private generic functions
Method, make-load-form: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, read-binary: Public generic functions
Method, read-binary: Public generic functions
Method, read-binary: Public generic functions
Method, read-binary: Public generic functions
Method, read-binary: Public generic functions
Method, read-binary: Public generic functions
Method, read-binary: Public generic functions
Method, read-binary: Public generic functions
Method, read-binary-record: Public generic functions
Method, sizeof: Public generic functions
Method, sizeof: Public generic functions
Method, sizeof: Public generic functions
Method, sizeof: Public generic functions
Method, storage-type: Private generic functions
Method, write-binary: Public generic functions
Method, write-binary: Public generic functions
Method, write-binary: Public generic functions
Method, write-binary: Public generic functions
Method, write-binary: Public generic functions
Method, write-binary: Public generic functions
Method, write-binary: Public generic functions
Method, write-binary-record: Public generic functions

P
parse-bt-spec: Private ordinary functions
print-object: Public standalone methods
print-object: Public standalone methods

Q
quoted-name-p: Private ordinary functions

R
read-binary: Public generic functions
read-binary: Public generic functions
read-binary: Public generic functions
read-binary: Public generic functions
read-binary: Public generic functions
read-binary: Public generic functions
read-binary: Public generic functions
read-binary: Public generic functions
read-binary: Public generic functions
read-binary-record: Public generic functions
read-binary-record: Public generic functions
read-binary-string: Public ordinary functions
record-slot-hidden-read-slot: Private ordinary functions
record-slot-map-read: Private ordinary functions
record-slot-map-read-delayed: Private ordinary functions
record-slot-map-write: Private ordinary functions
record-slot-name: Private ordinary functions
record-slot-p: Private ordinary functions
record-slot-tags: Private ordinary functions
record-slot-type: Private ordinary functions

S
sizeof: Public generic functions
sizeof: Public generic functions
sizeof: Public generic functions
sizeof: Public generic functions
sizeof: Public generic functions
slot-offset: Public ordinary functions
split-bytes: Public ordinary functions
storage-type: Private generic functions
storage-type: Private generic functions

W
with-binary-file: Public macros
with-binary-input-from-list: Public macros
with-binary-input-from-vector: Public macros
with-binary-output-to-list: Public macros
with-binary-output-to-vector: Public macros
write-binary: Public generic functions
write-binary: Public generic functions
write-binary: Public generic functions
write-binary: Public generic functions
write-binary: Public generic functions
write-binary: Public generic functions
write-binary: Public generic functions
write-binary: Public generic functions
write-binary-record: Public generic functions
write-binary-record: Public generic functions


A.3 Variables

Jump to:   *  
B   C   E   H   I   M   N   O   S   T   V  
Index Entry  Section

*
*binary-read-byte*: Public special variables
*binary-type-namespace*: Private special variables
*binary-write-byte*: Public special variables
*endian*: Public special variables
*ignore-hidden-slots-for-pcl*: Private special variables
*padding-byte*: Public special variables

B
bytespec: Private structures

C
constructor: Private classes

E
endian: Private classes

H
hash: Private classes
hidden-read-slot: Private structures

I
instance-class: Private classes

M
map-read: Private structures
map-read-delayed: Private structures
map-write: Private structures

N
name: Private structures
name: Private classes

O
offset: Private classes

S
sizeof: Private classes
Slot, bytespec: Private structures
Slot, constructor: Private classes
Slot, endian: Private classes
Slot, hash: Private classes
Slot, hidden-read-slot: Private structures
Slot, instance-class: Private classes
Slot, map-read: Private structures
Slot, map-read-delayed: Private structures
Slot, map-write: Private structures
Slot, name: Private structures
Slot, name: Private classes
Slot, offset: Private classes
Slot, sizeof: Private classes
Slot, slots: Private classes
Slot, storage-type: Private classes
Slot, tags: Private structures
Slot, terminators: Private classes
Slot, type: Private structures
Slot, value: Private structures
slots: Private classes
Special Variable, *binary-read-byte*: Public special variables
Special Variable, *binary-type-namespace*: Private special variables
Special Variable, *binary-write-byte*: Public special variables
Special Variable, *endian*: Public special variables
Special Variable, *ignore-hidden-slots-for-pcl*: Private special variables
Special Variable, *padding-byte*: Public special variables
storage-type: Private classes

T
tags: Private structures
terminators: Private classes
type: Private structures

V
value: Private structures


A.4 Data types

Jump to:   B   C   E   F   P   R   S   T   U  
Index Entry  Section

B
binary-char8: Private classes
binary-class: Private classes
binary-integer: Private classes
binary-record: Private classes
binary-signed: Private classes
binary-string: Private classes
binary-struct: Private classes
binary-type: Private classes
binary-types: The binary-types system
binary-types: The binary-types package
binary-types-asd: The binary-types-asd package
binary-types.asd: The binary-types/binary-types․asd file
binary-types.lisp: The binary-types/binary-types․lisp file
binary-unsigned: Private classes
bitfield: Private classes
bitfield-entry: Private structures

C
char8: Public types
Class, binary-char8: Private classes
Class, binary-class: Private classes
Class, binary-integer: Private classes
Class, binary-record: Private classes
Class, binary-signed: Private classes
Class, binary-string: Private classes
Class, binary-struct: Private classes
Class, binary-type: Private classes
Class, binary-unsigned: Private classes
Class, bitfield: Private classes

E
endianess: Public types

F
File, binary-types.asd: The binary-types/binary-types․asd file
File, binary-types.lisp: The binary-types/binary-types․lisp file

P
Package, binary-types: The binary-types package
Package, binary-types-asd: The binary-types-asd package

R
record-slot: Private structures

S
s128: Public types
s16: Public types
s256: Public types
s32: Public types
s64: Public types
s8: Public types
Structure, bitfield-entry: Private structures
Structure, record-slot: Private structures
System, binary-types: The binary-types system

T
Type, char8: Public types
Type, endianess: Public types
Type, s128: Public types
Type, s16: Public types
Type, s256: Public types
Type, s32: Public types
Type, s64: Public types
Type, s8: Public types
Type, u128: Public types
Type, u16: Public types
Type, u256: Public types
Type, u32: Public types
Type, u64: Public types
Type, u8: Public types

U
u128: Public types
u16: Public types
u256: Public types
u32: Public types
u64: Public types
u8: Public types