From c1dc38c6bbfb9d98b2c2148c5588ac4fb9a3c38b Mon Sep 17 00:00:00 2001 From: matz Date: Wed, 12 Mar 2008 18:13:48 +0000 Subject: * lib/irb/cmd/help.rb: should be updated for new ri structure. [ruby-core:15825] * lib/rdoc/ri/driver.rb (RDoc::initialize): allow options to be optional. * lib/rdoc/ri/driver.rb (RDoc::class_cache): map_dirs may be empty. * lib/rdoc/ri/driver.rb (RDoc::get_info_for): revive get_info_for method. maybe broken. * lib/rdoc/ri/util.rb (RDoc::initialize): should not use RiError no more. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@15761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/rdoc/ri/driver.rb | 12 ++++++++++-- lib/rdoc/ri/util.rb | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) (limited to 'lib/rdoc') diff --git a/lib/rdoc/ri/driver.rb b/lib/rdoc/ri/driver.rb index 02271de3d..b254d3574 100644 --- a/lib/rdoc/ri/driver.rb +++ b/lib/rdoc/ri/driver.rb @@ -200,7 +200,10 @@ Options may also be set in the 'RI' environment variable. ri.run end - def initialize(options) + def initialize(options={}) + options[:formatter] ||= RDoc::RI::Formatter.for('plain') + options[:use_stdout] ||= !$stdout.tty? + options[:width] ||= 72 @names = options[:names] @class_cache_name = 'classes' @@ -226,7 +229,7 @@ Options may also be set in the 'RI' environment variable. end.max up_to_date = (File.exist?(class_cache_file_path) and - newest < File.mtime(class_cache_file_path)) + newest and newest < File.mtime(class_cache_file_path)) @class_cache = if up_to_date then load_cache_for @class_cache_name @@ -344,6 +347,11 @@ Options may also be set in the 'RI' environment variable. YAML.load File.read(path).gsub(/ \!ruby\/(object|struct):(RDoc::RI|RI|SM).*/, '') end + def get_info_for(arg) + @names = [arg] + run + end + def run if @names.empty? then @display.list_known_classes class_cache.keys.sort diff --git a/lib/rdoc/ri/util.rb b/lib/rdoc/ri/util.rb index c4e6af47f..34277f259 100644 --- a/lib/rdoc/ri/util.rb +++ b/lib/rdoc/ri/util.rb @@ -62,7 +62,7 @@ class RDoc::RI::NameDescriptor end if @method_name =~ /::|\.|#/ or !tokens.empty? - raise RiError.new("Bad argument: #{arg}") + raise RDoc::RI::Error.new("Bad argument: #{arg}") end if separator && separator != '.' @is_class_method = separator == "::" -- cgit