class YARD::CLI::Command
@since 0.6.0
@abstract
the option parser
Abstract base class for CLI utilities. Provides some helper methods for
def self.run(*args) new.run(*args) end
- See: #run -
def self.run(*args) new.run(*args) end
def common_options(opts)
-
(void)
-
Parameters:
-
opts
(OptionParser
) -- the option parser object
def common_options(opts) opts.separator "" opts.separator "Other options:" opts.on('-e', '--load FILE', 'A Ruby script to load before running command.') do |file| load_script(file) end opts.on('--plugin PLUGIN', 'Load a YARD plugin (gem with `yard-\' prefix)') do |name| # Not actually necessary to load here, this is done at boot in YARD::Config.load_plugins # YARD::Config.load_plugin(name) end opts.on('--legacy', 'Use old style Ruby parser and handlers. ', ' Always on in 1.8.x.') do YARD::Parser::SourceParser.parser_type = :ruby18 end opts.on('--safe', 'Enable safe mode for this instance') do # Parsed in YARD::Config.load end opts.on_tail('-q', '--quiet', 'Show no warnings.') { log.level = Logger::ERROR } opts.on_tail('--verbose', 'Show more information.') { log.level = Logger::INFO } opts.on_tail('--debug', 'Show debugging information.') { log.level = Logger::DEBUG } opts.on_tail('--backtrace', 'Show stack traces') { log.show_backtraces = true } opts.on_tail('-v', '--version', 'Show version.') { log.puts "yard #{YARD::VERSION}"; exit } opts.on_tail('-h', '--help', 'Show this help.') { log.puts opts; exit } end
def description; '' end
def description; '' end
def load_script(file)
- Since: - 0.6.2
Parameters:
-
file
(String
) -- the path to the script to load
def load_script(file) return if YARD::Config.options[:safe_mode] load(file) rescue LoadError => load_exception log.error "The file `#{file}' could not be loaded:\n#{load_exception}" exit 1 end
def parse_options(opts, args)
-
(void)
-
Parameters:
-
args
(Array
) -- the arguments passed from input. This -
opts
(OptionParser
) -- the option parser object
def parse_options(opts, args) opts.parse!(args) rescue OptionParser::ParseError => err unrecognized_option(err) args.shift if args.first && args.first[0, 1] != '-' retry end
def unrecognized_option(err)
-
err
(OptionParser::ParseError
) -- the exception raised by the
def unrecognized_option(err) log.warn "Unrecognized/#{err.message}" end