summaryrefslogtreecommitdiff
path: root/lib/rubygems/commands/search_command.rb
blob: 96da19c0f7db6a6a47415c99bc7d0217b69de16c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
require 'rubygems/command'
require 'rubygems/commands/query_command'

module Gem
  module Commands

    class SearchCommand < QueryCommand

      def initialize
        super(
          'search',
          'Display all gems whose name contains STRING'
        )
        remove_option('--name-matches')
      end

      def arguments # :nodoc:
        "STRING        fragment of gem name to search for"
      end

      def defaults_str # :nodoc:
        "--local --no-details"
      end

      def usage # :nodoc:
        "#{program_name} [STRING]"
      end

      def execute
        string = get_one_optional_argument
        options[:name] = /#{string}/i
        super
      end
    end
    
  end
end