1#include <vector>
2#include <functional>
3#include <cstdint>
4#include <cstdlib>
5#include <cstring>
6
7#include "benchmark/benchmark.h"
8
9#include "ContainerBenchmarks.h"
10#include "GenerateInput.h"
11
12using namespace ContainerBenchmarks;
13
14constexpr std::size_t TestNumInputs = 1024;
15
16BENCHMARK_CAPTURE(BM_ConstructSize,
17    vector_byte,
18    std::vector<unsigned char>{})->Arg(5140480);
19
20BENCHMARK_CAPTURE(BM_ConstructSizeValue,
21    vector_byte,
22    std::vector<unsigned char>{}, 0)->Arg(5140480);
23
24BENCHMARK_CAPTURE(BM_ConstructIterIter,
25  vector_char,
26  std::vector<char>{},
27  getRandomIntegerInputs<char>)->Arg(TestNumInputs);
28
29BENCHMARK_CAPTURE(BM_ConstructIterIter,
30  vector_size_t,
31  std::vector<size_t>{},
32  getRandomIntegerInputs<size_t>)->Arg(TestNumInputs);
33
34BENCHMARK_CAPTURE(BM_ConstructIterIter,
35  vector_string,
36  std::vector<std::string>{},
37  getRandomStringInputs)->Arg(TestNumInputs);
38
39
40BENCHMARK_MAIN();
41