Dillo v3.1.1-46-g8a360e32
|
Used for other orders as the one defined by Comparable. More...
#include <object.hh>
Public Member Functions | |
virtual int | compare (Object *o1, Object *o2)=0 |
Compare two objects o1 and o2. | |
![]() | |
virtual | ~Object () |
The destructor is defined as virtual (but not abstract), so that destruction of Object's works properly. | |
virtual bool | equals (Object *other) |
Returns, whether two objects are equal. | |
virtual int | hashValue () |
Return a hash value for the object. | |
virtual Object * | clone () |
Return an exact copy of the object. | |
virtual void | intoStringBuffer (misc::StringBuffer *sb) |
Store a textual representation of the object in a misc::StringBuffer. | |
const char * | toString () |
Use object::Object::intoStringBuffer to return a textual representation of the object. | |
virtual size_t | sizeOf () |
Return the number of bytes, this object totally uses. | |
Static Public Member Functions | |
static int | compareFun (const void *p1, const void *p2) |
This static method may be used as compare function for qsort(3) and bsearch(3), for an array of Object* (Object*[] or Object**). | |
Static Public Attributes | |
static Comparator * | compareFunComparator = NULL |
Used for other orders as the one defined by Comparable.
Compared objects must not neccessary be instances of Comparable.
Compare two objects o1 and o2.
Return a value < 0, when o1 is less than o2, a value > 0, when o1 is greater than o2, or 0, when o1 and o2 are equal.
If o1.equals(o2) (as defined in Object), compare(o1, o2) must be 0, but, unlike you may expect, the reversed is not necessarily true. This method returns 0, if, according to the rules for sorting, there is no difference, but there may still be differences (not relevant for sorting), which "equals" will care about.
Implemented in dw::oof::OOFFloatsMgr::Float::ComparePosition, dw::oof::OOFFloatsMgr::Float::CompareSideSpanningIndex, dw::oof::OOFFloatsMgr::Float::CompareGBAndExtIndex, dw::oof::OOFFloatsMgr::TBInfo::ComparePosition, and lout::object::StandardComparator.
Referenced by lout::container::untyped::Vector::bsearch(), and compareFun().
|
static |
This static method may be used as compare function for qsort(3) and bsearch(3), for an array of Object* (Object*[] or Object**).
"compareFunComparator" should be set before.
Definition at line 128 of file object.cc.
References compare(), and compareFunComparator.
Referenced by lout::container::untyped::Vector::sort().
|
static |
Definition at line 84 of file object.hh.
Referenced by compareFun(), and lout::container::untyped::Vector::sort().