#define _CRT_SECURE_NO_DEPRECATE
#define _SCL_SECURE_NO_DEPRECATE
#include <boost/config.hpp>
#include <boost/static_assert.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/bimap/support/lambda.hpp>
#include <boost/bimap/bimap.hpp>
#include <boost/bimap/list_of.hpp>
#include <boost/bimap/support/data_type_by.hpp>
#include <boost/bimap/support/key_type_by.hpp>
#include <boost/bimap/support/map_type_by.hpp>
#include <boost/bimap/support/value_type_by.hpp>
#include <boost/bimap/support/iterator_type_by.hpp>
#include <boost/bimap/relation/support/pair_type_by.hpp>
using namespace boost::bimaps;
using namespace boost::bimaps::support;
using namespace boost::bimaps::relation::support ;
typedef bimap<int, unconstrained_set_of<double> > bm_type;
namespace support_metafunctions_test {
typedef boost::is_same
<
data_type_by< member_at::left , bm_type >::type,
key_type_by < member_at::right, bm_type >::type
>::type test_metafunction_1;
BOOST_STATIC_ASSERT(test_metafunction_1::value);
typedef boost::is_same
<
data_type_by< member_at::right, bm_type >::type,
key_type_by < member_at::left , bm_type >::type
>::type test_metafunction_2;
BOOST_STATIC_ASSERT(test_metafunction_2::value);
typedef boost::is_same
<
map_type_by < member_at::left , bm_type >::type::value_type,
value_type_by< member_at::left , bm_type >::type
>::type test_metafunction_3;
BOOST_STATIC_ASSERT(test_metafunction_3::value);
typedef boost::is_same
<
pair_type_by< member_at::left, bm_type::relation>::type,
value_type_by< member_at::left , bm_type >::type
>::type test_metafunction_4;
BOOST_STATIC_ASSERT(test_metafunction_4::value);
}
void test_bimap_extra()
{
}
int main()
{
test_bimap_extra();
return 0;
}