struct

Location

Inherits Comparable < Struct < Value < Object

Constructors

new(source : Source, line : UInt32, column : UInt32)
Source
new(line, column)
Source
new(tuple : Tuple(Int32, Int32))
Source

Class methods

zero(source = Source.empty)
Source

Instance methods

+(int)
Source
-(int)
Source
<=>(other : Location)

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
column
Source
coord(io : IO)
Source
indent
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
line
Source
source
Source
to_s(io : IO)

Same as #inspect(io).

Source