mirror of
https://github.com/donl/homebrew-cask-versions.git
synced 2026-07-17 06:16:47 -06:00
form "<user>/<repo>/<cask>" may be used on cmdline, matching homebrew - refactor Cask::Source::Tap into Cask::Source::Tapped, removing code, only handling unqualified cask names here now (ie no slash) - create Cask::Source::TappedQualified, handling "<user>-<repo>/<cask>" form as before, and new form "<user>/<repo>/<cask>", for the case that the relevant tap already exists - create Cask::Source::UntappedQualified, handling both command-line forms as above, but implicitly creating adding a new tap if it does not already exist - add module Cask::QualifiedCaskName for utility functions on qualified Cask names
27 lines
618 B
Ruby
27 lines
618 B
Ruby
module Cask::Source; end
|
|
|
|
require 'cask/source/gone'
|
|
require 'cask/source/path'
|
|
require 'cask/source/tapped_qualified'
|
|
require 'cask/source/untapped_qualified'
|
|
require 'cask/source/tapped'
|
|
require 'cask/source/uri'
|
|
|
|
module Cask::Source
|
|
def self.sources
|
|
[
|
|
Cask::Source::URI,
|
|
Cask::Source::Path,
|
|
Cask::Source::TappedQualified,
|
|
Cask::Source::UntappedQualified,
|
|
Cask::Source::Tapped,
|
|
Cask::Source::Gone,
|
|
]
|
|
end
|
|
|
|
def self.for_query(query)
|
|
source = sources.find { |s| s.me?(query) }
|
|
raise CaskUnavailableError.new(query) unless source
|
|
source.new(query)
|
|
end
|
|
end
|