* lib/rdoc.rb: Update to RDoc 3.6.1, allows OpenSSL::Digest to be

found.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
drbrain 2011-05-15 23:00:21 +00:00
parent 366f2c1120
commit f4b52722aa
5 changed files with 59 additions and 25 deletions

View file

@ -218,13 +218,22 @@ class RDoc::Parser::C < RDoc::Parser
handle_class_module(var_name, "module", class_name, nil, in_module)
end
@content.scan(/([\w\.]+)\s* = \s*rb_define_class_under\s*
\(
\s*(\w+),
\s*"(\w+)",
\s*([\w\*\s\(\)\.\->]+)\s* # for SWIG
\s*\)/mx) do |var_name, in_module, class_name, parent|
handle_class_module(var_name, "class", class_name, parent, in_module)
@content.scan(/([\w\.]+)\s* = # var_name
\s*rb_define_class_under\s*
\(
\s* (\w+), # under
\s* "(\w+)", # class_name
\s*
(?:
([\w\*\s\(\)\.\->]+) | # parent_name
rb_path2class\("([\w:]+)"\) # path
)
\s*
\)
/mx) do |var_name, under, class_name, parent_name, path|
parent = path || parent_name
handle_class_module var_name, 'class', class_name, parent, under
end
@content.scan(/([\w\.]+)\s* = \s*rb_singleton_class\s*
@ -650,8 +659,8 @@ class RDoc::Parser::C < RDoc::Parser
enclosure = @classes[in_module] || @@enclosure_classes[in_module]
if enclosure.nil? and enclosure = @known_classes[in_module] then
type = /^rb_m/ =~ in_module ? "module" : "class"
handle_class_module in_module, type, enclosure, nil, nil
enc_type = /^rb_m/ =~ in_module ? "module" : "class"
handle_class_module in_module, enc_type, enclosure, nil, nil
enclosure = @classes[in_module]
end
@ -675,17 +684,21 @@ class RDoc::Parser::C < RDoc::Parser
end
cm = enclosure.add_class RDoc::NormalClass, class_name, parent_name
@stats.add_class cm
else
cm = enclosure.add_module RDoc::NormalModule, class_name
@stats.add_module cm
end
cm.record_location enclosure.top_level
find_class_comment cm.full_name, cm
case cm
when RDoc::NormalClass
@stats.add_class cm
when RDoc::NormalModule
@stats.add_module cm
end
@classes[var_name] = cm
@@enclosure_classes[var_name] = cm
@known_classes[var_name] = cm.full_name