Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r54504 - in sandbox/itl: boost/itl boost/itl/detail libs/itl/example/partys_tallest_guests
From: afojgo_at_[hidden]
Date: 2009-06-29 14:13:12


Author: jofaber
Date: 2009-06-29 14:13:12 EDT (Mon, 29 Jun 2009)
New Revision: 54504
URL: http://svn.boost.org/trac/boost/changeset/54504

Log:
Refactoring: Reverted the template parameter design to TTP due to unresolved problems with gcc.
Stable {msvc-9.0 r+d, gcc-3.4.4}
Text files modified:
   sandbox/itl/boost/itl/detail/design_config.hpp | 8 ++++----
   sandbox/itl/boost/itl/interval_sets.hpp | 18 +++++++++---------
   sandbox/itl/libs/itl/example/partys_tallest_guests/partys_tallest_guests.cpp | 6 ++++--
   3 files changed, 17 insertions(+), 15 deletions(-)

Modified: sandbox/itl/boost/itl/detail/design_config.hpp
==============================================================================
--- sandbox/itl/boost/itl/detail/design_config.hpp (original)
+++ sandbox/itl/boost/itl/detail/design_config.hpp 2009-06-29 14:13:12 EDT (Mon, 29 Jun 2009)
@@ -26,12 +26,12 @@
 // template type parameter variants.
 
 #define ITL_USE_COMPARE_TEMPLATE_TEMPLATE
-//#define ITL_USE_COMBINE_TEMPLATE_TEMPLATE
-//#define ITL_USE_SECTION_TEMPLATE_TEMPLATE
+#define ITL_USE_COMBINE_TEMPLATE_TEMPLATE
+#define ITL_USE_SECTION_TEMPLATE_TEMPLATE
 
 //#define ITL_USE_COMPARE_TEMPLATE_TYPE
-#define ITL_USE_COMBINE_TEMPLATE_TYPE
-#define ITL_USE_SECTION_TEMPLATE_TYPE
+//#define ITL_USE_COMBINE_TEMPLATE_TYPE
+//#define ITL_USE_SECTION_TEMPLATE_TYPE
 
 //------------------------------------------------------------------------------
 // template parameter Compare can not be a template type parameter as long as

Modified: sandbox/itl/boost/itl/interval_sets.hpp
==============================================================================
--- sandbox/itl/boost/itl/interval_sets.hpp (original)
+++ sandbox/itl/boost/itl/interval_sets.hpp 2009-06-29 14:13:12 EDT (Mon, 29 Jun 2009)
@@ -29,7 +29,7 @@
     class DomainT, ITL_COMPARE Compare, template<class,ITL_COMPARE>class Interval, ITL_ALLOC Alloc,
     class LeftIntervalSet, class RightIntervalSet
>
-bool is_element_equal
+inline bool is_element_equal
 (
     const interval_base_set<LeftIntervalSet, DomainT,Compare,Interval,Alloc>& left,
     const interval_base_set<RightIntervalSet,DomainT,Compare,Interval,Alloc>& right
@@ -43,7 +43,7 @@
     class DomainT, ITL_COMPARE Compare, template<class,ITL_COMPARE>class Interval, ITL_ALLOC Alloc,
     class LeftIntervalSet, class RightIntervalSet
>
-bool is_element_less
+inline bool is_element_less
 (
     const interval_base_set<LeftIntervalSet, DomainT,Compare,Interval,Alloc>& left,
     const interval_base_set<RightIntervalSet,DomainT,Compare,Interval,Alloc>& right
@@ -57,7 +57,7 @@
     class DomainT, ITL_COMPARE Compare, template<class,ITL_COMPARE>class Interval, ITL_ALLOC Alloc,
     class LeftIntervalSet, class RightIntervalSet
>
-bool is_element_greater
+inline bool is_element_greater
 (
     const interval_base_set<LeftIntervalSet, DomainT,Compare,Interval,Alloc>& left,
     const interval_base_set<RightIntervalSet,DomainT,Compare,Interval,Alloc>& right
@@ -74,7 +74,7 @@
     class ObjectT,
     class SubType, class DomainT, ITL_COMPARE Compare, template<class,ITL_COMPARE>class Interval, ITL_ALLOC Alloc
>
-ObjectT& operator +=
+inline ObjectT& operator +=
 (
           ObjectT& object,
     const interval_base_set<SubType,DomainT,Compare,Interval,Alloc>& operand
@@ -95,7 +95,7 @@
     class ObjectT,
     class SubType, class DomainT, ITL_COMPARE Compare, template<class,ITL_COMPARE>class Interval, ITL_ALLOC Alloc
>
-ObjectT& operator -=
+inline ObjectT& operator -=
 (
           ObjectT& object,
     const interval_base_set<SubType,DomainT,Compare,Interval,Alloc>& operand
@@ -116,7 +116,7 @@
     class ObjectT,
     class SubType, class DomainT, ITL_COMPARE Compare, template<class,ITL_COMPARE>class Interval, ITL_ALLOC Alloc
>
-ObjectT& operator ^=
+inline ObjectT& operator ^=
 (
           ObjectT& object,
     const interval_base_set<SubType,DomainT,Compare,Interval,Alloc>& operand
@@ -172,7 +172,7 @@
     ITL_COMPARE Compare, template<class,ITL_COMPARE>class Interval, ITL_ALLOC Alloc,
     template<class, ITL_COMPARE, template<class,ITL_COMPARE>class, ITL_ALLOC>class IntervalSet
>
-interval_base_set<SubType,DomainT,Compare,Interval,Alloc>&
+inline interval_base_set<SubType,DomainT,Compare,Interval,Alloc>&
 insert
 (
           interval_base_set<SubType,DomainT,Compare,Interval,Alloc>& object,
@@ -191,7 +191,7 @@
     ITL_COMPARE Compare, template<class,ITL_COMPARE>class Interval, ITL_ALLOC Alloc,
     template<class, ITL_COMPARE, template<class,ITL_COMPARE>class, ITL_ALLOC>class IntervalSet
>
-interval_base_set<SubType,DomainT,Compare,Interval,Alloc>&
+inline interval_base_set<SubType,DomainT,Compare,Interval,Alloc>&
 erase
 (
           interval_base_set<SubType,DomainT,Compare,Interval,Alloc>& object,
@@ -210,7 +210,7 @@
     class SubType, class DomainT,
     ITL_COMPARE Compare, template<class,ITL_COMPARE>class Interval, ITL_ALLOC Alloc
>
-typename interval_base_set<SubType,DomainT,Compare,Interval,Alloc>::interval_type
+inline typename interval_base_set<SubType,DomainT,Compare,Interval,Alloc>::interval_type
 enclosure(const interval_base_set<SubType,DomainT,Compare,Interval,Alloc>& object)
 {
     typedef interval_base_set<SubType,DomainT,Compare,Interval,Alloc> IntervalSetT;

Modified: sandbox/itl/libs/itl/example/partys_tallest_guests/partys_tallest_guests.cpp
==============================================================================
--- sandbox/itl/libs/itl/example/partys_tallest_guests/partys_tallest_guests.cpp (original)
+++ sandbox/itl/libs/itl/example/partys_tallest_guests/partys_tallest_guests.cpp 2009-06-29 14:13:12 EDT (Mon, 29 Jun 2009)
@@ -43,10 +43,12 @@
 // A party's height shall be defined as the maximum height of all guests ;-)
 // The last parameter 'inplace_max' is a functor template that calls a max
 // aggregation on overlap.
-typedef interval_map<ptime, int, partial_absorber, less, inplace_max<int> > PartyHeightHistoryT;
+typedef interval_map<ptime, int, partial_absorber, less, inplace_max>
+ PartyHeightHistoryT;
 
 // Using a split_interval_map we preserve interval splittings that occured via insertion.
-typedef split_interval_map<ptime, int, partial_absorber, less, inplace_max<int> > PartyHeightSplitHistoryT;
+typedef split_interval_map<ptime, int, partial_absorber, less, inplace_max>
+ PartyHeightSplitHistoryT;
 
 void partys_height()
 {


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk