class Gem::Commands::QueryCommand
def execute
def execute exit_code = 0 if options[:args].to_a.empty? and options[:name].source.empty? name = options[:name] no_name = true elsif !options[:name].source.empty? name = Array(options[:name]) else args = options[:args].to_a name = options[:exact] ? args : args.map{|arg| /#{arg}/i } end prerelease = options[:prerelease] unless options[:installed].nil? then if no_name then alert_error "You must specify a gem name" exit_code |= 4 elsif name.count > 1 alert_error "You must specify only ONE gem!" exit_code |= 4 else installed = installed? name.first, options[:version] installed = !installed unless options[:installed] if installed then say "true" else say "false" exit_code |= 1 end end terminate_interaction exit_code end names = Array(name) names.each { |n| show_gems n, prerelease } end