1 #ifndef SIPLASPLAS_REFLECTION_DYNAMIC_FIELD_HPP 2 #define SIPLASPLAS_REFLECTION_DYNAMIC_FIELD_HPP 5 #include <siplasplas/typeerasure/field.hpp> 6 #include <siplasplas/typeerasure/simpleany.hpp> 7 #include <siplasplas/typeerasure/any.hpp> 16 namespace dynamic_reflection
23 class SIPLASPLAS_REFLECTION_DYNAMIC_EXPORT
Field :
public Entity 47 static Field& fromEntity(
const std::shared_ptr<Entity>& entity);
61 template<
typename Object>
62 decltype(
auto) get(Object&&
object)
const 64 return _field.get(std::forward<Object>(
object));
76 template<
typename T,
typename Object>
77 decltype(
auto) get(Object&&
object)
const 79 return _field.getAs<T>(std::forward<Object>(object));
91 #endif // SIPLASPLAS_REFLECTION_DYNAMIC_FIELD_HPP Definition: canary_allocator.hpp:7
Stores a type erased member object pointer.
Definition: field.hpp:25
Stores dynamic reflection information of a member object.
Definition: field.hpp:23
Represents a C++ semantic entity (Class, function, namespace, etc) and manages its dynamic reflection...
Definition: entity.hpp:22