Class: EhbrsRubyUtils::CircularListSpreader::List::ItemPairSpreadness

Inherits:
Object
  • Object
show all
Defined in:
lib/ehbrs_ruby_utils/circular_list_spreader/list/item_pair_spreadness.rb

Instance Method Summary collapse

Instance Method Details

#distanceInteger



15
16
17
# File 'lib/ehbrs_ruby_utils/circular_list_spreader/list/item_pair_spreadness.rb', line 15

def distance
  to_right_distance * to_left_distance
end

#left_pathArray



20
21
22
# File 'lib/ehbrs_ruby_utils/circular_list_spreader/list/item_pair_spreadness.rb', line 20

def left_path
  list.items.fetch(left_index).item.to_circular_list_spreader_path
end

#resultInteger



40
41
42
# File 'lib/ehbrs_ruby_utils/circular_list_spreader/list/item_pair_spreadness.rb', line 40

def result
  similarity * distance
end

#right_pathArray



25
26
27
# File 'lib/ehbrs_ruby_utils/circular_list_spreader/list/item_pair_spreadness.rb', line 25

def right_path
  item_on_index_path(right_index)
end

#to_left_distanceInteger



30
31
32
# File 'lib/ehbrs_ruby_utils/circular_list_spreader/list/item_pair_spreadness.rb', line 30

def to_left_distance
  right_index - left_index
end

#to_right_distanceInteger



35
36
37
# File 'lib/ehbrs_ruby_utils/circular_list_spreader/list/item_pair_spreadness.rb', line 35

def to_right_distance
  list.count - right_index + left_index
end