1 ;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp -*-
3 ;; Copyright (C) 2006, 2007 Stelian Ionescu
5 ;; This code is free software; you can redistribute it and/or
6 ;; modify it under the terms of the version 2.1 of
7 ;; the GNU Lesser General Public License as published by
8 ;; the Free Software Foundation, as clarified by the
9 ;; preamble found here:
10 ;; http://opensource.franz.com/preamble.html
12 ;; This program is distributed in the hope that it will be useful,
13 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ;; GNU General Public License for more details.
17 ;; You should have received a copy of the GNU Lesser General
18 ;; Public License along with this library; if not, write to the
19 ;; Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
20 ;; Boston, MA 02110-1301, USA
22 (in-package :common-lisp-user
)
24 #-
(or sbcl cmu openmcl clisp allegro lispworks
)
25 (error "Your CL implementation is not suported.")
27 (macrolet ((def-my-package (&rest methods
)
28 `(defpackage :io.streams
29 (:use
#:common-lisp
#:cffi
#:iolib-utils
31 #+(or sbcl cmu openmcl clisp allegro lispworks
)
32 (:import-from
#+sbcl
#:sb-gray
40 #:ub8
#:ub16
#:ub32
#:sb8
#:sb16
#:sb32
41 #:ub8-sarray
#:ub8-vector
#:ub16-sarray
44 #:dual-channel-fd-mixin
45 #:dual-channel-single-fd-mixin
46 #:input-fd
#:input-fd-of
#:input-fd-non-blocking
47 #:output-fd
#:output-fd-of
#:output-fd-non-blocking
48 #:fd-of
#:fd-non-blocking
49 #:dual-channel-gray-stream
))))
51 #:fundamental-binary-input-stream
#:fundamental-binary-output-stream
52 #:fundamental-character-input-stream
#:fundamental-character-output-stream
53 #:stream-clear-input
#:stream-clear-output
54 #:stream-finish-output
#:stream-force-output
55 #:stream-read-byte
#:stream-write-byte
56 #:stream-peek-char
#:stream-read-char
#:stream-read-char-no-hang
57 #:stream-unread-char
#:stream-read-line
#:stream-listen
58 #-
(or clisp openmcl
) #:stream-read-sequence
59 #+openmcl
#:stream-read-vector
60 #+clisp
#:stream-read-char-sequence
#+clisp
#:stream-read-byte-sequence
61 #-
(or clisp openmcl
) #:stream-write-sequence
62 #+openmcl
#:stream-write-vector
63 #+clisp
#:stream-write-char-sequence
#+clisp
#:stream-write-byte-sequence
64 #:stream-fresh-line
#:stream-start-line-p
#:stream-line-column
65 #:stream-terpri
#:stream-write-char
#:stream-write-string
))