Commit 6976711
committed
Consolidate reactor backends into parameterized templates
Replace 42 near-identical per-backend files (14 each for epoll, kqueue,
select) with shared parameterized templates and per-backend traits +
types files. Each reactor backend drops from 14 files to 3 (scheduler,
traits, types). Net: +2,624 / -7,980 lines across 64 files.
Per-backend traits structs capture all platform-specific behavior
(socket creation flags, write/accept policies, fd configuration,
SO_LINGER hooks, descriptor_state) in one location per backend. Shared
templates (reactor_socket_finals, reactor_service_finals, reactor_stream
_ops, reactor_datagram_ops, reactor_backend) provide a single
implementation of socket/service/acceptor/op logic that all three
backends instantiate via per-backend types files.1 parent b864679 commit 6976711
64 files changed
Lines changed: 2624 additions & 7980 deletions
File tree
- include/boost/corosio/native
- detail
- epoll
- kqueue
- reactor
- select
- src/corosio/src
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 0 additions & 303 deletions
This file was deleted.
0 commit comments