From cd7584eb5fd0a6677e72aea011caf9e3cdc0ee02 Mon Sep 17 00:00:00 2001 From: Michele Caini Date: Mon, 4 Jul 2016 17:14:49 +0200 Subject: [PATCH] refinements --- src/uvw/stream.hpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/uvw/stream.hpp b/src/uvw/stream.hpp index 1ed1717c..9912245b 100644 --- a/src/uvw/stream.hpp +++ b/src/uvw/stream.hpp @@ -82,8 +82,8 @@ public: this->invoke(&uv_read_stop, this->template get()); } - void write(std::unique_ptr data, ssize_t length) { - uv_buf_t bufs[] = { uv_buf_init(data.get(), length) }; + void write(char *data, ssize_t length) { + uv_buf_t bufs[] = { uv_buf_init(data, length) }; uv_write_t *req = new uv_write_t; auto err = uv_write(req, this->template get(), bufs, 1, &Stream::writeCallback); @@ -94,8 +94,12 @@ public: } } - int tryWrite(std::unique_ptr data, ssize_t length) noexcept { - uv_buf_t bufs[] = { uv_buf_init(data.get(), length) }; + void write(std::unique_ptr data, ssize_t length) { + write(data.get(), length); + } + + int tryWrite(char *data, ssize_t length) noexcept { + uv_buf_t bufs[] = { uv_buf_init(data, length) }; auto bw = uv_try_write(this->template get(), bufs, 1); if(bw < 0) { @@ -106,6 +110,10 @@ public: return bw; } + int tryWrite(std::unique_ptr data, ssize_t length) noexcept { + return tryWrite(data.get(), length); + } + bool readable() const noexcept { return (uv_is_readable(this->template get()) == 1); }