Clio  develop
The XRP Ledger API server.
Loading...
Searching...
No Matches
util::async::impl::BasicStrand< ParentContextType, StopSourceType, DispatcherType, TimerContextProvider, ErrorHandlerType > Class Template Reference

Public Types

using ContextHolderType = typename ParentContextType::ContextHolderType::Strand
using ExecutorType = typename ContextHolderType::Executor
using StopToken = typename StopSourceType::Token
using Timer
using RepeatedOperation = RepeatingOperation<BasicStrand>

Public Member Functions

 BasicStrand (ParentContextType &parent, auto &&strand)
 BasicStrand (BasicStrand &&)=default
 BasicStrand (BasicStrand const &)=delete
auto execute (SomeHandlerWith< StopToken > auto &&fn, std::optional< std::chrono::milliseconds > timeout=std::nullopt) noexcept(kIS_NOEXCEPT)
auto execute (SomeHandlerWith< StopToken > auto &&fn, SomeStdDuration auto timeout) noexcept(kIS_NOEXCEPT)
auto execute (SomeHandlerWithoutStopToken auto &&fn) noexcept(kIS_NOEXCEPT)
auto executeRepeatedly (SomeStdDuration auto interval, SomeHandlerWithoutStopToken auto &&fn) noexcept(kIS_NOEXCEPT)

Static Public Attributes

static constexpr bool kIS_NOEXCEPT = noexcept(ErrorHandlerType::wrap([](auto&) { throw 0; }))

Member Typedef Documentation

◆ Timer

template<typename ParentContextType, typename StopSourceType, typename DispatcherType, typename TimerContextProvider = impl::SelfContextProvider, typename ErrorHandlerType = impl::DefaultErrorHandler>
using util::async::impl::BasicStrand< ParentContextType, StopSourceType, DispatcherType, TimerContextProvider, ErrorHandlerType >::Timer
Initial value:
typename ParentContextType::ContextHolderType::Timer

The documentation for this class was generated from the following file:
  • /__w/clio/clio/src/util/async/context/impl/Strand.hpp