| 6 | |
| 7 | |
| 8 | class ExplainOutputFormatter: |
| 9 | def __init__(self, max_width): |
| 10 | self.max_width = max_width |
| 11 | |
| 12 | def format_output(self, cur, headers, **output_kwargs): |
| 13 | # explain query results should always contain 1 row each |
| 14 | [(data,)] = list(cur) |
| 15 | explain_list = json.loads(data) |
| 16 | visualizer = Visualizer(self.max_width) |
| 17 | for explain in explain_list: |
| 18 | visualizer.load(explain) |
| 19 | yield visualizer.get_list() |