ruby optionparser

ruby - Cómo generar OptionParser requiere argumentos



(1)

El código a continuación funciona, pero estoy elevando manualmente los errores de argumento para los argumentos requeridos usando fetch , cuando quiero construir los argumentos requeridos en la sintaxis OptionParser nativa para los parámetros requeridos:

# ocra script.rb -- --type=value options = {} OptionParser.new do |opts| opts.banner = "Usage: example.rb [options]" opts.on("--type [TYPE]",String, [:gl, :time], "Select Exception file type (gl, time)") do |t| options["type"] = t end opts.on("--company [TYPE]",String, [:jaxon, :doric], "Select Company (jaxon, doric)") do |t| options["company"] = t end end.parse! opts = {} opts[''type''] = options.fetch(''type'') do raise ArgumentError,"no ''type'' option specified as a parameter (gl or time)" end opts[''company''] = options.fetch(''company'') do raise ArgumentError,"no ''company'' option specified as a parameter (doric or jaxon)" end