Class: RuboCop::Gradual::Results::Issue

Inherits:
Object
  • Object
show all
Defined in:
lib/rubocop/gradual/results/issue.rb

Overview

IssueResults is a representation of an issue in a Gradual results.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(line:, column:, length:, message:, hash:) ⇒ Issue

Returns a new instance of Issue.



10
11
12
13
14
15
16
# File 'lib/rubocop/gradual/results/issue.rb', line 10

def initialize(line:, column:, length:, message:, hash:)
  @line = line
  @column = column
  @length = length
  @message = message
  @code_hash = hash
end

Instance Attribute Details

#code_hashObject (readonly)

Returns the value of attribute code_hash.



8
9
10
# File 'lib/rubocop/gradual/results/issue.rb', line 8

def code_hash
  @code_hash
end

#columnObject (readonly)

Returns the value of attribute column.



8
9
10
# File 'lib/rubocop/gradual/results/issue.rb', line 8

def column
  @column
end

#lengthObject (readonly)

Returns the value of attribute length.



8
9
10
# File 'lib/rubocop/gradual/results/issue.rb', line 8

def length
  @length
end

#lineObject (readonly)

Returns the value of attribute line.



8
9
10
# File 'lib/rubocop/gradual/results/issue.rb', line 8

def line
  @line
end

#messageObject (readonly)

Returns the value of attribute message.



8
9
10
# File 'lib/rubocop/gradual/results/issue.rb', line 8

def message
  @message
end

Instance Method Details

#<=>(other) ⇒ Object



18
19
20
# File 'lib/rubocop/gradual/results/issue.rb', line 18

def <=>(other)
  [line, column, length, message] <=> [other.line, other.column, other.length, other.message]
end

#==(other) ⇒ Object



26
27
28
# File 'lib/rubocop/gradual/results/issue.rb', line 26

def ==(other)
  line == other.line && column == other.column && length == other.length && code_hash == other.code_hash
end

#distance(other) ⇒ Object



30
31
32
# File 'lib/rubocop/gradual/results/issue.rb', line 30

def distance(other)
  [(line - other.line).abs, (column - other.column).abs]
end

#to_sObject



22
23
24
# File 'lib/rubocop/gradual/results/issue.rb', line 22

def to_s
  "[#{[line, column, length, JSON.dump(message), code_hash].join(", ")}]"
end