Section Header
  
  
    + name    := COMPARABLE;
  
  
    - comment := " All classes handling COMPARABLE objects with a total order\
               \relation should inherit from this class.";
    
Section Inherit
  
  
    - parent_object:OBJECT := 
  
Section Public
  
   
    - '=='  Right 60 other:SELF :BOOLEAN <- 
  
    - '<' Left 1 other:SELF :BOOLEAN <-
  
         Is `self' strictly less than `other'?
  
  
    - '<=' Left 1 other:SELF :BOOLEAN <-
  
         Is `self' less than or equal `other'?
  
  
    -  '>' other:SELF :BOOLEAN <-
  
         Is `self' strictly greater than `other'?
  
  
    - '>=' other:SELF :BOOLEAN <-
  
         Is `self' greater than or equal than `other'?
    
  
    - in_range lower:SELF to upper:SELF :BOOLEAN <-
  
         Return true if `self' is in range [`lower'..`upper']
  
  
    - compare other:SELF :INTEGER <-
  
         If current object equal to `other', 0;
  
         if smaller,  -1; if greater, 1.
  
  
    - min other:SELF :SELF <-
  
         Minimum of `self' and `other'.
    
  
  
    - max other:SELF :SELF <-
  
         Maximum of `self' and `other'.