interval_prototype.hpp 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /* Boost interval/detail/interval_prototype.hpp file
  2. *
  3. * Copyright 2002 Hervé Brönnimann, Guillaume Melquiond, Sylvain Pion
  4. *
  5. * Distributed under the Boost Software License, Version 1.0.
  6. * (See accompanying file LICENSE_1_0.txt or
  7. * copy at http://www.boost.org/LICENSE_1_0.txt)
  8. */
  9. #ifndef BOOST_NUMERIC_INTERVAL_DETAIL_INTERVAL_PROTOTYPE_HPP
  10. #define BOOST_NUMERIC_INTERVAL_DETAIL_INTERVAL_PROTOTYPE_HPP
  11. namespace boost {
  12. namespace numeric {
  13. namespace interval_lib {
  14. template<class T> struct rounded_math;
  15. template<class T> struct checking_strict;
  16. class comparison_error;
  17. template<class Rounding, class Checking> struct policies;
  18. /*
  19. * default policies class
  20. */
  21. template<class T>
  22. struct default_policies
  23. {
  24. typedef policies<rounded_math<T>, checking_strict<T> > type;
  25. };
  26. } // namespace interval_lib
  27. template<class T, class Policies = typename interval_lib::default_policies<T>::type >
  28. class interval;
  29. } // namespace numeric
  30. } // namespace boost
  31. #endif // BOOST_NUMERIC_INTERVAL_DETAIL_INTERVAL_PROTOTYPE_HPP