1d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant//===----------------------------------------------------------------------===//
2d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant//
3d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant//                     The LLVM Compiler Infrastructure
4d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant//
5b64f8b07c104c6cc986570ac8ee0ed16a9f23976Howard Hinnant// This file is dual licensed under the MIT and the University of Illinois Open
6b64f8b07c104c6cc986570ac8ee0ed16a9f23976Howard Hinnant// Source Licenses. See LICENSE.TXT for details.
7d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant//
8d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant//===----------------------------------------------------------------------===//
9d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant
10d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant// <random>
11d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant
12d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant// template<class RealType = double>
13d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant// class cauchy_distribution
14d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant// {
15d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant//     class param_type;
16d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant
17d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant#include <random>
18d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant#include <limits>
19d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant#include <cassert>
20d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant
21d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnantint main()
22d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant{
23d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant    {
24d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        typedef std::cauchy_distribution<> D;
25d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        typedef D::param_type param_type;
26d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        param_type p1(0.75, .5);
27d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        param_type p2(0.75, .5);
28d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        assert(p1 == p2);
29d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant    }
30d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant    {
31d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        typedef std::cauchy_distribution<> D;
32d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        typedef D::param_type param_type;
33d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        param_type p1(0.75, .5);
34d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        param_type p2(0.5, .5);
35d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant        assert(p1 != p2);
36d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant    }
37d7d01132954e05ba41137195f26a265e7e255e6aHoward Hinnant}
38