class JsDuck::App
The main application logic of jsduck
Public Class Methods
new(opts)
click to toggle source
Initializes app with JsDuck::OptionsRecord object
# File lib/jsduck/app.rb, line 14 def initialize(opts) @opts = opts end
Public Instance Methods
run()
click to toggle source
Main App
logic. Returns application exit code.
# File lib/jsduck/app.rb, line 20 def run parse init_assets if @opts.export generate_export else generate_web_page end if @opts.warnings_exit_nonzero && Logger.warnings_logged? return 2 else return 0 end end
Private Instance Methods
generate_export()
click to toggle source
# File lib/jsduck/app.rb, line 53 def generate_export ExportWriter.new(@relations, @assets, @opts).write end
generate_web_page()
click to toggle source
# File lib/jsduck/app.rb, line 57 def generate_web_page Web::Writer.new(@relations, @assets, @parsed_files, @opts).write end
init_assets()
click to toggle source
# File lib/jsduck/app.rb, line 45 def init_assets # Initialize guides, videos, examples, ... @assets = Assets.new(@relations, @opts) # HACK: Give access to assets from @aside tag TagRegistry.get_by_name(:aside).assets = @assets end
parse()
click to toggle source
# File lib/jsduck/app.rb, line 40 def parse @parsed_files = BatchParser.parse(@opts) @relations = BatchProcessor.process(@parsed_files, @opts) end