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