Class ae108::cpppetsc::TaggedEntity
template <class Entity, class Tag>
ClassList > ae108 > cpppetsc > TaggedEntity
A wrapper that adds a tag to a given class.
#include <TaggedEntity.h>
Public Types
Type | Name |
---|---|
typedef Tag | tag_type |
typedef std::remove_cv_t< std::remove_reference_t< Entity > > | value_type |
Public Functions
Type | Name |
---|---|
constexpr | TaggedEntity (Args &&... args) Constructs the contained value with the given arguments. |
constexpr | operator const value_type & () noexcept const Automatically unwraps the contained value. |
operator value_type & () noexcept Automatically unwraps the contained value. |
|
operator value_type && () noexcept Automatically unwraps the contained value. |
|
auto | operator() (Args &&... args) Calls operator() of the contained value. |
constexpr auto | operator() (Args &&... args) const Calls operator() of the contained value. |
constexpr const value_type & | unwrap () noexcept const Returns a const reference to the contained value. |
value_type & | unwrap () noexcept Returns a reference to the contained value. |
value_type && | unwrap () noexcept Returns an r-value reference to the contained value. |
Public Types Documentation
typedef tag_type
using ae108::cpppetsc::TaggedEntity< Entity, Tag >::tag_type = Tag;
typedef value_type
using ae108::cpppetsc::TaggedEntity< Entity, Tag >::value_type = std::remove_cv_t<std::remove_reference_t<Entity> >;
Public Functions Documentation
function TaggedEntity
Constructs the contained value with the given arguments.
template<class... Args>
explicit constexpr ae108::cpppetsc::TaggedEntity::TaggedEntity (
Args &&... args
)
function operator const value_type &
Automatically unwraps the contained value.
constexpr ae108::cpppetsc::TaggedEntity::operator const value_type & () noexcept const
function operator value_type &
Automatically unwraps the contained value.
ae108::cpppetsc::TaggedEntity::operator value_type & () noexcept
function operator value_type &&
Automatically unwraps the contained value.
ae108::cpppetsc::TaggedEntity::operator value_type && () noexcept
function operator() [1/2]
Calls operator() of the contained value.
template<class... Args>
auto ae108::cpppetsc::TaggedEntity::operator() (
Args &&... args
)
function operator() [2/2]
Calls operator() of the contained value.
template<class... Args>
constexpr auto ae108::cpppetsc::TaggedEntity::operator() (
Args &&... args
) const
function unwrap [1/3]
Returns a const reference to the contained value.
constexpr const value_type & ae108::cpppetsc::TaggedEntity::unwrap () noexcept const
function unwrap [2/3]
Returns a reference to the contained value.
value_type & ae108::cpppetsc::TaggedEntity::unwrap () noexcept
function unwrap [3/3]
Returns an r-value reference to the contained value.
value_type && ae108::cpppetsc::TaggedEntity::unwrap () noexcept
The documentation for this class was generated from the following file cpppetsc/src/include/ae108/cpppetsc/TaggedEntity.h