1 /*============================================================================= 2 Copyright (c) 2001-2011 Joel de Guzman 3 Copyright (c) 2005-2006 Dan Marsden 4 Copyright (c) 2009-2010 Christopher Schmidt 5 6 Distributed under the Boost Software License, Version 1.0. (See accompanying 7 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 8 ==============================================================================*/ 9 10 #ifndef BOOST_FUSION_ADAPTED_STRUCT_DETAIL_SIZE_IMPL_HPP 11 #define BOOST_FUSION_ADAPTED_STRUCT_DETAIL_SIZE_IMPL_HPP 12 13 namespace boost { namespace fusion { namespace extension 14 { 15 template<typename> 16 struct size_impl; 17 18 template <> 19 struct size_impl<struct_tag> 20 { 21 template <typename Seq> 22 struct apply 23 : struct_size<typename remove_const<Seq>::type> 24 {}; 25 }; 26 27 template <> 28 struct size_impl<assoc_struct_tag> 29 : size_impl<struct_tag> 30 {}; 31 }}} 32 33 #endif 34