jonascarpay / calligraphy

haskell source code visualizer
BSD 3-Clause "New" or "Revised" License
97 stars 13 forks source link

Untangle rendering #23

Closed jonascarpay closed 1 year ago

jonascarpay commented 1 year ago

Split the rendering phase into two; one common, and one graphviz-specific. As explained in the Haddock, the new RenderGraph is not actually all that different from the previous CallGraph. Both GraphViz and Mermaid support the style of having a tree/hierarchy of nodes, and then listing a flat list of edges at the bottom, which was already very close to Callgraph.

My goal for this change was to make adding a new backend trivial. I think #24 took about 15 minutes to implement, so in that sense, this change is a success.

jonascarpay commented 1 year ago

I'm keeping this one open for a bit longer in case there are changes on #24 that I want to backport, like 05ae282ab8e0151fa4e75d62ed252db17d4f2635

jonascarpay commented 1 year ago

Rebased on #22