summaryrefslogtreecommitdiff
path: root/vendor/CppQuickCheck-2018-03-28/src/Arbitrary.cpp
blob: 5da4d3d74af15c8367ea2897cb714a0e48a50098 (plain)
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include "cppqc/Arbitrary.h"

namespace cppqc {

const Arbitrary<bool>::unGenType ArbitraryImpl<bool>::unGen = arbitraryBool;
const Arbitrary<bool>::shrinkType ArbitraryImpl<bool>::shrink = shrinkBool;

const Arbitrary<signed char>::unGenType ArbitraryImpl<signed char>::unGen =
    arbitrarySizedBoundedIntegral<signed char>;
const Arbitrary<signed char>::shrinkType ArbitraryImpl<signed char>::shrink =
    shrinkIntegral<signed char>;

const Arbitrary<unsigned char>::unGenType ArbitraryImpl<unsigned char>::unGen =
    arbitrarySizedBoundedIntegral<unsigned char>;
const Arbitrary<unsigned char>::shrinkType
    ArbitraryImpl<unsigned char>::shrink = shrinkIntegral<unsigned char>;

const Arbitrary<signed short>::unGenType ArbitraryImpl<signed short>::unGen =
    arbitrarySizedBoundedIntegral<signed short>;
const Arbitrary<signed short>::shrinkType ArbitraryImpl<signed short>::shrink =
    shrinkIntegral<signed short>;

const Arbitrary<unsigned short>::unGenType
    ArbitraryImpl<unsigned short>::unGen =
    arbitrarySizedBoundedIntegral<unsigned short>;
const Arbitrary<unsigned short>::shrinkType
    ArbitraryImpl<unsigned short>::shrink = shrinkIntegral<unsigned short>;

const Arbitrary<signed int>::unGenType ArbitraryImpl<signed int>::unGen =
    arbitrarySizedBoundedIntegral<signed int>;
const Arbitrary<signed int>::shrinkType ArbitraryImpl<signed int>::shrink =
    shrinkIntegral<signed int>;

const Arbitrary<unsigned int>::unGenType ArbitraryImpl<unsigned int>::unGen =
    arbitrarySizedBoundedIntegral<unsigned int>;
const Arbitrary<unsigned int>::shrinkType ArbitraryImpl<unsigned int>::shrink =
    shrinkIntegral<unsigned int>;

const Arbitrary<signed long>::unGenType ArbitraryImpl<signed long>::unGen =
    arbitrarySizedBoundedIntegral<signed long>;
const Arbitrary<signed long>::shrinkType ArbitraryImpl<signed long>::shrink =
    shrinkIntegral<signed long>;

const Arbitrary<unsigned long>::unGenType ArbitraryImpl<unsigned long>::unGen =
    arbitrarySizedBoundedIntegral<unsigned long>;
const Arbitrary<unsigned long>::shrinkType ArbitraryImpl<unsigned long>::shrink =
    shrinkIntegral<unsigned long>;

const Arbitrary<signed long long>::unGenType ArbitraryImpl<signed long long>::unGen =
    arbitrarySizedBoundedIntegral<signed long long>;
const Arbitrary<signed long long>::shrinkType ArbitraryImpl<signed long long>::shrink =
    shrinkIntegral<signed long long>;

const Arbitrary<unsigned long long>::unGenType ArbitraryImpl<unsigned long long>::unGen =
    arbitrarySizedBoundedIntegral<unsigned long long>;
const Arbitrary<unsigned long long>::shrinkType ArbitraryImpl<unsigned long long>::shrink =
    shrinkIntegral<unsigned long long>;

const Arbitrary<float>::unGenType ArbitraryImpl<float>::unGen =
    arbitrarySizedReal<float>;
const Arbitrary<float>::shrinkType ArbitraryImpl<float>::shrink = shrinkReal<float>;

const Arbitrary<double>::unGenType ArbitraryImpl<double>::unGen =
    arbitrarySizedReal<double>;
const Arbitrary<double>::shrinkType ArbitraryImpl<double>::shrink = shrinkReal<double>;

const Arbitrary<long double>::unGenType ArbitraryImpl<long double>::unGen =
    arbitrarySizedReal<long double>;
const Arbitrary<long double>::shrinkType ArbitraryImpl<long double>::shrink =
    shrinkReal<long double>;

const Arbitrary<char>::unGenType ArbitraryImpl<char>::unGen = arbitraryChar;
const Arbitrary<char>::shrinkType ArbitraryImpl<char>::shrink = shrinkChar;

const Arbitrary<wchar_t>::unGenType ArbitraryImpl<wchar_t>::unGen =
    arbitraryBoundedIntegral<wchar_t>;
const Arbitrary<wchar_t>::shrinkType ArbitraryImpl<wchar_t>::shrink =
    shrinkIntegral<wchar_t>;

}