diff options
author | dave <dave@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-08-02 02:59:17 +0000 |
---|---|---|
committer | dave <dave@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-08-02 02:59:17 +0000 |
commit | 47427428802ebfdcc077145b4efae2a3f38572bf (patch) | |
tree | 0a085b06384fb0af81c8cec53b1751107fe4dc39 /lib/rdoc/parsers | |
parent | 493a7a3b63f682b9bbaa455651e1a570ef919b0f (diff) |
Bugfix: looping on some toplevel symbols. Added SWIG support
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@6731 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rdoc/parsers')
-rw-r--r-- | lib/rdoc/parsers/parse_c.rb | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/rdoc/parsers/parse_c.rb b/lib/rdoc/parsers/parse_c.rb index 31c1106406..c42fbb2e11 100644 --- a/lib/rdoc/parsers/parse_c.rb +++ b/lib/rdoc/parsers/parse_c.rb @@ -254,7 +254,8 @@ module RDoc handle_class_module(var_name, "module", class_name, nil, nil) end - @body.scan(/(\w+)\s* = \s*rb_define_class + # The '.' lets us handle SWIG-generated files + @body.scan(/([\w\.]+)\s* = \s*rb_define_class \( \s*"(\w+)", \s*(\w+)\s* @@ -280,7 +281,7 @@ module RDoc handle_class_module(var_name, "module", class_name, nil, in_module) end - @body.scan(/(\w+)\s* = \s*rb_define_class_under + @body.scan(/([\w\.]+)\s* = \s*rb_define_class_under \( \s*(\w+), \s*"(\w+)", @@ -304,7 +305,7 @@ module RDoc module_function | private_method ) - \(\s*(\w+), + \(\s*([\w\.]+), \s*"([^"]+)", \s*(?:RUBY_METHOD_FUNC\(|VALUEFUNC\()?(\w+)\)?, \s*(-?\w+)\s*\) |