registration.h
Go to the documentation of this file.
162 template<typename... Args, typename acc_level = detail::public_access, typename Tp = typename std::enable_if<detail::contains<acc_level, detail::access_levels_list>::value>::type>
177 template<typename F, typename acc_level = detail::public_access, typename Tp = typename std::enable_if<!detail::contains<F, detail::access_levels_list>::value>::type>
178 bind<detail::ctor_func, Class_Type, F, acc_level> constructor(F func, acc_level level = acc_level());
195 template<typename A, typename acc_level = detail::public_access, typename Tp = typename std::enable_if<detail::contains<acc_level, detail::access_levels_list>::value>::type>
196 bind<detail::prop, Class_Type, A, acc_level> property(const char* name, A acc, acc_level level = acc_level());
213 template<typename A, typename acc_level = detail::public_access, typename Tp = typename std::enable_if<detail::contains<acc_level, detail::access_levels_list>::value>::type>
214 bind<detail::prop_readonly, Class_Type, A, acc_level> property_readonly(const char* name, A acc, acc_level level = acc_level());
233 template<typename A1, typename A2, typename Tp = typename std::enable_if<!detail::contains<A2, detail::access_levels_list>::value>::type, typename acc_level = detail::public_access>
234 bind<detail::prop, Class_Type, A1, A2, acc_level> property(const char* name, A1 getter, A2 setter, acc_level level = acc_level());
252 bind<detail::meth, Class_Type, F, acc_level> method(const char* name, F f, acc_level level = acc_level());
309 static bind<detail::prop_readonly, void, A, detail::public_access> property_readonly(const char* name, A acc);
327 static bind<detail::prop, void, A1, A2, detail::public_access> property(const char* name, A1 getter, A2 setter);
438 registration(const std::shared_ptr<detail::registration_executer>& reg_exec) : m_reg_exec(reg_exec) { }
Definition: access_levels.h:33
Declares that this member was registered with protected access.
auto select_non_const(ReturnType(ClassType::*func)(Args...)) -> decltype(func)
This is a helper function to register overloaded const member functions.
Definition: registration.h:609
The type class holds the type information for any arbitrary object.
Definition: type.h:153
base_class operator()(Args &&...arg)
The bracket operator can be used to add additional meta data or policies.
static const detail::protected_access protected_access
This variable can be used to specify during registration of a class member the access level: protecte...
Definition: registration.h:408
detail::default_args< TArgs... > default_arguments(TArgs &&...args)
The default_arguments function should be used add default arguments, for constructors or a methods du...
The class_ is used to register classes to RTTR.
Definition: registration.h:129
The enumeration class provides several meta information about an enum.
Definition: enumeration.h:101
The method class provides several meta information about a method and can be invoked.
Definition: method.h:116
detail::enum_data< Enum_Type > value(const char *name, Enum_Type value)
The value function should be used to add a mapping from enum name to value during the registration pr...
auto select_const(ReturnType(ClassType::*func)(Args...) const) -> decltype(func)
This is a helper function to register overloaded const member functions.
Definition: registration.h:567
Signature * select_overload(Signature *func)
This is a helper function to register overloaded functions.
Definition: registration.h:481
Declares that this member was registered with private access.
static const detail::public_access public_access
This variable can be used to specify during registration of a class member the access level: public...
Definition: registration.h:382
The registration class is the entry point for the manual registration of reflection information to th...
Definition: registration.h:119
The property class provides several meta information about a property and gives read/write access to ...
Definition: property.h:114
static const detail::private_access private_access
This variable can be used to specify during registration of a class member the access level: private...
Definition: registration.h:434
detail::parameter_names< detail::decay_t< TArgs >... > parameter_names(TArgs &&...args)
The parameter_names function should be used add human-readable names of the parameters, for constructors or a methods during the registration process of reflection information.
detail::metadata metadata(variant key, variant value)
The metadata function can be used to add additional meta data information during the registration pro...
The bind class is used to chain registration calls.
Definition: registration.h:123
The constructor class provides several meta information about a constructor and can be invoked...
Definition: constructor.h:85
Declares that this member was registered with public access.