2025-02-24 14:49:33 -08:00
|
|
|
# typed: strict
|
2023-03-09 22:33:29 +09:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module Cask
|
|
|
|
class Uninstall
|
2025-02-24 14:49:33 -08:00
|
|
|
sig { params(casks: ::Cask::Cask, binaries: T::Boolean, force: T::Boolean, verbose: T::Boolean).void }
|
|
|
|
def self.uninstall_casks(*casks, binaries: false, force: false, verbose: false)
|
2023-03-09 22:33:29 +09:00
|
|
|
require "cask/installer"
|
|
|
|
|
|
|
|
casks.each do |cask|
|
|
|
|
odebug "Uninstalling Cask #{cask}"
|
|
|
|
|
|
|
|
raise CaskNotInstalledError, cask if !cask.installed? && !force
|
|
|
|
|
2024-03-07 16:20:20 +00:00
|
|
|
Installer.new(cask, binaries:, force:, verbose:).uninstall
|
2023-03-09 22:33:29 +09:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|