aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'pomu/util/query.py')
-rw-r--r--pomu/util/query.py26
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()