activemq-cpp-3.6.0
decaf::util::comparators::Less< E > Class Template Reference

Simple Less Comparator that compares to elements to determine if the first is less than the second. More...

#include <src/main/decaf/util/comparators/Less.h>

Inheritance diagram for decaf::util::comparators::Less< E >:

Public Member Functions

 Less ()
virtual ~Less ()
virtual bool operator() (const E &left, const E &right) const
 Implementation of the Binary function interface as a means of allowing a Comparator to be passed to an STL Map for use as the sorting criteria.
virtual int compare (const E &o1, const E &o2) const
 Compares its two arguments for order.
- Public Member Functions inherited from decaf::util::Comparator< E >
virtual ~Comparator ()

Detailed Description

template<typename E>
class decaf::util::comparators::Less< E >

Simple Less Comparator that compares to elements to determine if the first is less than the second.

This can be used in Collection classes to sort elements according to their natural ordering. By design the Comparator's compare function return more information about comparison than the STL binary function's boolean compare operator. In this case the compare method will return

Since
1.0

Constructor & Destructor Documentation

template<typename E >
decaf::util::comparators::Less< E >::Less ( )
inline
template<typename E >
virtual decaf::util::comparators::Less< E >::~Less ( )
inlinevirtual

Member Function Documentation

template<typename E >
virtual int decaf::util::comparators::Less< E >::compare ( const E &  o1,
const E &  o2 
) const
inlinevirtual

Compares its two arguments for order.

Returns a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

The implementor must ensure that sgn( compare(x, y)) == -sgn(compare(y, x) ) for all x and y. (This implies that compare(x, y) must throw an exception if and only if compare(y, x) throws an exception.)

The implementor must also ensure that the relation is transitive: ((compare(x, y)>0) && (compare(y, z)>0)) implies compare(x, z)>0.

Finally, the implementer must ensure that compare(x, y)==0 implies that sgn(compare(x, z))==sgn(compare(y, z)) for all z.

It is generally the case, but not strictly required that (compare(x, y)==0) == ( x == y) ). Generally speaking, any comparator that violates this condition should clearly indicate this fact. The recommended language is "Note: this comparator imposes orderings that are inconsistent with equals."

Parameters
o1The first object to be compared
o2The second object to be compared
Returns
a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

Implements decaf::util::Comparator< E >.

template<typename E >
virtual bool decaf::util::comparators::Less< E >::operator() ( const E &  left,
const E &  right 
) const
inlinevirtual

Implementation of the Binary function interface as a means of allowing a Comparator to be passed to an STL Map for use as the sorting criteria.

Parameters
leftThe Left hand side operand.
rightThe Right hand side operand.
Returns
true if the vale of left is less than the value of right.

Implements decaf::util::Comparator< E >.


The documentation for this class was generated from the following file: