org.abora.white.spaces.basic
Class ReverseOrder

java.lang.Object
  |
  +--org.abora.white.xpp.basic.Heaper
        |
        +--org.abora.white.spaces.basic.OrderSpec
              |
              +--org.abora.white.spaces.basic.ReverseOrder

public class ReverseOrder
extends OrderSpec


Field Summary
protected  OrderSpec myOrder
           
 
Constructor Summary
ReverseOrder(OrderSpec order)
           
ReverseOrder(Rcvr receiver)
           
 
Method Summary
 int actualHashForEqual()
          Defined by subclasses to produce the value returned by hashForEqual.
 CoordinateSpace coordinateSpace()
          Essential.
 boolean follows(Position x, Position y)
          Essential.
 boolean followsInt(IntegerValue x, IntegerValue y)
          See discussion in XuInteger class comment about boxed vs unboxed integers
 boolean isEqual(Heaper other)
          Return true if the two objects are equal.
 boolean isFullOrder(XnRegion keys)
          Essential.
static OrderSpec make(OrderSpec order)
           
 boolean preceeds(XnRegion before, XnRegion after)
          Return true if some position in before is less than or equal to all positions in after.
 OrderSpec reversed()
          Returns an OrderSpec representing the mirror image of my ordering.
 void sendSelfTo(Xmtr xmtr)
           
 
Methods inherited from class org.abora.white.spaces.basic.OrderSpec
arrange, compare, isFullOrder
 
Methods inherited from class org.abora.white.xpp.basic.Heaper
destroy, destruct, equals, hashForEqual, printContentsOn, printOn, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

myOrder

protected OrderSpec myOrder
Constructor Detail

ReverseOrder

public ReverseOrder(OrderSpec order)

ReverseOrder

public ReverseOrder(Rcvr receiver)
Method Detail

make

public static OrderSpec make(OrderSpec order)

coordinateSpace

public CoordinateSpace coordinateSpace()
Description copied from class: OrderSpec
Essential. Like Positions, Dsps, and XuRegions, an OrderSpec is specific to one coordinate space. It is an error to use the generic protocol on objects from different coordinate spaces.

Specified by:
coordinateSpace in class OrderSpec

reversed

public OrderSpec reversed()
Description copied from class: OrderSpec
Returns an OrderSpec representing the mirror image of my ordering. o->follows(a, b) iff o->reverse()->follows(b, a)

Overrides:
reversed in class OrderSpec

actualHashForEqual

public int actualHashForEqual()
Description copied from class: Heaper
Defined by subclasses to produce the value returned by hashForEqual.

Overrides:
actualHashForEqual in class OrderSpec

follows

public boolean follows(Position x,
                       Position y)
Description copied from class: OrderSpec
Essential. Compare the two and return true if x is known to follow y in the ordering. This message is the 'greater than or equal to' equivalent for this ordering. It must have those properties a mathematician would demand of a '>=' on a partial order: os->follows(a, a) (reflexivity) os->follows(a, b) && os->follows(b, c) implies os->follows(a, c) (transitivity) os->follows(a, b) && os->follows(b, a) implies a->isEqual(b) (what's the name for this?)

Specified by:
follows in class OrderSpec

followsInt

public boolean followsInt(IntegerValue x,
                          IntegerValue y)
Description copied from class: OrderSpec
See discussion in XuInteger class comment about boxed vs unboxed integers

Overrides:
followsInt in class OrderSpec

isEqual

public boolean isEqual(Heaper other)
Description copied from class: Heaper
Return true if the two objects are equal.

Specified by:
isEqual in class OrderSpec

isFullOrder

public boolean isFullOrder(XnRegion keys)
Description copied from class: OrderSpec
Essential. If this returns TRUE, then I define a full order over all positions in 'keys' (or all positions in the space if 'keys' is NULL). However, if I return FALSE, that doesn't guarantee that I don't define a full ordering. I may happen to define a full ordering without knowing it. A full ordering is one in which for each a, b in keys; either this->follows(a, b) or this->follows(b, a).

Specified by:
isFullOrder in class OrderSpec

preceeds

public boolean preceeds(XnRegion before,
                        XnRegion after)
Return true if some position in before is less than or equal to all positions in after.

Specified by:
preceeds in class OrderSpec

sendSelfTo

public void sendSelfTo(Xmtr xmtr)
Overrides:
sendSelfTo in class OrderSpec


Copyright © 2003 David G Jones. All Rights Reserved.
Original Udanax-Gold - Copyright © 1979-1999 Udanax.com. All rights reserved.