diff options
Diffstat (limited to 'pomu/util/query.py')
-rw-r--r-- | pomu/util/query.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/pomu/util/query.py b/pomu/util/query.py new file mode 100644 index 0000000..035fe1b --- /dev/null +++ b/pomu/util/query.py @@ -0,0 +1,26 @@ +""" +A module to (non)interactively query the user for impure values +""" + +import sys + +from pomu.util.result import Result + +def query(name, prompt=None, default=None): + """ + Queries the impure world for name + TODO: non-interactive + """ + if not prompt: + prompt = 'Please enter ' + name + if default: prompt += ' ({})'.format(default) + prompt += ' > ' + res = None + try: + res = input(prompt) + except EOFError: pass + if not res: + res = default + if not res: + return Result.Err('No {} or default provided'.format(name)) + return Result.Ok() |