Method: Argvector#parse_preoptions

Defined in:
lib/supplemental/facets/argvector.rb

#parse_preoptions(args) ⇒ Object

Parse preoptions. A “preoption” is one that occurs before the first operans (if any).



253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
# File 'lib/supplemental/facets/argvector.rb', line 253

def parse_preoptions(args)
  ##args = args.dup
  args = multi_flag(args) #unless opts.include?(:simple)

  flags = []
  while args.first =~ /^-/
    key = args.shift
    key.sub!(/^-{1,2}/,'')
    if key.index('=')
      key, val = key.split('=')
    elsif a = arity[key]
      val = args.slice!(0,a)
      val = val.first if a == 1
    else
      val = true
    end
    flags << [key, val]
  end

  flags = format_options(flags)

  return flags, args
end