class Convoy::GlobalPreParser
Attributes
setup[R]
Public Class Methods
new(setup)
click to toggle source
# File lib/convoy/global_pre_parser.rb, line 5 def initialize(setup) @setup = setup end
Public Instance Methods
parse(cli_options)
click to toggle source
# File lib/convoy/global_pre_parser.rb, line 9 def parse(cli_options) AutoOptions.new(parse_global_options(cli_options)) end
Private Instance Methods
add_setup_options_to(parser, context = [])
click to toggle source
# File lib/convoy/global_pre_parser.rb, line 30 def add_setup_options_to(parser, context = []) setup.options_for(context).each do |name, opts| parser.opt name, opts[:desc] || "", opts end parser end
init_parser(stop_words)
click to toggle source
# File lib/convoy/global_pre_parser.rb, line 24 def init_parser(stop_words) Trollop::Parser.new.tap do |parser| parser.stop_on(stop_words) end end
parse_global_options(cli_options, context = [])
click to toggle source
# File lib/convoy/global_pre_parser.rb, line 15 def parse_global_options(cli_options, context = []) stop_words = setup.command_names_for(context).map(&:to_s) parser = init_parser(stop_words) parser = add_setup_options_to(parser, context) parser.version(setup.version) #set the version if it was provided parser.help_formatter(Convoy::Formatter::DefaultHelpFormatter.new(setup, context)) parsed_options = parse_options_string(parser, cli_options) end
parse_options_string(parser, cli_options)
click to toggle source
# File lib/convoy/global_pre_parser.rb, line 37 def parse_options_string(parser, cli_options) Trollop::with_standard_exception_handling(parser) do parser.parse(cli_options) end end