Flecs v3.2
A fast entity component system (ECS) for C & C++
Loading...
Searching...
No Matches
flecs::_::each_invoker< Func, Components > Struct Template Reference
Inheritance diagram for flecs::_::each_invoker< Func, Components >:
flecs::_::invoker

Public Types

using Terms = typename term_ptrs< Components ... >::array
 

Public Member Functions

template<if_not_t< is_same< decay_t< Func >, decay_t< Func > & >::value > = 0>
 each_invoker (Func &&func) noexcept
 
 each_invoker (const Func &func) noexcept
 
void invoke (ecs_iter_t *iter) const
 

Static Public Member Functions

static void run (ecs_iter_t *iter)
 
static void run_add (ecs_iter_t *iter)
 
static void run_remove (ecs_iter_t *iter)
 
static void run_set (ecs_iter_t *iter)
 
static bool instanced ()
 

Static Public Attributes

static constexpr bool PassEntity
 
static constexpr bool PassIter
 

Detailed Description

template<typename Func, typename ... Components>
struct flecs::_::each_invoker< Func, Components >

Definition at line 173 of file invoker.hpp.

Member Typedef Documentation

◆ Terms

template<typename Func , typename ... Components>
using flecs::_::each_invoker< Func, Components >::Terms = typename term_ptrs<Components ...>::array

Definition at line 187 of file invoker.hpp.

Constructor & Destructor Documentation

◆ each_invoker() [1/2]

template<typename Func , typename ... Components>
template<if_not_t< is_same< decay_t< Func >, decay_t< Func > & >::value > = 0>
flecs::_::each_invoker< Func, Components >::each_invoker ( Func &&  func)
inlineexplicitnoexcept

Definition at line 190 of file invoker.hpp.

◆ each_invoker() [2/2]

template<typename Func , typename ... Components>
flecs::_::each_invoker< Func, Components >::each_invoker ( const Func &  func)
inlineexplicitnoexcept

Definition at line 193 of file invoker.hpp.

Member Function Documentation

◆ instanced()

template<typename Func , typename ... Components>
static bool flecs::_::each_invoker< Func, Components >::instanced ( )
inlinestatic

Definition at line 241 of file invoker.hpp.

◆ invoke()

template<typename Func , typename ... Components>
void flecs::_::each_invoker< Func, Components >::invoke ( ecs_iter_t *  iter) const
inline

Definition at line 199 of file invoker.hpp.

◆ run()

template<typename Func , typename ... Components>
static void flecs::_::each_invoker< Func, Components >::run ( ecs_iter_t *  iter)
inlinestatic

Definition at line 210 of file invoker.hpp.

◆ run_add()

template<typename Func , typename ... Components>
static void flecs::_::each_invoker< Func, Components >::run_add ( ecs_iter_t *  iter)
inlinestatic

Definition at line 217 of file invoker.hpp.

◆ run_remove()

template<typename Func , typename ... Components>
static void flecs::_::each_invoker< Func, Components >::run_remove ( ecs_iter_t *  iter)
inlinestatic

Definition at line 225 of file invoker.hpp.

◆ run_set()

template<typename Func , typename ... Components>
static void flecs::_::each_invoker< Func, Components >::run_set ( ecs_iter_t *  iter)
inlinestatic

Definition at line 233 of file invoker.hpp.

Member Data Documentation

◆ PassEntity

template<typename Func , typename ... Components>
constexpr bool flecs::_::each_invoker< Func, Components >::PassEntity
staticconstexpr
Initial value:
=
(sizeof...(Components) + 1) == (arity<Func>::value)

Definition at line 176 of file invoker.hpp.

◆ PassIter

template<typename Func , typename ... Components>
constexpr bool flecs::_::each_invoker< Func, Components >::PassIter
staticconstexpr
Initial value:
=
(sizeof...(Components) + 2) == (arity<Func>::value)

Definition at line 181 of file invoker.hpp.


The documentation for this struct was generated from the following files: