Class Gem::Commands::RdocCommand
In: lib/rubygems/commands/rdoc_command.rb
Parent: Gem::Command

Methods

execute   new  

Included Modules

Gem::VersionOption

Public Class methods

[Source]

    # File lib/rubygems/commands/rdoc_command.rb, line 8
 8:   def initialize
 9:     super 'rdoc', 'Generates RDoc for pre-installed gems',
10:           :version => Gem::Requirement.default,
11:           :include_rdoc => true, :include_ri => true
12: 
13:     add_option('--all',
14:                'Generate RDoc/RI documentation for all',
15:                'installed gems') do |value, options|
16:       options[:all] = value
17:     end
18: 
19:     add_option('--[no-]rdoc',
20:                'Include RDoc generated documents') do |value, options|
21:       options[:include_rdoc] = value
22:     end
23: 
24:     add_option('--[no-]ri',
25:                'Include RI generated documents') do |value, options|
26:       options[:include_ri] = value
27:     end
28: 
29:     add_version_option
30:   end

Public Instance methods

[Source]

    # File lib/rubygems/commands/rdoc_command.rb, line 44
44:   def execute
45:     if options[:all] then
46:       specs = Gem::SourceIndex.from_installed_gems.collect { |name, spec|
47:         spec
48:       }
49:     else
50:       gem_name = get_one_gem_name
51:       dep = Gem::Dependency.new gem_name, options[:version]
52:       specs = Gem::SourceIndex.from_installed_gems.search dep
53:     end
54: 
55:     if specs.empty?
56:       fail "Failed to find gem #{gem_name} to generate RDoc for #{options[:version]}"
57:     end
58: 
59:     if options[:include_ri]
60:       specs.each do |spec|
61:         Gem::DocManager.new(spec).generate_ri
62:       end
63: 
64:       Gem::DocManager.update_ri_cache
65:     end
66: 
67:     if options[:include_rdoc]
68:       specs.each do |spec|
69:         Gem::DocManager.new(spec).generate_rdoc
70:       end
71:     end
72: 
73:     true
74:   end

[Validate]