MACE  1.0.0
 All Classes Namespaces Files Functions Variables Enumerations Defines
Public Types | Static Public Member Functions
mace::reflect::reflector< T > Struct Template Reference

defines visit functions for T Unless this is specialized, visit() will not be defined for T. More...

#include <reflect.hpp>

List of all members.

Public Types

typedef T type
typedef boost::fusion::vector base_class_types
typedef boost::false_type is_defined

Static Public Member Functions

template<typename Visitor >
static void visit (const Visitor &v)

Detailed Description

template<typename T>
struct mace::reflect::reflector< T >

Template Parameters:
T- the type that will be visited.

The MACE_REFLECT(TYPE,MEMBERS) or MACE_REFLECT_DERIVED(TYPE,BASES,MEMBERS) macro is used to specialize this class for your type.

Examples:
examples/reflect_to_json.cpp.

Definition at line 53 of file reflect.hpp.


Member Function Documentation

template<typename T >
template<typename Visitor >
static void mace::reflect::reflector< T >::visit ( const Visitor &  v) [inline, static]
Template Parameters:
Visitora function object of the form:
     struct functor {  
        template<typename MemberPtr, MemberPtr m>
        void operator()( const char* name )const;
     };
Parameters:
va functor that will be called for each member on T
Examples:
examples/reflect_to_json.cpp.

Definition at line 72 of file reflect.hpp.


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