Sha256: b14f4b4c6164af988ca069b02e09974a166d7889ebcccd66b1ff543ea09551f7
Contents?: true
Size: 821 Bytes
Versions: 5
Compression:
Stored size: 821 Bytes
Contents
#-- # Copyright (c) 2010-2012 Engine Yard, Inc. # Copyright (c) 2007-2009 Sun Microsystems, Inc. # This source code is available under the MIT license. # See the file LICENSE.txt for details. #++ module Warbler # 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. class Gems < Hash ANY_VERSION = nil def initialize(gems = nil) if gems.is_a?(Hash) self.merge!(gems) elsif gems.is_a?(Array) gems.each {|gem| self << gem } end end def <<(gem) self[gem] ||= ANY_VERSION end def +(other) other.each {|g| self[g] ||= ANY_VERSION } self end def -(other) other.each {|g| self.delete(g)} self end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
warbler-1.3.8 | lib/warbler/gems.rb |
warbler-1.3.7 | lib/warbler/gems.rb |
warbler-1.3.6 | lib/warbler/gems.rb |
warbler-1.3.5 | lib/warbler/gems.rb |
warbler-1.3.4 | lib/warbler/gems.rb |