diff --git a/examples/async_basic.cpp b/examples/async_basic.cpp index cca9551a..1f7be62a 100644 --- a/examples/async_basic.cpp +++ b/examples/async_basic.cpp @@ -30,26 +30,26 @@ reader(net::ip::tcp::socket& socket, std::queue& reqs) buffers bufs; std::string buffer; - detail::prepare_queue(reqs); + prepare_queue(reqs); reqs.back().hello("3"); co_await async_write(socket, net::buffer(reqs.back().payload), net::use_awaitable); detail::response_adapters adapters{bufs}; for (;;) { - auto const event = co_await detail::async_consume(socket, buffer, adapters, reqs); + auto const event = co_await async_consume(socket, buffer, adapters, reqs); switch (event.first) { case command::hello: { - auto const empty = detail::prepare_queue(reqs); + auto const empty = prepare_queue(reqs); reqs.back().ping(); reqs.back().incr("a"); reqs.back().set("b", {"Some string"}); reqs.back().get("b"); reqs.back().quit(); if (empty) - co_await detail::async_write_all(socket, reqs); + co_await async_write_all(socket, reqs); } break; case command::get: case command::incr: diff --git a/include/aedis/aedis.hpp b/include/aedis/aedis.hpp index 131b7ec7..b4d203bc 100644 --- a/include/aedis/aedis.hpp +++ b/include/aedis/aedis.hpp @@ -12,3 +12,5 @@ #include #include #include +#include +#include diff --git a/include/aedis/connection.hpp b/include/aedis/connection.hpp index 2ade9681..9f18629c 100644 --- a/include/aedis/connection.hpp +++ b/include/aedis/connection.hpp @@ -10,11 +10,11 @@ #include #include -#include -#include #include #include "net.hpp" +#include "read.hpp" +#include "write.hpp" #include "type.hpp" #include "pipeline.hpp" @@ -68,7 +68,7 @@ private: detail::response_adapters adapters{bufs}; for (;;) { - auto const event = co_await detail::async_consume(socket_, buffer_, adapters, reqs_); + auto const event = co_await async_consume(socket_, buffer_, adapters, reqs_); receiver(event.first, event.second); } } catch (...) { @@ -116,7 +116,7 @@ public: if (empty) { co_spawn( socket_.get_executor(), - detail::async_write_all(socket_, reqs_), + async_write_all(socket_, reqs_), net::detached); } diff --git a/include/aedis/detail/parser.hpp b/include/aedis/detail/parser.hpp index 7b36a8cc..da521368 100644 --- a/include/aedis/detail/parser.hpp +++ b/include/aedis/detail/parser.hpp @@ -9,7 +9,7 @@ #include -#include "response_adapter_base.hpp" +#include namespace aedis { namespace detail { diff --git a/include/aedis/detail/response_adapters.hpp b/include/aedis/detail/response_adapters.hpp index 8264a45e..d9106812 100644 --- a/include/aedis/detail/response_adapters.hpp +++ b/include/aedis/detail/response_adapters.hpp @@ -21,8 +21,7 @@ #include #include #include - -#include "response_adapter_base.hpp" +#include #include diff --git a/include/aedis/impl/connection.ipp b/include/aedis/impl/connection.ipp index a5d20a5f..914d0d22 100644 --- a/include/aedis/impl/connection.ipp +++ b/include/aedis/impl/connection.ipp @@ -5,9 +5,9 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ +#include #include -#include -#include +#include namespace aedis { @@ -25,7 +25,7 @@ void connection::start(receiver_base& recv, buffers& bufs) { switch (type) { case resp3::type::push: recv.on_push(); break; - default: detail::forward(cmd, type, recv); + default: forward(cmd, type, recv); } }; diff --git a/include/aedis/detail/impl/read.ipp b/include/aedis/impl/read.ipp similarity index 95% rename from include/aedis/detail/impl/read.ipp rename to include/aedis/impl/read.ipp index 2eeadeb9..9453d056 100644 --- a/include/aedis/detail/impl/read.ipp +++ b/include/aedis/impl/read.ipp @@ -5,11 +5,11 @@ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ -#include +#include #define EXPAND_RECEIVER_CASE(type, cmd) case command::cmd: recv.on_##cmd(type); break -namespace aedis { namespace detail { +namespace aedis { void forward( @@ -64,7 +64,7 @@ forward( } } -response_adapter_base* select_buffer(response_adapters& adapters, resp3::type type, command cmd) +response_adapter_base* select_buffer(detail::response_adapters& adapters, resp3::type type, command cmd) { if (type == resp3::type::push) return &adapters.resp_push; @@ -95,5 +95,4 @@ response_adapter_base* select_buffer(response_adapters& adapters, resp3::type ty } } -} // detail } // aedis diff --git a/include/aedis/impl/src.hpp b/include/aedis/impl/src.hpp index eaa784c9..ddd222a4 100644 --- a/include/aedis/impl/src.hpp +++ b/include/aedis/impl/src.hpp @@ -8,6 +8,6 @@ #include #include #include +#include -#include #include diff --git a/include/aedis/detail/read.hpp b/include/aedis/read.hpp similarity index 92% rename from include/aedis/detail/read.hpp rename to include/aedis/read.hpp index 9d2294f5..88cd1ebd 100644 --- a/include/aedis/detail/read.hpp +++ b/include/aedis/read.hpp @@ -25,15 +25,15 @@ #include #include #include +#include -#include "parser.hpp" -#include "response_adapters.hpp" -#include "response_adapter_base.hpp" -#include "write.hpp" +#include +#include +#include -namespace aedis { namespace detail { +namespace aedis { -response_adapter_base* select_buffer(response_adapters& buffers, resp3::type t, command cmd); +response_adapter_base* select_buffer(detail::response_adapters& buffers, resp3::type t, command cmd); void forward( command cmd, @@ -48,7 +48,7 @@ class parse_op { private: AsyncReadStream& stream_; Storage* buf_ = nullptr; - parser parser_; + detail::parser parser_; int start_ = 1; public: @@ -65,7 +65,7 @@ public: { switch (start_) { for (;;) { - if (parser_.bulk() == parser::bulk_type::none) { + if (parser_.bulk() == detail::parser::bulk_type::none) { case 1: start_ = 0; net::async_read_until( @@ -120,10 +120,10 @@ auto read( response_adapter_base& res, boost::system::error_code& ec) { - parser p {&res}; + detail::parser p {&res}; std::size_t n = 0; do { - if (p.bulk() == parser::bulk_type::none) { + if (p.bulk() == detail::parser::bulk_type::none) { n = net::read_until(stream, net::dynamic_buffer(buf), "\r\n", ec); if (ec || n < 3) return n; @@ -258,7 +258,7 @@ async_consume( ResponseBuffers& resps, std::queue& reqs) { - auto const type = co_await detail::async_read_type(socket, buffer, net::use_awaitable); + auto const type = co_await async_read_type(socket, buffer, net::use_awaitable); assert(type != resp3::type::invalid); auto cmd = command::unknown; @@ -269,7 +269,7 @@ async_consume( } auto* buf_adapter = select_buffer(resps, type, cmd); - co_await detail::async_read(socket, buffer, *buf_adapter, net::use_awaitable); + co_await async_read(socket, buffer, *buf_adapter, net::use_awaitable); if (type != resp3::type::push) { reqs.front().cmds.pop(); @@ -298,5 +298,4 @@ async_consume( co_return std::make_pair(cmd, type); } -} // detail } // aedis diff --git a/include/aedis/detail/response_adapter_base.hpp b/include/aedis/response_adapter_base.hpp similarity index 97% rename from include/aedis/detail/response_adapter_base.hpp rename to include/aedis/response_adapter_base.hpp index 4b4393c1..e08fa07b 100644 --- a/include/aedis/detail/response_adapter_base.hpp +++ b/include/aedis/response_adapter_base.hpp @@ -12,7 +12,7 @@ #include -namespace aedis { namespace detail { +namespace aedis { struct response_adapter_base { virtual void pop() {} @@ -35,6 +35,4 @@ struct response_adapter_base { virtual ~response_adapter_base() {} }; -} // detail } // aedis - diff --git a/include/aedis/detail/write.hpp b/include/aedis/write.hpp similarity index 97% rename from include/aedis/detail/write.hpp rename to include/aedis/write.hpp index fcebc7ed..806078a7 100644 --- a/include/aedis/detail/write.hpp +++ b/include/aedis/write.hpp @@ -14,7 +14,7 @@ #include -namespace aedis { namespace detail { +namespace aedis { template std::size_t @@ -79,5 +79,4 @@ bool prepare_queue(std::queue& reqs, int max_cmds = 5000) return false; } -} // detail } // aedis diff --git a/tests/general.cpp b/tests/general.cpp index cb7a7a2e..8ff6cb85 100644 --- a/tests/general.cpp +++ b/tests/general.cpp @@ -6,7 +6,6 @@ */ #include -#include #include "test_stream.hpp"