summaryrefslogtreecommitdiff
path: root/cmd2
diff options
context:
space:
mode:
authorKevin Van Brunt <kmvanbrunt@gmail.com>2019-07-05 13:38:37 -0400
committerKevin Van Brunt <kmvanbrunt@gmail.com>2019-07-05 13:38:37 -0400
commit891975e24cc0860fbaeefcd01c7670aede479be5 (patch)
tree8aacd895a75dbcf1e6849cfda3c27b81305af00e /cmd2
parentaa41c31821f26b0c741b5478cedd4e1968657d3a (diff)
downloadcmd2-git-891975e24cc0860fbaeefcd01c7670aede479be5.tar.gz
Fixed some warnings
Diffstat (limited to 'cmd2')
-rw-r--r--cmd2/argparse_completer.py22
1 files changed, 12 insertions, 10 deletions
diff --git a/cmd2/argparse_completer.py b/cmd2/argparse_completer.py
index 45c8d9d6..d4155762 100644
--- a/cmd2/argparse_completer.py
+++ b/cmd2/argparse_completer.py
@@ -106,6 +106,7 @@ class CompletionItem(str):
self.description = desc
+# noinspection PyProtectedMember
def is_potential_flag(token: str, parser: argparse.ArgumentParser) -> bool:
"""Determine if a token looks like a potential flag. Based on argparse._parse_optional()."""
# if it's an empty string, it was meant to be a positional
@@ -134,6 +135,7 @@ def is_potential_flag(token: str, parser: argparse.ArgumentParser) -> bool:
return True
+# noinspection PyProtectedMember
class AutoCompleter(object):
"""Automatic command line tab completion based on argparse parameters"""
@@ -279,36 +281,36 @@ class AutoCompleter(object):
consumed_arg_values.setdefault(pos_action.dest, [])
consumed_arg_values[pos_action.dest].append(token)
- def process_action_nargs(action: argparse.Action, arg_state: AutoCompleter._ArgumentState) -> None:
+ def process_action_nargs(arg_action: argparse.Action, arg_state: AutoCompleter._ArgumentState) -> None:
"""Process the current argparse Action and initialize the ArgumentState object used
to track what arguments we have processed for this action"""
- nargs_range = getattr(action, ATTR_NARGS_RANGE, None)
+ nargs_range = getattr(arg_action, ATTR_NARGS_RANGE, None)
if nargs_range is not None:
arg_state.min = nargs_range[0]
arg_state.max = nargs_range[1]
arg_state.variable = True
if arg_state.min is None or arg_state.max is None:
- if action.nargs is None:
+ if arg_action.nargs is None:
arg_state.min = 1
arg_state.max = 1
- elif action.nargs == argparse.ONE_OR_MORE:
+ elif arg_action.nargs == argparse.ONE_OR_MORE:
arg_state.min = 1
arg_state.max = float('inf')
arg_state.variable = True
- elif action.nargs == argparse.ZERO_OR_MORE or action.nargs == argparse.REMAINDER:
+ elif arg_action.nargs == argparse.ZERO_OR_MORE or arg_action.nargs == argparse.REMAINDER:
arg_state.min = 0
arg_state.max = float('inf')
arg_state.variable = True
- if action.nargs == argparse.REMAINDER:
- remainder['action'] = action
+ if arg_action.nargs == argparse.REMAINDER:
+ remainder['action'] = arg_action
remainder['arg'] = arg_state
- elif action.nargs == argparse.OPTIONAL:
+ elif arg_action.nargs == argparse.OPTIONAL:
arg_state.min = 0
arg_state.max = 1
arg_state.variable = True
else:
- arg_state.min = action.nargs
- arg_state.max = action.nargs
+ arg_state.min = arg_action.nargs
+ arg_state.max = arg_action.nargs
# This next block of processing tries to parse all parameters before the last parameter.
# We're trying to determine what specific argument the current cursor position should be