Class: Gitlab::RelativePositioning::StartingFrom

Inherits:
Range
  • Object
show all
Includes:
Utils::StrongMemoize
Defined in:
lib/gitlab/relative_positioning/starting_from.rb

Instance Attribute Summary

Attributes inherited from Range

#lhs

Instance Method Summary collapse

Methods inherited from Range

#==, #cover?, #open_on_left?, #open_on_right?

Constructor Details

#initialize(lhs) ⇒ StartingFrom

Returns a new instance of StartingFrom.

Raises:



8
9
10
11
# File 'lib/gitlab/relative_positioning/starting_from.rb', line 8

def initialize(lhs)
  @lhs = lhs
  raise IllegalRange, 'lhs is required' unless lhs
end

Instance Method Details

#rhsObject



13
14
15
# File 'lib/gitlab/relative_positioning/starting_from.rb', line 13

def rhs
  strong_memoize(:rhs) { lhs.rhs_neighbour }
end