Corium 1.1.0
High-Performance Zero-Heap C++20 MPSC Application Runtime
Loading...
Searching...
No Matches
corium::NoQueuePolicy< EventVariant > Class Template Reference

Zero-overhead Queue Policy for services or buses that do not receive or queue incoming events. Occupies zero storage space when combined with [[no_unique_address]] in container types. More...

#include <QueuePolicies.hpp>

+ Collaboration diagram for corium::NoQueuePolicy< EventVariant >:

Classes

struct  PushResult
 

Public Types

using EventType = EventVariant
 

Public Member Functions

bool empty () const noexcept
 Always returns true as no events can be queued.
 
bool tryPop (EventVariant &) noexcept
 Always fails to pop events as queue capacity is 0.
 
PushResult tryPush (EventVariant, EventPriority=EventPriority::Normal) noexcept
 Always fails to push events as queue capacity is 0.
 

Detailed Description

template<typename EventVariant = DefaultEvents>
class corium::NoQueuePolicy< EventVariant >

Zero-overhead Queue Policy for services or buses that do not receive or queue incoming events. Occupies zero storage space when combined with [[no_unique_address]] in container types.

Template Parameters
EventVariantThe variant type list of supported events.

Member Typedef Documentation

◆ EventType

template<typename EventVariant = DefaultEvents>
using corium::NoQueuePolicy< EventVariant >::EventType = EventVariant

Member Function Documentation

◆ empty()

template<typename EventVariant = DefaultEvents>
bool corium::NoQueuePolicy< EventVariant >::empty ( ) const
inlinenoexcept

Always returns true as no events can be queued.

◆ tryPop()

template<typename EventVariant = DefaultEvents>
bool corium::NoQueuePolicy< EventVariant >::tryPop ( EventVariant &  )
inlinenoexcept

Always fails to pop events as queue capacity is 0.

◆ tryPush()

template<typename EventVariant = DefaultEvents>
PushResult corium::NoQueuePolicy< EventVariant >::tryPush ( EventVariant  ,
EventPriority  = EventPriority::Normal 
)
inlinenoexcept

Always fails to push events as queue capacity is 0.


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