Commit Graph

98 Commits

Author SHA1 Message Date
Sylvain Pion da4a9f4fd4 Undo previous change in utility.h : I can't mark Triple/Quadruple as CGAL_NO_DEPRECATE_CODE,
since they are still used (so they can't be disabled).

However: mark Twotuple, Threetuple, Fourtuple, Sixtuple as CGAL_NO_DEPRECATE_CODE.
2008-07-28 16:49:46 +00:00
Sylvain Pion 0cca1762e4 Mark Triple/Quadruple with CGAL_NO_DEPRECATED_CODE. 2008-07-28 16:45:00 +00:00
Sylvain Pion 6bffa76272 Phase out Triple and Quadruple:
- add get<i>() member function
- add make_tuple() function.
2008-07-28 15:29:54 +00:00
Sylvain Pion b4aaa1bbd1 Mark Twotuple, Threetuple, Fourtuple, Sixtuple with CGAL_DEPRECATED.
(marke the constructors as such, as marking the classes does not work
with templates with GCC right now).
2008-07-25 17:57:22 +00:00
Sylvain Pion c36fe88397 Mark Triple and Quadruple "not-recommended anymore". 2008-07-25 15:21:06 +00:00
Michael Hoffmann ee574c68c6 Removed include of functional_base. 2008-07-23 13:57:55 +00:00
Michael Hoffmann ff118c1e63 Remove bind/compose/swap adaptors. 2008-07-23 13:19:15 +00:00
Sylvain Pion 79864c0c8e Remove Arity_tag. 2008-07-22 12:29:01 +00:00
Sylvain Pion ea17d27c87 Define is_singleton() and extract_singleton() for non-Uncertain types,
so that Filtered_predicate still works with predicates returning non-Uncertain types.
2008-07-17 09:31:44 +00:00
Sylvain Pion 91d2d7478b Move Uncertain.h from Filtered_kernel to STL_Extension 2008-07-16 16:07:27 +00:00
Sylvain Pion 2eb0d8f9e9 certainly() -> possibly(). 2008-07-14 11:16:41 +00:00
Sylvain Pion eff6efd3af CGAL_NULL and CGAL_NULL_TYPE are now constant macros, so replace them by:
- CGAL_NULL -> NULL
- CGAL_NULL_TYPE -> CGAL::Nullptr_t (typedef to const void *)
2008-07-12 21:58:52 +00:00
Sylvain Pion 9d7a609ff2 Make assertions trigger an error only for *certain* conditions (using CGAL::certainly()).
This is useful for interval arithmetic code.
(replay of r44002 with the header order hopefully fixed)
2008-07-10 21:49:17 +00:00
Sylvain Pion 2b4ebf01f7 Undo r44002 as it's buggy 2008-07-06 20:47:29 +00:00
Sylvain Pion 514a17ad4f Improve the interaction of assertions and interval computations.
Things like "CGAL_assertion(denominator != 0)" produced assertion failures for no gain.
So now, the assertion is triggered only if the condition is certain, using CGAL::certainly().
That is, change the following in all assertion files :
  ((EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
to :
  (CGAL::certainly(EX)?(static_cast<void>(0)): ::CGAL::assertion_fail( # EX , __FILE__, __LINE__))
2008-07-06 17:05:47 +00:00
Michael Hoffmann d92021ba08 Remove bind/compose/swap functor adaptors.
We use boost::bind instead now.
2008-06-19 11:03:40 +00:00
Sylvain Pion 7a6b5546f0 Remove white space at end of line to ease merge 2008-06-03 12:03:58 +00:00
Sylvain Pion 575edb7499 Added 2008 as copyright year, and make it INRIA only owner (this is post-GALIA code). 2008-06-03 11:56:43 +00:00
Sylvain Pion dfce30f55c Finish the rewrite of the "bit squatting". 2008-06-03 11:43:25 +00:00
Sylvain Pion 3901116641 Replace the union used for the bit manipulation of pointers, by casting
to (char *), substraction with NULL, and then changing bits on the integer.
(draft patch for now to synchronize with the parallel-branch, cleanup to follow)

The previous approach failed on sparc/linux as the bit representations
of pointers and integers are different.
2008-06-03 09:22:06 +00:00
Sylvain Pion 110a5db8be Rename all C++0x related config macros to consistently have CPP0X in their name,
as in CGAL_CFG_NO_CPP0X_VARIADIC_TEMPLATES.
2008-05-21 15:34:36 +00:00
Andreas Fabri 54ad19e4db handle struct mixup 2008-05-11 18:14:25 +00:00
Sylvain Pion ef30aa5ffe Add a variadic template version of make_array() (by Samuel Hornus). 2008-05-07 16:46:15 +00:00
Laurent Rineau 4bf21e39ed Revert r42877:
"Use boost::iterator_facade for the Compact_container's iterators."
That modification triggers compilation errors with Visual C++.
2008-04-24 13:08:49 +00:00
Samuel Hornus 8f902841c6 adding operator->() with a proxy-trick 2008-04-17 09:03:06 +00:00
Sylvain Pion 5699aa2aca Add back the comparisons with NULL... they are needed. 2008-04-12 21:23:08 +00:00
Sylvain Pion 57904f1e25 Use boost::iterator_facade for the Compact_container's iterators. 2008-04-12 18:19:43 +00:00
Sylvain Pion 4416bee3de Move all Handle* classes to STL_Extension. There's no geometry in them,
so the kernel is not the most appropriate place for them.
2008-04-12 10:38:07 +00:00
Sylvain Pion cab843595b Replace {Two|Three|Four}tuple<FT> or <RT> by boost::array.
It makes more code parameterized by the dimension as template argument.
It provides iterators and a few basic functions already such as operator==...
I added CGALi::make_array() to easily and efficiently construct them.
2008-04-09 11:44:28 +00:00
Sylvain Pion 29d15d7eb1 Remove obsolete SunPRO workarounds 2008-01-20 21:51:12 +00:00
Sylvain Pion 4d1b8d63e3 Remove workarounds and support for the BORLAND compiler. 2008-01-20 20:24:20 +00:00
Sylvain Pion 1d2b1f3b6a Make CGAL_NDEBUG depend on NDEBUG, and simplify code. 2008-01-20 18:07:46 +00:00
Sylvain Pion 3eb3e168e8 The main (non package-specific) macros like CGAL_assertion() should not depend on
kernel specific knobs like CGAL_KERNEL_NO_ASSERTIONS.
2008-01-20 17:39:27 +00:00
Sylvain Pion 5c551050a5 Remove obsolete VC++ 6 specific code. 2008-01-20 15:27:47 +00:00
Sylvain Pion 2b46416907 Remove more SUNPRO + RW's STL obsolete workarounds:
CGAL_CFG_SUNPRO_RWSTD (partially)
CGAL_reverse_iterator()
2008-01-03 15:04:30 +00:00
Sylvain Pion e8591b3b32 Change Counting_output_iterator to store a pointer to the counter, instead of
the counter itself.  It fixes a problem with g++ 4.3 since std::copy now
performs the assignments on *copies* of the output iterator.
See : http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34595
2007-12-26 17:34:36 +00:00
Sylvain Pion be95afcd9b Fix const-correctness issue. 2007-12-25 11:22:48 +00:00
Sylvain Pion ef3ba8a5ec variadic template fix 2007-12-24 13:30:24 +00:00
Sylvain Pion d49e006c53 Remove default argument "0" to calls to assertion_fail() et al,
as the default is now the empty string "".
It should fix the problem that we have lost the assertion messages
(seeing "what():  basic_string::_S_construct NULL not valid" instead),
for packages that use package-specific assertion macros.
2007-12-21 21:58:27 +00:00
Sylvain Pion 1f492aa1e8 Remove unused, undocumented, and superceeded by boost::function_output_iterator (more or less)
class Transform_output_iterator.
2007-11-20 14:05:31 +00:00
Andreas Meyer fdeedcf8b0 some low level code cleanup. renamed
* CGAL_error to CGAL_error_msg
* introduced a macro CGAL_error()
* added some words about CGAL_error to the developers manual
* renamed most of assert(x) into CGAL_assertion(x)
* renamed exit(x) with x != 0 , CGAL_assertion(false) and assert(false) into CGAL_error
* CORE left untouched, OpenNL changed
2007-11-07 16:51:18 +00:00
Sylvain Pion 848b455cc6 Use default arguments... 2007-11-05 17:13:21 +00:00
Sylvain Pion 2c25427164 - New class Default_argument that helps shrink error messages
and mangled names.
- Use it in Compact_container in place of Default_allocator
  which was playing the same role, but less generally.
2007-11-02 16:16:02 +00:00
Sylvain Pion ef264999b3 Renaming of Compact_container's construct_insert() to emplace() to match C++0x.
It breaks backward compat, but I doubt many people use Compact_container directly.
Make it use variadic templates, while at it.
2007-10-20 20:51:59 +00:00
Sylvain Pion 4da7713aa8 Remove obsolete config flag CGAL_CFG_NO_STDC_NAMESPACE and rename
its dependant macro CGAL_CLIB_STD to "std".
2007-08-08 15:59:25 +00:00
Andreas Meyer ba23c28c2b * added #include <CGAL/basic>
* moved some support functions/classes from EXACUS to STL_Extensions/iostream:
  - Benchmark_rep (similar to Output_rep)
  - a functor Pair_lexicographical_less_than 
    (previously called Product_order in EXACUS)
  - a functor Handle_id_less_than
2007-07-04 16:25:33 +00:00
Sylvain Pion 54b01bd44f Speed up the clear() function (and therefore the destructor), by allowing
the compiler to optimize away a complete walk over the container for
types with trivial destructors.
2007-06-08 22:35:58 +00:00
Sylvain Pion bea63ec2f6 formatting 2007-06-08 21:22:45 +00:00
Andreas Meyer 7c09dc370a * removed unused "old_alloc_strategy", based on LEDA
* some leda stuff remains : added version-dependent include for leda/memory.h
2007-04-20 12:16:17 +00:00
Sylvain Pion 8cb773f976 Rename variable to avoid shadowing warning. 2007-04-18 09:01:37 +00:00