9#include <userver/engine/deadline.hpp>
10#include <userver/utils/fast_pimpl.hpp>
12USERVER_NAMESPACE_BEGIN
14namespace engine::impl {
38 FdPoller(
const FdPoller&) =
delete;
39 FdPoller(FdPoller&&) =
delete;
40 FdPoller& operator=(
const FdPoller&) =
delete;
41 FdPoller& operator=(FdPoller&&) =
delete;
66 [[nodiscard]] std::optional<
Kind>
Wait(Deadline);
77 engine::impl::ContextAccessor* TryGetContextAccessor()
noexcept;
81 friend class impl::Direction;
83 enum class State :
int {
90 void SwitchStateToInUse();
91 void SwitchStateToReadyToUse();
94 utils::FastPimpl<Impl, 144, 16> pimpl_;