Mirror reflection library 0.5.13

mirror::reflected_type< Type > Struct Template Reference

Template, instantiations of which conform to the MetaType concept. More...

#include <mirror/mirror_fwd.hpp>

List of all members.

Public Types

typedef aux::reflect_type
< Type >::type 
type

Detailed Description

template<class Type>
struct mirror::reflected_type< Type >

Template, instantiations of which conform to the MetaType concept.

Instantiations of this template conform to the MetaType, MetaClass of MetaEnum reflecting the Type passed as the template parameter. This template is only 'syntactic sugar' and has several limitations; The mirror::reflected should be used in most situations instead. Most notably the categorize_meta_object and the meta_object_category do not work properly for this template, but it can be converted to a proper MetaType model via the mp::as_a meta-function if necessary. It can also be safely used as a MetaType expression:

  cout << mp::size<member_variables<reflected_type<T> > >::value << endl;
See also:
mirror::reflected
MetaType
MetaClass
MetaEnum
Examples:

mirror/example/hello_world.cpp, and mirror/example/typenames_04.cpp.


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.