Jive reference manual
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
jem::util::ObjectPair Class Reference

#include <jem/util/ObjectPair.h>

Inheritance diagram for jem::util::ObjectPair:
Inheritance graph

Public Member Functions

 ObjectPair ()
 
 ObjectPair (const Ref< Object > &first, const Ref< Object > &second)
 
virtual lint hashValue () const
 Returns a hash value for this object. More...
 
virtual bool equals (const Ref< Object > &rhs) const
 Tests whether two objects are equal. More...
 
virtual void readFrom (io::ObjectInput &in)
 
virtual void writeTo (io::ObjectOutput &out) const
 
virtual Ref< Objectclone () const
 
virtual Ref< ObjectgetFirst () const
 
virtual Ref< ObjectgetSecond () const
 
virtual void setFirst (const Ref< Object > &obj)
 
virtual void setSecond (const Ref< Object > &obj)
 
- Public Member Functions inherited from jem::Object
virtual ClassgetClass () const
 Returns the Class instance representing the runtime class of this object. More...
 
virtual String toString () const
 Returns a short textual description of this object. More...
 
Ref< Objectclone () const
 Returns a copy of this object. More...
 

Protected Member Functions

virtual ~ObjectPair ()
 
- Protected Member Functions inherited from jem::Collectable
 Collectable ()
 Creates an empty Collectable. More...
 
 ~Collectable ()
 Frees resources. More...
 
- Protected Member Functions inherited from jem::Clonable
virtual ~Clonable ()
 
virtual void emitVTable_ ()
 
- Protected Member Functions inherited from jem::Interface
virtual ~Interface ()
 Empty destructor. More...
 
- Protected Member Functions inherited from jem::io::Serializable
virtual ~Serializable ()
 
virtual void emitVtableFunc_ ()
 

Protected Attributes

Ref< Objectfirst_
 
Ref< Objectsecond_
 

Additional Inherited Members

- Static Public Member Functions inherited from jem::Object
static ClassgetType ()
 Returns the Class instance representing the Object class. More...
 

Constructor & Destructor Documentation

jem::util::ObjectPair::ObjectPair ( )
jem::util::ObjectPair::ObjectPair ( const Ref< Object > &  first,
const Ref< Object > &  second 
)
virtual jem::util::ObjectPair::~ObjectPair ( )
protectedvirtual

Member Function Documentation

virtual lint jem::util::ObjectPair::hashValue ( ) const
virtual

Returns a hash value for this object. This function should return the same hash value when it is invoked more than once on the same object, provided that the object is not modified. If two object are equal according to the equals method, then those objects should return the same hash value. Note that two objects which are not equal may also return the same hash value.

The hashValue implementation of the Object class returns a hash value for the memory address of the object.

Returns
A long integer representing the hash value of this object.

Reimplemented from jem::Object.

virtual bool jem::util::ObjectPair::equals ( const Ref< Object > &  obj) const
virtual

Tests whether this Object is equal to the Object obj. The equals method should be:

  • reflexive: for all objects x, x->equals(x) should return true.
  • symmetric: for all objects x and y, x->equals(y) should return the same value as y->equals(x).
  • transitive: if, for any objects x, y, and z, x->equals(y) returns true and y->equals(z) returns true, then x->equals(z) should return true.
  • consistent: for all objects x and y, multiple invocations of x->equals(y) should return the same value as long as the objects are not modified.

In addition, x->equals(NIL) should return false for all objects x.

The default implementation of equals returns true if and only if this object and the argument obj are located at the same memory address. That is, the default implementation returns (this == obj).

Parameters
obj- the object this object should be compared to, or NIL.
Returns
true is this object equals the object obj, and false otherwise.

Reimplemented from jem::Object.

virtual void jem::util::ObjectPair::readFrom ( io::ObjectInput in)
virtual

Implements jem::io::Serializable.

virtual void jem::util::ObjectPair::writeTo ( io::ObjectOutput out) const
virtual

Implements jem::io::Serializable.

virtual Ref<Object> jem::util::ObjectPair::clone ( ) const
virtual

Implements jem::Clonable.

virtual Ref<Object> jem::util::ObjectPair::getFirst ( ) const
virtual
virtual Ref<Object> jem::util::ObjectPair::getSecond ( ) const
virtual
virtual void jem::util::ObjectPair::setFirst ( const Ref< Object > &  obj)
virtual
virtual void jem::util::ObjectPair::setSecond ( const Ref< Object > &  obj)
virtual

Member Data Documentation

Ref<Object> jem::util::ObjectPair::first_
protected
Ref<Object> jem::util::ObjectPair::second_
protected