From c6e1090c43f769e80c1aa98c2029f1eb466e0da4 Mon Sep 17 00:00:00 2001 From: Xu Cheng Date: Sat, 6 Jun 2015 19:55:31 +0800 Subject: [PATCH] requirement: allow access default_formula directly --- Library/Homebrew/cmd/test-bot.rb | 2 +- Library/Homebrew/cmd/uses.rb | 4 ++-- Library/Homebrew/requirement.rb | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Library/Homebrew/cmd/test-bot.rb b/Library/Homebrew/cmd/test-bot.rb index 2884ad77cc..0161d77e60 100644 --- a/Library/Homebrew/cmd/test-bot.rb +++ b/Library/Homebrew/cmd/test-bot.rb @@ -344,7 +344,7 @@ module Homebrew satisfied ||= requirement.satisfied? satisfied ||= requirement.optional? if !satisfied && requirement.default_formula? - default = Formula[requirement.class.default_formula] + default = Formula[requirement.default_formula] satisfied = satisfied_requirements?(default, :stable, formula.full_name) end satisfied diff --git a/Library/Homebrew/cmd/uses.rb b/Library/Homebrew/cmd/uses.rb index 7410cc0228..bb65418655 100644 --- a/Library/Homebrew/cmd/uses.rb +++ b/Library/Homebrew/cmd/uses.rb @@ -26,7 +26,7 @@ module Homebrew Requirement.prune if ignores.any? { |ignore| req.send(ignore) } && !dependent.build.with?(req) end deps.any? { |dep| dep.to_formula.full_name == ff.full_name } || - reqs.any? { |req| req.name == ff.name || [ff.name, ff.full_name].include?(req.class.default_formula) } + reqs.any? { |req| req.name == ff.name || [ff.name, ff.full_name].include?(req.default_formula) } else deps = f.deps.reject do |dep| ignores.any? { |ignore| dep.send(ignore) } @@ -35,7 +35,7 @@ module Homebrew ignores.any? { |ignore| req.send(ignore) } end deps.any? { |dep| dep.to_formula.full_name == ff.full_name } || - reqs.any? { |req| req.name == ff.name || [ff.name, ff.full_name].include?(req.class.default_formula) } + reqs.any? { |req| req.name == ff.name || [ff.name, ff.full_name].include?(req.default_formula) } end rescue FormulaUnavailableError # Silently ignore this case as we don't care about things used in diff --git a/Library/Homebrew/requirement.rb b/Library/Homebrew/requirement.rb index 760e0f2876..3d1ee52cec 100644 --- a/Library/Homebrew/requirement.rb +++ b/Library/Homebrew/requirement.rb @@ -9,10 +9,11 @@ require 'build_environment' class Requirement include Dependable - attr_reader :tags, :name, :cask, :download + attr_reader :tags, :name, :cask, :download, :default_formula alias_method :option_name, :name def initialize(tags=[]) + @default_formula = self.class.default_formula @cask ||= self.class.cask @download ||= self.class.download tags.each do |tag|