]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | // Copyright John Maddock 2006. |
2 | // Use, modification and distribution are subject to the | |
3 | // Boost Software License, Version 1.0. (See accompanying file | |
4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
5 | ||
6 | #define BOOST_MATH_ASSERT_UNDEFINED_POLICY false | |
7 | ||
1e59de90 TL |
8 | #include <boost/math/tools/config.hpp> |
9 | ||
10 | #ifndef BOOST_MATH_NO_DISTRIBUTION_CONCEPT_TESTS | |
7c673cae FG |
11 | #include <boost/math/distributions.hpp> |
12 | #include <boost/math/concepts/distributions.hpp> | |
13 | ||
7c673cae FG |
14 | template <class RealType> |
15 | void instantiate(RealType) | |
16 | { | |
17 | using namespace boost; | |
18 | using namespace boost::math; | |
19 | using namespace boost::math::concepts; | |
20 | ||
21 | typedef policies::policy<policies::digits2<std::numeric_limits<RealType>::digits - 2> > custom_policy; | |
22 | ||
23 | function_requires<DistributionConcept<bernoulli_distribution<RealType, custom_policy> > >(); | |
24 | function_requires<DistributionConcept<beta_distribution<RealType, custom_policy> > >(); | |
25 | function_requires<DistributionConcept<binomial_distribution<RealType, custom_policy> > >(); | |
26 | function_requires<DistributionConcept<cauchy_distribution<RealType, custom_policy> > >(); | |
27 | function_requires<DistributionConcept<chi_squared_distribution<RealType, custom_policy> > >(); | |
28 | function_requires<DistributionConcept<exponential_distribution<RealType, custom_policy> > >(); | |
29 | function_requires<DistributionConcept<extreme_value_distribution<RealType, custom_policy> > >(); | |
30 | function_requires<DistributionConcept<fisher_f_distribution<RealType, custom_policy> > >(); | |
31 | function_requires<DistributionConcept<gamma_distribution<RealType, custom_policy> > >(); | |
32 | function_requires<DistributionConcept<geometric_distribution<RealType, custom_policy> > >(); | |
33 | function_requires<DistributionConcept<hypergeometric_distribution<RealType, custom_policy> > >(); | |
34 | function_requires<DistributionConcept<hypergeometric_distribution<RealType, custom_policy> > >(); | |
35 | function_requires<DistributionConcept<inverse_chi_squared_distribution<RealType, custom_policy> > >(); | |
36 | function_requires<DistributionConcept<inverse_gamma_distribution<RealType, custom_policy> > >(); | |
37 | function_requires<DistributionConcept<inverse_gaussian_distribution<RealType, custom_policy> > >(); | |
20effc67 | 38 | function_requires<DistributionConcept<kolmogorov_smirnov_distribution<RealType, custom_policy> > >(); |
7c673cae FG |
39 | function_requires<DistributionConcept<laplace_distribution<RealType, custom_policy> > >(); |
40 | function_requires<DistributionConcept<logistic_distribution<RealType, custom_policy> > >(); | |
41 | function_requires<DistributionConcept<lognormal_distribution<RealType, custom_policy> > >(); | |
42 | function_requires<DistributionConcept<negative_binomial_distribution<RealType, custom_policy> > >(); | |
43 | function_requires<DistributionConcept<non_central_beta_distribution<RealType, custom_policy> > >(); | |
44 | function_requires<DistributionConcept<non_central_chi_squared_distribution<RealType, custom_policy> > >(); | |
45 | function_requires<DistributionConcept<non_central_f_distribution<RealType, custom_policy> > >(); | |
46 | function_requires<DistributionConcept<non_central_t_distribution<RealType, custom_policy> > >(); | |
47 | function_requires<DistributionConcept<normal_distribution<RealType, custom_policy> > >(); | |
48 | function_requires<DistributionConcept<pareto_distribution<RealType, custom_policy> > >(); | |
49 | function_requires<DistributionConcept<poisson_distribution<RealType, custom_policy> > >(); | |
50 | function_requires<DistributionConcept<rayleigh_distribution<RealType, custom_policy> > >(); | |
51 | function_requires<DistributionConcept<skew_normal_distribution<RealType, custom_policy> > >(); | |
52 | function_requires<DistributionConcept<students_t_distribution<RealType, custom_policy> > >(); | |
53 | function_requires<DistributionConcept<triangular_distribution<RealType, custom_policy> > >(); | |
54 | function_requires<DistributionConcept<uniform_distribution<RealType, custom_policy> > >(); | |
55 | function_requires<DistributionConcept<weibull_distribution<RealType, custom_policy> > >(); | |
56 | } | |
57 | ||
1e59de90 TL |
58 | #else // Standalone mode |
59 | ||
60 | template <typename T> | |
61 | void instantiate(T) {} | |
62 | ||
63 | #endif | |
7c673cae FG |
64 | |
65 | int main() | |
66 | { | |
67 | instantiate(float(0)); | |
68 | instantiate(double(0)); | |
69 | #ifndef BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS | |
70 | instantiate((long double)(0)); | |
71 | #endif | |
72 | } | |
73 |