ADDRESS-FAMILY, TYPE and CONNECT keyword parameters of MAKE-SOCKET now take defaults.
[iolib.git] / io.streams / pkgdcl.lisp
blobe4a88dcc75c8946be7510b2078471b5b8e8c0a27
1 ;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp -*-
3 ;; Copyright (C) 2006, 2007 Stelian Ionescu
4 ;;
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
30 #:io.encodings)
31 #+(or sbcl cmu openmcl clisp allegro lispworks)
32 (:import-from #+sbcl #:sb-gray
33 #+cmu #:ext
34 #+openmcl #:ccl
35 #+clisp #:gray
36 #+allegro #:excl
37 #+lispworks #:stream
38 ,@methods)
39 (:export ,@methods
40 #:ub8 #:ub16 #:ub32 #:sb8 #:sb16 #:sb32
41 #:ub8-sarray #:ub8-vector #:ub16-sarray
42 #:external-format-of
43 #:fd-mixin
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))))
50 (def-my-package
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))