From 7847b55cea68caf5c1d4cb1aa135966b74142a5b Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Thu, 25 Oct 2012 21:43:52 -0700 Subject: [PATCH] io.streams.zeros: adding @erg's zero-stream. --- extra/io/streams/zeros/zeros.factor | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 extra/io/streams/zeros/zeros.factor diff --git a/extra/io/streams/zeros/zeros.factor b/extra/io/streams/zeros/zeros.factor new file mode 100644 index 0000000000..d64c7e0369 --- /dev/null +++ b/extra/io/streams/zeros/zeros.factor @@ -0,0 +1,20 @@ +! Copyright (C) 2010 Doug Coleman. +! See http://factorcode.org/license.txt for BSD license. +USING: destructors io kernel sequences ; +IN: io.streams.zeros + +TUPLE: zero-stream ; + +C: zero-stream + +M: zero-stream stream-element-type drop +byte+ ; + +M: zero-stream stream-read-unsafe drop [ drop 0 ] map! drop ; + +M: zero-stream stream-read1 drop 0 ; + +M: zero-stream stream-read-partial-unsafe stream-read-unsafe ; + +M: zero-stream dispose drop ; + +INSTANCE: zero-stream input-stream