• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*=============================================================================
2     Copyright (C) 2015 Kohei Takahshi
3 
4     Distributed under the Boost Software License, Version 1.0. (See accompanying
5     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6 ==============================================================================*/
7 #include <boost/fusion/tuple/tuple.hpp>
8 #include <boost/core/lightweight_test.hpp>
9 
10 #define FUSION_SEQUENCE boost::fusion::tuple
11 #include "nest.hpp"
12 
13 
14 // tuple does not support conversion construction from sequence by design
15 template <typename T>
16 struct skip_constructor_conversion
17 {
18     template <typename Source, typename Expected>
operator ()skip_constructor_conversion19     bool operator()(Source const& source, Expected const& expected) const
20     {
21         using namespace test_detail;
22         return
23             run< can_copy<T> >(source, expected) &&
24             run< can_convert_using<can_assign>::to<T> >(source, expected) &&
25             run< can_construct_from_elements<T> >(source, expected);
26     }
27 };
28 
29 int
main()30 main()
31 {
32     test<skip_constructor_conversion>();
33     return boost::report_errors();
34 }
35 
36