From 72ebd2127f65d3edf0951b5b3e39b277808ce9cb Mon Sep 17 00:00:00 2001 From: William Ma Date: Fri, 19 Jun 2020 10:36:34 -0400 Subject: [PATCH] args: add method to retrieve formula and casks --- Library/Homebrew/cli/args.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Library/Homebrew/cli/args.rb b/Library/Homebrew/cli/args.rb index ac5fd1875b..af4920b1ce 100644 --- a/Library/Homebrew/cli/args.rb +++ b/Library/Homebrew/cli/args.rb @@ -38,6 +38,7 @@ module Homebrew @resolved_formulae = nil @formulae_paths = nil @casks = nil + @formulae_and_casks = nil @kegs = nil self[:named_args] = named_args @@ -107,6 +108,23 @@ module Homebrew .freeze end + def formulae_and_casks + require "cask/cask_loader" + require "cask/exceptions" + + @formulae_and_casks ||= downcased_unique_named.map do |name| + begin + Formulary.factory(name, spec) + rescue FormulaUnavailableError => e + begin + Cask::CaskLoader.load(name) + rescue Cask::CaskUnavailableError + raise e + end + end + end.uniq.freeze + end + def kegs require "keg" require "formula"