diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2022-09-20 15:46:57 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2022-09-20 15:46:57 +0000 |
commit | 917739023a7acaae3645bbfd27ed454df3c5be33 (patch) | |
tree | 4e205849ae64ccd4d1797a1ad7579416f69f52ee /pgcli/explain_output_formatter.py | |
parent | Adding upstream version 3.4.1. (diff) | |
download | pgcli-917739023a7acaae3645bbfd27ed454df3c5be33.tar.xz pgcli-917739023a7acaae3645bbfd27ed454df3c5be33.zip |
Adding upstream version 3.5.0.upstream/3.5.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'pgcli/explain_output_formatter.py')
-rw-r--r-- | pgcli/explain_output_formatter.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/pgcli/explain_output_formatter.py b/pgcli/explain_output_formatter.py new file mode 100644 index 0000000..b14cf44 --- /dev/null +++ b/pgcli/explain_output_formatter.py @@ -0,0 +1,18 @@ +from pgcli.pyev import Visualizer +import json + + +"""Explain response output adapter""" + + +class ExplainOutputFormatter: + def __init__(self, max_width): + self.max_width = max_width + + def format_output(self, cur, headers, **output_kwargs): + (data,) = cur.fetchone() + explain_list = json.loads(data) + visualizer = Visualizer(self.max_width) + for explain in explain_list: + visualizer.load(explain) + yield visualizer.get_list() |