display_class_info(klass)
public
Display information about klass. Fetches additional information
from ri_reader as necessary.
Show source
def display_class_info(klass)
page do
superclass = klass.superclass
if superclass
superclass = " < " + superclass
else
superclass = ""
end
@formatter.draw_line(klass.display_name + ": " +
klass.full_name + superclass)
display_flow(klass.comment)
@formatter.draw_line
unless klass.includes.empty?
@formatter.blankline
@formatter.display_heading("Includes:", 2, "")
incs = []
klass.includes.each do |inc|
incs << inc.name
end
@formatter.wrap(incs.sort.join(', '))
end
unless klass.constants.empty?
@formatter.blankline
@formatter.display_heading("Constants:", 2, "")
constants = klass.constants.sort_by { |constant| constant.name }
constants.each do |constant|
@formatter.wrap "#{constant.name} = #{constant.value}"
if constant.comment then
@formatter.indent do
@formatter.display_flow constant.comment
end
else
@formatter.break_to_newline
end
end
end
unless klass.attributes.empty? then
@formatter.blankline
@formatter.display_heading 'Attributes:', 2, ''
attributes = klass.attributes.sort_by { |attribute| attribute.name }
attributes.each do |attribute|
if attribute.comment then
@formatter.wrap "#{attribute.name} (#{attribute.rw}):"
@formatter.indent do
@formatter.display_flow attribute.comment
end
else
@formatter.wrap "#{attribute.name} (#{attribute.rw})"
@formatter.break_to_newline
end
end
end
return display_class_method_list(klass)
end
end