diff options
Diffstat (limited to 'include/internal/benchmark/detail/catch_timing.hpp')
-rw-r--r-- | include/internal/benchmark/detail/catch_timing.hpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/include/internal/benchmark/detail/catch_timing.hpp b/include/internal/benchmark/detail/catch_timing.hpp new file mode 100644 index 00000000..073cb742 --- /dev/null +++ b/include/internal/benchmark/detail/catch_timing.hpp @@ -0,0 +1,33 @@ +/* + * Created by Joachim on 16/04/2019. + * Adapted from donated nonius code. + * + * Distributed under the Boost Software License, Version 1.0. (See accompanying + * file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) + */ + +// Timing + +#ifndef TWOBLUECUBES_CATCH_DETAIL_TIMING_HPP_INCLUDED +#define TWOBLUECUBES_CATCH_DETAIL_TIMING_HPP_INCLUDED + +#include "../catch_clock.hpp" +#include "catch_complete_invoke.hpp" + +#include <tuple> +#include <type_traits> + +namespace Catch { + namespace Benchmark { + template <typename Duration, typename Result> + struct Timing { + Duration elapsed; + Result result; + int iterations; + }; + template <typename Clock, typename Sig> + using TimingOf = Timing<ClockDuration<Clock>, Detail::CompleteType_t<Detail::ResultOf_t<Sig>>>; + } // namespace Benchmark +} // namespace Catch + +#endif // TWOBLUECUBES_CATCH_DETAIL_TIMING_HPP_INCLUDED |