Class: MailDiff::LineNumbers

Inherits:
Object
  • Object
show all
Defined in:
lib/mail_diff/line_numbers.rb

Overview

Represent 2 columns of numbers that will be displayed on the left of the HTML presentation.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(diff, meta) ⇒ LineNumbers

Returns a new instance of LineNumbers.



9
10
11
12
# File 'lib/mail_diff/line_numbers.rb', line 9

def initialize(diff, meta)
  @diff = diff
  @meta_info = meta
end

Instance Attribute Details

#diffObject (readonly)

:nodoc:



7
8
9
# File 'lib/mail_diff/line_numbers.rb', line 7

def diff
  @diff
end

#meta_infoObject (readonly)

:nodoc:



7
8
9
# File 'lib/mail_diff/line_numbers.rb', line 7

def meta_info
  @meta_info
end

Instance Method Details

#act_on_line(line) ⇒ Object

Increase either left column of numbers, right or both of them; depending on the Line status.



15
16
17
18
19
20
21
22
23
# File 'lib/mail_diff/line_numbers.rb', line 15

def act_on_line(line)
  if line.added?
    increase_right
  elsif line.deleted?
    increase_left
  else
    increase_both
  end
end

#left_columnObject



25
26
27
# File 'lib/mail_diff/line_numbers.rb', line 25

def left_column
  @left_column ||= []
end

#right_columnObject



29
30
31
# File 'lib/mail_diff/line_numbers.rb', line 29

def right_column
  @right_column ||= []
end