From b10d0b0e1a30eb02777f5a02b81bf45e09749edb Mon Sep 17 00:00:00 2001 From: Claudius 'keldu' Holeksa Date: Wed, 16 Oct 2024 15:59:39 +0200 Subject: Fixing bad includes and changing network abstraction a tiny bit --- modules/io/c++/io.hpp | 7 ++++++- modules/io/c++/io_unix.cpp | 8 ++++---- 2 files changed, 10 insertions(+), 5 deletions(-) (limited to 'modules/io/c++') diff --git a/modules/io/c++/io.hpp b/modules/io/c++/io.hpp index 43ef7f0..390ddcc 100644 --- a/modules/io/c++/io.hpp +++ b/modules/io/c++/io.hpp @@ -8,6 +8,10 @@ #include namespace saw { +namespace net { +struct Os {}; +} + /** * Set of error common in io */ @@ -166,6 +170,7 @@ public: network_address::child_variant representation() override { return this; } }; +template class network { public: virtual ~network() = default; @@ -209,7 +214,7 @@ public: virtual own wrap_input_fd(int fd) = 0; - virtual network &get_network() = 0; + virtual network &get_network() = 0; }; struct async_io_context { diff --git a/modules/io/c++/io_unix.cpp b/modules/io/c++/io_unix.cpp index a715535..73e8e3b 100644 --- a/modules/io/c++/io_unix.cpp +++ b/modules/io/c++/io_unix.cpp @@ -430,7 +430,7 @@ public: size_t unix_address_size() const; }; -class unix_network final : public network { +class unix_network final : public network { private: unix_event_port &event_port_; @@ -462,7 +462,7 @@ private: public: unix_io_provider(unix_event_port &port_ref, own port); - class network &get_network() override; + class network &get_network() override; own wrap_input_fd(int fd) override; @@ -895,8 +895,8 @@ own unix_io_provider::wrap_input_fd(int fd) { return heap(event_port_, fd, 0, EPOLLIN); } -class network &unix_io_provider::get_network() { - return static_cast(unix_network_); +class network &unix_io_provider::get_network() { + return static_cast &>(unix_network_); } class event_loop &unix_io_provider::event_loop() { -- cgit v1.2.3