class Doc::Merger
Attributes
tasks[R]
Public Class Methods
new(documentor, options)
click to toggle source
Calls superclass method
Doc::BaseTask::new
# File lib/doc/merger.rb, line 4 def initialize(documentor, options) super @tasks = options[:tasks].uniq @config = { :title => title, :dir_name => dir_name, :tasks => tasks.map(&:config), } end
Public Instance Methods
build()
click to toggle source
# File lib/doc/merger.rb, line 32 def build $stderr.puts "Merging #{title}" succeded_tasks = tasks.reject(&:failed?) task_titles = succeded_tasks.map{ |task| task.title.gsub(',', '_') } task_urls = succeded_tasks.map{ |task| task_url(task) } cmd = Command.new('sdoc-merge', "_#{loaded_gem_version('sdoc')}_") cmd.add "--op=#{doc_dir}" cmd.add "--title=#{title}" cmd.add "--names=#{task_titles.join(',')}" cmd.add "--urls=#{task_urls.join(' ')}" cmd.add *succeded_tasks.map(&:doc_dir) cmd.run end
progress_message()
click to toggle source
# File lib/doc/merger.rb, line 19 def progress_message title end
run()
click to toggle source
Calls superclass method
Doc::BaseTask#run
# File lib/doc/merger.rb, line 23 def run tasks.with_progress(progress_message).each do |task| Progress.note = task.dir_name task.run end super(failed_state_changed? || tasks.any?(&:succeeded?)) write_failed_state if succeeded? end
symlink_children_to(path)
click to toggle source
# File lib/doc/merger.rb, line 53 def symlink_children_to(path) tasks.reject(&:failed?).each do |task| task.symlink_to(path) end end
symlink_to(path)
click to toggle source
Calls superclass method
Doc::BaseTask#symlink_to
# File lib/doc/merger.rb, line 59 def symlink_to(path) symlink_children_to(path) super end
task_url(task)
click to toggle source
# File lib/doc/merger.rb, line 49 def task_url(task) task.doc_dir.relative_path_from(doc_dir) end