Public Types | Public Member Functions | Private Types | Private Attributes | List of all members
grpc_core::promise_detail::Loop< F > Class Template Reference

#include <loop.h>

Public Types

using Result = typename LoopTraits< PromiseResult >::Result
 

Public Member Functions

 Loop (const Loop &loop)=delete
 
 Loop (F f)
 
 Loop (Loop &&loop) noexcept
 
Poll< Resultoperator() ()
 
Loopoperator= (const Loop &loop)=delete
 
 ~Loop ()
 

Private Types

using Factory = promise_detail::PromiseFactory< void, F >
 
using PromiseResult = typename PromiseType::Result
 
using PromiseType = decltype(std::declval< Factory >().Repeated())
 

Private Attributes

union {
   GPR_NO_UNIQUE_ADDRESS PromiseType   promise_
 
}; 
 
GPR_NO_UNIQUE_ADDRESS Factory factory_
 

Detailed Description

template<typename F>
class grpc_core::promise_detail::Loop< F >

Definition at line 77 of file loop.h.

Member Typedef Documentation

◆ Factory

template<typename F >
using grpc_core::promise_detail::Loop< F >::Factory = promise_detail::PromiseFactory<void, F>
private

Definition at line 79 of file loop.h.

◆ PromiseResult

template<typename F >
using grpc_core::promise_detail::Loop< F >::PromiseResult = typename PromiseType::Result
private

Definition at line 81 of file loop.h.

◆ PromiseType

template<typename F >
using grpc_core::promise_detail::Loop< F >::PromiseType = decltype(std::declval<Factory>().Repeated())
private

Definition at line 80 of file loop.h.

◆ Result

template<typename F >
using grpc_core::promise_detail::Loop< F >::Result = typename LoopTraits<PromiseResult>::Result

Definition at line 84 of file loop.h.

Constructor & Destructor Documentation

◆ Loop() [1/3]

template<typename F >
grpc_core::promise_detail::Loop< F >::Loop ( f)
inlineexplicit

Definition at line 86 of file loop.h.

◆ ~Loop()

template<typename F >
grpc_core::promise_detail::Loop< F >::~Loop ( )
inline

Definition at line 87 of file loop.h.

◆ Loop() [2/3]

template<typename F >
grpc_core::promise_detail::Loop< F >::Loop ( Loop< F > &&  loop)
inlinenoexcept

Definition at line 89 of file loop.h.

◆ Loop() [3/3]

template<typename F >
grpc_core::promise_detail::Loop< F >::Loop ( const Loop< F > &  loop)
delete

Member Function Documentation

◆ operator()()

template<typename F >
Poll<Result> grpc_core::promise_detail::Loop< F >::operator() ( )
inline

Definition at line 96 of file loop.h.

◆ operator=()

template<typename F >
Loop& grpc_core::promise_detail::Loop< F >::operator= ( const Loop< F > &  loop)
delete

Member Data Documentation

◆ @31

GPR_NO_UNIQUE_ADDRESS { ... }

◆ factory_

template<typename F >
GPR_NO_UNIQUE_ADDRESS Factory grpc_core::promise_detail::Loop< F >::factory_
private

Definition at line 120 of file loop.h.

◆ promise_

Definition at line 121 of file loop.h.


The documentation for this class was generated from the following file:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:03:39