Mirror reflection library - Puddle compile-time layer 0.5.13
|
MetaPlainFreeVariable is a type reflecting free variable. More...
#include <puddle/doc/concepts.hpp>
Public Member Functions | |
Type * | address (void) |
Gets a pointer to the free variable. | |
mirror::meta_plain_free_variable_tag | category (void) const |
MetaNamespace | scope (void) const |
Returns the namespace to which the reflected variable belongs. | |
Type | get (void) const |
Gets the value of the global variable. | |
void | set (Type new_value) const |
Sets the value of the free variable. | |
Specifier | storage_class (void) const |
Returns the storage class tag. | |
MetaType | type (void) const |
Returns MetaType reflecting the type of the variable. | |
std::string | full_name (void) const |
Returns the full name of the reflected entity. | |
std::string | local_name (void) const |
Returns the local name of the reflected entity. | |
std::string | base_name (void) const |
Returns the base name of the reflected entity. | |
CompileTimeString | static_name (void) const |
Returns a compile-time string containing the base_name. | |
template<typename Category > | |
Boolean | is_a (Category) const |
Returns true if the meta-object is of the specified Category. | |
Friends | |
Boolean | operator== (MetaObject, MetaObject) |
Equality comparison. | |
Boolean | operator!= (MetaObject, MetaObject) |
Inequality comparison. |
MetaPlainFreeVariable is a type reflecting free variable.
Type* puddle::MetaPlainFreeVariable::address | ( | void | ) |
Gets a pointer to the free variable.
This function allows to get a pointer to the free variable reflected by this MetaPlainFreeVariable
std::string puddle::MetaNamedObject::base_name | ( | void | ) | const [inherited] |
Returns the base name of the reflected entity.
This function returns the base name of the reflected construct (type, class, namespace, member variable, etc.) without the nested name specifier.
mirror::meta_plain_free_variable_tag puddle::MetaPlainFreeVariable::category | ( | void | ) | const |
Reimplemented from puddle::MetaFreeVariable.
std::string puddle::MetaNamedScopedObject::full_name | ( | void | ) | const [inherited] |
Returns the full name of the reflected entity.
This function returns the full name of the reflected construct (type, class, namespace, member variable, etc.) including the nested name specifier.
Type puddle::MetaFreeVariable::get | ( | void | ) | const [inherited] |
Gets the value of the global variable.
This function allows to get the value of the global variable reflected by this MetaFreeVariable
Boolean puddle::MetaObject::is_a | ( | Category | ) | const [inherited] |
Returns true if the meta-object is of the specified Category.
Category | a meta-object category tag type |
std::string puddle::MetaNamedScopedObject::local_name | ( | void | ) | const [inherited] |
Returns the local name of the reflected entity.
This function returns the local name of the reflected construct (type, class, namespace, member variable, etc.) including the partial or full nested name specifier, based on whether the parent scope or one of its enclosing scopes of the construct reflected by this MetaNamedScopedObject is used with the PUDDLE_USING_NAMESPACE macro.
void puddle::MetaFreeVariable::set | ( | Type | new_value | ) | const [inherited] |
Sets the value of the free variable.
This function allows to set the value of the free variable reflected by this MetaFreeVariable to the new_value.
Type | the type of the value to be set. This type must be implicitly convertible to the type of the member variable. |
new_value | the new value to be set to the member variable of the passed instance. |
Specifier puddle::MetaVariable::storage_class | ( | void | ) | const [inherited] |
Returns the storage class tag.
Specifier reflecting the storage class (auto|static|mutable|...) for the reflected variable.