module PartialComparable(T)

Overview

The PartialComparable mixin is used by classes whose objects may be partially ordered.

Including types must provide an <=> method, which compares the receiver against another object, returning -1, 0, +1 or nil depending on whether the receiver is less than, equal to, greater than the other object, or no order can be established.

Comparable uses <=> to implement the conventional comparison operators (#<, #<=, #==, #>=, and #>) and the method #between?.

Defined in:

partial_comparable.cr

Instance Method Summary

Instance Method Detail

def <(other : T) #

Compares this object to other based on the receiver’s <=> method, returning true if it returns -1.


[View source]
def <=(other : T) #

Compares this object to other based on the receiver’s <=> method, returning true if it returns -1 or 0.


[View source]
def ==(other : T) #

Compares this object to other based on the receiver’s <=> method, returning true if it returns 0. Also returns true if this and other are the same object.


[View source]
def >(other : T) #

Compares this object to other based on the receiver’s <=> method, returning true if it returns 1.


[View source]
def >=(other : T) #

Compares this object to other based on the receiver’s <=> method, returning true if it returns 1 or 0.


[View source]
def between?(min, max) #

Returns false if self <=> min is less than zero or if self <=> max is greater than zero, true otherwise.


[View source]
def compare_with(other : T, &block) #

[View source]