/*** Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved. File: LSFromFdNonblocking.cpp Date: 2022-4-5 Author: Reece ***/ #pragma once namespace Aurora::Loop { template inline bool IsSignaledFromNonblockingImpl(ILoopSourceEx *source, T * that, bool(T::*IsSignaledNonblocking)()) { bool val {}; source->OnPresleep(); val = ((that)->*(IsSignaledNonblocking))(); source->OnFinishSleep(); return val; } }