class GitCompound::Component::Version::GemVersion
Component
Gem-like version
Attributes
requirement[R]
Public Class Methods
new(repository, requirement)
click to toggle source
# File lib/git_compound/component/version/gem_version.rb, line 9 def initialize(repository, requirement) raise CompoundSyntaxError, 'Malformed version requirement string' unless requirement =~ Gem::Requirement::PATTERN @repository = repository @requirement = requirement end
Public Instance Methods
lastest_version()
click to toggle source
# File lib/git_compound/component/version/gem_version.rb, line 17 def lastest_version matches.first end
matches()
click to toggle source
# File lib/git_compound/component/version/gem_version.rb, line 29 def matches versions = @repository.versions versions.select! { |version| version.matches?(@requirement) } versions.sort.reverse end
reachable?()
click to toggle source
# File lib/git_compound/component/version/gem_version.rb, line 35 def reachable? matches.any? end
ref()
click to toggle source
# File lib/git_compound/component/version/gem_version.rb, line 21 def ref lastest_version.tag end
sha()
click to toggle source
# File lib/git_compound/component/version/gem_version.rb, line 25 def sha lastest_version.sha end
to_s()
click to toggle source
# File lib/git_compound/component/version/gem_version.rb, line 39 def to_s "version: #{@requirement}" end