1 2 // Copyright Aleksey Gurtovoy 2002-2004 3 // 4 // Distributed under the Boost Software License, Version 1.0. 5 // (See accompanying file LICENSE_1_0.txt or copy at 6 // http://www.boost.org/LICENSE_1_0.txt) 7 // 8 // See http://www.boost.org/libs/mpl for documentation. 9 10 // $Id$ 11 // $Date$ 12 // $Revision$ 13 14 #include <boost/mpl/is_sequence.hpp> 15 #include <boost/mpl/int.hpp> 16 #include <boost/mpl/list.hpp> 17 #include <boost/mpl/vector.hpp> 18 #include <boost/mpl/range_c.hpp> 19 #include <boost/mpl/aux_/test.hpp> 20 21 template< typename T > struct std_vector 22 { 23 T* begin(); 24 }; 25 MPL_TEST_CASE()26MPL_TEST_CASE() 27 { 28 MPL_ASSERT_NOT(( is_sequence< std_vector<int> > )); 29 MPL_ASSERT_NOT(( is_sequence< int_<0> > )); 30 MPL_ASSERT_NOT(( is_sequence< int > )); 31 MPL_ASSERT_NOT(( is_sequence< int& > )); 32 MPL_ASSERT_NOT(( is_sequence< UDT > )); 33 MPL_ASSERT_NOT(( is_sequence< UDT* > )); 34 MPL_ASSERT(( is_sequence< range_c<int,0,0> > )); 35 MPL_ASSERT(( is_sequence< list<> > )); 36 MPL_ASSERT(( is_sequence< list<int> > )); 37 MPL_ASSERT(( is_sequence< vector<> > )); 38 MPL_ASSERT(( is_sequence< vector<int> > )); 39 } 40