Fork of https://github.com/mv2devnul/taglib

Anton Vodonosov 18ad86626c Fix for CLISP: unquoted symbol #:stream-read-sequence introduced several commits ago. 13 anni fa
COPYING c4cbfdc0b4 MIT-style lizenz 20 anni fa
Makefile 7c02055836 Initial revision 20 anni fa
README 326f57d9f4 README: updated the list of CL implementation supporting stream-file-position 13 anni fa
build.xcvb 3f4fe905db XCVB support (by Fare <fahree@gmail.com>) 16 anni fa
mixin.lisp 18ad86626c Fix for CLISP: unquoted symbol #:stream-read-sequence introduced several commits ago. 13 anni fa
package.lisp 0cf9b0f162 Added support for MOCL 13 anni fa
trivial-gray-streams.asd f426e5676e trivial-gray-streams.asd : remove unnecessary package trivial-gray-streams-system 13 anni fa

README

trivial-gray-streams
====================

This system provides an extremely thin compatibility layer for gray
streams. It is nearly *too* trivial for a complete package, except that
I have copy&pasted this code into enough projects now that I decided to
factor it out once again now, and then *never* have to touch it again.


How to use it
=============

1. Use the package TRIVIAL-GRAY-STREAMS instead of whatever
implementation-specific package you would have to use otherwise to
get at gray stream symbols.
2. For STREAM-READ-SEQUENCE and STREAM-WRITE-SEQUENCE, notice that we
use two required arguments and allow additional keyword arguments.
So the lambda list when defining a method on either function should look
like this:
(stream sequence start end &key)
3. In order for (2) to work on all Lisps, make sure to subclass all your
stream classes from TRIVIAL-GRAY-STREAM-MIXIN if you intend to define
methods on those two generic functions.


Extensions
==========

Generic function STREAM-READ-SEQUENCE (stream sequence start end &key)
Generic function STREAM-WRITE-SEQUENCE (stream sequence start end &key)

See above.

Generic function STREAM-FILE-POSITION (stream) => file position
Generic function (SETF STREAM-FILE-POSITION) (position-spec stream) => successp

Will only be called by ABCL, ACL, LispWorks, CCL, CLISP, SBCL and MOCL.