File: boilerplate.cpp

package info (click to toggle)
boost1.74 1.74.0-9
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 464,084 kB
  • sloc: cpp: 3,338,324; xml: 131,293; python: 33,088; ansic: 14,336; asm: 4,034; sh: 3,351; makefile: 1,193; perl: 1,036; yacc: 478; php: 212; ruby: 102; lisp: 24; sql: 13; csh: 6
file content (35 lines) | stat: -rw-r--r-- 1,192 bytes parent folder | download | duplicates (19)
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
35
/*=============================================================================
    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;
}