GCC Middle and Back End API Reference
diagnostics::digraphs::to_dot::converter Class Reference

#include <digraphs-to-dot.h>

Inheritance diagram for diagnostics::digraphs::to_dot::converter:

Public Member Functions

virtual std::unique_ptr< dot::graphmake_dot_graph_from_diagnostic_graph (const digraphdigraph &)
std::unique_ptr< dot::stmtmake_dot_node_from_digraph_node (const digraph_node &)
std::unique_ptr< dot::edge_stmtmake_dot_edge_from_digraph_edge (const digraph_edge &)
dot::id get_dot_id_for_node (const digraph_node &)
dot::node_id get_node_id_for_node (const digraph_node &, const char *compass_point=nullptr)
bool has_edges_p (const digraph_node &)
virtual void add_any_subgraph_attrs (const digraph_node &input_node, dot::subgraph &output_subgraph)
virtual void add_any_node_attrs (const digraph_node &input_node, dot::node_stmt &output_node)
virtual void add_any_edge_attrs (const digraph_edge &input_edge, dot::edge_stmt &output_edge)

Static Public Member Functions

static std::unique_ptr< convertermake (const digraphdigraph &dg)

Private Attributes

std::set< const digraph_node * > m_nodes_with_edges
std::map< const digraph_node *, dot::stmt * > m_node_map

Member Function Documentation

◆ add_any_edge_attrs()

void diagnostics::digraphs::to_dot::converter::add_any_edge_attrs ( const digraph_edge & input_edge,
dot::edge_stmt & output_edge )
virtual

◆ add_any_node_attrs()

void diagnostics::digraphs::to_dot::converter::add_any_node_attrs ( const digraph_node & input_node,
dot::node_stmt & output_node )
virtual

◆ add_any_subgraph_attrs()

void diagnostics::digraphs::to_dot::converter::add_any_subgraph_attrs ( const digraph_node & input_node,
dot::subgraph & output_subgraph )
virtual

◆ get_dot_id_for_node()

dot::id diagnostics::digraphs::to_dot::converter::get_dot_id_for_node ( const digraph_node & input_node)

◆ get_node_id_for_node()

dot::node_id diagnostics::digraphs::to_dot::converter::get_node_id_for_node ( const digraph_node & input_node,
const char * compass_point = nullptr )

◆ has_edges_p()

bool diagnostics::digraphs::to_dot::converter::has_edges_p ( const digraph_node & input_node)

◆ make()

std::unique_ptr< converter > diagnostics::digraphs::to_dot::converter::make ( const digraphdigraph & dg)
static

◆ make_dot_edge_from_digraph_edge()

std::unique_ptr< dot::edge_stmt > diagnostics::digraphs::to_dot::converter::make_dot_edge_from_digraph_edge ( const digraph_edge & input_edge)

◆ make_dot_graph_from_diagnostic_graph()

◆ make_dot_node_from_digraph_node()

std::unique_ptr< dot::stmt > diagnostics::digraphs::to_dot::converter::make_dot_node_from_digraph_node ( const digraph_node & input_node)

Field Documentation

◆ m_node_map

std::map<const digraph_node *, dot::stmt *> diagnostics::digraphs::to_dot::converter::m_node_map
private

◆ m_nodes_with_edges

std::set<const digraph_node *> diagnostics::digraphs::to_dot::converter::m_nodes_with_edges
private

The documentation for this class was generated from the following files: