Module
Pipes.Node.Stream
- Package
- purescript-node-stream-pipes
- Repository
- cakekindel/purescript-node-stream-pipes
#fromReadable Source
fromReadable :: forall s a m. MonadThrow Error m => MonadAff m => Read s a => s -> Producer_ (Maybe a) m Unit
Convert a Readable
stream to a Pipe
.
This will yield Nothing
before exiting, signaling
End-of-stream.
#fromWritable Source
fromWritable :: forall s a m. MonadThrow Error m => MonadAff m => Write s a => s -> Consumer (Maybe a) m Unit
Convert a Writable
stream to a Pipe
.
When Nothing
is piped to this, the stream will
be end
ed, and the pipe will noop if invoked again.
#fromTransformEffect Source
fromTransformEffect :: forall a b m. MonadThrow Error m => MonadAff m => Effect (Transform a b) -> AsyncPipe (Maybe a) (Maybe b) m Unit
#fromTransform Source
fromTransform :: forall a b m. MonadThrow Error m => MonadAff m => Transform a b -> AsyncPipe (Maybe a) (Maybe b) m Unit
Convert a Transform
stream to an AsyncPipe
.
#inEOS Source
inEOS :: forall a b m. MonadRec m => Pipe a b m Unit -> Pipe (Maybe a) (Maybe b) m Unit
Lift a Pipe a a
to Pipe (Maybe a) (Maybe a)
.
Allows easily using pipes not concerned with the EOS signal with pipes that do need this signal.
(ex. Pipes.Node.Buffer.toString
doesn't need an EOS signal, but Pipes.Node.FS.create
does.)
Just
values will be passed to the pipe, and the response(s) will be wrapped in Just
.
Nothing
will bypass the given pipe entirely, and the pipe will not be invoked again.