From 49b2aff0c2ec409fca00d6f7a95952d184611b76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B6nke=20Ludwig?= Date: Fri, 22 May 2020 11:02:43 +0200 Subject: [PATCH] Move loop modules back to the posix package to work around compiler errors. Older DMD frontend versions don't handle "package" protection within derived classes correctly. --- source/eventcore/core.d | 8 ++++---- source/eventcore/drivers/posix/{loop => }/cfrunloop.d | 4 ++-- source/eventcore/drivers/posix/{loop => }/epoll.d | 2 +- source/eventcore/drivers/posix/{loop => }/kqueue.d | 2 +- source/eventcore/drivers/posix/{loop => }/select.d | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) rename source/eventcore/drivers/posix/{loop => }/cfrunloop.d (95%) rename source/eventcore/drivers/posix/{loop => }/epoll.d (98%) rename source/eventcore/drivers/posix/{loop => }/kqueue.d (98%) rename source/eventcore/drivers/posix/{loop => }/select.d (98%) diff --git a/source/eventcore/core.d b/source/eventcore/core.d index c1447ba..e25c5b2 100644 --- a/source/eventcore/core.d +++ b/source/eventcore/core.d @@ -2,10 +2,10 @@ module eventcore.core; public import eventcore.driver; -import eventcore.drivers.posix.loop.cfrunloop; -import eventcore.drivers.posix.loop.epoll; -import eventcore.drivers.posix.loop.kqueue; -import eventcore.drivers.posix.loop.select; +import eventcore.drivers.posix.cfrunloop; +import eventcore.drivers.posix.epoll; +import eventcore.drivers.posix.kqueue; +import eventcore.drivers.posix.select; import eventcore.drivers.libasync; import eventcore.drivers.winapi.driver; import eventcore.internal.utils : mallocT, freeT; diff --git a/source/eventcore/drivers/posix/loop/cfrunloop.d b/source/eventcore/drivers/posix/cfrunloop.d similarity index 95% rename from source/eventcore/drivers/posix/loop/cfrunloop.d rename to source/eventcore/drivers/posix/cfrunloop.d index 9dca204..d4a48dc 100644 --- a/source/eventcore/drivers/posix/loop/cfrunloop.d +++ b/source/eventcore/drivers/posix/cfrunloop.d @@ -1,12 +1,12 @@ /** `CFRunLoop` based event loop for macOS UI compatible operation. */ -module eventcore.drivers.posix.loop.cfrunloop; +module eventcore.drivers.posix.cfrunloop; @safe: /*@nogc:*/ nothrow: version (EventcoreCFRunLoopDriver): -import eventcore.drivers.posix.loop.kqueue; +import eventcore.drivers.posix.kqueue; import eventcore.internal.corefoundation; import eventcore.internal.utils; import core.time; diff --git a/source/eventcore/drivers/posix/loop/epoll.d b/source/eventcore/drivers/posix/epoll.d similarity index 98% rename from source/eventcore/drivers/posix/loop/epoll.d rename to source/eventcore/drivers/posix/epoll.d index 672476c..b6a5767 100644 --- a/source/eventcore/drivers/posix/loop/epoll.d +++ b/source/eventcore/drivers/posix/epoll.d @@ -4,7 +4,7 @@ Epoll is an efficient API for asynchronous I/O on Linux, suitable for large numbers of concurrently open sockets. */ -module eventcore.drivers.posix.loop.epoll; +module eventcore.drivers.posix.epoll; @safe @nogc nothrow: version (linux): diff --git a/source/eventcore/drivers/posix/loop/kqueue.d b/source/eventcore/drivers/posix/kqueue.d similarity index 98% rename from source/eventcore/drivers/posix/loop/kqueue.d rename to source/eventcore/drivers/posix/kqueue.d index 4a0c8ad..3692e83 100644 --- a/source/eventcore/drivers/posix/loop/kqueue.d +++ b/source/eventcore/drivers/posix/kqueue.d @@ -4,7 +4,7 @@ Kqueue is an efficient API for asynchronous I/O on BSD flavors, including OS X/macOS, suitable for large numbers of concurrently open sockets. */ -module eventcore.drivers.posix.loop.kqueue; +module eventcore.drivers.posix.kqueue; @safe: /*@nogc:*/ nothrow: version (FreeBSD) enum have_kqueue = true; diff --git a/source/eventcore/drivers/posix/loop/select.d b/source/eventcore/drivers/posix/select.d similarity index 98% rename from source/eventcore/drivers/posix/loop/select.d rename to source/eventcore/drivers/posix/select.d index ee9d39b..dabc491 100644 --- a/source/eventcore/drivers/posix/loop/select.d +++ b/source/eventcore/drivers/posix/select.d @@ -5,7 +5,7 @@ Windows. It has a good performance for small numbers of cuncurrently open files/sockets, but is not suited for larger amounts. */ -module eventcore.drivers.posix.loop.select; +module eventcore.drivers.posix.select; @safe: /*@nogc:*/ nothrow: public import eventcore.drivers.posix.driver;