mirror of https://github.com/CGAL/cgal
one more specialization + fix invalid usage
This commit is contained in:
parent
e46196d362
commit
ceded5c3ef
|
|
@ -924,9 +924,9 @@ int main()
|
||||||
{
|
{
|
||||||
CGAL::Set_ieee_double_precision pfr;
|
CGAL::Set_ieee_double_precision pfr;
|
||||||
|
|
||||||
Test< CGAL::Simple_cartesian<CGAL::internal::Exact_field_selector<void*>::Type > >().run();
|
Test< CGAL::Simple_cartesian<CGAL::internal::Exact_field_selector<double>::Type > >().run();
|
||||||
Test< CGAL::Cartesian<double> >().run();
|
Test< CGAL::Cartesian<double> >().run();
|
||||||
Test< CGAL::Homogeneous<CGAL::internal::Exact_field_selector<void*>::Type > >().run();
|
Test< CGAL::Homogeneous<CGAL::internal::Exact_field_selector<double>::Type > >().run();
|
||||||
Test< CGAL::Exact_predicates_inexact_constructions_kernel >().run();
|
Test< CGAL::Exact_predicates_inexact_constructions_kernel >().run();
|
||||||
Test< CGAL::Exact_predicates_exact_constructions_kernel >().run();
|
Test< CGAL::Exact_predicates_exact_constructions_kernel >().run();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -162,23 +162,22 @@ struct Exact_field_selector;
|
||||||
template < typename >
|
template < typename >
|
||||||
struct Exact_ring_selector;
|
struct Exact_ring_selector;
|
||||||
|
|
||||||
template <>
|
#define CGAL_EXACT_SELECTORS_SPECS(X) \
|
||||||
struct Exact_ring_selector<double>
|
template <> \
|
||||||
{
|
struct Exact_ring_selector<X> \
|
||||||
using Type = typename Exact_NT_backend<Default_exact_nt_backend>::Ring_for_float;
|
{ \
|
||||||
|
using Type = typename Exact_NT_backend<Default_exact_nt_backend>::Ring_for_float; \
|
||||||
|
}; \
|
||||||
|
\
|
||||||
|
template <> \
|
||||||
|
struct Exact_field_selector<X> \
|
||||||
|
{ \
|
||||||
|
using Type = typename Exact_NT_backend<Default_exact_nt_backend>::Rational; \
|
||||||
};
|
};
|
||||||
|
|
||||||
template <>
|
CGAL_EXACT_SELECTORS_SPECS(double)
|
||||||
struct Exact_field_selector<double>
|
CGAL_EXACT_SELECTORS_SPECS(float)
|
||||||
{
|
CGAL_EXACT_SELECTORS_SPECS(int)
|
||||||
using Type = typename Exact_NT_backend<Default_exact_nt_backend>::Rational;
|
|
||||||
};
|
|
||||||
|
|
||||||
template <>
|
|
||||||
struct Exact_ring_selector<float> : Exact_ring_selector<double> { };
|
|
||||||
|
|
||||||
template <>
|
|
||||||
struct Exact_field_selector<float> : Exact_field_selector<double> { };
|
|
||||||
|
|
||||||
template <>
|
template <>
|
||||||
struct Exact_field_selector<MP_Float>
|
struct Exact_field_selector<MP_Float>
|
||||||
|
|
@ -330,4 +329,6 @@ struct Exact_type_selector : Exact_field_selector< ET > {};
|
||||||
|
|
||||||
} } // namespace CGAL::internal
|
} } // namespace CGAL::internal
|
||||||
|
|
||||||
|
#undef CGAL_EXACT_SELECTORS_SPECS
|
||||||
|
|
||||||
#endif // CGAL_INTERNAL_EXACT_TYPE_SELECTOR_H
|
#endif // CGAL_INTERNAL_EXACT_TYPE_SELECTOR_H
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue