Commit a7cfc166 authored by Pascal J. Bourguignon's avatar Pascal J. Bourguignon

Renamed package com.informatimago.clext.pipe.

parent 39b072c6
......@@ -7,7 +7,22 @@ This directory contains Common-Lisp packages that are mostly portable,
but that use some extensions, packages out of the Common-Lisp
specifications, like GRAY or other portability libraries.
com.informatimago.clext.association
This system defines a package exporting macros to define classes
and associations separately.
com.informatimago.clext.character-sets
This system defines a package to manage character-sets and
external-formats portably.
com.informatimago.clext.closer-weak
This system defines a package providing a portability layer for
weak pointers and related structures on ccl, clisp, sbcl and cmu.
com.informatimago.clext.pipe
This system defines a package exporting a pipe abstraction
connecting an output stream to an input stream thru a queue or a
buffer. The threads writing or reading are synchronized.
.. comment:
......
;;;; -*- mode:lisp;coding:utf-8 -*-
;;;;**************************************************************************
;;;;FILE: com.informatimago.clext.pipe-stream.asd
;;;;FILE: com.informatimago.clext.pipe.asd
;;;;LANGUAGE: Common-Lisp
;;;;SYSTEM: Common-Lisp
;;;;USER-INTERFACE: NONE
;;;;DESCRIPTION
;;;;
;;;; ASD file to load the com.informatimago.clext.pipe-stream library.
;;;; ASD file to load the com.informatimago.clext.pipe library.
;;;;
;;;;AUTHORS
;;;; <PJB> Pascal J. Bourguignon <pjb@informatimago.com>
......@@ -33,9 +33,9 @@
;;;;**************************************************************************
#+mocl
(asdf:defsystem "com.informatimago.clext.pipe-stream"
(asdf:defsystem "com.informatimago.clext.pipe"
;; system attributes:
:description "Dummy Informatimago Common Lisp Extensions: Pipe-Streams."
:description "Dummy Informatimago Common Lisp Extensions: Pipes."
:long-description "
This system would use TRIVIAL-GRAY-STREAMS, which is not available on MOCL.
......@@ -58,12 +58,12 @@ This system would use TRIVIAL-GRAY-STREAMS, which is not available on MOCL.
:components ())
#-mocl
(asdf:defsystem "com.informatimago.clext.pipe-stream"
(asdf:defsystem "com.informatimago.clext.pipe"
;; system attributes:
:description "Informatimago Common Lisp Extensions: Pipe-Streams."
:description "Informatimago Common Lisp Extensions: Pipes."
:long-description "
This system provides PIPE-STREAMS, a pair of input and output stream
This system provides PIPES, a pair of input and output stream
with a synchronized queue in the middle.
"
......@@ -84,8 +84,8 @@ with a synchronized queue in the middle.
"com.informatimago.clext.closer-weak") ; weak hash-tables are needed for gate.
:components ((:file "gate")
(:file "debug")
(:file "pipe-stream" :depends-on ("gate" "debug")))
#+adsf3 :in-order-to #+adsf3 ((test-op (test-op "com.informatimago.clext.pipe-stream.test")))
(:file "pipe" :depends-on ("gate" "debug")))
#+adsf3 :in-order-to #+adsf3 ((test-op (test-op "com.informatimago.clext.pipe.test")))
#+asdf-unicode :encoding #+asdf-unicode :utf-8)
......
;;;; -*- mode:lisp;coding:utf-8 -*-
;;;;**************************************************************************
;;;;FILE: com.informatimago.clext.pipe-stream.test.asd
;;;;FILE: com.informatimago.clext.pipe.test.asd
;;;;LANGUAGE: Common-Lisp
;;;;SYSTEM: Common-Lisp
;;;;USER-INTERFACE: NONE
;;;;DESCRIPTION
;;;;
;;;; ASD file to test the com.informatimago.clext.pipe-stream library.
;;;; ASD file to test the com.informatimago.clext.pipe library.
;;;;
;;;;AUTHORS
;;;; <PJB> Pascal J. Bourguignon <pjb@informatimago.com>
......@@ -32,12 +32,12 @@
;;;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;;;**************************************************************************
(asdf:defsystem "com.informatimago.clext.pipe-stream.test"
(asdf:defsystem "com.informatimago.clext.pipe.test"
;; system attributes:
:description "Informatimago Common Lisp Extensions: Pipe-Streams - Tests."
:description "Informatimago Common Lisp Extensions: Pipes - Tests."
:long-description "
Tests the pipe-streams.
Tests the pipes.
"
:author "Pascal J. Bourguignon <pjb@informatimago.com>"
......@@ -54,11 +54,11 @@ Tests the pipe-streams.
((#:albert #:docbook #:textcolor) . "black"))
#+asdf-unicode :encoding #+asdf-unicode :utf-8
:depends-on ("com.informatimago.common-lisp.cesarum"
"com.informatimago.clext.pipe-stream")
:components ((:file "pipe-stream-test"))
"com.informatimago.clext.pipe")
:components ((:file "pipe-test"))
#+asdf3 :perform #+asdf3 (asdf:test-op
(o s)
(let ((*package* (find-package "COM.INFORMATIMAGO.CLEXT.PIPE-STREAM")))
(uiop:symbol-call "COM.INFORMATIMAGO.CLEXT.PIPE-STREAM.TEST" "TEST/ALL"))))
(let ((*package* (find-package "COM.INFORMATIMAGO.CLEXT.PIPE")))
(uiop:symbol-call "COM.INFORMATIMAGO.CLEXT.PIPE.TEST" "TEST/ALL"))))
;;;; THE END ;;;;
;;;; -*- mode:lisp;coding:utf-8 -*-
;;;;**************************************************************************
;;;;FILE: pipe-stream-test.lisp
;;;;FILE: pipe-test.lisp
;;;;LANGUAGE: Common-Lisp
;;;;SYSTEM: Common-Lisp
;;;;USER-INTERFACE: NONE
;;;;DESCRIPTION
;;;;
;;;; Tests the pipe streams.
;;;; Tests the pipes.
;;;;
;;;;AUTHORS
;;;; <PJB> Pascal J. Bourguignon <pjb@informatimago.com>
......
;;;; -*- mode:lisp;coding:utf-8 -*-
;;;;**************************************************************************
;;;;FILE: pipe-stream.lisp
;;;;FILE: pipe.lisp
;;;;LANGUAGE: Common-Lisp
;;;;SYSTEM: Common-Lisp
;;;;USER-INTERFACE: NONE
;;;;DESCRIPTION
;;;;
;;;; Implements a pipe stream using Gray streams and bordeaux-threads.
;;;; Implements a pipe using Gray streams and bordeaux-threads.
;;;;
;;;; The data written to the pipe-stream is queued (if a maximum
;;;; The data written to the pipe-output-stream is queued (if a maximum
;;;; queue-size is specified for the stream, then the writing
;;;; thread may block if the buffer is full).
;;;;
;;;; The data queued can be read from the pipe-stream. If the
;;;; The data queued can be read from the pipe-input-stream. If the
;;;; queue is empty, then the reading stream may block (unless it
;;;; used listen, read-char-no-hang, etc).
;;;;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment