Common Lisp Package: TRIVIAL-BIT-STREAMS

README:

FUNCTION

Public

BIT-STREAM-BYTE-COUNTER (BIT-STREAM)

Retrieves total number of bytes processed by bit stream

FLUSH-BIT-INPUT-STREAM (BIT-STREAM)

Resets stream's internal bit counters, effectively invalidating current contents of the stream's buffer.

FLUSH-BIT-OUTPUT-STREAM (BIT-STREAM)

Invokes bit output stream's callback and resets stream's internal bit counters.

READ-BIT (BIT-STREAM &OPTIONAL (EOF-ERROR-P T) EOF-VALUE)

Retrieves the next bit from bit input stream.

READ-BITS (BITS-TO-READ BIT-STREAM)

Retrieves the next BITS-TO-READ bits from bit input stream. Returns an integer which is filled with bits from the stream starting from the least significant bit, and the total count of bits readen, which may be less than the requested count.

READ-OCTET (BIT-STREAM &OPTIONAL (EOF-ERROR-P T) EOF-VALUE)

Retrieves the next non-packed octet from the bit input stream.

READ-OCTET-VECTOR (VECTOR BIT-STREAM &KEY (START 0) END)

Destructively modifies VECTOR by reading non-packed octets from bit input stream. Returns the total number of octets readen.

WRITE-BIT (BIT BIT-STREAM)

Writes a single bit to the bit output stream.

WRITE-BITS (BITS BITS-TO-WRITE BIT-STREAM)

Writes a sequence of bits to the bit output stream starting from the least significant bit of the supplied integer.

WRITE-OCTET (OCTET BIT-STREAM)

Writes a single non-packed octet to the bit output stream.

WRITE-OCTET-VECTOR (VECTOR BIT-STREAM &KEY (START 0) END)

Writes a vector of non-packed octets to the bit output stream.

Undocumented

MAKE-BLACKHOLE-OUTPUT-CALLBACK

MAKE-EOF-INPUT-CALLBACK

MAKE-STREAM-INPUT-CALLBACK (STREAM)

MAKE-STREAM-OUTPUT-CALLBACK (STREAM)

Private

BIT-INPUT-STREAM-CORE-BUFFER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-INPUT-STREAM-CORE-BYTE-COUNTER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-INPUT-STREAM-CORE-END (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-INPUT-STREAM-CORE-IBIT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-INPUT-STREAM-CORE-IBYTE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-OUTPUT-STREAM-CORE-BUFFER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-OUTPUT-STREAM-CORE-BYTE-COUNTER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-OUTPUT-STREAM-CORE-END (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-OUTPUT-STREAM-CORE-IBIT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-OUTPUT-STREAM-CORE-IBYTE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-STREAM-CORE-BUFFER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-STREAM-CORE-BYTE-COUNTER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-STREAM-CORE-END (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-STREAM-CORE-IBIT (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

BIT-STREAM-CORE-IBYTE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

Undocumented

SETFBIT-INPUT-STREAM-CORE-BUFFER (NEW-VALUE INSTANCE)

SETFBIT-INPUT-STREAM-CORE-BYTE-COUNTER (NEW-VALUE INSTANCE)

SETFBIT-INPUT-STREAM-CORE-END (NEW-VALUE INSTANCE)

SETFBIT-INPUT-STREAM-CORE-IBIT (NEW-VALUE INSTANCE)

SETFBIT-INPUT-STREAM-CORE-IBYTE (NEW-VALUE INSTANCE)

BIT-INPUT-STREAM-CORE-P (OBJECT)

SETFBIT-OUTPUT-STREAM-CORE-BUFFER (NEW-VALUE INSTANCE)

SETFBIT-OUTPUT-STREAM-CORE-BYTE-COUNTER (NEW-VALUE INSTANCE)

SETFBIT-OUTPUT-STREAM-CORE-END (NEW-VALUE INSTANCE)

SETFBIT-OUTPUT-STREAM-CORE-IBIT (NEW-VALUE INSTANCE)

SETFBIT-OUTPUT-STREAM-CORE-IBYTE (NEW-VALUE INSTANCE)

BIT-OUTPUT-STREAM-CORE-P (OBJECT)

SETFBIT-STREAM-CORE-BUFFER (NEW-VALUE INSTANCE)

SETFBIT-STREAM-CORE-BYTE-COUNTER (NEW-VALUE INSTANCE)

SETFBIT-STREAM-CORE-END (NEW-VALUE INSTANCE)

SETFBIT-STREAM-CORE-IBIT (NEW-VALUE INSTANCE)

SETFBIT-STREAM-CORE-IBYTE (NEW-VALUE INSTANCE)

BIT-STREAM-CORE-P (OBJECT)

COPY-BIT-INPUT-STREAM-CORE (INSTANCE)

COPY-BIT-OUTPUT-STREAM-CORE (INSTANCE)

COPY-BIT-STREAM-CORE (INSTANCE)

ENSURE-INPUT (BIT-STREAM-CORE BIT-STREAM)

ENSURE-OUTPUT (BIT-STREAM-CORE CALLBACK)

INC-BIT-COUNTER (BIT-STREAM-CORE &OPTIONAL (N 1))

MAKE-BIT-INPUT-STREAM-CORE (BUFFER-SIZE &AUX (BUFFER (MAKE-ARRAY BUFFER-SIZE ELEMENT-TYPE 'UB8)))

MAKE-BIT-OUTPUT-STREAM-CORE (BUFFER-SIZE &AUX (BUFFER (MAKE-ARRAY BUFFER-SIZE ELEMENT-TYPE 'UB8)) (END BUFFER-SIZE))

MACRO

Public

Undocumented

WITH-BIT-INPUT-STREAM ((VAR &KEY (CALLBACK '(MAKE-EOF-INPUT-CALLBACK)) (BUFFER-SIZE '*DEFAULT-BIT-INPUT-STREAM-BUFFER-SIZE*)) &BODY BODY)

WITH-BIT-OUTPUT-STREAM ((VAR &KEY (CALLBACK '(MAKE-BLACKHOLE-OUTPUT-CALLBACK)) (BUFFER-SIZE '*DEFAULT-BIT-OUTPUT-STREAM-BUFFER-SIZE*)) &BODY BODY)

GENERIC-FUNCTION

Public

Undocumented

BIT-STREAM-BUFFER-OVERFLOW-BUFFER-SIZE (CONDITION)

SETFBIT-STREAM-BUFFER-OVERFLOW-BUFFER-SIZE (NEW-VALUE CONDITION)

BIT-STREAM-BUFFER-OVERFLOW-INDEX (CONDITION)

SETFBIT-STREAM-BUFFER-OVERFLOW-INDEX (NEW-VALUE CONDITION)

SLOT-ACCESSOR

Private

Undocumented

BIT-STREAM-CALLBACK (OBJECT)

SETFBIT-STREAM-CALLBACK (NEW-VALUE OBJECT)

VARIABLE

Public

*BIT-STREAM-BIT-IO*

In case when this variable is bound to NIL, WRITE-BYTE/READ-BYTE and WRITE-SEQUENCE/READ-SEQUENCE will behave like WRITE-OCTET/READ-OCTET and WRITE-OCTET-VECTOR/READ-OCTET-VECTOR while operating on bit streams. Otherwise, they will treat supplied parameter as a single bit or a sequence of bits correspondingly.

*DEFAULT-BIT-INPUT-STREAM-BUFFER-SIZE*

Default buffer size for input bit stream, in octets.

*DEFAULT-BIT-OUTPUT-STREAM-BUFFER-SIZE*

Default buffer size for output bit stream, in octets.

CLASS

Public

BIT-INPUT-STREAM

Represents the state of the bit input stream.

BIT-OUTPUT-STREAM

Represents the state of the bit output stream.

BIT-STREAM

A mixin, that describes the state of a bit stream. Not to be instantiated.

Private

Undocumented

BIT-INPUT-STREAM-CORE

BIT-OUTPUT-STREAM-CORE

BIT-STREAM-CORE

CONDITION

Public

BIT-STREAM-BUFFER-OVERFLOW

Represents a condition when callback of a bit input stream returned value that is greater than the size of the internal buffer

BIT-STREAM-CLOSED-ERROR

Represents a condition when someone is trying to perform an i/o operation on closed bit stream.

BIT-STREAM-END-OF-FILE

Represents a condition when no more bits are availiable to read from bit input stream

BIT-STREAM-ERROR

Represents a bit stream i/o error