diff options
author | hsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2019-01-04 13:10:58 +0000 |
---|---|---|
committer | hsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2019-01-04 13:10:58 +0000 |
commit | e97741e12a22d78825a3a9dfcb7382adb0e27855 (patch) | |
tree | 5344cb31a89df6fd5fbae92740d4229d655eee8f /lib/bundler/spec_set.rb | |
parent | 4bbbbb6a3f5bd242f740041a644311f97c4a0052 (diff) |
Merge Bundler 2.0.1 from upstream.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/bundler/spec_set.rb')
-rw-r--r-- | lib/bundler/spec_set.rb | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/lib/bundler/spec_set.rb b/lib/bundler/spec_set.rb index 5003b2cbec..bbdf04a7d6 100644 --- a/lib/bundler/spec_set.rb +++ b/lib/bundler/spec_set.rb @@ -1,16 +1,12 @@ # frozen_string_literal: true require "tsort" -require "forwardable" require "set" module Bundler class SpecSet - extend Forwardable - include TSort, Enumerable - - def_delegators :@specs, :<<, :length, :add, :remove, :size, :empty? - def_delegators :sorted, :each + include Enumerable + include TSort def initialize(specs) @specs = specs @@ -132,6 +128,26 @@ module Bundler what_required(req) << spec end + def <<(spec) + @specs << spec + end + + def length + @specs.length + end + + def size + @specs.size + end + + def empty? + @specs.empty? + end + + def each(&b) + sorted.each(&b) + end + private def sorted |