tap: add cask methods.

Closes #562.
This commit is contained in:
AnastasiaSulyagina 2016-07-20 21:15:20 +03:00 committed by Mike McQuaid
parent 0302a6bc7c
commit 05daa05747

View File

@ -72,6 +72,7 @@ class Tap
def clear_cache
@remote = nil
@formula_dir = nil
@cask_dir = nil
@formula_files = nil
@alias_dir = nil
@alias_files = nil
@ -304,6 +305,11 @@ class Tap
@formula_dir ||= [path/"Formula", path/"HomebrewFormula", path].detect(&:directory?)
end
# path to the directory of all casks for caskroom/cask {Tap}.
def cask_dir
@cask_dir ||= [path/"Casks", path].detect(&:directory?)
end
# an array of all {Formula} files of this {Tap}.
def formula_files
@formula_files ||= if formula_dir
@ -319,7 +325,7 @@ class Tap
def formula_file?(file)
file = Pathname.new(file) unless file.is_a? Pathname
file = file.expand_path(path)
file.extname == ".rb" && file.parent == formula_dir
file.extname == ".rb" && (file.parent == formula_dir || file.parent == cask_dir)
end
# an array of all {Formula} names of this {Tap}.
@ -562,6 +568,14 @@ class CoreTap < Tap
end
end
# @private
def cask_dir
@cask_dir ||= begin
self.class.ensure_installed!
super
end
end
# @private
def alias_dir
@alias_dir ||= begin