Extract transform iterator. (#8498)

This commit is contained in:
Jiaming Yuan
2022-12-05 21:37:07 +08:00
committed by GitHub
parent d8544e4d9e
commit e3bf5565ab
9 changed files with 118 additions and 71 deletions

View File

@@ -0,0 +1,20 @@
/**
* Copyright 2022 by XGBoost Contributors
*/
#include <gtest/gtest.h>
#include <cstddef> // std::size_t
#include "../../../src/common/transform_iterator.h"
namespace xgboost {
namespace common {
TEST(IndexTransformIter, Basic) {
auto sqr = [](std::size_t i) { return i * i; };
auto iter = MakeIndexTransformIter(sqr);
for (std::size_t i = 0; i < 4; ++i) {
ASSERT_EQ(iter[i], sqr(i));
}
}
} // namespace common
} // namespace xgboost