forked from boostorg/spirit
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathboilerplate.cpp
35 lines (30 loc) · 1.16 KB
/
boilerplate.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
/*=============================================================================
Copyright (c) 2001-2010 Joel de Guzman
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)
==============================================================================*/
#include "measure.hpp"
namespace
{
struct f : test::base
{
void benchmark()
{
this->val += 5; // Here is where you put code that you want
// to benchmark. Make sure it returns something.
// Anything.
}
};
}
int main()
{
BOOST_SPIRIT_TEST_BENCHMARK(
10000000, // This is the maximum repetitions to execute
(f) // Place your tests here. For now, we have only one test: (f)
// If you have 3 tests a, b and c, this line will contain (a)(b)(c)
)
// This is ultimately responsible for preventing all the test code
// from being optimized away. Change this to return 0 and you
// unplug the whole test's life support system.
return test::live_code != 0;
}