Helios Engine
A modular ECS based data-oriented C++23 game engine framework
Loading...
Searching...
No Matches
helios::ecs::ComponentTrait Concept Reference

Concept to check if a type can be used as a component. More...

#include <component.hpp>

Concept definition

template<typename T>
concept ComponentTrait =
std::destructible<T> &&
(std::move_constructible<T> || std::copy_constructible<T>) &&
!std::is_polymorphic_v<std::remove_cvref_t<T>> &&
std::is_object_v<std::remove_cvref_t<T>>
Concept to check if a type can be used as a component.
Definition component.hpp:31

Detailed Description

Concept to check if a type can be used as a component.

A component must be destructible, move or copy constructible, be an object, and not polymorphic.

Definition at line 31 of file component.hpp.