Skip to content

Commit a27e122

Browse files
committed
use universal reference
1 parent 363c33a commit a27e122

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

include/benchmark/benchmark.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1163,8 +1163,8 @@ class BENCHMARK_EXPORT Benchmark {
11631163
// of threads, thread-index, benchmark arguments, etc.
11641164
//
11651165
// The callback must not be NULL or self-deleting.
1166-
Benchmark* Setup(callback_function);
1167-
Benchmark* Teardown(callback_function);
1166+
Benchmark* Setup(callback_function&&);
1167+
Benchmark* Teardown(callback_function&&);
11681168

11691169
// Pass this benchmark object to *func, which can customize
11701170
// the benchmark by calling various methods like Arg, Args,

src/benchmark_register.cc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -337,15 +337,15 @@ Benchmark* Benchmark::Apply(void (*custom_arguments)(Benchmark* benchmark)) {
337337
return this;
338338
}
339339

340-
Benchmark* Benchmark::Setup(callback_function setup) {
340+
Benchmark* Benchmark::Setup(callback_function&& setup) {
341341
BM_CHECK(setup != nullptr);
342-
setup_ = setup;
342+
setup_ = std::forward<callback_function>(setup);
343343
return this;
344344
}
345345

346-
Benchmark* Benchmark::Teardown(callback_function teardown) {
346+
Benchmark* Benchmark::Teardown(callback_function&& teardown) {
347347
BM_CHECK(teardown != nullptr);
348-
teardown_ = teardown;
348+
teardown_ = std::forward<callback_function>(teardown);
349349
return this;
350350
}
351351

0 commit comments

Comments
 (0)