From 46b2eef8917934f64893fd452f825149f8478374 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Wed, 19 Apr 2023 09:03:23 -0700 Subject: [PATCH] init --- dump.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 dump.py diff --git a/dump.py b/dump.py new file mode 100644 index 000000000..060ad28b3 --- /dev/null +++ b/dump.py @@ -0,0 +1,27 @@ +import traceback +import json + +def cvt(s): + if isinstance(s, str): + return s + try: + return json.dumps(s, indent = 4) + except TypeError: + return str(s) + +def dump(*vals): + # http://docs.python.org/library/traceback.html + stack= traceback.extract_stack() + vars= stack[-2][3] + + # strip away the call to dump() + vars= '('.join(vars.split('(')[1:]) + vars= ')'.join(vars.split(')')[:-1]) + + vals= [cvt(v) for v in vals] + has_newline = sum(1 for v in vals if '\n' in v) + if has_newline: + print('%s:' % vars) + print(', '.join(vals)) + else: + print('%s:' % vars, ', '.join(vals))