Display one object @since 0.8.6
# File lib/yard/cli/display.rb, line 6 def description; 'Displays a formatted object' end
@return [String] the output data for all formatted objects
# File lib/yard/cli/display.rb, line 26 def format_objects @objects.inject([]) do |arr, obj| arr.push obj.format(options) end.join("\n") end
# File lib/yard/cli/display.rb, line 60 def output_options(opts) super(opts) opts.on('-l', '--layout [LAYOUT]', 'Wraps output in layout template (good for HTML)') do |layout| @layout = layout || 'layout' end end
Parses commandline options. @param [Array<String>] args each tokenized argument
# File lib/yard/cli/display.rb, line 45 def parse_arguments(*args) opts = OptionParser.new opts.banner = "Usage: yard display [options] OBJECT [OTHER OBJECTS]" general_options(opts) output_options(opts) parse_options(opts, args) Registry.load @objects = args.map {|o| Registry.at(o) } # validation return false if @objects.any? {|o| o.nil? } verify_markup_options end
Runs the commandline utility, parsing arguments and displaying an object from the {Registry}.
@param [Array<String>] args the list of arguments. @return [void]
# File lib/yard/cli/display.rb, line 20 def run(*args) return unless parse_arguments(*args) log.puts wrap_layout(format_objects) end
# File lib/yard/cli/display.rb, line 32 def wrap_layout(contents) return contents unless @layout opts = options.merge( :contents => contents, :object => @objects.first, :objects => @objects ) args = [options.template, @layout, options.format] Templates::Engine.template(*args).run(opts) end
Generated with the Darkfish Rdoc Generator 2.