Sha256: 8fa83bbdb5109daedb11471a16b193c07078c9b9232d3601a932dad7a6a82a6d

Contents?: true

Size: 795 Bytes

Versions: 6

Compression:

Stored size: 795 Bytes

Contents

module UltraCommandLine
  module Commands

    module CommandLineParser

      def params_hash
        parse_cmd_line_options.to_hash
      end

      def extra_arguments
        parse_cmd_line_options.to_hash
        @extra_arguments ||= []
      end

      private

      def parse_cmd_line_options(options_definition = UltraCommandLine.new_slop_options)
        parser = build_parser(options_definition)
        hash = parser.parse cmd_line_args
        # @cmd_line_args = cmd_line_args
        @extra_arguments = parser.arguments
        hash
      end

      def build_parser(options_definition)
        options_definition.banner = banner
        options.each { |option| option.to_slop_options options_definition }
        Slop::Parser.new options_definition
      end

    end

  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
ultra_command_line-0.4.13 lib/ultra_command_line/commands/command_line_parser.rb
ultra_command_line-0.4.12 lib/ultra_command_line/commands/command_line_parser.rb
ultra_command_line-0.4.10 lib/ultra_command_line/commands/command_line_parser.rb
ultra_command_line-0.4.9 lib/ultra_command_line/commands/command_line_parser.rb
ultra_command_line-0.4.8 lib/ultra_command_line/commands/command_line_parser.rb
ultra_command_line-0.4.7 lib/ultra_command_line/commands/command_line_parser.rb