$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r66039 - in sandbox/itl/libs/itl: doc test/test_casual_
From: afojgo_at_[hidden]
Date: 2010-10-17 09:58:15
Author: jofaber
Date: 2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
New Revision: 66039
URL: http://svn.boost.org/trac/boost/changeset/66039
Log:
Updated documentation: Modified function references, addition, subtraction. Replacements of various itl strings.  
Text files modified: 
   sandbox/itl/libs/itl/doc/functions_addition.qbk             |    30 +++++++++++++++-------                  
   sandbox/itl/libs/itl/doc/functions_cons_copy_dest.qbk       |     8 +++---                                  
   sandbox/itl/libs/itl/doc/functions_containedness.qbk        |     4 +-                                      
   sandbox/itl/libs/itl/doc/functions_equivs_orderings.qbk     |     2                                         
   sandbox/itl/libs/itl/doc/functions_erasure.qbk              |    10 +++---                                  
   sandbox/itl/libs/itl/doc/functions_insertion.qbk            |    19 +++++++++-----                          
   sandbox/itl/libs/itl/doc/functions_intersection.qbk         |     6 ++--                                    
   sandbox/itl/libs/itl/doc/functions_iterator_related.qbk     |     2                                         
   sandbox/itl/libs/itl/doc/functions_selection.qbk            |     2                                         
   sandbox/itl/libs/itl/doc/functions_size.qbk                 |     4 +-                                      
   sandbox/itl/libs/itl/doc/functions_streaming.qbk            |     2                                         
   sandbox/itl/libs/itl/doc/functions_subtraction.qbk          |    51 ++++++++++++++++++++++++++++++++------- 
   sandbox/itl/libs/itl/doc/functions_symmetric_difference.qbk |     6 ++--                                    
   sandbox/itl/libs/itl/doc/icl.qbk                            |    10 ++++---                                 
   sandbox/itl/libs/itl/doc/interface.qbk                      |    45 +++++++++++++++++++---------------      
   sandbox/itl/libs/itl/test/test_casual_/test_casual.cpp      |     1                                         
   16 files changed, 129 insertions(+), 73 deletions(-)
Modified: sandbox/itl/libs/itl/doc/functions_addition.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_addition.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_addition.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -13,13 +13,23 @@
 [section Synopsis]
 
 [table
-[[Addition]                                [__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map] ]
-[[`T& T::add(const P&)`]                                     [__ei]    [__bp]   [__e]   [__b]     ]
-[[`T& T::add(J prior, const P&)`]                            [__i]     [__p]    [__e]   [__b]     ]
-[[`T& operator +=(T&, const P&)`]                            [__eiS]   [__bpM]  [__es]  [__bm]    ]
-[[`T operator + (T, const P&)`\n`T operator + (const P&, T)`][__eiS]   [__bpM]  [__es]  [__bm]    ]
-[[`T& operator |=(      T&, const P&)`]                      [__eiS]   [__bpM]  [__es]  [__bm]    ]
-[[`T operator | (T, const P&)`\n`T operator | (const P&, T)`][__eiS]   [__bpM]  [__es]  [__bm]    ]
+
+[[Addition]                                [__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__] ]
+
+[[`T& T::add(const P&)`]                           [__ei]    [__bp]   [ ]     [__b]  ]
+[[`T& add(T&, const P&)`]                          [__ei]    [__bp]   [__e]   [__b]  ]
+[[`T& T::add(J pos, const P&)`]                    [__i]     [__p]    [ ]     [__b]  ]
+[[`T& add(T&, J pos, const P&)`]                   [__i]     [__p]    [__e]   [__b]  ]
+
+[[`T& operator +=(T&, const P&)`]                  [__eiS]   [__bpM]  [__es]  [__bm] ]
+[[`T operator + (T, const P&)`\n
+  `T operator + (const P&, T)`]
+                                                   [__eiS]   [__bpM]  [__es]  [__bm] ]
+[[`T& operator |=(      T&, const P&)`]            [__eiS]   [__bpM]  [__es]  [__bm] ]
+[[`T operator | (T, const P&)`\n
+  `T operator | (const P&, T)`]
+                                                   [__eiS]   [__bpM]  [__es]  [__bm] ]
+
 ]
 
 Functions and operators that implement ['*Addition*] on *itl* objects
@@ -79,9 +89,9 @@
 
 The next table contains complexity characteristics for `add`.
 
-[table Time Complexity for member function add on itl containers
+[table Time Complexity for member function add on icl containers
 [[`T& T::add(const P&)`]      [__ch_dom_t__][__ch_itv_t__][__ch_dom_mp_t__][__ch_itv_mp_t__]]
-[[__icl_set__]                 [__Olgn__] []          []        []          ]
+[/ [__icl_set__]                 [__Olgn__] []          []        []          ]
 [[__icl_map__]                 []         []          [__Olgn__][]          ]
 [[__itv_set__\n__sep_itv_set__][__Olgn__] [__a_Olgn__][]        []          ]
 [[__spl_itv_set__]             [__Olgn__] [__On__]    []        []          ]
@@ -186,7 +196,7 @@
 desired kind of size.
 
 [table Time Complexity for inplace Addition on element containers
-[[`T& operator += (T& y, const P& x)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_itv_sets__][__ch_itv_maps__]]
+[[`T& operator += (T& y, const P& x)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_icl_sets__][__ch_icl_maps__]]
 [[__icl_set__]                        [__Olgn__]    []               [__Om__]         []               ]
 [[__icl_map__]                        []            [__Olgn__]       []               [__Om__]         ]
 ]
Modified: sandbox/itl/libs/itl/doc/functions_cons_copy_dest.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_cons_copy_dest.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_cons_copy_dest.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -11,7 +11,7 @@
 [section Construct, copy, destruct]
 
 [table
-[[['*Construct, copy, destruct*]]      [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map] ]
+[[['*Construct, copy, destruct*]]      [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__] ]
 [[`T::T()`]                                    [1]       [1]      [1]     [1]      [1]   ]
 [[`T::T(const P&)`]                            [A]   [__eiS]  [__bpM]     [1]      [1]   ]
 [[`T& T::operator=(const P&)`]                 [A]     [__S]    [__M]     [1]      [1]   ]
@@ -19,14 +19,14 @@
 ]
 
 All *itl* types are ['*regular types*]. They are ['*default constructible*], 
-['*copy constructible*] and ['*assignable*]. On itl Sets and Maps a `swap`
+['*copy constructible*] and ['*assignable*]. On icl Sets and Maps a `swap`
 function is available, that allows for *constant time* swapping of 
 container contents.
 The /regular and swappable part/ of the basic functions and their complexities
 are described in the tables below. 
 
 [table
-[[['*Regular and swap*]]      [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map] ]
+[[['*Regular and swap*]]      [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__] ]
 [[`T::T()`]                                 [__O1__]  [__O1__] [__O1__][__O1__] [__O1__] ]
 [[`T::T(const T&)`]                         [__O1__]  [__On__] [__On__][__On__] [__On__] ]
 [[`T& T::operator=(const T&)`]              [__O1__]  [__On__] [__On__][__On__] [__On__] ]
@@ -44,7 +44,7 @@
 ]
 
 In addition we have overloads of constructors and assignment operators
-for itl container types.
+for icl container types.
 ``
 // overload tables for constructors
 T::T(const P& src)
Modified: sandbox/itl/libs/itl/doc/functions_containedness.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_containedness.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_containedness.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -11,7 +11,7 @@
 [section Containedness]
 
 [table
-[[['*Containedness*]]       [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]  ]
+[[['*Containedness*]]       [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]  ]
 [[`bool T::empty()const`]                         [ ]       [1]      [1]     [1]      [1]   ]
 [[`bool is_empty(const T&)`]                      [1]       [1]      [1]     [1]      [1]   ]
 [[`bool contains(const T&, const P&)`\n
@@ -90,7 +90,7 @@
 
 [table Time Complexity for function contains on element containers
 [[`bool contains(const T& super, const P& sub)`\n
-  `bool   within(const P& sub, const T& super)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_itl_set__][__ch_itl_map__]]
+  `bool   within(const P& sub, const T& super)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_icl_set__][__ch_icl_map__]]
 [[__icl_set__]                          [__Olgn__]    []               [__Omlgn__]     []              ]
 [[__icl_map__]                          [__Olgn__]    [__Olgn__]       [__Omlgn__]     [__Omlgn__]     ]
 ]
Modified: sandbox/itl/libs/itl/doc/functions_equivs_orderings.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_equivs_orderings.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_equivs_orderings.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -13,7 +13,7 @@
 [section Synopsis][/ Equivalences and Orderings]
 
 [table
-[[['*Equivalences and Orderings*]][__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]]
+[[['*Equivalences and Orderings*]][__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]]
 [[['Segment Ordering]]                         [ ]       [ ]      [ ]     [ ]      [ ]   ]
 [[`bool operator == (const T&, const T&)`]     [1]       [1]      [1]     [1]      [1]   ]
 [[`bool operator != (const T&, const T&)`]     [1]       [1]      [1]     [1]      [1]   ]
Modified: sandbox/itl/libs/itl/doc/functions_erasure.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_erasure.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_erasure.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -13,7 +13,7 @@
 [section Synopsis][/ Erasure]
 
 [table
-[[['*Erasure*]]                 [__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]  ]
+[[['*Erasure*]]                 [__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]  ]
 [[`T& T::erase(const P&)`]              [__ei ]   [__ei __bp]     [__e]      [__bp]     ]
 [[`T& erase(T&, const P&)`]             [__eiS]  [__eiS __bpM]    [__es]     [__bm]     ]
 [[`void T::erase(iterator)`]               [1]        [1]         [1]        [1]        ]
@@ -31,7 +31,7 @@
 that performs inverse aggregations if key values collide or key intervals overlap.
 
 Using iterators it is possible to erase objects or ranges of 
-objects the iterator is pointing at from itl Sets and Maps.
+objects the iterator is pointing at from icl Sets and Maps.
 
 [endsect][/ Synopsis Erasure]
 
@@ -53,7 +53,7 @@
 
 The next table contains complexity characteristics for member function `erase`.
 
-[table Time Complexity for member function erase on itl containers
+[table Time Complexity for member function erase on icl containers
 [[`T& T::erase(const P&)`] [__ch_dom_t__][__ch_itv_t__][__ch_dom_mp_t__][__ch_itv_mp_t__]]
 [[__icl_set__]                 [__Olgn__]   []            []           []          ]
 [[__icl_map__]                 [__Olgn__]   []            [__Olgn__]   []          ]
@@ -116,7 +116,7 @@
 ``
 
 [table Time Complexity for inplace erasure on element containers
-[[`T& erase(T& y, const P& x)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_itl_set__][__ch_itl_map__]]
+[[`T& erase(T& y, const P& x)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_icl_set__][__ch_icl_map__]]
 [[__icl_set__]                    [__Olgn__]    []               [__Omlgn__]     []              ]
 [[__icl_map__]                    [__Olgn__]    [__Olgn__]       [__Omlgn__]     [__Omlgn__]     ]
 ]
@@ -143,7 +143,7 @@
 * interval-value-pairs from __itv_maps__
 
 [table
-[[['*Erasure by iterators*]]                [__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]  ]
+[[['*Erasure by iterators*]]                [__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]  ]
 [[`void T::erase(iterator pos)`]                   [__aO1__]   [__aO1__]    [__aO1__]   [__aO1__]   ]
 [[`void T::erase(iterator first, iterator past)`]  [__Ok__]    [__Ok__]     [__Ok__]    [__Ok__]    ]
 ]
Modified: sandbox/itl/libs/itl/doc/functions_insertion.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_insertion.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_insertion.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -1,5 +1,5 @@
 [/
-    Copyright (c) 2008-2009 Joachim Faulhaber
+    Copyright (c) 2008-2010 Joachim Faulhaber
 
     Distributed under the Boost Software License, Version 1.0.
     (See accompanying file LICENSE_1_0.txt or copy at
@@ -13,10 +13,15 @@
 [section Synopsis][/ Insertion]
 
 [table
-[[['*Insertion*]][__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]  ]
-[[`T& T::insert(const P&)`]        [__ei]      [__bp]       [__e]      [__b]      ]
-[[`T& insert(T&, const P&)`]      [__eiS]     [__bpM]       [__es]     [__bm]     ]
-[[`T& T::set(const P&)`]             [ ]       [__bp]       [ ]        [__b]      ]
+[[['*Insertion*]][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]  ]
+
+[[`V T::insert(const P&)`]                         [__ei]    [__bp]   [__e]    [__b]  ]
+[[`V insert(T&, const P&)`]                        [__ei]    [__bp]   [__e]    [__b]  ]
+[[`V T::insert(J pos, const P&)`]                  [__i]     [__p]    [__e]    [__b]  ]
+[[`V insert(T&, J pos, const P&)`]                 [__i]     [__p]    [__e]    [__b]  ]
+[[`T& insert(T&, const P&)`]                      [__eiS]   [__bpM]   [__es]   [__bm] ]
+[[`T& T::set(const P&)`]                             [ ]     [__bp]   [ ]      [1]    ]
+
 ]
 
 [h5 Insertion]
@@ -62,7 +67,7 @@
    M   |       M    
 ``
 
-[table Time Complexity for member function insert on itl containers
+[table Time Complexity for member function insert on icl containers
 [[`T& T::insert(const P&)`]    [__ch_dom_t__][__ch_itv_t__][__ch_dom_mp_t__][__ch_itv_mp_t__]]
 [[__icl_set__]                 [__Olgn__] []          []        []          ]
 [[__icl_map__]                 []         []          [__Olgn__][]          ]
@@ -137,7 +142,7 @@
 
 [table Time Complexity for member function `set`
 [[`T& set(T&, const P&)`] [domain_mapping_type] [interval_mapping_type] ]
-[[itl::map]               [__Olgn__]            [ ]                     ]
+[[icl::map]               [__Olgn__]            [ ]                     ]
 [[interval_maps]          []                    [__a_Olgn__]            ]
 ]
 
Modified: sandbox/itl/libs/itl/doc/functions_intersection.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_intersection.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_intersection.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -12,7 +12,7 @@
 [section Synopsis][/ Intersection]
 
 [table
-[[Intersection]                             [__ch_itv_t__][__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]]
+[[Intersection]                             [__ch_itv_t__][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]]
 [[`void T::add_intersection(T&, const P&)const`][ ]   [__eiS][__eiS __bpM][ ]     [ ]       ]
 [[`T& operator &=(T&, const P&)`]              [__i]  [__eiS][__eiS __bpM][__es]  [__bm]    ]
 [[`T  operator & (T, const P&)`\n`T  operator & (const P&, T)`] 
@@ -76,7 +76,7 @@
 
 The next table contains complexity characteristics for member function `add_intersection`.
 
-[table Time Complexity for member function add_intersection on itl containers
+[table Time Complexity for member function add_intersection on icl containers
 [[`void T::add_intersection(T&, const P&)const`] [__ch_dom_t__][__ch_itv_t__][__ch_dom_mp_t__][__ch_itv_mp_t__]]
 [[__icl_set__]                                   [__Olgn__]    []            []           []          ]
 [[__icl_map__]                                   [__Olgn__]    []            [__Olgn__]   []          ]
@@ -147,7 +147,7 @@
 ``
 
 [table Time Complexity for inplace intersection on element containers
-[[`T& operator &= (T& y, const P& x)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_itl_set__][__ch_itl_map__]]
+[[`T& operator &= (T& y, const P& x)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_icl_set__][__ch_icl_map__]]
 [[__icl_set__]                    [__Olgn__]    []               [__Omlgn__]     []              ]
 [[__icl_map__]                    [__Olgn__]    [__Olgn__]       [__Omlgn__]     [__Omlgn__]     ]
 ]
Modified: sandbox/itl/libs/itl/doc/functions_iterator_related.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_iterator_related.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_iterator_related.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -12,7 +12,7 @@
 
 
 [table
-[[['*Synopsis Complexities*]]                [__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]   ]
+[[['*Synopsis Complexities*]]                [__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]   ]
 [[`J T::begin()`]                                  [__O1__]    [__O1__]   [__O1__]    [__O1__]   ]
 [[`J T::end()`]                                    [__O1__]    [__O1__]   [__O1__]    [__O1__]   ]
 [[`J T::rbegin()`]                                 [__O1__]    [__O1__]   [__O1__]    [__O1__]   ]
Modified: sandbox/itl/libs/itl/doc/functions_selection.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_selection.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_selection.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -11,7 +11,7 @@
 [section Selection]
 
 [table
-[[['*Selection*]]                          [__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]     [condition]            ]
+[[['*Selection*]]                          [__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]     [condition]            ]
 [[`const_iterator T::find(const domain_type&)const`]     [__Olgn__] [__Olgn__] [__Olgn__]  [__Olgn__] []                     ]
 [[`iterator T::find(const domain_type&)`]                [ ]        [ ]        [__Olgn__]  [__Olgn__] []                     ]
 [[`codomain_type& operator[] (const domain_type&)`]      [ ]        [ ]        [ ]         [__Olgn__] []                     ]
Modified: sandbox/itl/libs/itl/doc/functions_size.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_size.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_size.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -11,7 +11,7 @@
 [section Size]
 
 [table
-[[['*Size*]]                    [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]]
+[[['*Size*]]                    [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]]
 [[`size_type T::size()const`\n
   `size_type size(const T&)`]               [__O1__]  [__On__] [__On__] [__O1__] [__O1__]   ]
 [[`size_type cardinality(const T&)`]        [__O1__]  [__On__] [__On__] [__O1__] [__O1__]   ]
@@ -34,7 +34,7 @@
 [table
 [[['*Size*]]                                      [Types] [Description]                                        ]
 [[`size_type interval_count(const T&)`]            [__S __M] [The number of intervals of an interval container.]                         ]
-[[`size_type iterative_size(const T&)`]    [__S __M __s __m] [The number of objects in an itl container that can be iterated over.]      ]
+[[`size_type iterative_size(const T&)`]    [__S __M __s __m] [The number of objects in an icl container that can be iterated over.]      ]
 [[`difference_type length(const T&)`]       [__i __S __M] [The length of an interval or the sum of lengths of
                                                           an interval container's intervals, that's `domain_type` has a `difference_type`.]     ]
 [[`size_type cardinality(const T&)`][__i __S __M __s __m] [The number of elements of an interval or a container.
Modified: sandbox/itl/libs/itl/doc/functions_streaming.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_streaming.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_streaming.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -11,7 +11,7 @@
 [section Streaming, conversion]
 
 [table
-[[['*Streaming, conversion*]]             [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]  ]
+[[['*Streaming, conversion*]]             [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]  ]
 [[`std::basic_ostream operator << (basic_ostream&, const T&)`]      [1]       [1]      [1]     [1]      [1]      ]
 [[`std::string T::as_string()`]                [1]       [1]      [1]     [1]      [1]      ]
 ]
Modified: sandbox/itl/libs/itl/doc/functions_subtraction.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_subtraction.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_subtraction.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -1,5 +1,5 @@
 [/
-    Copyright (c) 2008-2009 Joachim Faulhaber
+    Copyright (c) 2008-2010 Joachim Faulhaber
 
     Distributed under the Boost Software License, Version 1.0.
     (See accompanying file LICENSE_1_0.txt or copy at
@@ -13,13 +13,18 @@
 [section Synopsis]
 
 [table
-[[Subtraction]                             [__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map]]
-[[`T& T::subtract(const P&)`]                                [__ei]    [__bp]    [__e]   [__b]   ]
-[[`T& operator -=(T&, const P&)`]                            [__eiS][__eiS __bpM][__es]  [__bm]  ]
-[[`T  operator - (T, const P&)`]                             [__eiS][__eiS __bpM][__es]  [__bm]  ]
+[[Subtraction]                        [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]]
+[[`T& T::subtract(const P&)`]                     [ ]     [__ei]    [__bp]   [ ]     [__b]  ]
+[[`T& subtract(T&, const P&)`]                    [ ]     [__ei]    [__bp]   [__e]   [__b]  ]
+
+[[`T& operator -=(T&, const P&)`]                 [ ]    [__eiS][__eiS __bpM][__es]  [__bm] ]
+[[`T  operator - (T, const P&)`]                  [ ]    [__eiS][__eiS __bpM][__es]  [__bm] ]
+
+[[`T left_subtract(T, const T&)`]                 [1]       [ ]      [ ]     [ ]      [ ]   ]
+[[`T right_subtract(T, const T&)`]                [1]       [ ]      [ ]     [ ]      [ ]   ]
 ]
 
-Functions and operators that implement ['*Subtraction*] on *itl* objects
+Functions and operators that implement ['*Subtraction*] on *icl* objects
 are given in the table above.
 
 [table
@@ -65,9 +70,9 @@
 
 The next table contains complexity characteristics for `subtract`.
 
-[table Time Complexity for member function subtract on itl containers
+[table Time Complexity for member function subtract on icl containers
 [[`T& T::subtract(const P&)`] [__ch_dom_t__][__ch_itv_t__][__ch_dom_mp_t__][__ch_itv_mp_t__]]
-[[__icl_set__]                 [__Olgn__]   []            []           []          ]
+[/ [__icl_set__]                 [__Olgn__]   []            []           []          ]
 [[__icl_map__]                 [__Olgn__]   []            [__Olgn__]   []          ]
 [[__itv_sets__]                [__Olgn__]   [__a_Olgn__]  []           []          ]
 [[__itv_maps__]                [__Olgn__]   [__On__]      [__Olgn__]   [__On__]    ]
@@ -128,7 +133,7 @@
 ``
 
 [table Time Complexity for inplace Subtraction on element containers
-[[`T& operator -= (T&, const P&)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_itl_set__][__ch_itl_map__]]
+[[`T& operator -= (T&, const P&)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_icl_set__][__ch_icl_map__]]
 [[__icl_set__]                    [__Olgn__]    []               [__Omlgn__]     []              ]
 [[__icl_map__]                    [__Olgn__]    [__Olgn__]       [__Omlgn__]     [__Omlgn__]     ]
 ]
@@ -163,6 +168,34 @@
 [endsect][/- Infix operator Subtraction]
 
 
+[section Subtraction on Intervals]
+
+[table
+[[['*Subtraction*]]                                   [Types] [Description]                                        ]
+
+[[`T left_subtract(T right, const T& left_minuend)`]  [__i]   
+    [subtract `left_minuend` from the interval `right` on it's left side. 
+``
+right_over = left_subtract(right, left_minuend);
+...      d) : right
+... c)      : left_minuend
+     [c  d) : right_over
+``
+    ] ]
+[[`T right_subtract(T left, const T& right_minuend)`] [__i]   
+    [subtract `right_minuend` from the interval `left` on it's right side.
+``
+left_over = right_subtract(left, right_minuend);
+[a      ...  : left
+     [b ...  : right_minuend
+[a  b)       : left_over
+``
+    ] ]
+]
+
+[endsect][/ Subtraction on Intervals]
+
+
 ['*See also . . .*]
 [table
 []
Modified: sandbox/itl/libs/itl/doc/functions_symmetric_difference.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/functions_symmetric_difference.qbk	(original)
+++ sandbox/itl/libs/itl/doc/functions_symmetric_difference.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -13,7 +13,7 @@
 [section Synopsis][/ Symmetric difference]
 
 [table
-[[Symmetric difference]                       [__ch_itv_sets__][__ch_itv_maps__][itl::set][itl::map] ]
+[[Symmetric difference]                       [__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__] ]
 [[`T& T::flip(const P&)`]                                    [__ei]    [__bp]   [__e]   [__b]     ]
 [[`T& operator ^=(T&, const P&)`]                            [__eiS]   [__bpM]  [__es]  [__bm]    ]
 [[`T operator ^ (T, const P&)`\n`T operator ^ (const P&, T)`][__eiS]   [__bpM]  [__es]  [__bm]    ]
@@ -66,7 +66,7 @@
 
 The next table contains complexity characteristics for member functions `flip`.
 
-[table Time Complexity for member functions flip on itl containers
+[table Time Complexity for member functions flip on icl containers
 [[`T& T::flip(const P&)`]      [__ch_dom_t__][__ch_itv_t__][__ch_dom_mp_t__][__ch_itv_mp_t__]]
 [[__icl_set__]                 [__Olgn__] []          []        []          ]
 [[__icl_map__]                 []         []          [__Olgn__][]          ]
@@ -105,7 +105,7 @@
 ``
 
 [table Time Complexity for inplace symmetric difference on element containers
-[[`T& operator &= (T& y, const P& x)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_itl_set__][__ch_itl_map__]]
+[[`T& operator &= (T& y, const P& x)`][__ch_dom_t__][__ch_dom_mp_t__][__ch_icl_set__][__ch_icl_map__]]
 [[__icl_set__]                    [__Olgn__]    []               [__Omlgn__]     []              ]
 [[__icl_map__]                    [__Olgn__]    [__Olgn__]       [__Omlgn__]     [__Omlgn__]     ]
 ]
Modified: sandbox/itl/libs/itl/doc/icl.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/icl.qbk	(original)
+++ sandbox/itl/libs/itl/doc/icl.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -167,13 +167,15 @@
 
 [def __ch_itv_sets__   interval\nsets]
 [def __ch_itv_maps__   interval\nmaps]
-[def __ch_itl_set__    interval\nsets]
-[def __ch_itl_map__    interval\nmaps]
+[def __ch_itl_set__    std::set]
+[def __ch_itl_map__    icl::map]
+[def __ch_icl_set__    std::set]
+[def __ch_icl_map__    icl::map]
 
 [def __ch_ele_sets__   element\nsets]
 [def __ch_ele_maps__   element\nmaps]
-[def __ch_ele_set__    element\nsets]
-[def __ch_ele_map__    element\nmaps]
+[def __ch_ele_set__    element\nset]
+[def __ch_ele_map__    element\nmap]
 
 [def __bi_conceptual__ ['*fundamental*]]
 [def __conceptual__    fundamental]
Modified: sandbox/itl/libs/itl/doc/interface.qbk
==============================================================================
--- sandbox/itl/libs/itl/doc/interface.qbk	(original)
+++ sandbox/itl/libs/itl/doc/interface.qbk	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -17,7 +17,7 @@
 [section Class templates]
 
 The next two tables give an overview over ['*set class templates*] of
-the itl and compares them to std::set. Included is the __itv__ class
+the icl and compares them to std::set. Included is the __itv__ class
 template, because an interval is considered to be a set as well. 
 
 [/              interval]
@@ -56,7 +56,7 @@
 
 [/       interval_map]
 [/ split_interval_map]
-[/           itl::map]
+[/           icl::map]
 
 [table map class templates
 [[group]        [template]       [instance parameters]]
@@ -76,8 +76,8 @@
 [table Parameters of map class templates
 [[]                   [elements][mapped values][traits]                      [order of elements]           [aggregation propagation]  [intersection propagation]     [type of intervals]                             [memory allocation]]
 [[template parameter] [`class`]  [`class`]     [`class`]                     [`template <class>class`]     [`template <class>class`]  [`template <class>class`]      [`template <class, template<class>class> class`][`template <class>class`]]    
-[[__itv_bmaps__]      [`DomainT`][`CodomainT`] [`Traits = identity_absorber`] [`Compare = std::less`]       [`Combine = inplace_plus`] [`Section = itl::inplace_et`]  [`Interval = itl::interval`]                    [`Alloc = std::alloc`]]
-[[__icl_map__]        [`DomainT`][`CodomainT`] [`Traits = identity_absorber`] [`Compare = std::less`]       [`Combine = inplace_plus`] [`Section = itl::inplace_et`]  [`Alloc = std::alloc`]]
+[[__itv_bmaps__]      [`DomainT`][`CodomainT`] [`Traits = identity_absorber`] [`Compare = std::less`]       [`Combine = inplace_plus`] [`Section = icl::inplace_et`]  [`Interval = icl::interval`]                    [`Alloc = std::alloc`]]
+[[__icl_map__]        [`DomainT`][`CodomainT`] [`Traits = identity_absorber`] [`Compare = std::less`]       [`Combine = inplace_plus`] [`Section = icl::inplace_et`]  [`Alloc = std::alloc`]]
 [[template parameter] [`class`]  [`class`]     []                            [`class`]                     []                         []                             []                                              [`class`]]
 [[__std_map__]        [`_Key`]   [`_Data`]     []                            [`_Compare = std::less<_Key>`][]                         []                             []                                              [`Alloc = std::alloc<_Key>`]]
 ]
@@ -90,9 +90,9 @@
 T  := class Traits,
 Cp := class Compare = std::less<DomainT>,
 cp := template<class D>class Compare = std::less,
-cb := template<class C>class Combine = itl::inplace_plus,
-s  := template<class C>class Section = itl::inplace_et,
-I  := class Interval = itl::interval_type_default<D,C>
+cb := template<class C>class Combine = icl::inplace_plus,
+s  := template<class C>class Section = icl::inplace_et,
+I  := class Interval = icl::interval_type_default<D,C>
 Ad := class Alloc = std::allocator<DomainT>
 Av := class Alloc = std::allocator<std::pair<DomainT,CodomainT> >
 a  := template<class>class Alloc = std::allocator
@@ -105,7 +105,7 @@
 interval_sets<D,       cp,        I, a >
 std::set     <D,       Cp,           Ad>
 interval_maps<D, C, T, cp, cb, s, I, a >
-itl::map     <D, C, T, cp, cb, s,    a >
+icl::map     <D, C, T, cp, cb, s,    a >
 std::map     <D, C     Cp,           Av>
 ]
 
@@ -243,7 +243,7 @@
 `CodomainT` of associated values for `Maps`. Again there are
 /conditions/ for some of the requirements. Column /operators/
 contains the operators and functions required for `CodomainT`, if we are
-using the default combiner `Combine = itl::inplace_plus`.
+using the default combiner `Combine = icl::inplace_plus`.
 
 [table 
 [[Parameter]  [Condition]                              [Operators]        [Requirement]                                 ]
@@ -288,18 +288,18 @@
 ``
 
 For ['complete aggregation functionality] an inverse aggregation functor on 
-a `Map`'s `CodomainT` is needed. The itl provides a 
-metafunction [classref boost::itl::inverse inverse] 
+a `Map`'s `CodomainT` is needed. The icl provides a 
+metafunction [classref boost::icl::inverse inverse] 
 for that purpose. Using the default
 `Combine = inplace_plus` that relies on the existence of `operator +=`
 on type `CodomainT` 
-metafunction [classref boost::itl::inverse inverse] 
-will infer [classref boost::itl::inplace_minus inplace_minus]
+metafunction [classref boost::icl::inverse inverse] 
+will infer [classref boost::icl::inplace_minus inplace_minus]
 as inverse functor, that requires `operator -=` on type `CodomainT`.
 
 In the itl's design we make the assumption,
 in particular for the default setting of parameters
-`Combine = `[classref boost::itl::inplace_minus inplace_plus],
+`Combine = `[classref boost::icl::inplace_minus inplace_plus],
 that type `CodomainT` has a neutral element or `neutron` 
 with respect to the `Combine` functor.
 
@@ -311,7 +311,7 @@
 
 In order to give an overview over ['*associated types*] the *itl* works
 with, we will apply abbreviations again that were introduced in the
-presentaiton of itl class templates,
+presentaiton of icl class templates,
 
 [pre
 interval     <D,       cp,             >
@@ -319,7 +319,7 @@
 itl::set     <D,       cp,           a >
 std::set     <D,       Cp,           Ad>
 interval_maps<D, C, T, cp, cb, s, i, a >
-itl::map     <D, C, T, cp, cb, s,    a >
+icl::map     <D, C, T, cp, cb, s,    a >
 std::map     <D, C     Cp,           Av>
 ]
 
@@ -331,8 +331,8 @@
 T  := class Traits,
 Cp := class Compare = std::less<DomainT>,
 cp := template<class D>class Compare = std::less,
-cb := template<class C>class Combine = itl::inplace_plus,
-s  := template<class C>class Section = itl::inplace_et,
+cb := template<class C>class Combine = icl::inplace_plus,
+s  := template<class C>class Section = icl::inplace_et,
 i  := template<class D,template<class>class cp>class Interval = itl::interval
 Ad := class Alloc = std::allocator<DomainT>
 Av := class Alloc = std::allocator<std::pair<DomainT,CodomainT> >
@@ -481,10 +481,12 @@
 [[`T& add(T&, J pos, const P&)`]                  [ ]     [__i]     [__p]    [__e]   [__b]  ]
 
 [[`T& operator +=(T&, const P&)`]                 [ ]     [__eiS]   [__bpM]  [__es]  [__bm] ]
-[[`T operator + (T, const P&)`\n`T operator + (const P&, T)`]
+[[`T operator + (T, const P&)`\n
+  `T operator + (const P&, T)`]
                                                   [ ]     [__eiS]   [__bpM]  [__es]  [__bm] ]
 [[`T& operator |=(      T&, const P&)`]           [ ]     [__eiS]   [__bpM]  [__es]  [__bm] ]
-[[`T operator | (T, const P&)`\n`T operator | (const P&, T)`]
+[[`T operator | (T, const P&)`\n
+  `T operator | (const P&, T)`]
                                                   [ ]     [__eiS]   [__bpM]  [__es]  [__bm] ]
 [[__biLSubtraction__]                             [ ]       [ ]      [ ]     [ ]      [ ]   ]
 [[`T& T::subtract(const P&)`]                     [ ]     [__ei]    [__bp]   [ ]     [__b]  ]
@@ -493,6 +495,9 @@
 [[`T& operator -=(T&, const P&)`]                 [ ]    [__eiS][__eiS __bpM][__es]  [__bm] ]
 [[`T  operator - (T, const P&)`]                  [ ]    [__eiS][__eiS __bpM][__es]  [__bm] ]
 
+[[`T left_subtract(T, const T&)`]                 [1]       [ ]      [ ]     [ ]      [ ]   ]
+[[`T right_subtract(T, const T&)`]                [1]       [ ]      [ ]     [ ]      [ ]   ]
+
 [[__biLInsertion__]      [__ch_itvs__][__ch_itv_sets__][__ch_itv_maps__][__ch_ele_sets__][__ch_ele_maps__]]
 [[`V T::insert(const P&)`]                        [ ]     [__ei]    [__bp]   [__e]    [__b]  ]
 [[`V insert(T&, const P&)`]                       [ ]     [__ei]    [__bp]   [__e]    [__b]  ]
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	2010-10-17 09:58:11 EDT (Sun, 17 Oct 2010)
@@ -57,6 +57,7 @@
     bool has_answer = contains(mySet, 42);
 }
 
+
 BOOST_AUTO_TEST_CASE(intro_sample_telecast)
 {
     // Switch on my favorite telecasts using an interval_set