- Remove obsolete *ITERATOR_TRAITS_POINTER_SPEC* workarounds.

This commit is contained in:
Sylvain Pion 2004-01-18 14:03:18 +00:00
parent 5578318f57
commit 36151af19d
9 changed files with 10 additions and 133 deletions

View File

@ -1,3 +1,6 @@
1.104 (18 January 2004)
- Remove obsolete *ITERATOR_TRAITS_POINTER_SPEC* workarounds.
1.103 (18 January 2004)
- Remove obsolete CGAL_VC7_BUG_PROTECTED workaround (VC++ <= 7.0).

View File

@ -31,6 +31,4 @@ struct MyKernel
: public MyCartesian_base<MyKernel<FT_>, CGAL::Cartesian<FT_> >
{};
CGAL_ITERATOR_TRAITS_POINTER_SPEC_TEMPLATE(MyKernel)
#endif // MYKERNEL_H

View File

@ -50,78 +50,4 @@
#include <CGAL/Sphere_3.h>
#include <CGAL/Aff_transformation_3.h>
#ifdef CGAL_LIMITED_ITERATOR_TRAITS_SUPPORT
# define CGAL_ITERATOR_TRAITS_POINTER_SPEC_2(K) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Point_2< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Vector_2< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Direction_2< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Line_2< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Segment_2< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Ray_2< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Iso_rectangle_2< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Triangle_2< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Circle_2< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Aff_transformation_2< K >)
# define CGAL_ITERATOR_TRAITS_POINTER_SPEC_3(K) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Point_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Vector_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Direction_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Plane_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Line_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Segment_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Ray_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Triangle_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Tetrahedron_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Sphere_3< K >) \
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Aff_transformation_3< K >)
# define CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_2(K) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_3(K)
#if defined(LEDA_NAMESPACE)
namespace leda {
class real;
class integer;
class rational;
class bigfloat;
}
#else
class leda_real;
class leda_integer;
class leda_rational;
class leda_bigfloat;
#endif
namespace CGAL {
class Gmpz;
template <class NumberType> class Quotient;
}
// NB : we could add MP_Float, and maybe other useful NTs.
# define CGAL_ITERATOR_TRAITS_POINTER_SPEC_TEMPLATE(K) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <int>) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <long>) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <float>) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <double>) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <leda_real>) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <leda_integer>) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <leda_rational>) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <leda_bigfloat>) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <CGAL::Gmpz>) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <CGAL::Quotient<int> >) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <CGAL::Quotient<long> >) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <CGAL::Quotient<float> >) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <CGAL::Quotient<double> >) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <CGAL::Quotient<leda_real> >) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <CGAL::Quotient<leda_integer> >) \
CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K <CGAL::Quotient<CGAL::Gmpz> >)
#else
# define CGAL_ITERATOR_TRAITS_POINTER_SPEC_(K)
# define CGAL_ITERATOR_TRAITS_POINTER_SPEC_TEMPLATE(K)
#endif
#endif // CGAL_USER_CLASSES_H

View File

@ -1,3 +1,6 @@
4.130 (18 Jan 2004)
- Remove obsolete *ITERATOR_TRAITS_POINTER_SPEC* workarounds.
4.129 (18 Jan 2004)
- Remove obsolete CGAL_CFG_MATCHING_BUG_2 workaround (VC++ <= 7.0).

View File

@ -494,9 +494,4 @@ struct Rational_traits<Gmpq> {
CGAL_END_NAMESPACE
#if defined( _MSC_VER ) && ( _MSC_VER == 1300 )
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Gmpq);
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Gmpq*);
#endif
#endif // CGAL_GMPQ_H

View File

@ -632,11 +632,4 @@ double to_double(const Quotient<Gmpz>& quot)
CGAL_END_NAMESPACE
#if defined( _MSC_VER ) && ( _MSC_VER == 1300 )
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Gmpz);
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Gmpz*);
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Quotient<CGAL::Gmpz>);
CGAL_DEFINE_ITERATOR_TRAITS_POINTER_SPEC(CGAL::Quotient<CGAL::Gmpz>*);
#endif
#endif // CGAL_GMPZ_H

View File

@ -1,10 +1,12 @@
Stream_support Package: Release changes:
---------------------------------------------------------------------
2.27 (18 Jan 2004)
- Remove obsolete *ITERATOR_TRAITS_POINTER_SPEC* workarounds.
2.26 (10 Dec 2003) [rursu]
- Files with common functionality were moved into this package
from Polyhedron_IO
=========================== CGAL 3.0 ============================
2.25 (22 Octo 2003)
- changed headers

View File

@ -78,30 +78,6 @@ public:
}
};
#ifdef CGAL_CFG_NO_ITERATOR_TRAITS
template <class T, class Stream> inline
std::input_iterator_tag
iterator_category( const Istream_iterator<T,Stream>&) {
return std::input_iterator_tag();
}
template <class T, class Stream> inline
T*
value_type( const Istream_iterator<T,Stream>&) {
return (T*)0;
}
template <class T, class Stream> inline
std::ptrdiff_t*
distance_type( const Istream_iterator<T,Stream>&) {
return (std::ptrdiff_t*)0;
}
template <class T, class Stream> inline
Iterator_tag
query_circulator_or_iterator(
const Istream_iterator<T,Stream>&) {
return Iterator_tag();
}
#endif
CGAL_END_NAMESPACE
#endif // CGAL_IO_ISTREAM_ITERATOR_H

View File

@ -60,25 +60,6 @@ public:
}
};
#ifdef CGAL_CFG_NO_ITERATOR_TRAITS
template <class T, class Stream> inline
std::output_iterator_tag
iterator_category( const Ostream_iterator<T,Stream>&) {
return std::output_iterator_tag();
}
template <class T, class Stream> inline
T*
value_type( const Ostream_iterator<T,Stream>&) {
return (T*)0;
}
template <class T, class Stream> inline
Iterator_tag
query_circulator_or_iterator(
const Ostream_iterator<T,Stream>&) {
return Iterator_tag();
}
#endif
CGAL_END_NAMESPACE
#endif // CGAL_IO_OSTREAM_ITERATOR_H