diff options
author | dave <dave@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-12-24 04:24:29 +0000 |
---|---|---|
committer | dave <dave@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-12-24 04:24:29 +0000 |
commit | f0346bd249ae29cdf4d9c2e88b09e63c41ff1ce8 (patch) | |
tree | c945829da8f2e7555a6b4cb7e11601dfafdc4d78 /lib/rdoc/ri/ri_reader.rb | |
parent | 52975bb7a77b3a6409e50609b4baeafade035b3d (diff) |
Forgot to save buffer.... sigh
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rdoc/ri/ri_reader.rb')
-rw-r--r-- | lib/rdoc/ri/ri_reader.rb | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/rdoc/ri/ri_reader.rb b/lib/rdoc/ri/ri_reader.rb index dd647b3f89..ddce38f101 100644 --- a/lib/rdoc/ri/ri_reader.rb +++ b/lib/rdoc/ri/ri_reader.rb @@ -52,5 +52,19 @@ module RI File.open(path) {|f| RI::Description.deserialize(f) } end + # return the names of all classes and modules + def class_names + res = [] + find_classes_in(res, @cache.toplevel) + end + + def find_classes_in(res, klass) + classes = klass.classes_and_modules + for c in classes + res << c.name + find_classes_in(res, c) + end + res + end end end |