asio-grpc v3.1.0
Asynchronous gRPC with Asio/unified executors
agrpc::ServerRPCPtr< ServerRPCT > Class Template Reference

Allocated ServerRPC created by register_callback_rpc_handler. More...

#include <agrpc/server_rpc_ptr.hpp>

Public Types

using ServerRPC = ServerRPCT
 The ServerRPC type.
 

Public Member Functions

 ServerRPCPtr ()=default
 Default constructor. More...
 
ServerRPCT & operator* () noexcept
 Get reference to underlying ServerRPC.
 
const ServerRPCT & operator* () const noexcept
 Get reference to underlying ServerRPC (const overload)
 
ServerRPCT * operator-> () noexcept
 Access underlying ServerRPC.
 
const ServerRPCT * operator-> () const noexcept
 Access underlying ServerRPC (const overload)
 
 operator bool () const noexcept
 Check whether this pointer owns a ServerRPC. More...
 
decltype(auto) request () noexcept
 Get client's initial request message.
 
decltype(auto) request () const noexcept
 Get client's initial request message (const overload)
 

Friends

void swap (ServerRPCPtr &lhs, ServerRPCPtr &rhs) noexcept
 Swap the contents of two ServerRPCPtr. More...
 

Detailed Description

template<class ServerRPCT>
class agrpc::ServerRPCPtr< ServerRPCT >

Allocated ServerRPC created by register_callback_rpc_handler.

Since
2.8.0

Constructor & Destructor Documentation

◆ ServerRPCPtr()

template<class ServerRPCT >
agrpc::ServerRPCPtr< ServerRPCT >::ServerRPCPtr ( )
default

Default constructor.

The only valid operations after construction are move-assignment, operator bool, swap and destruction.

Member Function Documentation

◆ operator bool()

template<class ServerRPCT >
agrpc::ServerRPCPtr< ServerRPCT >::operator bool ( ) const
inlineexplicitnoexcept

Check whether this pointer owns a ServerRPC.

Since
3.1.0

Friends And Related Function Documentation

◆ swap

template<class ServerRPCT >
void swap ( ServerRPCPtr< ServerRPCT > &  lhs,
ServerRPCPtr< ServerRPCT > &  rhs 
)
friend

Swap the contents of two ServerRPCPtr.

Since
3.1.0