Common Lisp Package: ERLANG-TERM

Erlang External Term Format

README:

FUNCTION

Public

BINARY (&REST BYTES)

Creates an Erlang binary from BYTES.

BINARY-TO-STRING (BINARY)

Translates the bytes in BINARY to an ASCII string.

BYTES-TO-BINARY (BYTES)

Creates an Erlang binary from BYTES.

DECODE (BYTES &KEY (START 0) (VERSION-TAG NIL))

Decode a sequence of bytes to an Erlang object.

ERLANG-TRANSLATABLE-P (OBJECT)

Returns true if OBJECT is translatable to an Erlang object.

STRING-TO-BINARY (STRING)

Creates an Erlang binary from the characters in STRING.

TUPLE (&REST ERLANG-TRANSLATABLE-OBJECTS)

Create an Erlang tuple

Undocumented

MAKE-ATOM (STRING)

TUPLE-ARITY (TUPLE)

TUPLE-REF (TUPLE POS)

Private

Undocumented

BIGNUM-BYTE-LENGTH (BIGNUM)

BIGNUM-TO-BYTES (BIGNUM LENGTH)

BYTES-TO-BIGNUM (BYTES &OPTIONAL NUMBER-OF-BYTES (POS 0))

DECODE-COMPRESSED-ERLANG-TERM (BYTES &OPTIONAL (POS 0))

DECODE-ERLANG-ATOM (BYTES &OPTIONAL (POS 0))

DECODE-ERLANG-INTEGER (BYTES &OPTIONAL (POS 0))

DECODE-ERLANG-PID (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-ATOM (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-ATOM-CACHE-REF (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-BINARY (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-BIT-BINARY (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-EXPORT (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-FLOAT (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-FUN (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-INTEGER (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-LARGE-BIG (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-LARGE-TUPLE (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-LIST (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-NEW-FLOAT (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-NEW-FUN (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-NEW-REFERENCE (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-NIL (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-PID (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-PORT (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-REFERENCE (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-SMALL-ATOM (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-SMALL-BIG (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-SMALL-INTEGER (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-SMALL-TUPLE (BYTES &OPTIONAL (POS 0))

DECODE-EXTERNAL-STRING (BYTES &OPTIONAL (POS 0))

DECODE-LIST-CONTENTS (BYTES LENGTH &OPTIONAL (POS 0))

DECODE-TUPLE-CONTENTS (BYTES ARITY POS)

ENCODE-EXTERNAL-ATOM (ATOM)

ENCODE-EXTERNAL-ATOM-CACHE-REF (REFERENCE-INDEX)

ENCODE-EXTERNAL-BINARY (ERLANG-BINARY)

ENCODE-EXTERNAL-BIT-BINARY (ERLANG-BINARY)

ENCODE-EXTERNAL-EXPORT (FUN)

ENCODE-EXTERNAL-FLOAT (FLOAT)

ENCODE-EXTERNAL-FUN (FUN)

ENCODE-EXTERNAL-INTEGER (INT32)

ENCODE-EXTERNAL-LARGE-BIG (BIGNUM)

ENCODE-EXTERNAL-LARGE-TUPLE (TUPLE ATOM-CACHE-ENTRIES)

ENCODE-EXTERNAL-LIST (LIST &OPTIONAL ATOM-CACHE-ENTRIES)

ENCODE-EXTERNAL-NEW-FLOAT (DOUBLE-FLOAT)

ENCODE-EXTERNAL-NEW-FUN (FUN)

ENCODE-EXTERNAL-NEW-REFERENCE (REF)

ENCODE-EXTERNAL-NIL

ENCODE-EXTERNAL-PID (PID)

ENCODE-EXTERNAL-PORT (PORT)

ENCODE-EXTERNAL-REFERENCE (REF)

ENCODE-EXTERNAL-SMALL-ATOM (ATOM)

ENCODE-EXTERNAL-SMALL-BIG (BIGNUM)

ENCODE-EXTERNAL-SMALL-INTEGER (UINT8)

ENCODE-EXTERNAL-SMALL-TUPLE (TUPLE ATOM-CACHE-ENTRIES)

ENCODE-EXTERNAL-STRING (CHARS)

FOUR-BYTE-BLOCKS (BYTES)

KEEP-BITS (BYTE BITS)

LIST-CONTENTS-TO-BYTES (LIST &OPTIONAL ATOM-CACHE-ENTRIES)

MAPCONC-VECTOR (FN VECTOR)

MACRO

Private

Undocumented

MULTIPLE-VALUE-BIND* (BIND-CLAUSES &BODY BODY)

GENERIC-FUNCTION

Public

ENCODE (ERLANG-TRANSLATABLE-OBJECT &KEY VERSION-TAG ATOM-CACHE-ENTRIES &ALLOW-OTHER-KEYS)

Encodes the Erlang translatable object to a byte vector.

MATCH-P (OBJECT-A OBJECT-B)

Predicate for testing if two Erlang objects match.

SIZE (TUPLE-OR-BINARY)

Returns the size of an Erlang tuple or binary.

Private

Undocumented

COMMENT (CONDITION)

EXPECTED-LENGTH (CONDITION)

EXPECTED-TAGS (CONDITION)

OBJECT (CONDITION)

RECEIVED-LENGTH (CONDITION)

RECEIVED-TAG (CONDITION)

SLOT-ACCESSOR

Public

ARITY (TUPLE-OR-FUN)

The Returns the arity of an Erlang tuple or fun.

BITS-IN-LAST-BYTE (OBJECT)

The number of bits in the last byte of an Erlang binary.

BYTES (CONDITION)

Returns a vector of bytes from an Erlang binary.

Undocumented

ELEMENTS (OBJECT)

MODULE (OBJECT)

NODE (OBJECT)

Private

Undocumented

FREE-VARS (OBJECT)

VARIABLE

Public

*ATOM-SYMBOL-PACKAGE*

The package in which atom symbols are interned. Symbols are uninterned if NIL.

*CACHED-ATOMS*

A vector of cached atoms.

*ERLANG-FALSE-IS-LISP-NIL*

Interpret the Erlang 'false' as NIL instead of '|false| in Lisp.

*ERLANG-STRING-IS-LISP-STRING*

Interpret an Erlang string as Lisp string instead of a Lisp list.

*ERLANG-TRUE-IS-LISP-T*

Interpret the Erlang 'true' as T instead of '|true| in Lisp.

*LISP-NIL-AT-TAIL-IS-ERLANG-EMPTY-LIST*

Send the Lisp NIL at the tail of a list to Erlang as the empty list instead of as a symbol.

*LISP-NIL-IS-ERLANG-EMPTY-LIST*

Send the Lisp NIL to Erlang as the empty list instead of as a symbol.

*LISP-NIL-IS-ERLANG-FALSE*

Send the Lisp NIL to Erlang as 'false' instead of 'NIL'.

*LISP-STRING-IS-ERLANG-BINARY*

Send a Lisp string to Erlang as a binary instead of a list.

*LISP-T-IS-ERLANG-TRUE*

Send the Lisp T to Erlang as 'true' instead of 'T'.

CLASS

Public

ERLANG-BINARY

Erlang binary.

ERLANG-EXTERNAL-FUN

Erlang fun in external format (module:function/arity).

ERLANG-NEW-INTERNAL-FUN

Erlang fun in new internal format.

ERLANG-OLD-INTERNAL-FUN

Erlang fun in old internal-format

ERLANG-PID

Erlang PID.

ERLANG-PORT

Erlang port.

ERLANG-REFERENCE

Erlang ref.

ERLANG-TUPLE

Erlang tuple.

Private

ERLANG-FUN

Erlang fun.

ERLANG-INTERNAL-FUN

Erlang fun in internal format.

Undocumented

ERLANG-IDENTIFIER

ERLANG-OBJECT

CONDITION

Public

MALFORMED-EXTERNAL-ERLANG-TERM-ERROR

This error is signaled when an encoded Erlang term is malformed.

NOT-IMPLEMENTED-ERROR

The signaling function is not implemented yet.

UNEXPECTED-MESSAGE-TAG-ERROR

This error is signaled when an unexpected message tag is read.

UNTRANSLATABLE-LISP-OBJECT-ERROR

This error is signaled when trying to encode an unencodable object.

Private

MALFORMED-MESSAGE-ERROR

This error is signaled when a protocol message is malformed.

UNEXPECTED-MESSAGE-LENGTH-ERROR

This error is signaled when the specified length of a message is not the expected length.

CONSTANT

Private

Undocumented

+ATOM-CACHE-REF+

+ATOM-EXT+

+BINARY-EXT+

+BIT-BINARY-EXT+

+COMPRESSED-TERM+

+EXPORT-EXT+

+FLOAT-EXT+

+FUN-EXT+

+INTEGER-EXT+

+LARGE-BIG-EXT+

+LARGE-TUPLE-EXT+

+LIST-EXT+

+NEW-FLOAT-EXT+

+NEW-FUN-EXT+

+NEW-REFERENCE-EXT+

+NIL-EXT+

+PID-EXT+

+PORT-EXT+

+REFERENCE-EXT+

+SMALL-ATOM-EXT+

+SMALL-BIG-EXT+

+SMALL-INTEGER-EXT+

+SMALL-TUPLE-EXT+

+STRING-EXT+