diff options
Diffstat (limited to 'Library/Homebrew/cask/lib/hbc/source/tapped.rb')
| -rw-r--r-- | Library/Homebrew/cask/lib/hbc/source/tapped.rb | 60 |
1 files changed, 32 insertions, 28 deletions
diff --git a/Library/Homebrew/cask/lib/hbc/source/tapped.rb b/Library/Homebrew/cask/lib/hbc/source/tapped.rb index da9366840..6716e3a35 100644 --- a/Library/Homebrew/cask/lib/hbc/source/tapped.rb +++ b/Library/Homebrew/cask/lib/hbc/source/tapped.rb @@ -1,35 +1,39 @@ -class Hbc::Source::Tapped - def self.me?(query) - path_for_query(query).exist? - end +module Hbc + module Source + class Tapped + def self.me?(query) + path_for_query(query).exist? + end - def self.path_for_query(query) - # Repeating Hbc.all_tokens is very slow for operations such as - # brew cask list, but memoizing the value might cause breakage - # elsewhere, given that installation and tap status is permitted - # to change during the course of an invocation. - token_with_tap = Hbc.all_tokens.find { |t| t.split("/").last == query.sub(%r{\.rb$}i, "") } - if token_with_tap - user, repo, token = token_with_tap.split("/") - Tap.fetch(user, repo).cask_dir.join("#{token}.rb") - else - Hbc.default_tap.cask_dir.join(query.sub(%r{(\.rb)?$}i, ".rb")) - end - end + def self.path_for_query(query) + # Repeating Hbc.all_tokens is very slow for operations such as + # brew cask list, but memoizing the value might cause breakage + # elsewhere, given that installation and tap status is permitted + # to change during the course of an invocation. + token_with_tap = Hbc.all_tokens.find { |t| t.split("/").last == query.sub(%r{\.rb$}i, "") } + if token_with_tap + user, repo, token = token_with_tap.split("/") + Tap.fetch(user, repo).cask_dir.join("#{token}.rb") + else + Hbc.default_tap.cask_dir.join(query.sub(%r{(\.rb)?$}i, ".rb")) + end + end - attr_reader :token + attr_reader :token - def initialize(token) - @token = token - end + def initialize(token) + @token = token + end - def load - path = self.class.path_for_query(token) - Hbc::Source::PathSlashOptional.new(path).load - end + def load + path = self.class.path_for_query(token) + PathSlashOptional.new(path).load + end - def to_s - # stringify to fully-resolved location - self.class.path_for_query(token).expand_path.to_s + def to_s + # stringify to fully-resolved location + self.class.path_for_query(token).expand_path.to_s + end + end end end |
