Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
PrevUpHomeNext

Additional Interval Orderings

In addition to the standard orderings operator < and rleated > <= >= that you will find in the librarie's function synopsis, intervals implement some additional orderings that can be useful.

T

discrete
_interval

continuous
_interval

right_open
_interval

left_open
_interval

closed
_interval

open
_interval

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.

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 . . .

Equivalences and Orderings

Back to section . . .

Additional interval functions

Function Synopsis

Interface


PrevUpHomeNext