6#ifndef JLM_RVSDG_DOTWRITER_HPP
7#define JLM_RVSDG_DOTWRITER_HPP
57 util::graph::
Node & node,
66 util::graph::
Node & node,
72 util::graph::
Graph & graph,
void AttachNodeOutput(util::graph::Port &outputPort, const Output &rvsdgOutput, util::graph::Graph *typeGraph)
virtual void AnnotateGraphNode(const Node &rvsdgNode, util::graph::Node &node, util::graph::Graph *typeGraph)
virtual ~DotWriter() noexcept
virtual void AnnotateTypeGraphNode(const Type &type, util::graph::Node &node)
util::graph::Graph & WriteGraphs(util::graph::Writer &writer, const Region ®ion, bool emitTypeGraph)
util::graph::Graph & WriteGraph(util::graph::Writer &writer, const Region ®ion)
void AttachNodeInput(util::graph::Port &inputPort, const Input &rvsdgInput)
virtual void AnnotateRegionArgument(const RegionArgument ®ionArgument, util::graph::Node &node, util::graph::Graph *typeGraph)
virtual void AnnotateEdge(const Input &rvsdgInput, util::graph::Edge &edge)
void CreateGraphNodes(util::graph::Graph &graph, const Region ®ion, util::graph::Graph *typeGraph, bool traverseRecursively)
util::graph::Node & GetOrCreateTypeGraphNode(const Type &type, util::graph::Graph &typeGraph)
Represents the argument of a region.
Represent acyclic RVSDG subgraphs.
NodeType * TryGetOwnerNode(const rvsdg::Input &input) noexcept
Checks if this is an input to a node of specified type.