fix doc example typo
[boost.git] / boost / fusion / container / map / detail / convert_impl.hpp
blobaedd3e3d7e5e464a79b726ab466b24083c69cae1
1 /*=============================================================================
2 Copyright (c) 2001-2006 Joel de Guzman
3 Copyright (c) 2005-2006 Dan Marsden
5 Distributed under the Boost Software License, Version 1.0. (See accompanying
6 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 ==============================================================================*/
8 #if !defined(FUSION_CONVERT_IMPL_09232005_1340)
9 #define FUSION_CONVERT_IMPL_09232005_1340
11 #include <boost/fusion/container/map/detail/as_map.hpp>
12 #include <boost/fusion/container/map/map.hpp>
13 #include <boost/fusion/sequence/intrinsic/begin.hpp>
14 #include <boost/fusion/sequence/intrinsic/size.hpp>
16 namespace boost { namespace fusion
18 struct map_tag;
20 namespace extension
22 template <typename T>
23 struct convert_impl;
25 template <>
26 struct convert_impl<map_tag>
28 template <typename Sequence>
29 struct apply
31 typedef typename detail::as_map<result_of::size<Sequence>::value> gen;
32 typedef typename gen::
33 template apply<typename result_of::begin<Sequence>::type>::type
34 type;
36 static type call(Sequence& seq)
38 return gen::call(fusion::begin(seq));
45 #endif