diff --git a/src/uvw/event.hpp b/src/uvw/event.hpp index df003f2d..3411b881 100644 --- a/src/uvw/event.hpp +++ b/src/uvw/event.hpp @@ -9,6 +9,8 @@ namespace uvw { +// base structures + struct BaseEvent { virtual ~BaseEvent() noexcept = 0; @@ -30,10 +32,28 @@ struct Event: BaseEvent { }; -struct AsyncEvent: Event { }; -struct CheckEvent: Event { }; -struct CloseEvent: Event { }; -struct ConnectEvent: Event { }; +// empty events + + +struct DefaultEvent: Event { }; + +using AsyncEvent = DefaultEvent; +using CheckEvent = DefaultEvent; +using CloseEvent = DefaultEvent; +using ConnectEvent = DefaultEvent; +using EndEvent = DefaultEvent; +using IdleEvent = DefaultEvent; +using ListenEvent = DefaultEvent; +using PrepareEvent = DefaultEvent; +using SendEvent = DefaultEvent; +using ShutdownEvent = DefaultEvent; +using TimerEvent = DefaultEvent; +using UninitializedEvent = DefaultEvent; +using WorkEvent = DefaultEvent; +using WriteEvent = DefaultEvent; + + +// specialized events struct DataEvent: Event { @@ -50,9 +70,6 @@ private: }; -struct EndEvent: Event { }; - - struct ErrorEvent: Event { explicit ErrorEvent(int code = 0) noexcept: ec(code) { } @@ -89,13 +106,6 @@ private: }; -struct IdleEvent: Event { }; -struct ListenEvent: Event { }; -struct PrepareEvent: Event { }; -struct SendEvent: Event { }; -struct ShutdownEvent: Event { }; - - struct SignalEvent: Event { explicit SignalEvent(int sig) noexcept: signum(sig) { } @@ -106,9 +116,6 @@ private: }; -struct TimerEvent: Event { }; - - struct UDPDataEvent: Event { explicit UDPDataEvent(Addr addr, std::unique_ptr ptr, ssize_t l, bool trunc) noexcept : dt{std::move(ptr)}, len{l}, sndr{addr}, part{trunc} @@ -127,9 +134,4 @@ private: }; -struct UninitializedEvent: Event { }; -struct WorkEvent: Event { }; -struct WriteEvent: Event { }; - - }