Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

more::gen::unifying_partial_ordering Class Template Reference

A container which provides a partial ordering of its elements. More...

#include <more/gen/unifying_partial_ordering.h>

Inheritance diagram for more::gen::unifying_partial_ordering:

Inheritance graph
[legend]
Collaboration diagram for more::gen::unifying_partial_ordering:

Collaboration graph
[legend]
List of all members.

Public Types

Public Methods

Static Public Methods


Detailed Description

template<typename T, typename Unify = unify_if_equal<T>>
class more::gen::unifying_partial_ordering< T, Unify >

A container which provides a partial ordering of its elements.


Member Typedef Documentation

template<typename T, typename Unify = unify_if_equal<T>>
typedef const_infimum_iterator more::gen::unifying_partial_ordering::const_supremum_iterator
 

A bidirectional iterator used by supremum_range.

template<typename T, typename Unify = unify_if_equal<T>>
typedef infimum_iterator more::gen::unifying_partial_ordering::supremum_iterator
 

A bidirectional iterator used by supremum_range.

template<typename T, typename Unify = unify_if_equal<T>>
typedef Unify more::gen::unifying_partial_ordering::unify_function
 

template<typename T, typename Unify = unify_if_equal<T>>
typedef T more::gen::unifying_partial_ordering::value_type
 


Constructor & Destructor Documentation

template<typename T, typename Unify = unify_if_equal<T>>
more::gen::unifying_partial_ordering< T, Unify >::unifying_partial_ordering   [inline]
 

construct a partial ordering with only infimun and supremum elements.

template<typename T, typename Unify = unify_if_equal<T>>
more::gen::unifying_partial_ordering< T, Unify >::unifying_partial_ordering unify_function const &    fn [inline, explicit]
 

construct a partial ordering with the given unify function object.

template<typename T, typename Unify = unify_if_equal<T>>
more::gen::unifying_partial_ordering< T, Unify >::unifying_partial_ordering unifying_partial_ordering< T, Unify > const &    po [inline]
 

contruct a deep copy.

template<typename T, typename Unify = unify_if_equal<T>>
virtual more::gen::unifying_partial_ordering< T, Unify >::~unifying_partial_ordering   [inline, virtual]
 

destructs the partial ordering.

All elements created from the ordering will be invalidated.


Member Function Documentation

template<typename T, typename Unify>
void more::gen::unifying_partial_ordering< T, Unify >::clear  
 

clear a partial ordering.

All elements of the ordering are invalidated.

template<typename T, typename Unify>
bool more::gen::unifying_partial_ordering< T, Unify >::constrain_eq element    e0,
element    e1
 

imposes the constraint .

Equivalent to constrain_preceq(e0, e1), constrain_preceq(e1, e0).

template<typename T, typename Unify>
bool more::gen::unifying_partial_ordering< T, Unify >::constrain_preceq element    e0,
element    e1
 

imposes the constraint .

template<typename T, typename Unify>
template<typename OutputIterator>
void more::gen::unifying_partial_ordering< T, Unify >::copy_infimums const_element    e,
OutputIterator    it_out
[static]
 

template<typename T, typename Unify>
template<typename OutputIterator>
void more::gen::unifying_partial_ordering< T, Unify >::copy_infimums element    e,
OutputIterator    it_out
[static]
 

copyies to it_out the set of elements .

template<typename T, typename Unify>
template<typename OutputIterator>
void more::gen::unifying_partial_ordering< T, Unify >::copy_range const_element    e0,
const_element    e1,
OutputIterator    it_out
[static]
 

template<typename T, typename Unify>
template<typename OutputIterator>
void more::gen::unifying_partial_ordering< T, Unify >::copy_range element    e0,
element    e1,
OutputIterator    it_out
[static]
 

copies to it_out the set of elements .

template<typename T, typename Unify>
template<typename OutputIterator>
void more::gen::unifying_partial_ordering< T, Unify >::copy_supremums const_element    e,
OutputIterator    it_out
[static]
 

template<typename T, typename Unify>
template<typename OutputIterator>
void more::gen::unifying_partial_ordering< T, Unify >::copy_supremums element    e,
OutputIterator    it_out
[static]
 

copies to it_out the set of elements .

In contrast to full orderings, there may be more than one element fulfilling this condition.

template<typename T, typename Unify = unify_if_equal<T>>
bool more::gen::unifying_partial_ordering< T, Unify >::eq element    e0,
element    e1
[inline, static]
 

returns true iff is implied by the given contraits.

Equivalent to preceq(e0, e1) && preceq(e1, e0)

template<typename T, typename Unify = unify_if_equal<T>>
std::pair<infimum_iterator, infimum_iterator> more::gen::unifying_partial_ordering< T, Unify >::infimum_range element    x [inline, static]
 

Returns a range of the infimums of x.

See infimum_range(const_element) const.

template<typename T, typename Unify = unify_if_equal<T>>
std::pair<const_infimum_iterator, const_infimum_iterator> more::gen::unifying_partial_ordering< T, Unify >::infimum_range const_element    x [inline, static]
 

Returns a range of the infimums of x.

Note that the value_type of the iterator is const_element, so a double dereference is needed to obtain a value_type of this container.

template<typename T, typename Unify = unify_if_equal<T>>
void more::gen::unifying_partial_ordering< T, Unify >::insert const_element    e_min,
const_element    e_max,
element    e_min_dest,
element    e_max_dest
[inline]
 

insert nodes in (e_min, e_max) into (e_min_dest, e_max_dest).

template<typename T, typename Unify = unify_if_equal<T>>
void more::gen::unifying_partial_ordering< T, Unify >::insert const_element    e_min,
const_element    e_max
[inline]
 

insert a range of values.

Equivalent to insert(e_min, e_max, min(), max()).

template<typename T, typename Unify = unify_if_equal<T>>
element more::gen::unifying_partial_ordering< T, Unify >::insert   [inline]
 

create a new default constructed element.

template<typename T, typename Unify = unify_if_equal<T>>
element more::gen::unifying_partial_ordering< T, Unify >::insert T const &    value [inline]
 

create a new element with the given value.

template<typename T, typename Unify = unify_if_equal<T>>
element more::gen::unifying_partial_ordering< T, Unify >::max   [inline]
 

returns the element which is greater than any other element.

It is dereferenceable with an lvalue as the result.

template<typename T, typename Unify = unify_if_equal<T>>
const_element more::gen::unifying_partial_ordering< T, Unify >::max   const [inline]
 

returns the element which is greater than any other element.

It is derferenceable.

template<typename T, typename Unify = unify_if_equal<T>>
element more::gen::unifying_partial_ordering< T, Unify >::min   [inline]
 

returns the element which is less than any other element.

It is dereferenceable with an lvalue as the result.

template<typename T, typename Unify = unify_if_equal<T>>
const_element more::gen::unifying_partial_ordering< T, Unify >::min   const [inline]
 

returns the element which is less than any other element.

It is dereferenceable.

template<typename T, typename Unify = unify_if_equal<T>>
unifying_partial_ordering& more::gen::unifying_partial_ordering< T, Unify >::operator= unifying_partial_ordering< T, Unify > const &    po [inline]
 

assign a deep copy.

template<typename T, typename Unify = unify_if_equal<T>>
bool more::gen::unifying_partial_ordering< T, Unify >::preceq element    e0,
element    e1
[inline, static]
 

returns true iff is implied by the given constraints.

template<typename T, typename Unify = unify_if_equal<T>>
std::pair<supremum_iterator, supremum_iterator> more::gen::unifying_partial_ordering< T, Unify >::supremum_range element    x [inline, static]
 

Returns a range of the supremums of x.

See infimum_range(const_element) const.

template<typename T, typename Unify = unify_if_equal<T>>
std::pair<const_supremum_iterator, const_supremum_iterator> more::gen::unifying_partial_ordering< T, Unify >::supremum_range const_element    x [inline, static]
 

Returns a range of the supremums of x.

See infimum_range(const_element) const.


The documentation for this class was generated from the following files:
Generated on Sat Sep 7 19:12:11 2002 for more with Doxygen 1.2.13.1. Doxygen 1.2.13.1 is written and copyright 1997-2002 by Dimitri van Heesch.