|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r51238 - in sandbox/itl: boost/itl libs/itl/build/win32 libs/itl/doc libs/itl/test libs/itl/test/test_casual libs/itl/test/test_interval_map libs/itl/test/test_interval_map_mixed libs/itl/test/test_interval_set libs/itl/test/test_itl_map libs/itl/test/test_separate_interval_set libs/itl/test/test_split_interval_map libs/itl/test/test_split_interval_set
From: afojgo_at_[hidden]
Date: 2009-02-13 11:35:12
Author: jofaber
Date: 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
New Revision: 51238
URL: http://svn.boost.org/trac/boost/changeset/51238
Log:
Added tests and documentation. Test for T::find, T::set, codom Maps::op(dom). Stable {msvc-9.0, partly congcc-4.3-a7}
Added:
sandbox/itl/libs/itl/test/test_itl_map/
sandbox/itl/libs/itl/test/test_itl_map.hpp (contents, props changed)
sandbox/itl/libs/itl/test/test_itl_map/test_itl_map.cpp (contents, props changed)
sandbox/itl/libs/itl/test/test_itl_map/test_itl_map_shared.cpp (contents, props changed)
sandbox/itl/libs/itl/test/test_itl_map/vc9_test_itl_map.vcproj (contents, props changed)
Text files modified:
sandbox/itl/boost/itl/interval_base_map.hpp | 6 +-
sandbox/itl/boost/itl/interval_base_set.hpp | 2
sandbox/itl/boost/itl/map.hpp | 24 +++++++++
sandbox/itl/boost/itl/set.hpp | 91 +++++++++++++++++++++++++--------------
sandbox/itl/libs/itl/build/win32/vc9_all.sln | 6 ++
sandbox/itl/libs/itl/doc/interface.qbk | 38 +++++++++-------
sandbox/itl/libs/itl/test/test_casual/test_casual.cpp | 21 +++++---
sandbox/itl/libs/itl/test/test_interval_map/test_interval_map_shared.cpp | 8 +++
sandbox/itl/libs/itl/test/test_interval_map_mixed/test_interval_map_mixed.cpp | 5 +
sandbox/itl/libs/itl/test/test_interval_map_shared.hpp | 57 +++++++++++++++++++++++++
sandbox/itl/libs/itl/test/test_interval_set/test_interval_set_shared.cpp | 4 +
sandbox/itl/libs/itl/test/test_interval_set_shared.hpp | 25 ++++++++++
sandbox/itl/libs/itl/test/test_quantifier_itl_map.hpp | 1
sandbox/itl/libs/itl/test/test_separate_interval_set/test_separate_interval_set_shared.cpp | 8 +++
sandbox/itl/libs/itl/test/test_split_interval_map/test_split_interval_map_shared.cpp | 9 +++
sandbox/itl/libs/itl/test/test_split_interval_set/test_split_interval_set_shared.cpp | 8 +++
sandbox/itl/libs/itl/test/test_value_maker.hpp | 3
17 files changed, 247 insertions(+), 69 deletions(-)
Modified: sandbox/itl/boost/itl/interval_base_map.hpp
==============================================================================
--- sandbox/itl/boost/itl/interval_base_map.hpp (original)
+++ sandbox/itl/boost/itl/interval_base_map.hpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -374,7 +374,7 @@
for all keys in interval \c I in the map. */
SubType& set(const segment_type& interval_value_pair)
{
- that()->erase_(interval_value_pair.KEY_VALUE);
+ erase(interval_value_pair.KEY_VALUE);
that()->insert_(interval_value_pair);
return *that();
}
@@ -438,11 +438,11 @@
void add_intersection(interval_base_map& section, const domain_type& key)const
{ add_intersection(section, interval_type(key)); }
- /** The intersection of \c key_value_pair in \c *this map is added to \c section. */
+ /** The intersection of \c key_value_pair and \c *this map is added to \c section. */
void add_intersection(interval_base_map& section, const element_type& key_value_pair)const
{ add_intersection(section, value_type(interval_type(key_value_pair.key), key_value_pair.data)); }
- /** The intersection of \c interval_value_pair in \c *this map is added to \c section. */
+ /** The intersection of \c interval_value_pair and \c *this map is added to \c section. */
void add_intersection(interval_base_map& section, const segment_type& interval_value_pair)const;
/** The intersection of \c inter_val with \c *this map is added to \c section. */
Modified: sandbox/itl/boost/itl/interval_base_set.hpp
==============================================================================
--- sandbox/itl/boost/itl/interval_base_set.hpp (original)
+++ sandbox/itl/boost/itl/interval_base_set.hpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -233,7 +233,7 @@
/** Find the interval value pair, that contains element \c key */
const_iterator find(const element_type& key)const
{
- typename ImplSetT::const_iterator it = this->_map.find(interval_type(key));
+ typename ImplSetT::const_iterator it = this->_set.find(interval_type(key));
return it;
}
Modified: sandbox/itl/boost/itl/map.hpp
==============================================================================
--- sandbox/itl/boost/itl/map.hpp (original)
+++ sandbox/itl/boost/itl/map.hpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -199,6 +199,17 @@
else
return base_type::insert(value_pair);
}
+ //==========================================================================
+ //= Selection
+ //==========================================================================
+
+ /** Total select function. */
+ codomain_type operator()(const domain_type& key)const
+ {
+ const_iterator it = find(key);
+ return it==end() ? neutron<codomain_type>::value()
+ : it->CONT_VALUE;
+ }
//==========================================================================
//= Addition, subtraction
@@ -224,7 +235,12 @@
//==========================================================================
//= Insertion, erasure
//==========================================================================
- //JODO
+
+ /** With <tt>key_value_pair = (k,v)</tt> set value \c v for key \c k */
+ map& set(const element_type& key_value_pair)
+ { (*this)[key_value_pair.KEY_VALUE] = key_value_pair.CONT_VALUE; return *this; }
+
+ //JODO
/** erase the value pair \c pair(key,val) from the map.
Erase only if, the exact value content \c val is stored at key \key. */
size_type erase(const value_type& value);
@@ -233,12 +249,16 @@
//= Intersection
//==========================================================================
+ /** The intersection of \c key in \c *this map is added to \c section. */
void add_intersection(map& section, const domain_type& key_value)const;
- void add_intersection(map& section, const value_type& value_pair)const;
+ /** The intersection of \c key_value_pair and \c *this map is added to \c section. */
+ void add_intersection(map& section, const element_type& key_value_pair)const;
+ /** The intersection of set \c sectant with \c *this map is added to \c section. */
void add_intersection(map& section, const set_type& sectant)const;
+ /** The intersection of map \c sectant with \c *this map is added to \c section. */
void add_intersection(map& section, const map& sectant)const;
//==========================================================================
Modified: sandbox/itl/boost/itl/set.hpp
==============================================================================
--- sandbox/itl/boost/itl/set.hpp (original)
+++ sandbox/itl/boost/itl/set.hpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -72,10 +72,12 @@
std::set<DomainT, domain_compare, Alloc<DomainT> >(comp){}
template <class InputIterator>
- set(InputIterator f, InputIterator l): std::set<InputIterator>(f,l) {}
+ set(InputIterator first, InputIterator last):
+ std::set<InputIterator>(first,last) {}
template <class InputIterator>
- set(InputIterator f, InputIterator l, const key_compare& comp): std::set<InputIterator>(f,l,comp) {}
+ set(InputIterator first, InputIterator last, const key_compare& comp):
+ std::set<InputIterator>(first, last, comp) {}
set(const set& src): base_type::set(src){}
@@ -84,6 +86,11 @@
set& operator=(const set& src) { base_type::operator=(src); return *this; }
void swap(set& src) { base_type::swap(src); }
+ /** Copy the elements in set \c src to which property \c hasProperty applies
+ into \c *this set. */
+ template<class Predicate>
+ set& assign_if(const set& src, const Predicate&);
+
//==========================================================================
using base_type::empty;
using base_type::clear;
@@ -113,17 +120,19 @@
//= Emptieness, containment
//==========================================================================
- /// Checks if the element \c x is in the set
- bool contains(const DomainT& x)const { return !(find(x) == end()); }
+ /// Checks if the element \c value is in the set
+ bool contains(const element_type& value)const
+ { return !(find(value) == end()); }
/** Is <tt>*this</tt> contained in <tt>super</tt>? */
- bool contained_in(const set& super)const { return Set::contained_in(*this, super); }
+ bool contained_in(const set& super)const
+ { return Set::contained_in(*this, super); }
/** Does <tt>*this</tt> contain <tt>sub</tt>? */
bool contains(const set& sub)const { return Set::contained_in(sub, *this); }
/** <tt>*this</tt> and <tt>x2</tt> are disjoint, if their intersection is empty */
- bool disjoint(const set& x2)const { return disjoint(*this, x2); }
+ bool disjoint(const set& x2)const { return Set::disjoint(*this, x2); }
//==========================================================================
//= Size
@@ -135,18 +144,48 @@
size_t cardinality()const { return size(); }
+ //==========================================================================
+ //= Addition, subtraction
+ //==========================================================================
/** Add an element \c value to the set. */
- set& add(const value_type& value) { insert(value); return *this; }
+ set& add(const element_type& value) { insert(value); return *this; }
/** Subtract an element \c value from the set. */
- set& subtract(const value_type& value);
+ set& subtract(const element_type& value);
- void add_intersection(set& section, const domain_type& key_value)const;
+ //==========================================================================
+ //= Insertion, erasure
+ //==========================================================================
+ /** Erase the elements in *this set to which property \c hasProperty applies.
+ Keep all the rest. */
+ template<class Predicate>
+ set& erase_if(const Predicate&);
+ //==========================================================================
+ //= Intersection, symmetric difference
+ //==========================================================================
+
+ /** The intersection of \c key in \c *this set is added to \c section. */
+ void add_intersection(set& section, const element_type& key)const;
+
+ /** The intersection of set \c sectant with \c *this set is added
+ to \c section. */
void add_intersection(set& section, const set& sectant)const;
+ /** If \c *this set contains \c value it is erased, otherwise it is added. */
set& flip(const element_type& value);
+ //==========================================================================
+ //= Representation
+ //==========================================================================
+
+ /** Represent this set as a string */
+ std::string as_string(const char* sep = " ")const;
+
+ //==========================================================================
+ //= Algorithm unifiers
+ //==========================================================================
+
/** \c key_value allows for a uniform access to \c key_values which is
is used for common algorithms on sets and maps. */
template<typename IteratorT>
@@ -168,25 +207,13 @@
static value_type make_element(const key_type& key_val, const data_type& data_val)
{ return key_val; }
- /** Erase the elements in *this set to which property \c hasProperty applies.
- Keep all the rest. */
- template<class Predicate>
- set& erase_if(const Predicate&);
-
- /** Copy the elements in set \c src to which property \c hasProperty applies
- into \c *this set. */
- template<class Predicate>
- set& assign_if(const set& src, const Predicate&);
-
- /** Represent this set as a string */
- std::string as_string(const char* sep = " ")const;
};
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
set<DomainT,Compare,Alloc>&
- set<DomainT,Compare,Alloc>::subtract(const value_type& val)
+ set<DomainT,Compare,Alloc>::subtract(const element_type& val)
{
iterator it_ = find(val);
if(it_ != end())
@@ -197,7 +224,7 @@
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
void set<DomainT,Compare,Alloc>
- ::add_intersection(set& section, const domain_type& sectant)const
+ ::add_intersection(set& section, const element_type§ant)const
{
const_iterator it_ = find(sectant);
if(it_ != end())
@@ -333,13 +360,13 @@
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
inline itl::set<DomainT,Compare,Alloc>&
operator += ( itl::set<DomainT,Compare,Alloc>& object,
- const typename itl::set<DomainT,Compare,Alloc>::value_type& operand)
+ const typename itl::set<DomainT,Compare,Alloc>::element_type& operand)
{ return object.add(operand); }
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
itl::set<DomainT,Compare,Alloc>
operator + (const itl::set<DomainT,Compare,Alloc>& object,
- const typename itl::set<DomainT,Compare,Alloc>::value_type& operand)
+ const typename itl::set<DomainT,Compare,Alloc>::element_type& operand)
{ return itl::set<DomainT,Compare,Alloc>(object) += operand; }
/// Add a set \c operand to this set \object.
@@ -360,13 +387,13 @@
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
inline itl::set<DomainT,Compare,Alloc>&
operator |= ( itl::set<DomainT,Compare,Alloc>& object,
- const typename itl::set<DomainT,Compare,Alloc>::value_type& operand)
+ const typename itl::set<DomainT,Compare,Alloc>::element_type& operand)
{ return object.add(operand); }
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
itl::set<DomainT,Compare,Alloc>
operator | (const itl::set<DomainT,Compare,Alloc>& object,
- const typename itl::set<DomainT,Compare,Alloc>::value_type& operand)
+ const typename itl::set<DomainT,Compare,Alloc>::element_type& operand)
{ return itl::set<DomainT,Compare,Alloc>(object) |= operand; }
/// Add a set \c operand to this set \object.
@@ -387,13 +414,13 @@
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
inline itl::set<DomainT,Compare,Alloc>&
operator -= ( itl::set<DomainT,Compare,Alloc>& object,
- const typename itl::set<DomainT,Compare,Alloc>::value_type& operand)
+ const typename itl::set<DomainT,Compare,Alloc>::element_type& operand)
{ return object.subtract(operand); }
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
itl::set<DomainT,Compare,Alloc>
operator - (const itl::set<DomainT,Compare,Alloc>& object,
- const typename itl::set<DomainT,Compare,Alloc>::value_type& operand)
+ const typename itl::set<DomainT,Compare,Alloc>::element_type& operand)
{ return itl::set<DomainT,Compare,Alloc>(object) -= operand; }
@@ -416,7 +443,7 @@
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
inline itl::set<DomainT,Compare,Alloc>&
operator &= ( itl::set<DomainT,Compare,Alloc>& object,
- const typename itl::set<DomainT,Compare,Alloc>::value_type& operand)
+ const typename itl::set<DomainT,Compare,Alloc>::element_type& operand)
{
itl::set<DomainT,Compare,Alloc> section;
object.add_intersection(section, operand);
@@ -427,7 +454,7 @@
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
itl::set<DomainT,Compare,Alloc>
operator & (const itl::set<DomainT,Compare,Alloc>& object,
- const typename itl::set<DomainT,Compare,Alloc>::value_type& operand)
+ const typename itl::set<DomainT,Compare,Alloc>::element_type& operand)
{ return itl::set<DomainT,Compare,Alloc>(object) &= operand; }
@@ -465,7 +492,7 @@
template <typename DomainT, ITL_COMPARE Compare, ITL_ALLOC Alloc>
itl::set<DomainT,Compare,Alloc>
operator ^ (const itl::set<DomainT,Compare,Alloc>& object,
- const typename itl::set<DomainT,Compare,Alloc>::value_type& operand)
+ const typename itl::set<DomainT,Compare,Alloc>::element_type& operand)
{
return itl::set<DomainT,Compare,Alloc>(object) ^= operand;
}
Modified: sandbox/itl/libs/itl/build/win32/vc9_all.sln
==============================================================================
--- sandbox/itl/libs/itl/build/win32/vc9_all.sln (original)
+++ sandbox/itl/libs/itl/build/win32/vc9_all.sln 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -73,6 +73,8 @@
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vc9_test_set_itl_set", "..\..\test\test_set_itl_set\vc9_test_set_itl_set.vcproj", "{DD9C9854-3882-42B9-BFA1-C6CEBFCE352A}"
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "vc9_test_itl_map", "..\..\test\test_itl_map\vc9_test_itl_map.vcproj", "{DD9C9854-3882-42B9-BFA1-C6CEBFCE352B}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@@ -223,6 +225,10 @@
{DD9C9854-3882-42B9-BFA1-C6CEBFCE352A}.Debug|Win32.Build.0 = Debug|Win32
{DD9C9854-3882-42B9-BFA1-C6CEBFCE352A}.Release|Win32.ActiveCfg = Release|Win32
{DD9C9854-3882-42B9-BFA1-C6CEBFCE352A}.Release|Win32.Build.0 = Release|Win32
+ {DD9C9854-3882-42B9-BFA1-C6CEBFCE352B}.Debug|Win32.ActiveCfg = Debug|Win32
+ {DD9C9854-3882-42B9-BFA1-C6CEBFCE352B}.Debug|Win32.Build.0 = Debug|Win32
+ {DD9C9854-3882-42B9-BFA1-C6CEBFCE352B}.Release|Win32.ActiveCfg = Release|Win32
+ {DD9C9854-3882-42B9-BFA1-C6CEBFCE352B}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Modified: sandbox/itl/libs/itl/doc/interface.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/interface.qbk (original)
+++ sandbox/itl/libs/itl/doc/interface.qbk 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -414,6 +414,7 @@
[[`T` ] [] [a container type]]
[[`P` ] [] [polymorhical container argument type]]
[[`I,J` ] [] [polymorhical iterator type]]
+[[`V` ] [] [various types `V`, that do dot fall in the categories above]]
[[1,2,... ] [] [number of implementations for this function]]
[[A ] [] [implementation generated by compilers]]
[[[#element_type] [*e]] [T::element_type] [the element type of __itv_sets__ or __itl_sets__]]
@@ -436,18 +437,18 @@
[[`T::T(const T&)`] [A] [1] [1] [1] [1] [1] [1]]
[[`T::T(const P&)`] [ ] [__eiS] [__bpM] [ ] [ ] [ ] [ ]]
[[`T::T(...)`] [3] [ ] [ ] [3] [3] [3] [3]]
-[[`T& T::operator=(const T&)`] [A] [__S] [__M] [1] [1] [1] [1]]
+[[`T& T::operator=(const P&)`] [A] [__S] [__M] [1] [1] [1] [1]]
[[`void T::swap(T&)`] [ ] [1] [1] [1] [1] [1] [1]]
[[['*Emptieness, containment*]] [interval][interval\nsets][interval\nmaps][itl::set][itl::map][std::set][std::map]]
[[`void T::clear()`] [1] [1] [1] [1] [1] [1] [1]]
[[`bool T::empty()const`] [1] [1] [1] [1] [1] [1] [1]]
[[`bool T::contains(const P&)const`] [__ei] [__eiS][__eiS __bpM][__es] [__bm] [ ] [ ]]
-[[`bool T::contained_in(const P&)const`] [__e] [__S] [__M] [__s] [__m] [ ] [ ]]
+[[`bool T::contained_in(const P&)const`] [__i] [__S] [__M] [1] [1] [ ] [ ]]
[[['*Equivalences and Orderings*]][interval][interval\nsets][interval\nmaps][itl::set][itl::map][std::set][std::map]]
[[`bool operator == (const T&, const T&)`] [1] [1] [1] [1] [1] [1] [1]]
[[`bool operator != (const T&, const T&)`] [1] [1] [1] [1] [1] [1] [1]]
-[[`bool is_element_equal(const T&, const P&)`] [ ] [?] [?] [1] [1] [ ] [ ]]
-[[`bool is_protonic_equal(const T&, const T&)`][ ] [ ] [1] [ ] [1] [ ] [ ]]
+[[`bool is_element_equal(const T&, const P&)`] [ ] [__S] [__M] [1] [1] [ ] [ ]]
+[[`bool is_protonic_equal(const T&, const T&)`][ ] [ ] [__M] [ ] [1] [ ] [ ]]
[[`bool operator < (const T&, const T&)`] [1] [1] [1] [1] [1] [1] [1]]
[[`bool operator > (const T&, const T&)`] [1] [1] [1] [1] [1] [1] [1]]
[[`bool operator <= (const T&, const T&)`] [1] [1] [1] [1] [1] [1] [1]]
@@ -464,9 +465,9 @@
[[`domain_type T::first()const`] [1] [1] [1] [ ] [ ] [ ] [ ]]
[[`domain_type T::last()const`] [1] [1] [1] [ ] [ ] [ ] [ ]]
[[['*Selection*]] [ ] [ ] [ ] [ ] [ ] [ ] [ ]]
-[[`J T::find(const domain_type&)`] [ ] [2] [2] [2] [2] [2] [2]]
-[[`codomain_type& operator[] (const domain_type&)`][ ] [ ] [??] [ ] [1] [ ] [1]]
-[[`codomain_type operator() (const domain_type&)const`][ ][ ] [1?] [ ] [1?] [ ] [ ]]
+[[`J T::find(const domain_type&)`] [ ] [1] [1] [2] [2] [2] [2]]
+[[`codomain_type& operator[] (const domain_type&)`][ ] [ ] [] [ ] [1] [ ] [1]]
+[[`codomain_type operator() (const domain_type&)const`][ ][ ] [1] [ ] [1] [ ] [ ]]
[[['*Addition*]] [interval][interval\nsets][interval\nmaps][itl::set][itl::map][std::set][std::map]]
[[`T& T::add(const P&)`] [ ] [__ei] [__bp] [__e] [__b] [ ] [ ]]
[[`T& operator +=( T&, const P&)`] [ ] [__eiS] [__bpM] [__es] [__bm] [ ] [ ]]
@@ -476,26 +477,29 @@
[[['*Subtraction*]] [ ] [ ] [ ] [ ] [ ] [ ] [ ]]
[[`T& T::subtract(const P&)`] [ ] [__ei] [__bp] [__e] [__b] [ ] [ ]]
[[`T& operator -=( T&, const P&)`] [ ] [__eiS] [__bpM] [__es] [__bm] [ ] [ ]]
-[[`T operator - (const T&, const P&)`] [ ] [__eiS] [__bpM] [__es] [__bm] [ ] [JODO test]]
+[[`T operator - (const T&, const P&)`] [ ] [__eiS] [__bpM] [__es] [__bm] [ ] [ ]]
[[['*Insertion, erasure*]] [interval][interval\nsets][interval\nmaps][itl::set][itl::map][std::set][std::map]]
[[`V T::insert(const P&)`] [ ] [__ei] [__bp] [__e] [__b] [__e] [__b]]
-[[`T& T::set(const P&)`] [ ] [ ] [__bp?] [ ] [__b?] [ ] [JODO]]
-[[`T& T::erase(const P&)`] [ ] [__eiS][__eiS __bpM][__e] [__b] [?__e] [?__b]]
+[[`T& T::set(const P&)`] [ ] [ ] [__bp] [ ] [1] [ ] [ ]]
+[[`T& T::erase(const P&)`] [ ] [__eiS][__eiS __bpM][__e] [__b] [__e] [__b]]
+[/ [`V T::erase(const I&,...)`] [ ] [ ] [ ] [2] [2] [2] [2] ]
[[['*Intersection, symmetric difference*]] [ ] [ ] [ ] [ ] [ ] [ ] [ ]]
-[[`void T::intersect(T&, const P&)const`] [__i] [__eiS][__eiS __bpM][ ] [ ] [ ] [JODO remove?]]
-[[`void T::add_intersection(T&, const P&)const`][][__eiS][__eiS __bpM][ ] [ ] [ ] [ ]]
-[[`T& operator &=(T&, const P&)`] [__i] [__eiS][__eiS __bpM][?__es][?__bm] [ ] [JODO]]
-[[`T operator & (const T&, const P&)`] [__i] [__eiS][__eiS __bpM][?__es][?__bm] [ ] [JODO]]
+[[`void T::add_intersection(T&, const P&)const`][ ] [__eiS][__eiS __bpM][ ] [ ] [ ] [ ]]
+[[`T& operator &=(T&, const P&)`] [__i] [__eiS][__eiS __bpM][__es] [__bm] [ ] [ ]]
+[[`T operator & (const T&, const P&)`] [__i] [__eiS][__eiS __bpM][__es] [__bm] [ ] [ ]]
[[`T& T::flip(const P&)`] [ ] [__ei] [__bp] [__e] [__b] [ ] [ ]]
-[[`T& operator ^=(T&, const P&)`] [ ] [__eiS] [__bpM] [?__es][?__bm] [ ] [JODO]]
-[[`T operator ^ (const T&, const P&)`] [ ] [__eiS] [__bpM] [?__es][?__bm] [ ] [JODO]]
-[[['*Iterator related*]] [ ] [ ] [ ] [ ] [ ] [ ] [ ]]
+[[`T& operator ^=(T&, const P&)`] [ ] [__eiS] [__bpM] [__es] [__bm] [ ] [ ]]
+[[`T operator ^ (const T&, const P&)`] [ ] [__eiS] [__bpM] [__es] [__bm] [ ] [ ]]
+[[['*Iterator related*]] [interval][interval\nsets][interval\nmaps][itl::set][itl::map][std::set][std::map]]
[[`J T::begin()`] [ ] [2] [2] [2] [2] [2] [2]]
[[`J T::end()`] [ ] [2] [2] [2] [2] [2] [2]]
[[`J T::rbegin()`] [ ] [2] [2] [2] [2] [2] [2]]
[[`J T::rend()`] [ ] [2] [2] [2] [2] [2] [2]]
[[`J T::lower_bound(const I&)`] [ ] [2] [2] [2] [2] [2] [2]]
[[`J T::upper_bound(const I&)`] [ ] [2] [2] [2] [2] [2] [2]]
+[[['*Streaming, representation*]] [interval][interval\nsets][interval\nmaps][itl::set][itl::map][std::set][std::map]]
+[[`std::basic_ostream operator << (...)`] [1] [1] [1] [1] [1] [1] [1]]
+[[`std::string T::as_string()`] [1] [1] [1] [1] [1] [ ] [ ]]
]
[endsect]
Modified: sandbox/itl/libs/itl/test/test_casual/test_casual.cpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_casual/test_casual.cpp (original)
+++ sandbox/itl/libs/itl/test/test_casual/test_casual.cpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -59,14 +59,19 @@
BOOST_AUTO_TEST_CASE(casual_test)
{
- typedef interval_map<int,nat> IntervalMapT;
- typedef split_interval_map<int,nat> SplitIntervalMapT;
+ typedef int T;
+ typedef itl::map<int,int> ItlMapT;
+ typedef interval_map<int,int> IntervalMapT;
+ typedef split_interval_map<int,int> SplitIntervalMapT;
- SplitIntervalMapT left, right;
- //[1 2]->2
- // [2 3]->2
- left.add(IIv(1,2,2));
- left.flip(IIv(2,3,3));
+ IntervalMapT left, right;
- BOOST_CHECK_EQUAL(left, right);
+ left.add(IDv(1,3,1));
+ BOOST_CHECK_EQUAL(IntervalMapT().add(IDv(1,3,1))(2), 1);
+ BOOST_CHECK_EQUAL(IntervalMapT().add(IDv(1,3,1))(3) == 1, false);
+ BOOST_CHECK_EQUAL(IntervalMapT().add(IDv(1,3,1))(3), 0);
+ BOOST_CHECK_EQUAL(SplitIntervalMapT().add(IDv(1,3,1))(2), 1);
+ BOOST_CHECK_EQUAL(SplitIntervalMapT().add(IDv(1,3,1))(3) == 1, false);
+ BOOST_CHECK_EQUAL(ItlMapT().add(sK_v(2,1))(2), 1);
+ BOOST_CHECK_EQUAL(ItlMapT().add(sK_v(2,1))(3) == 1, false);
}
Modified: sandbox/itl/libs/itl/test/test_interval_map/test_interval_map_shared.cpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_interval_map/test_interval_map_shared.cpp (original)
+++ sandbox/itl/libs/itl/test/test_interval_map/test_interval_map_shared.cpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -74,3 +74,11 @@
(test_itl_interval_map_infix_caret_overload_4_bicremental_types, T, bicremental_types)
{ interval_map_infix_caret_overload_4_bicremental_types<interval_map, T, int>();}
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_interval_map_find_4_bicremental_types, T, bicremental_types)
+{ interval_map_find_4_bicremental_types<interval_map, T, int>();}
+
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_interval_map_set_4_bicremental_types, T, bicremental_types)
+{ interval_map_set_4_bicremental_types<interval_map, T, int>();}
+
Modified: sandbox/itl/libs/itl/test/test_interval_map_mixed/test_interval_map_mixed.cpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_interval_map_mixed/test_interval_map_mixed.cpp (original)
+++ sandbox/itl/libs/itl/test/test_interval_map_mixed/test_interval_map_mixed.cpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -102,8 +102,9 @@
SplitIntervalMapT split_map;
IntervalMapT join_map;
- split_map.add(v0_u1); //JODO make_pair(v0,u1); fails
- join_map = split_map;
+ split_map.add(v0_u1); //NOTE: make_pair(v0,u1); fails
+ join_map = split_map; //=t T& T::operator=(const P&) ...
+
BOOST_CHECK_EQUAL( split_map.lower(), join_map.lower() );
BOOST_CHECK_EQUAL( split_map.upper(), join_map.upper() );
Modified: sandbox/itl/libs/itl/test/test_interval_map_shared.hpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_interval_map_shared.hpp (original)
+++ sandbox/itl/libs/itl/test/test_interval_map_shared.hpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -1013,5 +1013,62 @@
BOOST_CHECK_EQUAL(map_b ^ map_pair, map_pair ^ map_b);
}
+template <template<class T, class U,
+ class Traits = partial_absorber,
+ ITL_COMPARE Compare = ITL_COMPARE_INSTANCE(std::less, U),
+ ITL_COMBINE Combine = ITL_COMBINE_INSTANCE(itl::inplace_plus, U),
+ ITL_SECTION Section = ITL_SECTION_INSTANCE(itl::inplace_et, U),
+ template<class,ITL_COMPARE>class Interval = interval,
+ ITL_ALLOC Alloc = std::allocator
+ >class IntervalMap,
+ class T, class U>
+void interval_map_find_4_bicremental_types()
+{
+ typedef IntervalMap<T,U> IntervalMapT;
+
+ typename IntervalMapT::interval_mapping_type val_pair1 = IDv(6,9,1);
+ std::pair<const interval<T>, U> val_pair2 = IDv(3,5,3);
+ mapping_pair<T,U> map_pair = K_v(4,3);
+
+ IntervalMapT map_a;
+ map_a.add(CDv(1,3,1)).add(IDv(8,9,1)).add(IIv(6,11,3));
+
+ IntervalMapT::const_iterator found = map_a.find(MK_v(6));
+
+ BOOST_CHECK_EQUAL( found->CONT_VALUE, MK_u(3) );
+ BOOST_CHECK_EQUAL( map_a(MK_v(6)), MK_u(3) );
+
+ found = map_a.find(MK_v(5));
+
+ BOOST_CHECK_EQUAL( found == map_a.end(), true );
+ BOOST_CHECK_EQUAL( map_a(MK_v(5)), MK_u(0) );
+}
+
+
+template <template<class T, class U,
+ class Traits = partial_absorber,
+ ITL_COMPARE Compare = ITL_COMPARE_INSTANCE(std::less, U),
+ ITL_COMBINE Combine = ITL_COMBINE_INSTANCE(itl::inplace_plus, U),
+ ITL_SECTION Section = ITL_SECTION_INSTANCE(itl::inplace_et, U),
+ template<class,ITL_COMPARE>class Interval = interval,
+ ITL_ALLOC Alloc = std::allocator
+ >class IntervalMap,
+ class T, class U>
+void interval_map_set_4_bicremental_types()
+{
+ typedef IntervalMap<T,U> IntervalMapT;
+
+ typename IntervalMapT::interval_mapping_type val_pair1 = IDv(6,9,1);
+ std::pair<const interval<T>, U> val_pair2 = IDv(3,5,3);
+ mapping_pair<T,U> map_pair = K_v(4,3);
+
+ IntervalMapT map_a;
+ map_a.add(CDv(1,3,1)).add(IDv(8,9,1)).add(IIv(6,11,3));
+
+ BOOST_CHECK_EQUAL( map_a.set(CDv(2,10,4)).contains(CDv(2,10,4)), true );
+ BOOST_CHECK_EQUAL( map_a.set(K_v(4,5)).contains(K_v(4,5)), true );
+ BOOST_CHECK_EQUAL( map_a.set(K_v(4,5)).set(CDv(3,5,6)).contains(CDv(3,5,6)), true );
+}
+
#endif // __test_itl_interval_map_shared_h_JOFA_080920__
Modified: sandbox/itl/libs/itl/test/test_interval_set/test_interval_set_shared.cpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_interval_set/test_interval_set_shared.cpp (original)
+++ sandbox/itl/libs/itl/test/test_interval_set/test_interval_set_shared.cpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -70,3 +70,7 @@
(test_itl_interval_set_infix_caret_overload_4_bicremental_types, T, bicremental_types)
{ interval_set_infix_caret_overload_4_bicremental_types<interval_set, T>();}
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_interval_set_find_4_bicremental_types, T, bicremental_types)
+{ interval_set_find_4_bicremental_types<interval_set, T>();}
+
Modified: sandbox/itl/libs/itl/test/test_interval_set_shared.hpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_interval_set_shared.hpp (original)
+++ sandbox/itl/libs/itl/test/test_interval_set_shared.hpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -192,7 +192,6 @@
}
-
template <template< class T,
ITL_COMPARE Compare = ITL_COMPARE_INSTANCE(std::less, T),
template<class,ITL_COMPARE>class Interval = interval,
@@ -692,5 +691,29 @@
BOOST_CHECK_EQUAL(set_b ^ MK_v(4), MK_v(4) ^ set_b);
}
+
+template <template< class T,
+ ITL_COMPARE Compare = ITL_COMPARE_INSTANCE(std::less, T),
+ template<class,ITL_COMPARE>class Interval = interval,
+ ITL_ALLOC Alloc = std::allocator
+ >class IntervalSet,
+ class T>
+void interval_set_find_4_bicremental_types()
+{
+ typedef IntervalSet<T> IntervalSetT;
+ itl::interval<T> itv = I_D(3,5);
+
+ IntervalSetT set_a;
+ set_a.add(C_D(1,3)).add(I_I(6,11));
+
+ IntervalSetT::const_iterator found = set_a.find(MK_v(6));
+
+ BOOST_CHECK_EQUAL( *found, I_I(6,11) );
+
+ found = set_a.find(MK_v(5));
+
+ BOOST_CHECK_EQUAL( found == set_a.end(), true );
+}
+
#endif // __test_itl_interval_set_shared_h_JOFA_080920__
Added: sandbox/itl/libs/itl/test/test_itl_map.hpp
==============================================================================
--- (empty file)
+++ sandbox/itl/libs/itl/test/test_itl_map.hpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -0,0 +1,48 @@
+/*----------------------------------------------------------------------------+
+Copyright (c) 2008-2008: Joachim Faulhaber
++-----------------------------------------------------------------------------+
+ Distributed under the Boost Software License, Version 1.0.
+ (See accompanying file LICENCE.txt or copy at
+ http://www.boost.org/LICENSE_1_0.txt)
++----------------------------------------------------------------------------*/
+#ifndef __test_itl_itl_map_h_JOFA_090119__
+#define __test_itl_itl_map_h_JOFA_090119__
+
+
+//------------------------------------------------------------------------------
+// Monoid EAN
+//------------------------------------------------------------------------------
+template <class T, class U, class Trt,
+ template<class T, class U,
+ class Traits = Trt,
+ ITL_COMPARE Compare = ITL_COMPARE_INSTANCE(std::less, U),
+ ITL_COMBINE Combine = ITL_COMBINE_INSTANCE(itl::inplace_plus, U),
+ ITL_SECTION Section = ITL_SECTION_INSTANCE(itl::inplace_et, U),
+ template<class,ITL_COMPARE>class Interval = interval,
+ ITL_ALLOC Alloc = std::allocator
+ >class IntervalMap
+ >
+void itl_map_find_4_bicremental_types()
+{
+ typedef IntervalMap<T,U,Trt> IntervalMapT;
+ typedef itl::map<T,U,Trt> MapT;
+
+ IntervalMapT itv_map_a;
+ itv_map_a.add(IDv(2,4,1)).add(IIv(6,7,3));
+
+ MapT map_a;
+ Interval::atomize(map_a, itv_map_a);
+
+ MapT::const_iterator found = map_a.find(MK_v(6));
+
+ BOOST_CHECK_EQUAL( found->CONT_VALUE, MK_u(3) );
+ BOOST_CHECK_EQUAL( map_a(MK_v(6)), MK_u(3) );
+
+ found = map_a.find(MK_v(5));
+
+ BOOST_CHECK_EQUAL( found == map_a.end(), true );
+ BOOST_CHECK_EQUAL( map_a(MK_v(5)), MK_u(0) );
+}
+
+#endif // __test_itl_itl_map_h_JOFA_090119__
+
Added: sandbox/itl/libs/itl/test/test_itl_map/test_itl_map.cpp
==============================================================================
--- (empty file)
+++ sandbox/itl/libs/itl/test/test_itl_map/test_itl_map.cpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -0,0 +1,38 @@
+/*----------------------------------------------------------------------------+
+Copyright (c) 2008-2008: Joachim Faulhaber
++-----------------------------------------------------------------------------+
+ Distributed under the Boost Software License, Version 1.0.
+ (See accompanying file LICENCE.txt or copy at
+ http://www.boost.org/LICENSE_1_0.txt)
++----------------------------------------------------------------------------*/
+#define BOOST_TEST_MODULE itl::interval_set unit test
+#include <string>
+#include <boost/mpl/list.hpp>
+#include <boost/test/unit_test.hpp>
+#include <boost/test/test_case_template.hpp>
+
+// interval instance types
+#include "../test_type_lists.hpp"
+#include "../test_value_maker.hpp"
+#include "../test_laws.hpp"
+
+#include <boost/itl/map.hpp>
+#include <boost/itl/interval_map.hpp>
+#include <boost/itl/interval_morphism.hpp>
+
+using namespace std;
+using namespace boost;
+using namespace unit_test;
+using namespace boost::itl;
+
+// -----------------------------------------------------------------------------
+// test_interval_set_shared are tests that should give identical results for all
+// interval_sets: interval_set, separate_interval_set and split_interval_set.
+#include "../test_itl_map.hpp"
+
+// Due to limited expressiveness of the testing framework, the testcode in files
+// test_interval_map{,_split}_shared.cpp is generated through code
+// replication.
+#include "test_itl_map_shared.cpp"
+
+
Added: sandbox/itl/libs/itl/test/test_itl_map/test_itl_map_shared.cpp
==============================================================================
--- (empty file)
+++ sandbox/itl/libs/itl/test/test_itl_map/test_itl_map_shared.cpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -0,0 +1,12 @@
+/*-----------------------------------------------------------------------------+
+Copyright (c) 2008-2008: Joachim Faulhaber
++------------------------------------------------------------------------------+
+ Distributed under the Boost Software License, Version 1.0.
+ (See accompanying file LICENCE.txt or copy at
+ http://www.boost.org/LICENSE_1_0.txt)
++-----------------------------------------------------------------------------*/
+
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_itl_map_find_4_bicremental_types, T, bicremental_types)
+{ itl_map_find_4_bicremental_types<T, int, partial_absorber, interval_map>();}
+
Added: sandbox/itl/libs/itl/test/test_itl_map/vc9_test_itl_map.vcproj
==============================================================================
--- (empty file)
+++ sandbox/itl/libs/itl/test/test_itl_map/vc9_test_itl_map.vcproj 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9,00"
+ Name="vc9_test_itl_map"
+ ProjectGUID="{DD9C9854-3882-42B9-BFA1-C6CEBFCE352B}"
+ RootNamespace="Test_itl_map"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="../../../../bin/debug/"
+ IntermediateDirectory="../../../../bin/obj/$(ProjectName)/debug/"
+ ConfigurationType="1"
+ CharacterSet="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="../../../../; ../../../../boost_1_35_0"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE"
+ MinimalRebuild="true"
+ BasicRuntimeChecks="3"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="4"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="../../../../bin/debug/$(ProjectName).exe"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="../../../../lib; ../../../../stage/lib"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="../../../../bin/release/"
+ IntermediateDirectory="../../../../bin/obj/$(ProjectName)/release/"
+ ConfigurationType="1"
+ CharacterSet="1"
+ WholeProgramOptimization="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="../../../../; ../../../../boost_1_35_0"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE"
+ RuntimeLibrary="2"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ Detect64BitPortabilityProblems="false"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="../../../../bin/release/$(ProjectName).exe"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="../../../../lib; ../../../../stage/lib"
+ GenerateDebugInformation="true"
+ SubSystem="1"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Quelldateien"
+ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\test_itl_map.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Headerdateien"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+ >
+ <File
+ RelativePath="..\test_type_lists.hpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Ressourcendateien"
+ Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
+ UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+ >
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
Modified: sandbox/itl/libs/itl/test/test_quantifier_itl_map.hpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_quantifier_itl_map.hpp (original)
+++ sandbox/itl/libs/itl/test/test_quantifier_itl_map.hpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -294,6 +294,5 @@
CHECK_ABELIAN_GROUP_INSTANCE_WRT_EQUAL(pipe) (is_protonic_equal, map_a, map_b, map_c, map_pair1, map_pair2);
}
-
#endif // __test_itl_quantifier_itl_map_h_JOFA_090119__
Modified: sandbox/itl/libs/itl/test/test_separate_interval_set/test_separate_interval_set_shared.cpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_separate_interval_set/test_separate_interval_set_shared.cpp (original)
+++ sandbox/itl/libs/itl/test/test_separate_interval_set/test_separate_interval_set_shared.cpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -58,4 +58,12 @@
(test_itl_interval_set_infix_et_overload_4_bicremental_types, T, bicremental_types)
{ interval_set_infix_et_overload_4_bicremental_types<interval_set, T>();}
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_interval_set_infix_caret_overload_4_bicremental_types, T, bicremental_types)
+{ interval_set_infix_caret_overload_4_bicremental_types<interval_set, T>();}
+
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_interval_set_find_4_bicremental_types, T, bicremental_types)
+{ interval_set_find_4_bicremental_types<interval_set, T>();}
+
Modified: sandbox/itl/libs/itl/test/test_split_interval_map/test_split_interval_map_shared.cpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_split_interval_map/test_split_interval_map_shared.cpp (original)
+++ sandbox/itl/libs/itl/test/test_split_interval_map/test_split_interval_map_shared.cpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -61,3 +61,12 @@
BOOST_AUTO_TEST_CASE_TEMPLATE
(test_itl_interval_map_infix_et_overload_4_bicremental_types, T, bicremental_types)
{ interval_map_infix_et_overload_4_bicremental_types<split_interval_map, T, int>();}
+
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_interval_map_infix_caret_overload_4_bicremental_types, T, bicremental_types)
+{ interval_map_infix_caret_overload_4_bicremental_types<split_interval_map, T, int>();}
+
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_interval_map_find_4_bicremental_types, T, bicremental_types)
+{ interval_map_find_4_bicremental_types<split_interval_map, T, int>();}
+
Modified: sandbox/itl/libs/itl/test/test_split_interval_set/test_split_interval_set_shared.cpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_split_interval_set/test_split_interval_set_shared.cpp (original)
+++ sandbox/itl/libs/itl/test/test_split_interval_set/test_split_interval_set_shared.cpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -58,4 +58,12 @@
(test_itl_interval_set_infix_et_overload_4_bicremental_types, T, bicremental_types)
{ interval_set_infix_et_overload_4_bicremental_types<interval_set, T>();}
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_interval_set_infix_caret_overload_4_bicremental_types, T, bicremental_types)
+{ interval_set_infix_caret_overload_4_bicremental_types<interval_set, T>();}
+
+BOOST_AUTO_TEST_CASE_TEMPLATE
+(test_itl_interval_set_find_4_bicremental_types, T, bicremental_types)
+{ interval_set_find_4_bicremental_types<interval_set, T>();}
+
Modified: sandbox/itl/libs/itl/test/test_value_maker.hpp
==============================================================================
--- sandbox/itl/libs/itl/test/test_value_maker.hpp (original)
+++ sandbox/itl/libs/itl/test/test_value_maker.hpp 2009-02-13 11:35:09 EST (Fri, 13 Feb 2009)
@@ -120,8 +120,7 @@
#define C_D(low,up) itl::interval<T>::open (make<T>(low), make<T>(up))
#define MK_v(key) make<T>(key)
-
-
+#define MK_u(key) make<U>(key)
// Very short value denotation for interval value pairs
// Assumption typename IntervalMapT existes in scope
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