Generators may need to return specific subclasses depending on the options they are passed. Because of this we create them using a factory
# File rdoc/generators/html_generator.rb, line 1160 def HTMLGenerator.for(options) AllReferences::reset HtmlMethod::reset if options.all_one_file HTMLGeneratorInOne.new(options) else HTMLGenerator.new(options) end end
convert a target url to one that is relative to a given path
# File rdoc/generators/html_generator.rb, line 1138 def HTMLGenerator.gen_url(path, target) from = File.dirname(path) to, to_file = File.split(target) from = from.split("/") to = to.split("/") while from.size > 0 and to.size > 0 and from[0] == to[0] from.shift to.shift end from.fill("..") from.concat(to) from << to_file File.join(*from) end
Build the initial indices and output objects based on an array of TopLevel objects containing the extracted information.
# File rdoc/generators/html_generator.rb, line 1189 def generate(toplevels) @toplevels = toplevels @files = [] @classes = [] write_style_sheet gen_sub_directories() build_indices generate_html end