Parent

Warbler::Gems

A set of gems. This only exists to allow expected operations to be used to add gems, and for backwards compatibility. It would be easier to just use a hash.

Constants

ANY_VERSION

Public Class Methods

new(gems = nil) click to toggle source
# File lib/warbler/gems.rb, line 15
def initialize(gems = nil)
  if gems.is_a?(Hash)
    self.merge!(gems)
  elsif gems.is_a?(Array)
    gems.each {|gem| self << gem }
  end
end

Public Instance Methods

+(other) click to toggle source
# File lib/warbler/gems.rb, line 28
def +(other)
  @specs = nil
  other.each {|g| self[g] ||= ANY_VERSION }
  self
end
-(other) click to toggle source
# File lib/warbler/gems.rb, line 34
def -(other)
  @specs = nil
  other.each {|g| self.delete(g)}
  self
end
<<(gem) click to toggle source
# File lib/warbler/gems.rb, line 23
def <<(gem)
  @specs = nil
  self[gem] ||= ANY_VERSION
end
full_name_for(name, gem_dependencies) click to toggle source
# File lib/warbler/gems.rb, line 40
def full_name_for(name, gem_dependencies)
  spec = specs(gem_dependencies).detect{ |spec| spec.name == name }
  spec.nil? ? name : spec.full_name
end
specs(gem_dependencies) click to toggle source
# File lib/warbler/gems.rb, line 45
def specs(gem_dependencies)
  @specs ||= map{|gem, version| find_single_gem_files(gem_dependencies, gem, version) }.flatten.compact
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.