Class: Gem::Uninstaller
- Inherits:
-
Object
- Object
- Gem::Uninstaller
- Defined in:
- lib/generators/templates/application/common/merb_thor/gem_ext.rb
Class Method Summary collapse
- ._uninstall(source_index, name, op, version) ⇒ Object
- ._uninstall_others(source_index, name, version) ⇒ Object
- ._with_silent_ui ⇒ Object
Class Method Details
._uninstall(source_index, name, op, version) ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/generators/templates/application/common/merb_thor/gem_ext.rb', line 39 def self._uninstall(source_index, name, op, version) unless source_index.find_name(name, "#{op} #{version}").empty? uninstaller = Gem::Uninstaller.new( name, :version => "#{op} #{version}", :install_dir => Dir.pwd / "gems", :all => true, :ignore => true ) _with_silent_ui { uninstaller.uninstall } end end |
._uninstall_others(source_index, name, version) ⇒ Object
52 53 54 55 |
# File 'lib/generators/templates/application/common/merb_thor/gem_ext.rb', line 52 def self._uninstall_others(source_index, name, version) _uninstall(source_index, name, "<", version) _uninstall(source_index, name, ">", version) end |
._with_silent_ui ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/generators/templates/application/common/merb_thor/gem_ext.rb', line 25 def self._with_silent_ui ui = Gem::DefaultUserInteraction.ui def ui.say(str) puts "- #{str}" end yield class << Gem::DefaultUserInteraction.ui remove_method :say end end |