Mirror reflection library - Lagoon run-time layer 0.5.13

lagoon::meta_global_scope Struct Reference

#include <lagoon/interfaces.hpp>

Inheritance diagram for lagoon::meta_global_scope:
Collaboration diagram for lagoon::meta_global_scope:

List of all members.

Public Member Functions

virtual range< meta_namespacenamespaces (void)=0
 Returns the nested namespaces of this namespace.
virtual range< meta_free_variablefree_variables (void)=0
 Returns the free variables of this namespace.
virtual range
< meta_overloaded_functions
free_functions (void)=0
 Returns the (overloaded) free functions of this namespace.
shared< meta_free_variablevariable_ (const std::string &name)
 Convenience function returning a meta_variable by name.
shared< meta_namespacenamespace_ (const std::string &name)
 Convenience function returning a meta_namespace by name.
shared< meta_typetype_ (const std::string &name)
 Convenience function returning a meta_type by name.
shared< meta_classclass_ (const std::string &name)
 Convenience function returning a meta_class by name.
shared< meta_typedeftypedef_ (const std::string &name)
 Convenience function returning a meta_typedef by name.
shared< meta_type_templatetemplate_ (const std::string &name)
 Convenience function returning a meta_type_template by name.
virtual range
< meta_named_scoped_object
members (void)=0
 This member function returns the members of the scope.
template<typename Interface >
shared< Interface > find_member (const std::string &name)
 Convenience member function for finding a member by base_name.
virtual std::string full_name (void)=0
 Returns the full name of the reflected construct.
virtual std::string local_name (void)=0
 Returns the local name of the reflected construct.
virtual std::string base_name (void)=0
 Returns the base name of the reflected construct.
virtual shared< meta_meta_objectself (void) const =0
 returns meta-data about this meta-object

Static Protected Member Functions

static void * _sel_ptr (void)
template<typename... P>
static void * _sel_ptr (void *p, P *...pp)

Detailed Description

This interface provides meta-data about the global scope

See also:
mirror::MetaNamespace

Member Function Documentation

virtual std::string lagoon::meta_named_object::base_name ( void  ) [pure virtual, inherited]

Returns the base name of the reflected construct.

This member function returns the base name i.e. the name without the nested name specifier of the construct reflected by this meta-object.

template<typename Interface >
shared<Interface> lagoon::meta_scope::find_member ( const std::string &  name) [inline, inherited]

Convenience member function for finding a member by base_name.

Template Parameters:
Interfacethe required interface of the member
Parameters:
namethe base name to search the member by
virtual std::string lagoon::meta_named_scoped_object::local_name ( void  ) [pure virtual, inherited]

Returns the local name of the reflected construct.

Available only if the LAGOON_MNSO_WITH_LOCAL_NAME preprocessor symbol is set to a nonzero integer value.

See also:
base_name
full_name

The documentation for this struct was generated from the following file:

Copyright © 2006-2011 Matus Chochlik, University of Zilina, Zilina, Slovakia.
<matus.chochlik -at- fri.uniza.sk>
<chochlik -at -gmail.com>
Documentation generated on Fri Dec 16 2011 by Doxygen (version 1.7.3).
Important note: Although the 'boostified' version of Mirror uses the Boost C++ libraries Coding Guidelines and is implemented inside of the boost namespace, it IS NOT an officially reviewed and accepted Boost library. Mirror is being developed with the intention to be submitted for review for inclusion to the Boost C++ libraries.