1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
// Copyright 2014-2017 Insight Software Consortium.
// Copyright 2004-2009 Roman Yakovenko.
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
#include <string>
#include <vector>
struct _0_{};
typedef std::vector< _0_ > container;
namespace vector_traits{
namespace yes{
struct _1_{
typedef int value_type;
typedef std::vector< int > container;
container do_nothing(){ return container(0); };
};
struct _2_{
typedef _0_ value_type;
typedef std::vector< _0_ > container;
container do_nothing(){ return container(0); };
};
struct _3_{
typedef std::string value_type;
typedef std::vector< std::string > container;
container do_nothing(){ return container(0); };
};
struct _4_{
typedef std::vector<int> value_type;
typedef std::vector< std::vector<int> > container;
container do_nothing(){ return container(0); };
};
struct _5_{
typedef int value_type;
typedef const std::vector< int > container;
container do_nothing(){ return container(0); };
};
}
namespace no{
struct _1_{
template< class T >
struct vector{};
typedef vector<int> container;
};
struct _2_{
typedef const std::vector< const int >& container;
};
}
}
void do_nothing( std::vector< std::wstring >& );
|