summaryrefslogtreecommitdiff
path: root/cmd2/utils.py
diff options
context:
space:
mode:
authorKevin Van Brunt <kmvanbrunt@gmail.com>2020-02-20 12:33:23 -0500
committerKevin Van Brunt <kmvanbrunt@gmail.com>2020-02-20 12:33:23 -0500
commit157efc589cae43e5fb37ac38575d8cdfcd11c9b8 (patch)
tree8025270da7aacc914b6830439163b0c23f84552a /cmd2/utils.py
parent660d41b404c00db5b757fd6888c50cb4903ad8ac (diff)
downloadcmd2-git-157efc589cae43e5fb37ac38575d8cdfcd11c9b8.tar.gz
Moved categorize() to utils.py and made set_parser_prog() non-public
Diffstat (limited to 'cmd2/utils.py')
-rw-r--r--cmd2/utils.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/cmd2/utils.py b/cmd2/utils.py
index 6a67c43f..971a22ce 100644
--- a/cmd2/utils.py
+++ b/cmd2/utils.py
@@ -964,3 +964,18 @@ def get_styles_in_text(text: str) -> Dict[int, str]:
start += len(match.group())
return styles
+
+
+def categorize(func: Union[Callable, Iterable[Callable]], category: str) -> None:
+ """Categorize a function.
+
+ The help command output will group this function under the specified category heading
+
+ :param func: function or list of functions to categorize
+ :param category: category to put it in
+ """
+ if isinstance(func, Iterable):
+ for item in func:
+ setattr(item, constants.CMD_ATTR_HELP_CATEGORY, category)
+ else:
+ setattr(func, constants.CMD_ATTR_HELP_CATEGORY, category)