method
ancestors_of
v2_2_9 -
Show latest stable
- Class:
RDoc::RI::Driver
ancestors_of(klass)public
Returns ancestor classes of klass
# File lib/rdoc/ri/driver.rb, line 571
def ancestors_of klass
ancestors = []
unexamined = [klass]
seen = []
loop do
break if unexamined.empty?
current = unexamined.shift
seen << current
stores = classes[current]
break unless stores and not stores.empty?
klasses = stores.map do |store|
store.ancestors[current]
end.flatten.uniq
klasses = klasses - seen
ancestors.concat klasses
unexamined.concat klasses
end
ancestors.reverse
end Related methods
- Instance methods
- add_also_in
- add_class
- add_extends
- add_extension_modules
- add_extension_modules_multiple
- add_extension_modules_single
- add_from
- add_includes
- add_method
- add_method_documentation
- add_method_list
- ancestors_of
- class_cache
- class_document
- class_document_comment
- class_document_constants
- classes
- classes_and_includes_and_extends_for
- complete
- complete_klass
- complete_method
- display
- display_class
- display_method
- display_name
- display_names
- display_page
- display_page_list
- expand_class
- expand_name
- filter_methods
- find_methods
- find_pager_jruby
- find_store
- formatter
- in_path?
- interactive
- list_known_classes
- list_methods_matching
- load_method
- load_methods_matching
- lookup_method
- method_document
- method_type
- name_regexp
- page
- paging?
- parse_name
- render_class
- render_method
- render_method_arguments
- render_method_comment
- render_method_superclass
- run
- setup_pager
- start_server
- Class methods
- default_options
- dump
- new
- process_args
- run