struct

FourSquares::Hurwitz

Inherits Comparable < Struct < Value < Object

Constants

D = (0..15).map do |i| new(i & 1, (i & 2) // 2, (i & 4) // 4, (i & 8) // 8) end << (new(1, 1, 1, 1, true))

Constructors

new(r, i = 0, j = 0, k = 0, doubled = false)
Source

Instance methods

%(o : Hurwitz)
Source
*(o : Hurwitz)
Source
+(o : Hurwitz)
Source
-(o : Hurwitz)
Source
//(o : Hurwitz)
Source
<=>(o : Hurwitz)

The comparison operator. Returns 0 if the two objects are equal, a negative number if this object is considered less than other, a positive number if this object is considered greater than other, or nil if the two objects are not comparable.

Subclasses define this method to provide class-specific ordering.

The comparison operator is usually used to sort values:

# Sort in a descending way:
[3, 1, 2].sort { |x, y| y <=> x } # => [3, 2, 1]

# Sort in an ascending way:
[3, 1, 2].sort { |x, y| x <=> y } # => [1, 2, 3]
Source
abs2
Source
i=(i : BigInt)
Source
inspect(io : IO)

Appends this struct's name and instance variables names and values to the given IO.

struct Point
  def initialize(@x : Int32, @y : Int32)
  end
end

p1 = Point.new 1, 2
p1.to_s    # "Point(@x=1, @y=2)"
p1.inspect # "Point(@x=1, @y=2)"
Source
inverse
Source
j=(j : BigInt)
Source
k=(k : BigInt)
Source
r=(r : BigInt)
Source
to_lipschitz
Source
to_s(io : IO)

Same as #inspect(io).

Source
to_sorted_abs_tuple
Source