# File lib/bundler/resolver.rb, line 31 def initialize(a) super @required_by = [] @activated = [] @dependencies = nil @specs = {} ALL.each do |p| @specs[p] = reverse.find { |s| s.match_platform(p) } end end
# File lib/bundler/resolver.rb, line 65 def activate_platform(platform) unless @activated.include?(platform) @activated << platform return __dependencies[platform] || [] end [] end
# File lib/bundler/resolver.rb, line 85 def for?(platform) @specs[platform] end
# File lib/bundler/resolver.rb, line 43 def initialize_copy(o) super @required_by = o.required_by.dup @activated = o.activated.dup end
# File lib/bundler/resolver.rb, line 73 def name @name ||= first.name end
# File lib/bundler/resolver.rb, line 81 def source @source ||= first.source end
# File lib/bundler/resolver.rb, line 89 def to_s "#{name} (#{version})" end
# File lib/bundler/resolver.rb, line 49 def to_specs specs = {} @activated.each do |p| if s = @specs[p] platform = generic(Gem::Platform.new(s.platform)) next if specs[platform] lazy_spec = LazySpecification.new(name, version, platform, source) lazy_spec.dependencies.replace s.dependencies specs[platform] = lazy_spec end end specs.values end
# File lib/bundler/resolver.rb, line 77 def version @version ||= first.version end