diff options
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/formula.rb | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index 029aef77c..93a31481d 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -38,10 +38,25 @@ class Formulary # Returns all formula names as strings, with or without aliases def self.names with_aliases=false everything = (HOMEBREW_REPOSITORY+'Library/Formula').children.map{|f| f.basename('.rb').to_s } - everything.push *Formulary.get_aliases.keys if with_aliases + if with_aliases + everything.push *Formulary.get_aliases.keys + end everything.sort end + def self.read name + Formulary.names.each do |f| + next if f != name + + require Formula.path(name) + klass_name = Formula.class_s(name) + klass = eval(klass_name) + return klass + end + + return nil + end + # Loads all formula classes. def self.read_all Formulary.names.each do |name| |
