9#include <userver/engine/deadline.hpp> 
   10#include <userver/engine/task/inherited_variable.hpp> 
   12USERVER_NAMESPACE_BEGIN
 
   18class DeadlineSignal 
final {
 
   20  DeadlineSignal() 
noexcept;
 
   21  DeadlineSignal(
const DeadlineSignal&) 
noexcept;
 
   22  DeadlineSignal& operator=(
const DeadlineSignal&) 
noexcept;
 
   24  void SetExpired() 
noexcept;
 
   25  bool IsExpired() 
const noexcept;
 
   28  std::atomic<
bool> value_{
false};
 
   32struct TaskInheritedData 
final {
 
   72class [[nodiscard]] DeadlinePropagationBlocker 
final {
 
   74  DeadlinePropagationBlocker();
 
   76  DeadlinePropagationBlocker(DeadlinePropagationBlocker&&) = 
delete;
 
   77  DeadlinePropagationBlocker& operator=(DeadlinePropagationBlocker&&) = 
delete;
 
   78  ~DeadlinePropagationBlocker();
 
   81  TaskInheritedData old_value_;