mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-04-22 09:39:34 +08:00
parent
5595cfd194
commit
f49217e52b
@ -47,24 +47,24 @@ void basic_tuple_test() {
|
|||||||
VERIFY_IS_EQUAL(tuple_impl::get<2>(tuple3), 13.0);
|
VERIFY_IS_EQUAL(tuple_impl::get<2>(tuple3), 13.0);
|
||||||
|
|
||||||
// tuple_impl::tuple_size.
|
// tuple_impl::tuple_size.
|
||||||
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple0)>::value, 0);
|
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple0)>::value, size_t(0));
|
||||||
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple1)>::value, 1);
|
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple1)>::value, size_t(1));
|
||||||
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple2)>::value, 2);
|
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple2)>::value, size_t(2));
|
||||||
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple3)>::value, 3);
|
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple3)>::value, size_t(3));
|
||||||
|
|
||||||
// tuple_impl::tuple_cat.
|
// tuple_impl::tuple_cat.
|
||||||
auto tuple2cat3 = tuple_impl::tuple_cat(tuple2, tuple3);
|
auto tuple2cat3 = tuple_impl::tuple_cat(tuple2, tuple3);
|
||||||
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple2cat3)>::value, 5);
|
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple2cat3)>::value, size_t(5));
|
||||||
VERIFY_IS_EQUAL(tuple_impl::get<1>(tuple2cat3), 5.0f);
|
VERIFY_IS_EQUAL(tuple_impl::get<1>(tuple2cat3), 5.0f);
|
||||||
VERIFY_IS_EQUAL(tuple_impl::get<3>(tuple2cat3), 11.0f);
|
VERIFY_IS_EQUAL(tuple_impl::get<3>(tuple2cat3), 11.0f);
|
||||||
auto tuple3cat0 = tuple_impl::tuple_cat(tuple3, tuple0);
|
auto tuple3cat0 = tuple_impl::tuple_cat(tuple3, tuple0);
|
||||||
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple3cat0)>::value, 3);
|
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple3cat0)>::value, size_t(3));
|
||||||
auto singlecat = tuple_impl::tuple_cat(tuple3);
|
auto singlecat = tuple_impl::tuple_cat(tuple3);
|
||||||
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(singlecat)>::value, 3);
|
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(singlecat)>::value, size_t(3));
|
||||||
auto emptycat = tuple_impl::tuple_cat();
|
auto emptycat = tuple_impl::tuple_cat();
|
||||||
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(emptycat)>::value, 0);
|
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(emptycat)>::value, size_t(0));
|
||||||
auto tuple0cat1cat2cat3 = tuple_impl::tuple_cat(tuple0, tuple1, tuple2, tuple3);
|
auto tuple0cat1cat2cat3 = tuple_impl::tuple_cat(tuple0, tuple1, tuple2, tuple3);
|
||||||
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple0cat1cat2cat3)>::value, 6);
|
VERIFY_IS_EQUAL(tuple_impl::tuple_size<decltype(tuple0cat1cat2cat3)>::value, size_t(6));
|
||||||
|
|
||||||
// make_tuple.
|
// make_tuple.
|
||||||
// The tuple types should uses values for the second and fourth parameters.
|
// The tuple types should uses values for the second and fourth parameters.
|
||||||
@ -86,10 +86,10 @@ void basic_tuple_test() {
|
|||||||
decltype(tuple1)&,
|
decltype(tuple1)&,
|
||||||
decltype(tuple2)&,
|
decltype(tuple2)&,
|
||||||
decltype(tuple3)&> >::value) );
|
decltype(tuple3)&> >::value) );
|
||||||
VERIFY_IS_EQUAL( (tuple_impl::get<1>(tuple_impl::get<2>(tuple_tie))), 5.0 );
|
VERIFY_IS_EQUAL( (tuple_impl::get<1>(tuple_impl::get<2>(tuple_tie))), 5.0f );
|
||||||
// Modify value and ensure tuple2 is updated.
|
// Modify value and ensure tuple2 is updated.
|
||||||
tuple_impl::get<1>(tuple_impl::get<2>(tuple_tie)) = 10.0;
|
tuple_impl::get<1>(tuple_impl::get<2>(tuple_tie)) = 10.0f;
|
||||||
VERIFY_IS_EQUAL( (tuple_impl::get<1>(tuple2)), 10.0 );
|
VERIFY_IS_EQUAL( (tuple_impl::get<1>(tuple2)), 10.0f );
|
||||||
|
|
||||||
// Assignment.
|
// Assignment.
|
||||||
int x = -1;
|
int x = -1;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user