![]() |
Flecs v4.0
A fast entity component system (ECS) for C & C++
|
Flecs STL (FTL?) More...
#include <stdlib.h>#include "array.hpp"#include "string.hpp"#include "enum.hpp"#include "stringstream.hpp"#include "function_traits.hpp"Go to the source code of this file.
Classes | |
| struct | flecs::_::placement_new_tag_t |
| struct | flecs::_::always_false< T > |
Namespaces | |
| namespace | flecs::_ |
| Int to enum. | |
Macros | |
| #define | FLECS_PLACEMENT_NEW(_ptr, _type) |
| #define | FLECS_NEW(_type) |
| #define | FLECS_DELETE(_ptr) |
| #define | FLECS_MOV(...) |
| #define | FLECS_FWD(...) |
| #define | flecs_static_assert(cond, str) |
Typedefs | |
| template<bool V, typename T , typename F > | |
| using | flecs::conditional_t = typename std::conditional<V, T, F>::type |
| template<typename T > | |
| using | flecs::decay_t = typename std::decay<T>::type |
| template<bool V, typename T = void> | |
| using | flecs::enable_if_t = typename std::enable_if<V, T>::type |
| template<typename T > | |
| using | flecs::remove_pointer_t = typename std::remove_pointer<T>::type |
| template<typename T > | |
| using | flecs::remove_reference_t = typename std::remove_reference<T>::type |
| template<typename T > | |
| using | flecs::underlying_type_t = typename std::underlying_type<T>::type |
| template<typename T > | |
| using | flecs::is_const_p = is_const< remove_pointer_t<T> > |
| template<class Src , class Dst > | |
| using | flecs::transcribe_const_t = conditional_t<is_const<Src>::value, Dst const, Dst> |
| template<class Src , class Dst > | |
| using | flecs::transcribe_volatile_t = conditional_t<is_volatile<Src>::value, Dst volatile, Dst> |
| template<class Src , class Dst > | |
| using | flecs::transcribe_cv_t = transcribe_const_t< Src, transcribe_volatile_t< Src, Dst> > |
| template<class Src , class Dst > | |
| using | flecs::transcribe_pointer_t = conditional_t<is_pointer<Src>::value, Dst*, Dst> |
| template<class Src , class Dst > | |
| using | flecs::transcribe_cvp_t = transcribe_cv_t< Src, transcribe_pointer_t< Src, Dst> > |
| template<bool V> | |
| using | flecs::if_t = enable_if_t<V, int> |
| template<bool V> | |
| using | flecs::if_not_t = enable_if_t<false == V, int> |
Functions | |
| template<class Ty > | |
| void | flecs::_::destruct_obj (Ty *_ptr) |
| template<class Ty > | |
| void | flecs::_::free_obj (Ty *_ptr) |
| void * | operator new (size_t, flecs::_::placement_new_tag_t, void *_ptr) noexcept |
| void | operator delete (void *, flecs::_::placement_new_tag_t, void *) noexcept |
Variables | |
| constexpr placement_new_tag_t | flecs::_::placement_new_tag {} |
Flecs STL (FTL?)
Flecs STL (FTL?) Minimalistic utilities that allow for STL like functionality without having to depend on the actual STL.
Definition in file utils.hpp.
| #define FLECS_DELETE | ( | _ptr | ) |
| #define FLECS_FWD | ( | ... | ) |
| #define FLECS_MOV | ( | ... | ) |
| #define FLECS_NEW | ( | _type | ) |
| #define FLECS_PLACEMENT_NEW | ( | _ptr, | |
| _type ) |
| #define flecs_static_assert | ( | cond, | |
| str ) |
| using flecs::conditional_t = typename std::conditional<V, T, F>::type |
| using flecs::decay_t = typename std::decay<T>::type |
| using flecs::enable_if_t = typename std::enable_if<V, T>::type |
| using flecs::if_not_t = enable_if_t<false == V, int> |
| using flecs::is_const_p = is_const< remove_pointer_t<T> > |
| using flecs::remove_pointer_t = typename std::remove_pointer<T>::type |
| using flecs::remove_reference_t = typename std::remove_reference<T>::type |
| using flecs::transcribe_const_t = conditional_t<is_const<Src>::value, Dst const, Dst> |
| using flecs::transcribe_cv_t = transcribe_const_t< Src, transcribe_volatile_t< Src, Dst> > |
| using flecs::transcribe_cvp_t = transcribe_cv_t< Src, transcribe_pointer_t< Src, Dst> > |
| using flecs::transcribe_pointer_t = conditional_t<is_pointer<Src>::value, Dst*, Dst> |
| using flecs::transcribe_volatile_t = conditional_t<is_volatile<Src>::value, Dst volatile, Dst> |
| using flecs::underlying_type_t = typename std::underlying_type<T>::type |
|
inlinenoexcept |
|
inlinenoexcept |