Class: DependencySpy::SemVer

Inherits:
Object
  • Object
show all
Defined in:
lib/dependency_spy/semver.rb

Class Method Summary collapse

Class Method Details

.intersects(vor1, vor2) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/dependency_spy/semver.rb', line 23

def self.intersects(vor1, vor2)
  vor1 = parse(vor1) if vor1.is_a?(String)
  vor2 = parse(vor2) if vor2.is_a?(String)

  if vor1.is_a?(SemanticRange::Range) && vor2.is_a?(SemanticRange::Range)
    vor1.intersects(vor2)
  elsif vor1.is_a?(SemanticRange::Range) && vor2.is_a?(SemanticRange::Version)
    SemanticRange.satisfies(vor2, vor1)
  elsif vor1.is_a?(SemanticRange::Version) && vor2.is_a?(SemanticRange::Range)
    SemanticRange.satisfies(vor1, vor2)
  elsif vor1.is_a?(SemanticRange::Version) && vor2.is_a?(SemanticRange::Version)
    SemanticRange.eq(vor1, vor2)
  else
    vor1 == vor2
  end
end