MCPcopy Create free account
hub / github.com/python-cmd2/cmd2 / _match_argument

Method _match_argument

cmd2/argparse_utils.py:897–908  ·  view source on GitHub ↗

Override to support nargs ranges.

(self, action: argparse.Action, arg_strings_pattern: str)

Source from the content-addressed store, hash-verified

895 return super()._get_nargs_pattern(action)
896
897 def _match_argument(self, action: argparse.Action, arg_strings_pattern: str) -> int:
898 """Override to support nargs ranges."""
899 nargs_pattern = self._get_nargs_pattern(action)
900 match = re.match(nargs_pattern, arg_strings_pattern)
901
902 # raise an exception if we weren't able to find a match
903 if match is None:
904 nargs_range = action.get_nargs_range() # type: ignore[attr-defined]
905 if nargs_range is not None:
906 raise ArgumentError(action, build_range_error(nargs_range[0], nargs_range[1]))
907
908 return super()._match_argument(action, arg_strings_pattern)
909
910 def _check_value(self, action: argparse.Action, value: Any) -> None:
911 """Override that supports CompletionItems as choices.

Callers

nothing calls this directly

Calls 2

_get_nargs_patternMethod · 0.95
build_range_errorFunction · 0.85

Tested by

no test coverage detected