method
display_class
v1_9_2_180 -
Show latest stable
- Class:
RDoc::RI::Driver
display_class(name)public
# File lib/rdoc/ri/driver.rb, line 558
def display_class name
return if name =~ /#|\./
klasses = []
includes = []
found = @stores.map do |store|
begin
klass = store.load_class name
klasses << klass
includes << [klass.includes, store] if klass.includes
[store, klass]
rescue Errno::ENOENT
end
end.compact
return if found.empty?
also_in = []
includes.reject! do |modules,| modules.empty? end
out = RDoc::Markup::Document.new
add_class out, name, klasses
add_includes out, includes
found.each do |store, klass|
comment = klass.comment
class_methods = store.class_methods[klass.full_name]
instance_methods = store.instance_methods[klass.full_name]
attributes = store.attributes[klass.full_name]
if comment.empty? and !(instance_methods or class_methods) then
also_in << store
next
end
add_from out, store
unless comment.empty? then
out << RDoc::Markup::Rule.new(1)
out << comment
end
if class_methods or instance_methods or not klass.constants.empty? then
out << RDoc::Markup::Rule.new
end
unless klass.constants.empty? then
out << RDoc::Markup::Heading.new(1, "Constants:")
out << RDoc::Markup::BlankLine.new
list = RDoc::Markup::List.new :NOTE
constants = klass.constants.sort_by { |constant| constant.name }
list.push(*constants.map do |constant|
parts = constant.comment.parts if constant.comment
parts << RDoc::Markup::Paragraph.new('[not documented]') if
parts.empty?
RDoc::Markup::ListItem.new(constant.name, *parts)
end)
out << list
end
add_method_list out, class_methods, 'Class methods'
add_method_list out, instance_methods, 'Instance methods'
add_method_list out, attributes, 'Attributes'
out << RDoc::Markup::BlankLine.new
end
add_also_in out, also_in
display out
end Related methods
- Instance methods
- add_also_in
- add_class
- add_from
- add_includes
- add_method_list
- ancestors_of
- class_cache
- classes
- complete
- display
- display_class
- display_method
- display_name
- display_names
- expand_class
- expand_name
- find_methods
- formatter
- interactive
- list_known_classes
- list_methods_matching
- load_method
- load_methods_matching
- method_type
- page
- paging?
- parse_name
- run
- setup_pager
- Class methods
- default_options
- dump
- new
- process_args
- run