|
Boost-Commit : |
From: chochlik_at_[hidden]
Date: 2008-07-09 12:55:29
Author: matus.chochlik
Date: 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
New Revision: 47272
URL: http://svn.boost.org/trac/boost/changeset/47272
Log:
- Updated the support for types derived from a typedef-ined type
- The name_to_string utility has been removed meta_object's base_name and full_name member functions are to be used instead.
Removed:
sandbox/mirror/boost/mirror/utils/name_to_stream/
sandbox/mirror/boost/mirror/utils/name_to_stream.hpp
Text files modified:
sandbox/mirror/boost/mirror/detail/meta_attribs_base.hpp | 25 +++++++++------------
sandbox/mirror/boost/mirror/detail/meta_type_registering.hpp | 22 ++----------------
sandbox/mirror/boost/mirror/detail/traversal.hpp | 4 +-
sandbox/mirror/boost/mirror/meta_class.hpp | 45 +++++++++++++++++++++++++++++++++++++--
sandbox/mirror/boost/mirror/meta_types/_array.hpp | 24 ++++++++++++++-------
sandbox/mirror/boost/mirror/meta_types/_const_volatile.hpp | 9 +++++--
sandbox/mirror/boost/mirror/meta_types/_free_fn.hpp | 3 +
sandbox/mirror/boost/mirror/meta_types/_ptr_ref.hpp | 6 +++-
sandbox/mirror/libs/mirror/doc/xml/mirror/_library.xml | 3 ++
sandbox/mirror/libs/mirror/example/registering/classes.cpp | 26 +++++++++++++---------
sandbox/mirror/libs/mirror/example/registering/namespaces.cpp | 34 ++++++------------------------
sandbox/mirror/libs/mirror/example/registering/types.cpp | 6 ++++
sandbox/mirror/libs/mirror/example/registering/virtual_bases.cpp | 1
sandbox/mirror/libs/mirror/example/serialization/cube.cpp | 3 --
14 files changed, 116 insertions(+), 95 deletions(-)
Modified: sandbox/mirror/boost/mirror/detail/meta_attribs_base.hpp
==============================================================================
--- sandbox/mirror/boost/mirror/detail/meta_attribs_base.hpp (original)
+++ sandbox/mirror/boost/mirror/detail/meta_attribs_base.hpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -149,11 +149,15 @@
#define BOOST_MIRROR_REG_TEMPLATE_OR_CLASS_ATTRIB_BASE_PROLOGUE( \
SPECIFIERS, \
TYPE_SELECTOR, \
- NAME \
+ NAME, \
+ TYPENAME_KW \
) \
partial_list_##NAME; \
typedef mpl::int_< mpl::size< partial_list_##NAME >::value > \
position_of_##NAME; \
+ typedef TYPENAME_KW ::boost::mirror::typedef_::extract_type< \
+ TYPE_SELECTOR \
+ >::type type_of_##NAME; \
static const bchar* base_name( \
position_of_##NAME \
){return BOOST_STR_LIT(#NAME);} \
@@ -171,9 +175,7 @@
TYPENAME_KW \
) typedef TYPENAME_KW mpl::push_back< \
partial_list_##NAME, \
- TYPENAME_KW ::boost::mirror::typedef_::extract_type< \
- TYPE_SELECTOR \
- >::type \
+ type_of_##NAME \
>::type
/** Helper macro expanding into the declaraion of getter
@@ -185,9 +187,7 @@
GETTER_BODY, \
TYPENAME_KW \
) inline static TYPENAME_KW call_traits< \
- TYPENAME_KW ::boost::mirror::typedef_::extract_type< \
- TYPE_SELECTOR \
- >::type \
+ type_of_##NAME \
>::param_type get( \
const Class& instance, \
position_of_##NAME position \
@@ -220,18 +220,14 @@
Class& instance, \
position_of_##NAME, \
TYPENAME_KW call_traits< \
- TYPENAME_KW ::boost::mirror::typedef_::extract_type< \
- TYPE_SELECTOR \
- >::type \
+ type_of_##NAME \
>::param_type value \
) SETTER_BODY \
inline static void set( \
const Class& instance, \
position_of_##NAME, \
TYPENAME_KW call_traits< \
- TYPENAME_KW ::boost::mirror::typedef_::extract_type< \
- TYPE_SELECTOR \
- >::type \
+ type_of_##NAME \
>::param_type value \
) { }
@@ -247,7 +243,8 @@
BOOST_MIRROR_REG_TEMPLATE_OR_CLASS_ATTRIB_BASE_PROLOGUE( \
SPECIFIERS, \
TYPE_SELECTOR, \
- NAME \
+ NAME, \
+ TYPENAME_KW \
) \
BOOST_MIRROR_REG_TEMPLATE_OR_CLASS_ATTRIB_GETTER( \
TYPE_SELECTOR, \
Modified: sandbox/mirror/boost/mirror/detail/meta_type_registering.hpp
==============================================================================
--- sandbox/mirror/boost/mirror/detail/meta_type_registering.hpp (original)
+++ sandbox/mirror/boost/mirror/detail/meta_type_registering.hpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -108,29 +108,13 @@
* from regular types and typedef type selectors
* in a uniform way.
*
- * By default the template argument is 'returned'
*/
template <class TypeOrTypedefSelector>
struct extract_type
{
- typedef TypeOrTypedefSelector type;
- };
-
- /** This is specialization for the templates in mirror::typedef_
- * that represent the registered typedefined types.
- * In this case the base_type of the selector is returned
- */
- template <
- template <class> class TypedefSelector,
- class NamespacePlaceholder
- >
- struct extract_type<TypedefSelector<typedef_tag<NamespacePlaceholder> > >
- {
- typedef typename TypedefSelector<
- typedef_tag<
- NamespacePlaceholder
- >
- >::base_type type;
+ typedef typename ::boost::mirror::meta_type<
+ TypeOrTypedefSelector
+ >::reflected_type type;
};
} // namespace typedef_
Modified: sandbox/mirror/boost/mirror/detail/traversal.hpp
==============================================================================
--- sandbox/mirror/boost/mirror/detail/traversal.hpp (original)
+++ sandbox/mirror/boost/mirror/detail/traversal.hpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -116,7 +116,7 @@
typedef BOOST_TYPEOF(ma.get(*ptr_to_inst)) instance_type;
instance_type instance(ma.get(*ptr_to_inst));
//
- typedef typename MetaAttribute::type
+ typedef typename MetaAttribute::type
attrib_type_selector;
// traverse the attribute
TraversalType<
@@ -155,7 +155,7 @@
);
//
// traverse the attributes
- typedef typename MetaAttribute::type
+ typedef typename MetaAttribute::type
attrib_type_selector;
TraversalType<
BOOST_MIRRORED_CLASS(attrib_type_selector),
Modified: sandbox/mirror/boost/mirror/meta_class.hpp
==============================================================================
--- sandbox/mirror/boost/mirror/meta_class.hpp (original)
+++ sandbox/mirror/boost/mirror/meta_class.hpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -37,15 +37,15 @@
namespace boost {
namespace mirror {
+namespace detail {
-
-/** Meta class - specializes the meta_type for classes
+/** Common base for various meta_class specializations
*/
template <
class Class,
class VariantTag
>
-struct meta_class : public meta_type<Class>
+struct meta_class_base
{
/** The base classes of a class.
* The member base_classes::list is a mpl::vector of
@@ -82,6 +82,45 @@
destructor;
};
+} // namespace detail
+
+/** Meta class - specializes the meta_type for classes
+ */
+template <
+ class Class,
+ class VariantTag
+>
+struct meta_class
+: public meta_type<Class>
+, public detail::meta_class_base<Class, VariantTag>
+{ };
+
+/** Meta class - specialization for typedefined types
+ */
+template <
+ template <class> class TypedefSelector,
+ class MetaNamespace,
+ class VariantTag
+>
+struct meta_class<
+ TypedefSelector<typedef_::typedef_tag<MetaNamespace> >,
+ VariantTag
+>
+: public meta_type<
+ TypedefSelector<typedef_::typedef_tag<MetaNamespace> >
+>
+, public detail::meta_class_base<
+ typename typedef_::extract_type<
+ TypedefSelector<
+ typedef_::typedef_tag<MetaNamespace>
+ >
+ >::type,
+ VariantTag
+>
+{ };
+
+
+
/** This macro should be included in the definition of every class
* with private or protected members, that should be refleccted
Modified: sandbox/mirror/boost/mirror/meta_types/_array.hpp
==============================================================================
--- sandbox/mirror/boost/mirror/meta_types/_array.hpp (original)
+++ sandbox/mirror/boost/mirror/meta_types/_array.hpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -28,7 +28,8 @@
>
{
typedef typename meta_type<ElementType>::scope scope;
- typedef ElementType reflected_type[Size];
+ typedef typename meta_type<ElementType>::reflected_type
+ reflected_type[Size];
};
@@ -39,7 +40,8 @@
>
{
typedef typename meta_type<ElementType>::scope scope;
- typedef const ElementType reflected_type[Size];
+ typedef typename const meta_type<ElementType>::reflected_type
+ reflected_type[Size];
};
template <class ElementType, size_t Size>
@@ -49,7 +51,8 @@
>
{
typedef typename meta_type<ElementType>::scope scope;
- typedef volatile ElementType reflected_type[Size];
+ typedef typename volatile meta_type<ElementType>::reflected_type
+ reflected_type[Size];
};
template <class ElementType, size_t Size>
@@ -60,7 +63,8 @@
>
{
typedef typename meta_type<ElementType>::scope scope;
- typedef const volatile ElementType reflected_type[Size];
+ typedef typename const volatile meta_type<ElementType>::reflected_type
+ reflected_type[Size];
};
template <class ElementType>
@@ -70,7 +74,8 @@
>
{
typedef typename meta_type<ElementType>::scope scope;
- typedef ElementType reflected_type[];
+ typedef typename meta_type<ElementType>::reflected_type
+ reflected_type[];
};
template <class ElementType>
@@ -80,7 +85,8 @@
>
{
typedef typename meta_type<ElementType>::scope scope;
- typedef ElementType const reflected_type [];
+ typedef typename meta_type<ElementType>::reflected_type const
+ reflected_type[];
};
template <class ElementType>
@@ -90,7 +96,8 @@
>
{
typedef typename meta_type<ElementType>::scope scope;
- typedef ElementType volatile reflected_type [];
+ typedef typename meta_type<ElementType>::reflected_type volatile
+ reflected_type[];
};
template <class ElementType>
@@ -101,7 +108,8 @@
>
{
typedef typename meta_type<ElementType>::scope scope;
- typedef ElementType const volatile reflected_type [];
+ typedef typename meta_type<ElementType>::reflected_type const volatile
+ reflected_type[];
};
Modified: sandbox/mirror/boost/mirror/meta_types/_const_volatile.hpp
==============================================================================
--- sandbox/mirror/boost/mirror/meta_types/_const_volatile.hpp (original)
+++ sandbox/mirror/boost/mirror/meta_types/_const_volatile.hpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -27,7 +27,8 @@
>
{
typedef typename meta_type<NonConstType>::scope scope;
- typedef const NonConstType reflected_type;
+ typedef const typename meta_type<NonConstType>::reflected_type
+ reflected_type;
};
/** Meta-types for volatile types
@@ -39,7 +40,8 @@
>
{
typedef typename meta_type<NonVolatileType>::scope scope;
- typedef volatile NonVolatileType reflected_type;
+ typedef volatile typename meta_type<NonVolatileType>::reflected_type
+ reflected_type;
};
/** Meta-types for const volatile types
@@ -51,7 +53,8 @@
>
{
typedef typename meta_type<NonCVType>::scope scope;
- typedef const volatile NonCVType reflected_type;
+ typedef const volatile typename meta_type<NonCVType>::reflected_type
+ reflected_type;
};
} // namespace mirror
Modified: sandbox/mirror/boost/mirror/meta_types/_free_fn.hpp
==============================================================================
--- sandbox/mirror/boost/mirror/meta_types/_free_fn.hpp (original)
+++ sandbox/mirror/boost/mirror/meta_types/_free_fn.hpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -64,7 +64,8 @@
> \
{ \
typedef typename meta_type<void>::scope scope; \
- typedef RetVal(reflected_type)(BOOST_PP_ENUM_PARAMS(ARG_COUNT, T)); \
+ typedef typename meta_type<RetVal>::reflected_type \
+ (reflected_type)(BOOST_PP_ENUM_PARAMS(ARG_COUNT, T)); \
};
BOOST_PP_REPEAT(16, BOOST_MIRROR_DECLARE_FREE_FUNCTION_META_TYPE, default)
Modified: sandbox/mirror/boost/mirror/meta_types/_ptr_ref.hpp
==============================================================================
--- sandbox/mirror/boost/mirror/meta_types/_ptr_ref.hpp (original)
+++ sandbox/mirror/boost/mirror/meta_types/_ptr_ref.hpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -27,7 +27,8 @@
>
{
typedef typename meta_type<PointeeType>::scope scope;
- typedef PointeeType* reflected_type;
+ typedef typename meta_type<PointeeType>::reflected_type*
+ reflected_type;
};
/** Meta-types for references
@@ -39,7 +40,8 @@
>
{
typedef typename meta_type<ReferredToType>::scope scope;
- typedef ReferredToType& reflected_type;
+ typedef typename meta_type<ReferredToType>::reflected_type&
+ reflected_type;
};
} // namespace mirror
Deleted: sandbox/mirror/boost/mirror/utils/name_to_stream.hpp
==============================================================================
--- sandbox/mirror/boost/mirror/utils/name_to_stream.hpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
+++ (empty file)
@@ -1,24 +0,0 @@
-/**
- * \file boost/mirror/utils/name_to_stream.hpp
- * Putting names of reflected nammespaces, classes, etc. to streams
- *
- * Copyright 2008 Matus Chochlik. Distributed under the Boost
- * Software License, Version 1.0. (See accompanying file
- * LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- */
-
-#ifndef BOOST_MIRROR_UTILS_NAME_TO_STREAM_HPP
-#define BOOST_MIRROR_UTILS_NAME_TO_STREAM_HPP
-
-#include <boost/mirror/utils/name_to_stream/namespace.hpp>
-#include <boost/mirror/utils/name_to_stream/type.hpp>
-#include <boost/mirror/utils/name_to_stream/class.hpp>
-
-namespace boost {
-namespace mirror {
-
-} // namespace mirror
-} // namespace boost
-
-#endif //include guard
-
Modified: sandbox/mirror/libs/mirror/doc/xml/mirror/_library.xml
==============================================================================
--- sandbox/mirror/libs/mirror/doc/xml/mirror/_library.xml (original)
+++ sandbox/mirror/libs/mirror/doc/xml/mirror/_library.xml 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -274,5 +274,8 @@
- Tested with gcc 4.3.0 on SuSE
- Tested with intel 10.1 on SuSE (fails with some examples)
</revision>
+ <revision id="20080709" major="0" minor="2" micro="1" author="m_ch">
+ - The name_to_string utility has been removed meta_object's base_name and full_name member functions are to be used instead.
+ </revision>
</revisions>
</library>
Modified: sandbox/mirror/libs/mirror/example/registering/classes.cpp
==============================================================================
--- sandbox/mirror/libs/mirror/example/registering/classes.cpp (original)
+++ sandbox/mirror/libs/mirror/example/registering/classes.cpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -24,7 +24,6 @@
#include <boost/mirror/meta_type.hpp>
#include <boost/mirror/meta_class.hpp>
-#include <boost/mirror/utils/name_to_stream.hpp>
#include <boost/mirror/algorithms.hpp>
#include <boost/mirror/traits/reflects_global_scope.hpp>
@@ -93,6 +92,8 @@
::boost::bcout << a_string << ::std::endl;
}
//
+ // attribute with a type based on a typedefined type
+ const ::boost::bchar* (*a_function)(int);
public:
// A little weird getter/setter pair
// Note that the getter is not const
@@ -192,15 +193,20 @@
)
//
// this is an attrib that has no getter but has a setter function
- // Also note that macros with the _TD suffix allow to register
- // attributes with typedef'd types
- //BOOST_MIRROR_REG_CLASS_ATTRIB_SETTER_TD(4, _boost, ::boost, bstring, a_string, set_string)
+ // NOTE that the type of this attribute is typedef'd
BOOST_MIRROR_REG_CLASS_ATTRIB(
_, BOOST_MIRROR_TYPEDEF(::boost, bstring), a_string,
{return instance.a_string;},
{dest = DestType(instance.a_string); return dest;},
{instance.set_string(value);}
)
+ // another typedefd attribute
+ BOOST_MIRROR_REG_CLASS_ATTRIB(
+ static, const BOOST_MIRROR_TYPEDEF(::boost, bchar) * (*)(int), a_function,
+ {return instance.a_function;},
+ {dest = DestType(instance.a_function); return dest;},
+ { } // no setter
+ )
//
// and the last one is accessed by the means of a pair of getter/setter functions
BOOST_MIRROR_REG_CLASS_ATTRIB(
@@ -244,7 +250,7 @@
else return s << "Unknown meta object";
//
// print out it's name
- s << name_to_stream<meta_object>() << "' " << endl;
+ s << meta_object::full_name() << "' " << endl;
//
//
typedef typename meta_object::scope meta_scope;
@@ -256,9 +262,9 @@
s << "on the global scope";
// if it's a class
else if(reflects_class<meta_scope>::value)
- s << "inside of the '" << name_to_stream<meta_scope>() << "' class";
+ s << "inside of the '" << meta_scope::full_name() << "' class";
// otherwise
- else s << "in the '" << name_to_stream<meta_scope>() << "' namespace";
+ else s << "in the '" << meta_scope::full_name() << "' namespace";
s << "." << endl;
//
// print the base classes if any
@@ -291,7 +297,7 @@
// of the base class
using namespace ::std;
typedef typename MetaInheritance::meta_base_class meta_class;
- s << endl << " - " << name_to_stream<meta_class>();
+ s << endl << " - " << meta_class::full_name();
}
};
//
@@ -339,9 +345,7 @@
{
using namespace ::std;
s << endl << " - " <<
- name_to_stream<
- BOOST_MIRRORED_TYPE(typename MetaAttribute::type_selector)
- >() <<
+ BOOST_MIRRORED_TYPE(typename MetaAttribute::type_selector)::full_name() <<
" " <<
ma.base_name();
}
Modified: sandbox/mirror/libs/mirror/example/registering/namespaces.cpp
==============================================================================
--- sandbox/mirror/libs/mirror/example/registering/namespaces.cpp (original)
+++ sandbox/mirror/libs/mirror/example/registering/namespaces.cpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -12,8 +12,6 @@
#include <boost/char_type_switch/iostream.hpp>
// namespace registering
#include <boost/mirror/meta_namespace.hpp>
-// utility that allows to put the name of the namespace to a given stream
-#include <boost/mirror/utils/name_to_stream/namespace.hpp>
//
// mpl size meta function
#include <boost/mpl/size.hpp>
@@ -93,34 +91,16 @@
bcout << "|05| " <<mpl::size<meta_ns_test::ancestors>::value << endl;
bcout << "|06| " <<mpl::size<meta_ns_test_stuff_detail::ancestors>::value << endl;
//
- // the name_to_stream<meta_object> class allows to put the full name
- // (including the scope) into a stream
- bcout << "|07| " <<name_to_stream< BOOST_MIRRORED_GLOBAL_SCOPE() >() << endl;
- bcout << "|08| " <<name_to_stream< BOOST_MIRRORED_NAMESPACE(::test) >() << endl;
- bcout << "|09| " <<name_to_stream< BOOST_MIRRORED_NAMESPACE(::test::stuff) >() << endl;
- bcout << "|10| " <<name_to_stream< BOOST_MIRRORED_NAMESPACE(::test::stuff::detail) >() << endl;
- // in this case the :: is prepended to the full name
- // thus test::stuff -> ::test::stuff
- bcout << "|11| " <<name_to_stream< BOOST_MIRRORED_GLOBAL_SCOPE() >(true) << endl;
- bcout << "|12| " <<name_to_stream< BOOST_MIRRORED_NAMESPACE(::test) >(true) << endl;
- bcout << "|13| " <<name_to_stream< BOOST_MIRRORED_NAMESPACE(::test::stuff) >(true) << endl;
- bcout << "|14| " <<name_to_stream< BOOST_MIRRORED_NAMESPACE(::test::stuff::detail) >(true) << endl;
- //
- // there are few namespace registered by default
- // including (::std, ::boost, ::boost::mirror)
- bcout << "|15| " <<name_to_stream< BOOST_MIRRORED_NAMESPACE(::std) >(true) << endl;
- bcout << "|16| " <<name_to_stream< BOOST_MIRRORED_NAMESPACE(::boost) >(true) << endl;
- bcout << "|17| " <<name_to_stream< BOOST_MIRRORED_NAMESPACE(::boost::mirror) >(true) << endl;
//
// printing out the full namespace names directly without the name_to_stream
// printer template
- bcout << "|18| " << BOOST_MIRRORED_GLOBAL_SCOPE() ::full_name() << endl;
- bcout << "|19| " << BOOST_MIRRORED_NAMESPACE(::std) ::full_name() << endl;
- bcout << "|20| " << BOOST_MIRRORED_NAMESPACE(::boost) ::full_name() << endl;
- bcout << "|21| " << BOOST_MIRRORED_NAMESPACE(::boost::mirror) ::full_name() << endl;
- bcout << "|22| " << BOOST_MIRRORED_NAMESPACE(::test) ::full_name() << endl;
- bcout << "|23| " << BOOST_MIRRORED_NAMESPACE(::test::stuff) ::full_name() << endl;
- bcout << "|24| " << BOOST_MIRRORED_NAMESPACE(::test::stuff::detail) ::full_name() << endl;
+ bcout << "|07| " << BOOST_MIRRORED_GLOBAL_SCOPE() ::full_name() << endl;
+ bcout << "|08| " << BOOST_MIRRORED_NAMESPACE(::std) ::full_name() << endl;
+ bcout << "|09| " << BOOST_MIRRORED_NAMESPACE(::boost) ::full_name() << endl;
+ bcout << "|10| " << BOOST_MIRRORED_NAMESPACE(::boost::mirror) ::full_name() << endl;
+ bcout << "|11| " << BOOST_MIRRORED_NAMESPACE(::test) ::full_name() << endl;
+ bcout << "|12| " << BOOST_MIRRORED_NAMESPACE(::test::stuff) ::full_name() << endl;
+ bcout << "|13| " << BOOST_MIRRORED_NAMESPACE(::test::stuff::detail) ::full_name() << endl;
return 0;
}
Modified: sandbox/mirror/libs/mirror/example/registering/types.cpp
==============================================================================
--- sandbox/mirror/libs/mirror/example/registering/types.cpp (original)
+++ sandbox/mirror/libs/mirror/example/registering/types.cpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -164,8 +164,12 @@
//
bcout << "|26| " << BOOST_MIRRORED_TYPE(bool) ::full_name() << endl;
bcout << "|27| " << BOOST_MIRRORED_TYPE(bchar) ::full_name() << endl;
+ //
+ // reflection of typedefined types
bcout << "|28| " << BOOST_MIRRORED_TYPEDEF(::boost, bchar) ::full_name() << endl;
- bcout << "|29| " << BOOST_MIRRORED_TYPEDEF(::boost, bstring) ::full_name() << endl;
+ // or another way how to reflect a typedefined type
+ bcout << "|29| " << BOOST_MIRRORED_TYPE(BOOST_MIRROR_TYPEDEF(::boost, bstring) const * volatile *) ::full_name() << endl;
+ //
bcout << "|30| " << BOOST_MIRRORED_TYPE(int const * const volatile) ::full_name() << endl;
bcout << "|31| " << BOOST_MIRRORED_TYPE(int volatile * const * volatile * const *) ::full_name() << endl;
Modified: sandbox/mirror/libs/mirror/example/registering/virtual_bases.cpp
==============================================================================
--- sandbox/mirror/libs/mirror/example/registering/virtual_bases.cpp (original)
+++ sandbox/mirror/libs/mirror/example/registering/virtual_bases.cpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -29,7 +29,6 @@
#include <boost/mirror/meta_type.hpp>
#include <boost/mirror/meta_class.hpp>
-#include <boost/mirror/utils/name_to_stream.hpp>
#include <boost/mirror/algorithms.hpp>
/** First declare some namespaces and classes
Modified: sandbox/mirror/libs/mirror/example/serialization/cube.cpp
==============================================================================
--- sandbox/mirror/libs/mirror/example/serialization/cube.cpp (original)
+++ sandbox/mirror/libs/mirror/example/serialization/cube.cpp 2008-07-09 12:55:27 EDT (Wed, 09 Jul 2008)
@@ -34,12 +34,9 @@
#include <boost/mirror/meta_type.hpp>
#include <boost/mirror/meta_class.hpp>
-#include <boost/mirror/utils/name_to_stream.hpp>
-
/** First declare some namespaces and classes
*/
-
namespace Graphics {
// coordinates
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk