distortos  v0.4.0
object-oriented C++ RTOS for microcontrollers
distortos::internal::BoundQueueFunctor< F > Class Template Reference

BoundQueueFunctor is a type-erased QueueFunctor which calls its bound functor to execute actions on queue's storage. More...

#include <BoundQueueFunctor.hpp>

Inheritance diagram for distortos::internal::BoundQueueFunctor< F >:
[legend]
Collaboration diagram for distortos::internal::BoundQueueFunctor< F >:
[legend]

Public Member Functions

constexpr BoundQueueFunctor (F &&boundFunctor)
 BoundQueueFunctor's constructor. More...
 
void operator() (void *const storage) const override
 Calls the bound functor which will execute some action on queue's storage (like copy-constructing, swapping, destroying, emplacing, ...) More...
 

Private Attributes

boundFunctor_
 bound functor More...
 

Detailed Description

template<typename F>
class distortos::internal::BoundQueueFunctor< F >

BoundQueueFunctor is a type-erased QueueFunctor which calls its bound functor to execute actions on queue's storage.

Template Parameters
Fis the type of bound functor, it will be called with void* as only argument

Constructor & Destructor Documentation

◆ BoundQueueFunctor()

template<typename F >
constexpr distortos::internal::BoundQueueFunctor< F >::BoundQueueFunctor ( F &&  boundFunctor)
inlineexplicit

BoundQueueFunctor's constructor.

Parameters
[in]boundFunctoris a rvalue reference to bound functor which will be used to move-construct internal bound functor

Member Function Documentation

◆ operator()()

template<typename F >
void distortos::internal::BoundQueueFunctor< F >::operator() ( void *const  storage) const
inlineoverride

Calls the bound functor which will execute some action on queue's storage (like copy-constructing, swapping, destroying, emplacing, ...)

Parameters
[in,out]storageis a pointer to storage with/for element

Member Data Documentation

◆ boundFunctor_

template<typename F >
F distortos::internal::BoundQueueFunctor< F >::boundFunctor_
private

bound functor


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