Mercurial > hg > vamp-build-and-test
annotate DEPENDENCIES/generic/include/boost/fusion/mpl/insert.hpp @ 16:2665513ce2d3
Add boost headers
author | Chris Cannam |
---|---|
date | Tue, 05 Aug 2014 11:11:38 +0100 |
parents | |
children | c530137014c0 |
rev | line source |
---|---|
Chris@16 | 1 /*============================================================================= |
Chris@16 | 2 Copyright (c) 2001-2011 Joel de Guzman |
Chris@16 | 3 |
Chris@16 | 4 Distributed under the Boost Software License, Version 1.0. (See accompanying |
Chris@16 | 5 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
Chris@16 | 6 ==============================================================================*/ |
Chris@16 | 7 #if !defined(FUSION_INSERT_10022005_1837) |
Chris@16 | 8 #define FUSION_INSERT_10022005_1837 |
Chris@16 | 9 |
Chris@16 | 10 #include <boost/mpl/insert.hpp> |
Chris@16 | 11 #include <boost/fusion/support/tag_of.hpp> |
Chris@16 | 12 #include <boost/fusion/algorithm/transformation/insert.hpp> |
Chris@16 | 13 #include <boost/fusion/sequence/convert.hpp> |
Chris@16 | 14 |
Chris@16 | 15 namespace boost { namespace mpl |
Chris@16 | 16 { |
Chris@16 | 17 template <typename Tag> |
Chris@16 | 18 struct insert_impl; |
Chris@16 | 19 |
Chris@16 | 20 template <> |
Chris@16 | 21 struct insert_impl<fusion::fusion_sequence_tag> |
Chris@16 | 22 { |
Chris@16 | 23 template <typename Sequence, typename Pos, typename T> |
Chris@16 | 24 struct apply |
Chris@16 | 25 { |
Chris@16 | 26 typedef typename |
Chris@16 | 27 fusion::result_of::insert<Sequence, Pos, T>::type |
Chris@16 | 28 result; |
Chris@16 | 29 |
Chris@16 | 30 typedef typename |
Chris@16 | 31 fusion::result_of::convert< |
Chris@16 | 32 typename fusion::detail::tag_of<Sequence>::type, result>::type |
Chris@16 | 33 type; |
Chris@16 | 34 }; |
Chris@16 | 35 }; |
Chris@16 | 36 }} |
Chris@16 | 37 |
Chris@16 | 38 #endif |
Chris@16 | 39 |