123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- [/
- 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
- http://www.boost.org/LICENSE_1_0.txt)
- ]
- [/ //= Additional Interval Orderings ===================================================================]
- [section Additional Interval Orderings]
- In addition to the standard orderings `operator <` and rleated `> <= >=` that you will find in the
- [link function_synopsis_table ['*librarie's function synopsis*]], intervals
- implement some additional orderings that can be useful.
- [table
- [[T] [__ch_dsc_itv__] [__ch_cnt_itv__] [__ch_ro_itv__] [__ch_lo_itv__] [__ch_cl_itv__] [__ch_op_itv__] ]
- [[Interval bounds] [dynamic] [dynamic] [static] [static] [static] [static] ]
- [[Form] [ ] [ ] [asymmetric] [asymmetric] [symmetric] [symmetric] ]
- [[['*Orderings*]] [ ] [ ] [ ] [ ] [ ] [ ] ]
- [[`bool exclusive_less(const T&, const T&)`] [1] [1] [1] [1] [1] [1] ]
- [[``
- bool lower_less(const T&, const T&)
- bool lower_equal(const T&, const T&)
- bool lower_less_equal(const T&, const T&)
- ``] [1] [1] [1] [1] [1] [1] ]
- [[``
- bool upper_less(const T&, const T&)
- bool upper_equal(const T&, const T&)
- bool upper_less_equal(const T&, const T&)
- ``]
- [1] [1] [1] [1] [1] [1] ]
- ]
- A central role for the *icl* plays the
- `exclusive_less` ordering, which is used
- in all interval containers.
- The other orderings can be useful to simplify
- comparison of intervals specifically for
- dynamically bounded ones.
- [table
- [[['*Orderings*]] [Description] ]
- [[`bool exclusive_less(const T&, const T&)`] [`exclusive_less(x1, x2)` is true if every element of interval `x1` is less than
- every element of interval `x2` w.r.t. the the intervals `Compare` ordering ] ]
- [[``
- bool lower_less(const T&, const T&)
- bool lower_equal(const T&, const T&)
- bool lower_less_equal(const T&, const T&)
- ``] [Compares the beginnings of intervals.
- ``
- lower_less(x,y) == true; // x begins before y
- lower_equal(x,y) == true; // x and y begin at the same element
- lower_less_equal(x,y) == lower_less(x,y) || lower_equal(x,y);
- ``
- ] ]
- [[``
- bool upper_less(const T&, const T&)
- bool upper_equal(const T&, const T&)
- bool upper_less_equal(const T&, const T&)
- ``]
- [Compares the endings of intervals.
- ``
- upper_less(x,y) == true; // x ends before y
- upper_equal(x,y) == true; // x and y end at the same element
- upper_less_equal(x,y) == upper_less(x,y) || upper_equal(x,y);
- ``
- ] ]
- ]
- ['*See also . . .*]
- [table
- []
- [[ __biLEquivsOrderings__ ]]
- ]
- ['*Back to section . . .*]
- [table
- []
- [[[link additional_interval_functions ['*Additional interval functions*]] ]]
- [[[link function_synopsis_table ['*Function Synopsis*]] ]]
- [[[link boost_icl.interface ['*Interface*]] ]]
- ]
- [endsect][/ Additional Interval Orderings]
|