def run(*args)
log.show_progress = true
if args.size == 0 || !args.first.nil?
return unless parse_arguments(*args)
end
checksums = nil
if use_cache
Registry.load
checksums = Registry.checksums.dup
end
YARD.parse(files, excluded)
Registry.save(use_cache) if save_yardoc
if generate
run_generate(checksums)
copy_assets
elsif list
print_list
end
if !list && statistics && log.level < Logger::ERROR
Registry.load_all
log.enter_level(Logger::ERROR) do
Stats.new(false).run(*args)
end
end
true
ensure
log.show_progress = false
end