| Class | Gem::Commands::RdocCommand |
| In: |
lib/rubygems/commands/rdoc_command.rb
|
| Parent: | Gem::Command |
# 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
# 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