/*============================================================================= Copyright (c) 2001-2009 Joel de Guzman Copyright (c) 2005-2006 Dan Marsden 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) ==============================================================================*/ #if !defined(FUSION_CLASS_EXTENSION_OCTOBER_4_2009_839PM) #define FUSION_CLASS_EXTENSION_OCTOBER_4_2009_839PM #include namespace boost { namespace fusion { struct fusion_sequence_tag; namespace extension { template struct class_member; template struct class_size; template struct class_member : class_member {}; template struct class_size : class_size {}; struct no_such_member; template struct class_assoc_member { typedef no_such_member type; }; template struct class_assoc_member { typedef typename add_const::type>::type type; static type& call(Class const& class_) { return class_assoc_member::call( const_cast(class_)); } }; } }} #endif