diff options
Diffstat (limited to 'lib/bundler')
-rw-r--r-- | lib/bundler/spec_set.rb | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/lib/bundler/spec_set.rb b/lib/bundler/spec_set.rb index 901888a11e..3149c752b4 100644 --- a/lib/bundler/spec_set.rb +++ b/lib/bundler/spec_set.rb @@ -1,21 +1,18 @@ require 'tsort' +require 'forwardable' module Bundler class SpecSet + extend Forwardable include TSort, Enumerable + def_delegators :@specs, :<<, :length, :add, :remove + def_delegators :sorted, :each + def initialize(specs) @specs = specs.sort_by { |s| s.name } end - def each - sorted.each { |s| yield s } - end - - def length - @specs.length - end - def for(dependencies, skip = [], check = false, match_current_platform = false) handled, deps, specs = {}, dependencies.dup, [] skip << 'bundler' @@ -68,6 +65,10 @@ module Bundler value end + def sort! + self + end + def to_a sorted.dup end |