MCPcopy
hub / github.com/docopt/docopt / parse_argv

Function parse_argv

docopt.py:430–451  ·  view source on GitHub ↗

Parse command-line argument vector. If options_first: argv ::= [ long | shorts ]* [ argument ]* [ '--' [ argument ]* ] ; else: argv ::= [ long | shorts | argument ]* [ '--' [ argument ]* ] ;

(tokens, options, options_first=False)

Source from the content-addressed store, hash-verified

428
429
430def parse_argv(tokens, options, options_first=False):
431 """Parse command-line argument vector.
432
433 If options_first:
434 argv ::= [ long | shorts ]* [ argument ]* [ '--' [ argument ]* ] ;
435 else:
436 argv ::= [ long | shorts | argument ]* [ '--' [ argument ]* ] ;
437
438 """
439 parsed = []
440 while tokens.current() is not None:
441 if tokens.current() == '--':
442 return parsed + [Argument(None, v) for v in tokens]
443 elif tokens.current().startswith('--'):
444 parsed += parse_long(tokens, options)
445 elif tokens.current().startswith('-') and tokens.current() != '-':
446 parsed += parse_shorts(tokens, options)
447 elif options_first:
448 return parsed + [Argument(None, v) for v in tokens]
449 else:
450 parsed.append(Argument(None, tokens.move()))
451 return parsed
452
453
454def parse_defaults(doc):

Callers 2

test_parse_argvFunction · 0.90
docoptFunction · 0.85

Calls 5

ArgumentClass · 0.85
parse_longFunction · 0.85
parse_shortsFunction · 0.85
currentMethod · 0.80
moveMethod · 0.80

Tested by 1

test_parse_argvFunction · 0.72

Used in the wild real call sites across dependent graphs

searching dependent graphs…