Sha256: 16e6728d988f37acbb12c833fdb84c7ccbcc304ebb1389367f6e5745ba47b8b0
Contents?: true
Size: 681 Bytes
Versions: 4
Compression:
Stored size: 681 Bytes
Contents
module Hem module Helper def convert_args task_name, args, arg_list original_args = args.dup task_args = [] arg_list.each do |_, options| if args.empty? if !options[:optional] raise ::Hem::MissingArgumentsError.new(task_name, original_args) else task_args << options[:default] end elsif options[:as] == Array task_args << args.dup args.clear else task_args << args.shift end end unless args.empty? raise ::Hem::InvalidCommandOrOpt.new(args.join(' ')) end task_args end end end self.extend Hem::Helper
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
hem-1.2.4 | lib/hem/helper/argument_parser.rb |
hem-1.2.3 | lib/hem/helper/argument_parser.rb |
hem-1.2.2 | lib/hem/helper/argument_parser.rb |
hem-1.2.1 | lib/hem/helper/argument_parser.rb |